X-Git-Url: https://git.mdrn.pl/audio.git/blobdiff_plain/1a4d5a8854ec1d28af13d653255dfcc12aad7608..84b7ad836fce2c9496125abad501370f162b959c:/src/archive/views.py diff --git a/src/archive/views.py b/src/archive/views.py index 62a1216..aee88e6 100644 --- a/src/archive/views.py +++ b/src/archive/views.py @@ -9,6 +9,7 @@ from django.urls import reverse from django.db.models import Q, Max from django.http import Http404, HttpResponse from django.shortcuts import render, redirect, get_object_or_404 +from django.utils.translation import gettext as _ from django.views.decorators.http import require_POST import mutagen @@ -268,6 +269,17 @@ def file_managed(request, id): request.user.is_authenticated and request.user.oauthconnection_set.filter(access=True).exists()) + alerts = [] + series = models.Audiobook.objects.filter(url=audiobook.url) + real = series.count() + if real != audiobook.parts_count: + alerts.append(_('Parts number inconsitent. Declared number: %(declared)d. Real number: %(real)d') % {"declared": audiobook.parts_count, "real": real}) + if audiobook.parts_count > 1: + if not audiobook.index: + alerts.append(_('There is more than one part, but index is not set.')) + if set(series.values_list('index', flat=True)) != set(range(1, audiobook.parts_count + 1)): + alerts.append(_('Part indexes are not 1..%(parts_count)d.') % {"parts_count": audiobook.parts_count}) + return render(request, "archive/file_managed.html", locals())