Beispiel #1
0
def new(request, template_name='blog/new_or_edit.html'):
    if request.method == 'POST':
        form = BlogPostForm(request.POST)
        if form.is_valid():
            form.save()
        return HttpResponseRedirect("/")
    else:
        form = BlogPostForm()

    template_context = {'form': form}

    return render_to_response(template_name, template_context,
                              RequestContext(request))
Beispiel #2
0
def edit(request, slug, template_name='blog/new_or_edit.html'):

    post = BlogPost.objects.get(slug=slug)
    if request.method == 'POST':
        form = BlogPostForm(request.POST, instance=post)
        if form.is_valid():
            form.save()
        return HttpResponseRedirect(post.get_absolute_url())
    else:
        form = BlogPostForm(instance=post)

    template_context = {'form': form}

    return render_to_response(template_name, template_context,
                              RequestContext(request))
Beispiel #3
0
def new(request, template_name='blog/new_or_edit.html'):
    if request.method == 'POST':
        form = BlogPostForm(request.POST)
        if form.is_valid():
            form.save()
        return HttpResponseRedirect("/")
    else:
        form = BlogPostForm()
    
    template_context = {'form': form}
    
    return render_to_response(
        template_name,
        template_context,
        RequestContext(request)
    )
def post(request, post_id=None):
    """
    Displays, creates or updates a blog post.
    """
    
    post = None
    if post_id:
        post = get_object_or_404(BlogPost.objects.all(), pk=post_id)
    
    if request.method == 'POST':
        
        form = BlogPostForm(request.POST, instance=post)
        
        if form.is_valid():
            post = form.save()
            return SerializeOrRedirect(reverse('list_posts'), { 'post': post })
            
        else:
            
            return SerializeOrRender('blog/post.html', { 'post': post }, extra = { 'form': form }, status=CR_INVALID_DATA)    
        
    else:
        
        form = BlogPostForm(instance=post)
    
    return SerializeOrRender('blog/post.html', { 'post': post }, extra={ 'form': form })
Beispiel #5
0
def create_update_post(request, pk=None):
    post = None
    if pk:
        post = get_object_or_404(BlogPost, pk=pk)
        if not request.user.has_perm("blog.change_blogpost", post):
            return HttpResponseForbidden()
    else:
        if not request.user.has_perm("blog.add_blogpost"):
            return HttpResponseForbidden()

    # Do an update.
    if request.method == 'POST':
        form = BlogPostForm(request.POST, instance=post)
        if form.is_valid():  # All validation rules pass
            post = form.save(commit=False)
            post.user = request.user
            post.save()

            assign('blog.view_blogpost', request.user, post)
            assign('blog.change_blogpost', request.user, post)
            assign('blog.delete_blogpost', request.user, post)

            return redirect(reverse('view_post', args=[post.id]))
    else:
        form = BlogPostForm(instance=post)  # An unbound form

    # Return the crud page.
    return render_to_response('blog/create_edit_post.xhtml', {
        'post': post, 'form': form
    }, context_instance=RequestContext(request))
Beispiel #6
0
def add_post(request):
    '''Add new blogpost'''
    form = BlogPostForm(request.POST or None)

    if request.method == 'POST' and form.is_valid():
        new_post = form.save(commit=False)
        new_post.user_id = request.user.id
        new_post.save()

        if form.cleaned_data['tags']:
            list_tags = request.POST['tags'].split(',')
            list_tags = [tag.strip() for tag in list_tags]
            list_tags = set(list_tags)

            if len(list_tags) > 10:
                return HttpResponse('Amount of tags can\'t be more than 10!')

            for tag in list_tags:
                if tag:
                    new_tag, created = Tag.objects.get_or_create(name=tag)
                    new_post.tag.add(new_tag.id)

        return redirect('blog:list_of_posts')
    else:
        context = RequestContext(request)
        return render_to_response('blog/add_post.html',
                                  {'form': form}, context)
Beispiel #7
0
def post(request, post_id=None):
    """
    Displays, creates or updates a blog post.
    """

    post = None
    if post_id:
        post = get_object_or_404(BlogPost.objects.all(), pk=post_id)

    if request.method == 'POST':

        form = BlogPostForm(request.POST, instance=post)

        if form.is_valid():
            post = form.save()
            return SerializeOrRedirect(reverse('list_posts'), {'post': post})

        else:

            return SerializeOrRender('blog/post.html', {'post': post},
                                     extra={'form': form},
                                     status=CR_INVALID_DATA)

    else:

        form = BlogPostForm(instance=post)

    return SerializeOrRender('blog/post.html', {'post': post},
                             extra={'form': form})
Beispiel #8
0
def edit(request, slug, template_name='blog/new_or_edit.html'):
    
    post = BlogPost.objects.get(slug=slug)
    if request.method == 'POST':
        form = BlogPostForm(request.POST, instance=post)
        if form.is_valid():
            form.save()
        return HttpResponseRedirect(post.get_absolute_url())
    else:
        form = BlogPostForm(instance=post)
    
    template_context = {'form': form}
    
    return render_to_response(
        template_name,
        template_context,
        RequestContext(request)
    )
Beispiel #9
0
def new_post(request):
    if request.method == "POST":
        form = BlogPostForm(request.POST, request.FILES)
        if form.is_valid():
            post = form.save(commit=False)
            post.author = request.user
            post.published_date = timezone.now()
            post.save()
            return redirect(post_detail, post.pk)
    else:
        form = BlogPostForm()
        return render(request, 'blogpostform.html', {'form': form})
Beispiel #10
0
def edit_post(request, id):
   post = get_object_or_404(Post, pk=id)
   if request.method == "POST":
       form = BlogPostForm(request.POST, request.FILES, instance=post)
       if form.is_valid():
           post = form.save(commit=False)
           post.author = request.user
           post.published_date = timezone.now()
           post.save()
           return redirect(post_detail, post.pk)
   else:
       form = BlogPostForm(instance=post)
       return render(request, 'blogpostform.html', {'form': form})
Beispiel #11
0
def edit_post(request, id):
    post = get_object_or_404(Post, pk=id)
    if request.method == "POST":
        form = BlogPostForm(request.POST, request.FILES, instance=post)
        if form.is_valid():
            post = form.save(commit=False)
            #post.author = request.user
            post.published_date = timezone.now()
            post.save()
            return redirect(post_detail, post.pk)
    else:
        form = BlogPostForm(instance=post)

    return render(request, 'blogpostform.html', {'form': form})
Beispiel #12
0
def new_post(request):
    if request.method == "POST":
        form = BlogPostForm(request.POST, request.FILES)
        if form.is_valid():
            post = form.save(commit=False)
            post.author = request.user
            post.published_date = timezone.now()
            post.save()
            return redirect(post_detail, post.pk)

    else:
        form = BlogPostForm

    return render(request, 'blogpostform.html', {'form': form})