Пример #1
0
def edit(request, cid):
    try:
        contest = Contest.objects.get(id=cid)
    except Contest.DoesNotExist:
        logger.warning("Contest: Can not edit contest %s! Contest not found!" % cid)
        raise Http404("Contest does not exist, can not edit.")
    title = "Edit Contest"
    if can_edit_contest(request.user, contest):
        contest_dic = model_to_dict(contest)
        contest_dic["user"] = request.user
        contest_dic["method"] = request.method
        if request.method == "GET":
            form = ContestForm(initial=contest_dic)

            return render_index(request, "contest/editContest.html", {"form": form, "title": title, "contest": contest})

        if request.method == "POST":
            form = ContestForm(request.POST, instance=contest, initial={"method": request.method})
            if form.is_valid():
                modified_contest = form.save()
                logger.info("Contest: User %s edited contest %s!" % (request.user, modified_contest.id))

                message = 'Contest %s- "%s" edited!' % (modified_contest.id, modified_contest.cname)
                messages.success(request, message)
                return redirect("contest:contest", modified_contest.id)

            else:
                message = "Some fields are invalid!"
                messages.error(request, message)
                return render_index(
                    request, "contest/editContest.html", {"form": form, "title": title, "contest": contest}
                )

    raise PermissionDenied
Пример #2
0
def new(request):
    title = "New Contest"
    if can_create_contest(request.user):
        if request.method == 'GET':
            form = ContestForm(initial=\
                {'owner':request.user, 'user':request.user, 'method':request.method})

            return render_index(request,'contest/editContest.html',
                {'form':form,'title':title})

        if request.method == 'POST':
            form = ContestForm(request.POST, initial={'method':request.method})
            if form.is_valid():
                new_contest = form.save()
                logger.info('Contest: User %s Create a new contest %s!' %
                    (request.user ,new_contest.id))
                message = 'Contest %s- "%s" created!' % (new_contest.id, new_contest.cname)
                messages.success(request, message)
                return redirect('contest:contest', new_contest.id)

            else:
                message = 'Some fields are invalid!'
                messages.error(request, message)

                return render_index(request,'contest/editContest.html',
                    {'form':form,'title':title})
    raise PermissionDenied
Пример #3
0
def new(request):
    title = "New Contest"
    if can_create_contest(request.user):
        if request.method == "GET":
            form = ContestForm(initial={"owner": request.user, "user": request.user, "method": request.method})

            return render_index(request, "contest/editContest.html", {"form": form, "title": title})

        if request.method == "POST":
            form = ContestForm(request.POST, initial={"method": request.method})
            if form.is_valid():
                new_contest = form.save()
                logger.info("Contest: User %s Create a new contest %s!" % (request.user, new_contest.id))
                message = 'Contest %s- "%s" created!' % (new_contest.id, new_contest.cname)
                messages.success(request, message)
                return redirect("contest:contest", new_contest.id)

            else:
                message = "Some fields are invalid!"
                messages.error(request, message)

                return render_index(request, "contest/editContest.html", {"form": form, "title": title})
    raise PermissionDenied
Пример #4
0
def edit(request, cid):
    try:
        contest = Contest.objects.get(id = cid)
    except Contest.DoesNotExist:
        logger.warning('Contest: Can not edit contest %s! Contest not found!' % cid)
        raise Http404('Contest does not exist, can not edit.')
    title = "Edit Contest"
    if can_edit_contest(request.user,contest):
        contest_dic = model_to_dict(contest)
        contest_dic['user'] = request.user
        contest_dic['method'] = request.method
        if request.method == 'GET':
            form = ContestForm(initial = contest_dic)

            return render_index(request,'contest/editContest.html',
                    {'form':form, 'title':title, 'contest':contest})

        if request.method == 'POST':
            form = ContestForm(request.POST, instance = contest, 
                initial={'method':request.method})
            if form.is_valid():
                modified_contest = form.save()
                logger.info('Contest: User %s edited contest %s!' %
                    (request.user, modified_contest.id))

                message = 'Contest %s- "%s" edited!' % \
                    (modified_contest.id, modified_contest.cname)
                messages.success(request, message)
                return redirect('contest:contest', modified_contest.id)

            else:
                message = 'Some fields are invalid!'
                messages.error(request, message)
                return render_index(request,'contest/editContest.html',
                    {'form':form,'title':title, 'contest':contest})

    raise PermissionDenied
Пример #5
0
def edit(request, cid):
    try:
        contest = Contest.objects.get(id=cid)
    except Contest.DoesNotExist:
        logger.warning('Contest: Can not edit contest %s! Contest not found!' %
                       cid)
        raise Http404('Contest does not exist, can not edit.')
    title = "Edit Contest"
    if can_edit_contest(request.user, contest):
        contest_dic = model_to_dict(contest)
        contest_dic['user'] = request.user
        contest_dic['method'] = request.method
        if request.method == 'GET':
            form = ContestForm(initial=contest_dic)

            return render_index(request, 'contest/editContest.html', {
                'form': form,
                'title': title,
                'contest': contest
            })

        if request.method == 'POST':
            form = ContestForm(request.POST,
                               instance=contest,
                               initial={'method': request.method})
            if form.is_valid():
                modified_contest = form.save()
                logger.info('Contest: User %s edited contest %s!' %
                            (request.user, modified_contest.id))

                message = 'Contest %s- "%s" edited!' % \
                    (modified_contest.id, modified_contest.cname)
                messages.success(request, message)
                return redirect('contest:contest', modified_contest.id)

            else:
                message = 'Some fields are invalid!'
                messages.error(request, message)
                return render_index(request, 'contest/editContest.html', {
                    'form': form,
                    'title': title,
                    'contest': contest
                })

    raise PermissionDenied
Пример #6
0
def new(request):
    title = "New Contest"
    if can_create_contest(request.user):
        if request.method == 'GET':
            form = ContestForm(
                initial={
                    'owner': request.user,
                    'user': request.user,
                    'method': request.method
                })

            return render_index(request, 'contest/editContest.html', {
                'form': form,
                'title': title
            })

        if request.method == 'POST':
            form = ContestForm(request.POST,
                               initial={'method': request.method})
            if form.is_valid():
                new_contest = form.save()
                logger.info('Contest: User %s Create a new contest %s!' %
                            (request.user, new_contest.id))
                message = 'Contest %s- "%s" created!' % (new_contest.id,
                                                         new_contest.cname)
                messages.success(request, message)
                return redirect('contest:contest', new_contest.id)

            else:
                message = 'Some fields are invalid!'
                messages.error(request, message)

                return render_index(request, 'contest/editContest.html', {
                    'form': form,
                    'title': title
                })
    raise PermissionDenied