diff --git a/apps/common/templates/generic_form_instance.html b/apps/common/templates/generic_form_instance.html index d291d382f9..13dbf0c933 100644 --- a/apps/common/templates/generic_form_instance.html +++ b/apps/common/templates/generic_form_instance.html @@ -27,7 +27,11 @@ {% endfor %} {% else %} - {% for field in form %} + {% for field in form.hidden_fields %} + {{ field }} + {% endfor %} + + {% for field in form.visible_fields %}
{% if field.errors %}
{% endif %} diff --git a/apps/documents/forms.py b/apps/documents/forms.py index 5c053b427f..fa2f0b5634 100644 --- a/apps/documents/forms.py +++ b/apps/documents/forms.py @@ -13,7 +13,14 @@ from models import Document, DocumentType, DocumentTypeMetadataType from documents.conf.settings import AVAILABLE_FUNCTIONS + class DocumentForm(forms.ModelForm): + def __init__(self, *args, **kwargs): + super(DocumentForm, self).__init__(*args, **kwargs) + if 'initial' in kwargs: + if 'document_type' in kwargs['initial']: + self.fields['document_type'].widget = forms.HiddenInput() + class Meta: model = Document diff --git a/apps/documents/views.py b/apps/documents/views.py index 973fb20cd2..656ad998b5 100644 --- a/apps/documents/views.py +++ b/apps/documents/views.py @@ -72,6 +72,7 @@ def upload_document_with_type(request, document_type_id, multiple=True): def document_view(request, document_id): document = get_object_or_404(Document, pk=document_id) form = DocumentForm_view(instance=document, extra_fields=[ + {'label':_(u'Document type'), 'field':'document_type'}, {'label':_(u'Filename'), 'field':'file_filename'}, {'label':_(u'File extension'), 'field':'file_extension'}, {'label':_(u'File mimetype'), 'field':'file_mimetype'},