예제 #1
0
def notfound(request, urls):
    rule_iterator = sorted(urls.map.iter_rules(),
                           key=lambda x: (x.subdomain, x.rule))
    rules = [escape(repr(rule)) for rule in rule_iterator]
    return Response(render_template('portal/404.html',
                                    modifier=context_modifier,
                                    context={'url_list': rules}),
                    status=404)
예제 #2
0
def confirm_action(request, message, endpoint, **kwargs):
    """Flash a csrf protected "Are you sure?" form."""
    from inyoka.core.api import render_template, href
    from inyoka.core.forms import Form
    form = Form(request.form)
    if form.validate_on_submit():
        return 'confirm' in request.form
    request.flash(render_template('utils/confirm.html', {
        'message': message,
        'form': form,
        'destination': href(endpoint, **kwargs)
    }), html=True)
    return False
예제 #3
0
 def articles_delete(self, request, slug):
     article = Article.query.filter_by(slug=slug).one()
     if 'cancel' in request.form:
         request.flash(_(u'Action canceled'))
     elif request.method in ('POST', 'PUT') and 'confirm' in request.form:
         db.session.delete(article)
         db.session.commit()
         request.flash(_(u'The article “%s” was deleted successfully.'
                       % article.title))
         return redirect_to('news/articles')
     else:
         request.flash(render_template('news/admin/article_delete.html', {
             'article': article
         }), html=True)
     return redirect_to(article, action='edit')
예제 #4
0
def notfound(request, urls):
    rule_iterator = sorted(urls.map.iter_rules(),
                           key=lambda x: (x.subdomain, x.rule))
    rules = [escape(repr(rule)) for rule in rule_iterator]
    return Response(render_template('portal/404.html', modifier=context_modifier,
        context={'url_list': rules}), status=404)