def course_preview(request, course_id): user = request.user course = get_object_or_404(Course, id=course_id) # check rights if not (course.is_user_contributor_or_delegate(user) and course.state in ['prepared', 'editor_approved', 'approved', 'in_evaluation', 'evaluated', 'reviewed']): raise PermissionDenied return get_valid_form_groups_or_render_vote_page(request, course, preview=True)[1]
def evaluation_preview(request, evaluation_id): user = request.user evaluation = get_object_or_404(Evaluation, id=evaluation_id) # check rights if not (evaluation.is_user_responsible_or_contributor_or_delegate(user) and evaluation.state in ['prepared', 'editor_approved', 'approved', 'in_evaluation', 'evaluated', 'reviewed']): raise PermissionDenied return get_valid_form_groups_or_render_vote_page(request, evaluation, preview=True)[1]
def evaluation_preview(request, evaluation_id): user = request.user evaluation = get_object_or_404(Evaluation, id=evaluation_id) # check rights if not (evaluation.is_user_responsible_or_contributor_or_delegate(user) and evaluation.state in ['prepared', 'editor_approved', 'approved', 'in_evaluation', 'evaluated', 'reviewed']): raise PermissionDenied return get_valid_form_groups_or_render_vote_page(request, evaluation, preview=True)[1]
def course_preview(request, course_id): user = request.user course = get_object_or_404(Course, id=course_id) # check rights if not (course.is_user_contributor_or_delegate(user) and course.state in ['prepared', 'editor_approved', 'approved', 'in_evaluation', 'evaluated', 'reviewed']): raise PermissionDenied return get_valid_form_groups_or_render_vote_page(request, course, preview=True)[1]
def evaluation_preview(request, evaluation_id): user = request.user evaluation = get_object_or_404(Evaluation, id=evaluation_id) # check rights if not ( evaluation.is_user_responsible_or_contributor_or_delegate(user) and Evaluation.State.PREPARED <= evaluation.state <= Evaluation.State.REVIEWED ): raise PermissionDenied return get_valid_form_groups_or_render_vote_page(request, evaluation, preview=True)[1]
def render_preview(request, formset, course_form, course): # open transaction to not let any other requests see anything of what we're doing here try: with transaction.atomic(): course_form.save(user=request.user) formset.save() request.POST = None # this prevents errors rendered in the vote form preview_response = get_valid_form_groups_or_render_vote_page(request, course, preview=True, for_rendering_in_modal=True)[1].content.decode() raise IntegrityError # rollback transaction to discard the database writes except IntegrityError: pass return preview_response
def render_preview(request, formset, course_form, course): # open transaction to not let any other requests see anything of what we're doing here try: with transaction.atomic(): course_form.save(user=request.user) formset.save() request.POST = None # this prevents errors rendered in the vote form preview_response = get_valid_form_groups_or_render_vote_page(request, course, preview=True, for_rendering_in_modal=True)[1].content.decode() raise IntegrityError # rollback transaction to discard the database writes except IntegrityError: pass return preview_response