X-Git-Url: https://git.mdrn.pl/audio.git/blobdiff_plain/ba1734bdc35bfac91d5692389f2d5600e9341370..631597417095f9adeaef8314862c1b9974e960c9:/src/archive/views.py diff --git a/src/archive/views.py b/src/archive/views.py index 6ae2ef6..0b5a5ac 100644 --- a/src/archive/views.py +++ b/src/archive/views.py @@ -157,20 +157,9 @@ 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.prepare_for_publish() + if publish: + audiobook.publish(request.user) return redirect(file_managed, aid) @@ -303,11 +292,17 @@ class BookView(ListView): "index" ) last_vol = None + last_vol_sub = None for b in qs: - if last_vol is None or last_vol.youtube_volume != b.youtube_volume: + 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) @@ -321,7 +316,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