def submission_three_additional(request, book_id): book = get_object_or_404(core_models.Book, pk=book_id, owner=request.user) additional_files = core_models.File.objects.filter(book=book, kind='additional') logic.check_stage(book, 4) if request.method == 'POST': if not book.submission_stage > 5: book.submission_stage = 5 logic.handle_book_labels(request.POST, book, kind='additional') book.save() return redirect(reverse('submission_four', kwargs={'book_id': book.id})) template = 'submission/submission_three_additional.html' context = { 'book': book, 'active': 4, 'additional_files': additional_files, 'additional_guidelines': core_models.Setting.objects.get( name='additional_files_guidelines').value, } return render(request, template, context)
def submission_five(request, book_id): book = get_object_or_404(core_models.Book, pk=book_id, owner=request.user) logic.check_stage(book, 6) if request.method == 'POST' and 'complete' in request.POST: book.submission_date = timezone.now() book.slug = slugify(book.title) stage = core_models.Stage(current_stage='submission', submission=book.submission_date) stage.save() book.stage = stage book.save() log.add_log_entry(book, request.user, 'submission', 'Submission of %s completed' % book.title, 'Submission Completed') # Send ack email press_editors = core_models.User.objects.filter(profile__roles__slug='press-editor') logic.send_acknowldgement_email(book, press_editors) return redirect(reverse('author_dashboard')) template = 'submission/submission_five.html' context = { 'book': book, 'active': 6, 'manuscript_files': core_models.File.objects.filter(book=book, kind='manuscript'), 'additional_files': core_models.File.objects.filter(book=book, kind='additional'), } return render(request, template, context)
def submission_three(request, book_id): book = get_object_or_404(core_models.Book, pk=book_id, owner=request.user) manuscript_files = core_models.File.objects.filter(book=book, kind='manuscript') additional_files = core_models.File.objects.filter(book=book, kind='additional') logic.check_stage(book, 3) if request.method == 'POST': print request.POST if 'next_stage' in request.POST: if manuscript_files.count() >= 1: if not book.submission_stage > 4: book.submission_stage = 4 logic.handle_book_labels(request.POST, book, kind='manuscript') book.save() return redirect(reverse('submission_three_additional', kwargs={'book_id': book.id})) else: messages.add_message(request, messages.ERROR, 'You must upload a Manuscript File.') # Catch, after any post we always redirect to avoid someone resubmitting the same file twice. return redirect(reverse('submission_three', kwargs={'book_id': book.id})) template = 'submission/submission_three.html' context = { 'book': book, 'active': 3, 'manuscript_files': manuscript_files, 'additional_files': additional_files, 'manuscript_guidelines': core_models.Setting.objects.get(name='manuscript_guidelines').value, } return render(request, template, context)
def submission_five(request, book_id): book = get_object_or_404(core_models.Book, pk=book_id, owner=request.user) logic.check_stage(book, 6) if request.method == 'POST' and 'complete' in request.POST: book.submission_date = timezone.now() book.slug = slugify(book.title) stage = core_models.Stage( current_stage='submission', submission=book.submission_date, ) stage.save() book.stage = stage book.save() log.add_log_entry( book, request.user, 'submission', 'Submission of %s completed' % book.title, 'Submission Completed', ) press_editors = core_models.User.objects.filter( # Send ack email. profile__roles__slug='press-editor') logic.send_acknowldgement_email(book, press_editors) return redirect(reverse('author_dashboard')) template = 'submission/submission_five.html' context = { 'book': book, 'active': 6, 'manuscript_files': core_models.File.objects.filter( book=book, kind='manuscript', ), 'additional_files': core_models.File.objects.filter( book=book, kind='additional', ), } return render(request, template, context)
def submission_three(request, book_id): book = get_object_or_404(core_models.Book, pk=book_id, owner=request.user) manuscript_files = core_models.File.objects.filter( book=book, kind='manuscript', ) additional_files = core_models.File.objects.filter( book=book, kind='additional', ) logic.check_stage(book, 3) if request.method == 'POST': if 'next_stage' in request.POST: if manuscript_files.count() >= 1: if not book.submission_stage > 4: book.submission_stage = 4 logic.handle_book_labels(request.POST, book, kind='manuscript') book.save() return redirect( reverse('submission_three_additional', kwargs={'book_id': book.id})) else: messages.add_message(request, messages.ERROR, 'You must upload a Manuscript File.') # After any post always redirect to avoid resubmitting of same file. return redirect( reverse('submission_three', kwargs={'book_id': book.id})) template = 'submission/submission_three.html' context = { 'book': book, 'active': 3, 'manuscript_files': manuscript_files, 'additional_files': additional_files, 'manuscript_guidelines': core_models.Setting.objects.get(name='manuscript_guidelines').value, } return render(request, template, context)
def submission_four(request, book_id): book = get_object_or_404(core_models.Book, pk=book_id, owner=request.user) logic.check_stage(book, 5) if request.method == 'POST' and 'next_stage' in request.POST: if book.author.count() >= 1 or book.editor.count() >= 1: if not book.submission_stage > 6: book.submission_stage = 6 book.save() return redirect( reverse('submission_five', kwargs={'book_id': book.id})) else: messages.add_message( request, messages.ERROR, 'You must add at least one author or editor.') template = 'submission/submission_four.html' context = {'book': book, 'active': 5} return render(request, template, context)
def submission_two(request, book_id): book = get_object_or_404(core_models.Book, pk=book_id, owner=request.user) book_form = forms.SubmitBookStageTwo(instance=book) logic.check_stage(book, 2) if request.method == 'POST': book_form = forms.SubmitBookStageTwo(request.POST, instance=book) if book_form.is_valid(): book = book_form.save(commit=False) if not book.submission_stage > 3: book.submission_stage = 3 book.save() return redirect( reverse('submission_three', kwargs={'book_id': book.id})) template = "submission/submission_two.html" context = {'book': book, 'book_form': book_form, 'active': 2} return render(request, template, context)
def submission_four(request, book_id): book = get_object_or_404(core_models.Book, pk=book_id, owner=request.user) logic.check_stage(book, 5) if request.method == 'POST' and 'next_stage' in request.POST: if book.author.count() >= 1 or book.editor.count() >= 1: if not book.submission_stage > 6: book.submission_stage = 6 book.save() return redirect(reverse('submission_five', kwargs={'book_id': book.id})) else: messages.add_message(request, messages.ERROR, 'You must add at least one author or editor.') template = 'submission/submission_four.html' context = { 'book': book, 'active': 5, } return render(request, template, context)
def submission_three_additional(request, book_id): book = get_object_or_404(core_models.Book, pk=book_id, owner=request.user) additional_files = core_models.File.objects.filter(book=book, kind='additional') logic.check_stage(book, 4) if request.method == 'POST': if not book.submission_stage > 5: book.submission_stage = 5 logic.handle_book_labels(request.POST, book, kind='additional') book.save() return redirect(reverse('submission_four', kwargs={'book_id': book.id})) template = 'submission/submission_three_additional.html' context = { 'book': book, 'active': 4, 'additional_files': additional_files, } return render(request, template, context)
def submission_two(request, book_id): book = get_object_or_404(core_models.Book, pk=book_id, owner=request.user) book_form = forms.SubmitBookStageTwo(instance=book) logic.check_stage(book, 2) if request.method == 'POST': book_form = forms.SubmitBookStageTwo(request.POST, instance=book) if book_form.is_valid(): book = book_form.save(commit=False) if not book.submission_stage > 3: book.submission_stage = 3 book.save() return redirect(reverse('submission_three', kwargs={'book_id': book.id})) template = "submission/submission_two.html" context = { 'book': book, 'book_form': book_form, 'active': 2, } return render(request, template, context)