示例#1
0
    def post(self, request, **kwargs):
        course = get_object_or_404(Course, slug=kwargs['slug'])

        if not _auth_course(request.user, course):
            return HttpResponse('Access denied')

        form = EditCourseForm(request.POST,
            instance=course)

        if form.is_valid():
            old_name = course.name
            new_course = form.save(commit=False)

            if old_name != new_course.name:
                # Make sure we get a unique slug since
                # the name has changed.
                new_course.slug = Course.slugify_unique(
                    slugify(new_course.name))

            new_course.save()

            return HttpResponseRedirect(
                new_course.get_absolute_url())

        tmpl_dict = {
            'form': form,
            'course': course,
            'can_edit_course': True,
        }

        return render(request, self.template_name, tmpl_dict)
示例#2
0
    def post(self, request, **kwargs):
        course = get_object_or_404(Course, slug=kwargs['slug'])

        if not _auth_course(request.user, course):
            return HttpResponse('Access denied')

        form = EditCourseForm(request.POST,
                              instance=course)

        if form.is_valid():
            old_name = course.name
            new_course = form.save(commit=False)

            if old_name != new_course.name:
                # Make sure we get a unique slug since
                # the name has changed.
                new_course.slug = Course.slugify_unique(
                    slugify(new_course.name))

            new_course.save()

            return HttpResponseRedirect(
                new_course.get_absolute_url())

        tmpl_dict = {
            'form': form,
            'course': course,
            'can_edit_course': True,
        }

        return render(request, self.template_name, tmpl_dict)
示例#3
0
def create_course(request):

    if not request.user.is_authenticated():
        tmpl_dict = {
            'site': get_current_site(request),
        }
        return render(
            request, 'books/account/create_course_nologin.html',
            tmpl_dict)

    if request.method == 'POST':
        form = CreateCourseForm(request.POST)

        if form.is_valid():
            course = form.save(commit=False)
            course.user = request.user

            course.slug = Course.slugify_unique(
                slugify(course.name))

            course.save()

            # Now that we have saved, we can create holes
            course.create_holes(
                int(form.cleaned_data.get('hole_count')))

            return HttpResponseRedirect(reverse(
                'books-user-course', args=[
                request.user.username, course.slug]))

    else:
        form = CreateCourseForm()

    tmpl_data = {
        'form': form,
        'site': get_current_site(request),
    }

    return render(
        request, 'books/account/create_course.html',
        tmpl_data)