From 7b22bba4e7314898d89e58e49a349975fae2cd7e Mon Sep 17 00:00:00 2001 From: j <0x006A@0x2620.org> Date: Fri, 14 Sep 2012 11:50:08 +0200 Subject: [PATCH] use path to populate unknown sort names, #958 --- pandora/archive/tasks.py | 5 ++++- pandora/person/models.py | 4 +++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/pandora/archive/tasks.py b/pandora/archive/tasks.py index c378ae15..fa63e89c 100644 --- a/pandora/archive/tasks.py +++ b/pandora/archive/tasks.py @@ -9,7 +9,7 @@ from django.conf import settings from item.models import get_item, Item import item.tasks - +from person.models import get_name_sort import models import extract @@ -17,6 +17,9 @@ _INSTANCE_KEYS = ('mtime', 'path') def get_or_create_item(volume, info, user): item_info = ox.parse_movie_path(info['path']) + if item_info.get('director') and item_info.get('directorSort'): + for name, sortname in zip(item_info['director'], item_info['directorSort']): + get_name_sort(name, sortname) return get_item(item_info, user) def get_or_create_file(volume, f, user, item=None): diff --git a/pandora/person/models.py b/pandora/person/models.py index 11429956..8cb165c7 100644 --- a/pandora/person/models.py +++ b/pandora/person/models.py @@ -15,11 +15,13 @@ import item.models import managers import tasks -def get_name_sort(name): +def get_name_sort(name, sortname=None): name = unicodedata.normalize('NFKD', name).strip() if name: person, created = Person.objects.get_or_create(name=name) if created: + if sortname: + person.sortname = sortname person.save() sortname = unicodedata.normalize('NFKD', person.sortname) else: