diff --git a/ippisite/ippidb/templatetags/customtags.py b/ippisite/ippidb/templatetags/customtags.py
index 7cd1a8a817cc797836693457de0f364a00afb45e..77974a83abae2cb7dbe11b7b46c2f8c3a4f1598e 100644
--- a/ippisite/ippidb/templatetags/customtags.py
+++ b/ippisite/ippidb/templatetags/customtags.py
@@ -18,9 +18,14 @@ def url_replace(request, field, value):
 
 @register.filter
 def bootstrap(object):
+     return mark_safe("".join(bootstrap_core(object)))
+
+def bootstrap_core(object):
     ret = []
     if isinstance(object, forms.BoundField):
         field = object
+        if isinstance(field.field.widget, forms.HiddenInput):
+            return [field.as_widget(), ]
         attrs = field.field.widget.attrs
         # get the class specified in the code
         css_classes = set(attrs.get("class", "").split(" "))
@@ -50,6 +55,7 @@ def bootstrap(object):
         if field.name == "DELETE":
             # HACK : If the field is the DELETE button of the formset
             attrs["onchange"] = "formsetItemDelete(this);"
+            field.label = ugettext("DELETE_label")
             wrapping_classes += " formset-item-delete-host"
             css_classes.add("formset-item-delete")
 
@@ -87,10 +93,15 @@ def bootstrap(object):
         formset = object
         for error in formset.non_form_errors():
             ret.append("""<div class="alert alert-danger">%s</div>""" % error.replace("\n", "<br/>"))
+    elif isinstance(object, forms.BaseForm):
+        form = object
+        for field in form:
+            for l in bootstrap_core(field):
+                ret.append(l)
     else:
         ret.append("""<div class="alert alert-danger">Can't bootstrapize object of class %s</div>""" %
                    str(type(object).__name__))
-    return mark_safe("".join(ret))
+    return ret
 
 
 @register.filter('startswith')