Beispiel #1
0
def post(request):
    if request.method == 'POST':
        form = PostForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect('blog-home')
    else:
        form = PostForm()
Beispiel #2
0
def edit_post(request, slug):
    post = get_object_or_404(Post, slug=slug)
    if (request.method == 'POST'):
        form = PostForm(request.POST)
        if (form.is_valid()):
            post.title = form.cleaned_data['title']
            post.body = form.cleaned_data['body']
            post.slug = urllib.quote_plus(form.cleaned_data['title'])
            post.tag = form.cleaned_data['tag']
            post.save()
            return HttpResponseRedirect('/blog/view/' + post.slug)

    print post
    res_dict = {
        'title': 'Edit Post',
        'form': PostForm(instance=post),
        'submit': '/blog/edit/' + slug
    }
    return render(request, 'new_post.html', res_dict)
Beispiel #3
0
def new(request):
    """View to make a new blog post.

    @param request: request data
    @type request: Django request
    @return a view page to make a new blog post
    @rtype: Django response
    """
    if not request.user.is_authenticated():
        redirect_to = reverse('user_signin') + '?next=' + reverse(new)
        return HttpResponseRedirect(redirect_to)

    if request.method == 'POST':
        form = PostForm(request.POST)
        if form.is_valid():
            if request.POST.has_key('preview'):
                preview = {
                    'headline': form.cleaned_data['headline'],
                    'summary': form.cleaned_data['summary'],
                    'body': form.cleaned_data['body'],
                }
            else:
                post = Post()
                post.pub_date = datetime.datetime.now()
                post.headline = form.cleaned_data['headline']
                post.summary = form.cleaned_data['summary']
                post.body = form.cleaned_data['body']
                post.author_id = request.user.id
                post.save()
                return HttpResponseRedirect(post.get_absolute_url())
    else:
        preview = False
        form = PostForm()

    info_dict = {
        'request': request,
        'form': form,
        'preview': preview,
        'section': 'blog',
        'user': request.user,
    }
    return render_to_response('blog/new.html', info_dict)
Beispiel #4
0
def added(request):
    if request.method == 'POST':
        form = PostForm(request.POST)
        if form.is_valid():
            t = form.cleaned_data['text']
            p = Post.objects.create(text=t)
            p.save()
            return redirect("/" + str(p.id),
                            context_instance=RequestContext(request))
        else:
            raise Http404
    else:
        raise Http404
Beispiel #5
0
def new_post(request):
    res_dict = {
        'title': 'New Post',
        'form': PostForm(),
        'submit': '/blog/new/'
    }

    if (request.method == 'POST'):
        form = PostForm(request.POST)
        res_dict['form'] = form
        if (form.is_valid()):
            new = form.save(commit=False)
            new.slug = urllib.quote_plus(new.title)
            new.pub_date = datetime.datetime.now()
            try:
                new.save()
            except IntegrityError as e:
                res_dict[
                    'error'] = 'Sorry, blog title already exists and must be unique'
                return render(request, 'new_post.html', res_dict)
            return HttpResponseRedirect('/blog/view/' + new.slug)
        else:
            res_dict['error'] = 'Sorry, fields cannot be blank'
    return render(request, 'new_post.html', res_dict)
Beispiel #6
0
def new(request):
    form = PostForm()
    return render_to_response('new.html', {'form': form},
                              context_instance=RequestContext(request))