diff --git a/apps/documents/forms.py b/apps/documents/forms.py index c070f71438..f0ac224ba9 100755 --- a/apps/documents/forms.py +++ b/apps/documents/forms.py @@ -6,7 +6,6 @@ from django.utils.http import urlencode from django.core.urlresolvers import reverse from django.utils.safestring import mark_safe from django.forms.formsets import formset_factory -from django.utils.http import urlquote_plus from staging import StagingFile @@ -197,7 +196,7 @@ class DocumentCreateWizard(BoundFormWizard): for id, metadata in enumerate(form.cleaned_data): if metadata['value']: self.urldata.append(('metadata%s_id' % id, metadata['id'])) - self.urldata.append(('metadata%s_value' % id, urlquote_plus(metadata['value']))) + self.urldata.append(('metadata%s_value' % id, metadata['value'])) def get_template(self, step): return 'generic_wizard.html' @@ -210,6 +209,3 @@ class DocumentCreateWizard(BoundFormWizard): url = reverse(view, args=[self.document_type.id]) return HttpResponseRedirect('%s?%s' % (url, urlencode(self.urldata))) - -urlquote_plus -MetadataFormSet = formset_factory(MetadataForm, extra=0) diff --git a/apps/documents/utils.py b/apps/documents/utils.py index f13497b521..4e33154e6d 100755 --- a/apps/documents/utils.py +++ b/apps/documents/utils.py @@ -97,5 +97,8 @@ def save_metadata(metadata_dict, document): metadata_type=get_object_or_404(MetadataType, pk=metadata_dict['id']), ) #Handle 'plus sign as space' in the url - document_metadata.value=unquote_plus(metadata_dict['value']).decode('utf-8') + + #unquote_plus handles utf-8?!? + #http://stackoverflow.com/questions/4382875/handling-iri-in-django + document_metadata.value=unquote_plus(metadata_dict['value'])#.decode('utf-8') document_metadata.save() diff --git a/apps/documents/views.py b/apps/documents/views.py index efffd68f28..a01a40a3d6 100755 --- a/apps/documents/views.py +++ b/apps/documents/views.py @@ -11,7 +11,6 @@ from django.conf import settings from django.utils.http import urlencode from django.template.defaultfilters import slugify from django.core.exceptions import ObjectDoesNotExist -from django.utils.http import urlquote_plus from common.utils import pretty_size from permissions.api import check_permissions, Unauthorized @@ -97,7 +96,7 @@ def document_create_sibling(request, document_id, multiple=True): for id, metadata in enumerate(document.documentmetadata_set.all()): if hasattr(metadata, 'value'): urldata.append(('metadata%s_id' % id, metadata.metadata_type.id)) - urldata.append(('metadata%s_value' % id, urlquote_plus(metadata.value))) + urldata.append(('metadata%s_value' % id, metadata.value)) if multiple: view = 'upload_multiple_documents_with_type'