X-Git-Url: https://git.mdrn.pl/audio.git/blobdiff_plain/5715ba5816c2773949689461f715a08caa8c5d11..6f51733275b7a709d519adf2505dd0dc1b886466:/src/archive/views.py diff --git a/src/archive/views.py b/src/archive/views.py index cafda5d..6ae2927 100644 --- a/src/archive/views.py +++ b/src/archive/views.py @@ -70,9 +70,8 @@ def file_new(request, filename): def move_to_archive(request, filename): """ move a new file to the unmanaged files dir """ - filename_str = filename.encode('utf-8') - old_path = os.path.join(settings.NEW_PATH, filename_str) - new_path = os.path.join(settings.UNMANAGED_PATH, filename_str) + old_path = os.path.join(settings.NEW_PATH, filename) + new_path = os.path.join(settings.UNMANAGED_PATH, filename) new_dir = os.path.split(new_path)[0] if not os.path.isdir(new_dir): os.makedirs(new_dir) @@ -131,9 +130,8 @@ def remove_to_archive(request, aid): def move_to_new(request, filename): """ move a unmanaged file to new files dir """ - filename_str = filename.encode('utf-8') - old_path = os.path.join(settings.UNMANAGED_PATH, filename_str) - new_path = os.path.join(settings.NEW_PATH, filename_str) + old_path = os.path.join(settings.UNMANAGED_PATH, filename) + new_path = os.path.join(settings.NEW_PATH, filename) new_dir = os.path.split(new_path)[0] if not os.path.isdir(new_dir): os.makedirs(new_dir) @@ -157,20 +155,7 @@ def move_to_new(request, filename): def publish(request, aid, publish=True): """ mark file for publishing """ audiobook = get_object_or_404(models.Audiobook, id=aid) - tags = { - 'name': audiobook.title, - 'url': audiobook.url, - 'tags': audiobook.new_publish_tags(), - } - audiobook.set_mp3_tags(tags) - audiobook.set_ogg_tags(tags) - audiobook.mp3_status = audiobook.ogg_status = status.WAITING - audiobook.save() - # isn't there a race here? - audiobook.mp3_task = tasks.Mp3Task.delay(request.user.id, aid, publish).task_id - audiobook.ogg_task = tasks.OggTask.delay(request.user.id, aid, publish).task_id - audiobook.save() - + audiobook.publish(request.user, publish=publish) return redirect(file_managed, aid) @@ -287,7 +272,7 @@ def list_unmanaged(request): def file_unmanaged(request, filename): - tags = mutagen.File(os.path.join(settings.UNMANAGED_PATH, filename.encode('utf-8'))) + tags = mutagen.File(os.path.join(settings.UNMANAGED_PATH, filename)) if not tags: tags = {} @@ -302,13 +287,18 @@ class BookView(ListView): qs = models.Audiobook.objects.filter(slug=self.kwargs["slug"]).order_by( "index" ) - total = 0 last_vol = None + last_vol_sub = None for b in qs: - if last_vol != b.youtube_volume: - last_vol = b.youtube_volume - total = 0 - total = b.total = total + b.duration + if last_vol is None or last_vol.youtube_volume_index != b.youtube_volume_index: + last_vol = b + b.total = 0 + if last_vol_sub is None or b.youtube_volume: + last_vol_sub = last_vol + last_vol_sub.total_for_sub = 0 + last_vol.total += b.duration + last_vol_sub.total_for_sub += b.duration + b.subtotal = last_vol_sub.total_for_sub return list(qs) @@ -322,7 +312,7 @@ def book_youtube_volume(request, aid): audiobook.youtube_volume = new_vol audiobook.save() - for a in models.Audiobook.objects.filter(youtube_volume=cur_vol, index__gt=audiobook.index).order_by('index'): + for a in models.Audiobook.objects.filter(slug=slug, youtube_volume=cur_vol, index__gt=audiobook.index).order_by('index'): if a.youtube_volume != cur_vol: break a.youtube_volume = new_vol