if request.POST:
import datetime
article_data = request.POST.copy()
article_data["lang"] = request.LANGUAGE_CODE
article_data["author"] = str(request.user.id)
errors = manipulator.get_validation_errors(article_data)
if "body" in article_data and "body" not in errors:
if len(article_data["body"]) < 200:
errors["body"] = ["Your article was too short."]
if not errors and "last_article" in request.session:
if datetime.datetime.now() - request.session["last_article"] > datetime.timedelta(seconds=300):
errors["name"] = ["You must wait to submit another article."]
if not errors:
manipulator.do_html2python(article_data)
article_data["visible"] = "1"
new_article = manipulator.save(article_data)
request.session["last_article"] = datetime.datetime.now()
if new_article.visible:
return HttpResponseRedirect(new_article.get_absolute_url())
else:
return render_template(request, 'articles/submit-confirm.html', {})
else:
article_data = errors = {}