コード例 #1
0
ファイル: views.py プロジェクト: StuJ/rua-1
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)
コード例 #2
0
ファイル: views.py プロジェクト: stuartjennings-up/rua
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)
コード例 #3
0
ファイル: views.py プロジェクト: stuartjennings-up/rua
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)
コード例 #4
0
ファイル: views.py プロジェクト: StuJ/rua-1
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)
コード例 #5
0
ファイル: views.py プロジェクト: StuJ/rua-1
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)
コード例 #6
0
ファイル: views.py プロジェクト: StuJ/rua-1
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)
コード例 #7
0
ファイル: views.py プロジェクト: StuJ/rua-1
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)
コード例 #8
0
ファイル: views.py プロジェクト: stuartjennings-up/rua
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)
コード例 #9
0
ファイル: views.py プロジェクト: NateWr/rua
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)
コード例 #10
0
ファイル: views.py プロジェクト: stuartjennings-up/rua
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)