Esempio n. 1
0
def edit_article(request, slug, template_name='article/article_edit.html'):
    article = Article.objects.get(titre_slug=slug)
    if request.method == 'POST': # If the form has been submitted...
        preview = request.POST.get('preview', None)
        editpreview = request.POST.get('editpreview', None)
        new_form = ArticleForm(request.POST, instance=article)
        if not editpreview and new_form.is_valid():
            new_article = new_form.save(commit=False)
            if not preview:
                new_article.save()
                new_article.generate_slug()
                LogActivity.recordActivity(qui=request.user, quoi=new_article, comment="a modifi&eacute; l'article : <a href='%s'>%s</a>" % (article.get_absolute_url(), article.titre))
                # Redirect after POST
                return HttpResponseRedirect(article.get_absolute_url())
            else:
                return internal_view_article(request, new_article, urlretour=reverse("editarticle", kwargs={'slug': slug}))
        else:
            form = new_form
    else:
        form = ArticleForm(instance=article)

    return render_to_response(template_name,
                              RequestContext(request,
                                             {'form': form,
                                              'full': True,
                                              'article': article,
                                              }))
Esempio n. 2
0
def create_new_article(request, template_name='article/article_add.html'):
    if request.method == 'POST': # If the form has been submitted...
        preview = request.POST.get('preview', None)
        editpreview = request.POST.get('editpreview', None)
        new_form = ArticleForm(request.POST)
        if not editpreview and new_form.is_valid():
            new_article = new_form.save(commit=False)
            if not preview:
                new_article.save()
                new_article.generate_slug()
                LogActivity.recordActivity(qui=request.user, quoi=new_article, comment="a publi&eacute; un nouvel article : <a href='%s'>%s</a>" % (new_article.get_absolute_url(), new_article.titre))
                subscribe_article(new_article.auteur.get_profile(), new_article)
                ThreadMail(new_article).start()
                # Redirect after POST
                return HttpResponseRedirect(new_article.get_absolute_url())
            else:
                return internal_view_article(request, new_article, urlretour=reverse("addarticle"))
        else:
            form = new_form
    else:
        init = {}
        init['auteur'] = request.user.pk
        form = ArticleForm(initial=init)
    return render_to_response(template_name,
                              RequestContext(request,
                                             {'form': form,
                                              'full': True,
                                              }))