From ffa19c98477387b8ad2194334b9827d450e17584 Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz <henrik@levkowetz.com> Date: Thu, 23 Feb 2017 11:57:29 +0000 Subject: [PATCH] Added a log.affirm() call at the point where we may discover new flawed document author records. Fixed a place where the generation of Person.ascii from Person.name wasn't done well. - Legacy-Id: 12903 --- ietf/submit/utils.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/ietf/submit/utils.py b/ietf/submit/utils.py index e394c63f7..3e113601f 100644 --- a/ietf/submit/utils.py +++ b/ietf/submit/utils.py @@ -1,5 +1,8 @@ +# Copyright The IETF Trust 2011, All Rights Reserved + import os import datetime +import six from unidecode import unidecode from django.conf import settings @@ -20,7 +23,8 @@ from ietf.person.models import Person, Email from ietf.community.utils import update_name_contains_indexes_with_new_doc from ietf.submit.mail import announce_to_lists, announce_new_version, announce_to_authors from ietf.submit.models import Submission, SubmissionEvent, Preapproval, DraftSubmissionStateName -from ietf.utils.log import log +from ietf.utils import unaccent +from ietf.utils import log def validate_submission(submission): @@ -255,7 +259,7 @@ def post_submission(request, submission, approvedDesc): trouble = rebuild_reference_relations(draft, filename=os.path.join(settings.IDSUBMIT_STAGING_PATH, '%s-%s.txt' % (submission.name, submission.rev))) if trouble: - log('Rebuild_reference_relations trouble: %s'%trouble) + log.log('Rebuild_reference_relations trouble: %s'%trouble) if draft.stream_id == "ietf" and draft.group.type_id == "wg" and draft.rev == "00": # automatically set state "WG Document" @@ -395,7 +399,10 @@ def ensure_person_email_info_exists(name, email): if not person: person = Person() person.name = name - person.ascii = unidecode(person.name) + if isinstance(person.name, six.text_type): + person.ascii = unidecode(person.name).decode('ascii') + else: + person.ascii = unaccent.asciify(person.name).decode('ascii') person.save() # make sure we have an email address @@ -437,6 +444,7 @@ def update_authors(draft, submission): a.order = order a.save() + log.affirm('a.author_id != "none"') authors.append(email) @@ -465,7 +473,7 @@ def move_files_to_repository(submission): os.rename(source, dest) else: if os.path.exists(dest): - log("Intended to move '%s' to '%s', but found source missing while destination exists.") + log.log("Intended to move '%s' to '%s', but found source missing while destination exists.") elif ext in submission.file_types.split(','): raise ValueError("Intended to move '%s' to '%s', but found source and destination missing.")