view data/plugin/macro/ @ 625:f4e63b74b969

FormSubmit: adapt to werkzeug MultiDict
author Thomas Waldmann <tw AT waldmann-edv DOT de>
date Mon, 25 Mar 2013 17:47:30 +0100
parents 01fc8ba9809b
children 127da830be6c
line wrap: on
line source
# -*- coding: iso-8859-1 -*-
    MoinMoin - arnica

    This macro is used to call the arnica parser,
    it is just a thin wrapper around it.

    Based on Gallery2/gallery2image, (c) 2005-2008 by MoinMoin:ReimarBauer

    @copyright: 2008-2012 by MoinMoin:ReimarBauer
    @license: GNU GPL, see COPYING for details.
from MoinMoin import wikiutil

class arnica:
    def __init__(self, macro, args):
        self.macro = macro
        self.formatter = macro.formatter
        self.args = args

    def renderInPage(self):
        arnica_parser = wikiutil.importPlugin(self.macro.cfg, 'parser', 'text_x_arnica', 'Parser')
        if arnica_parser is None:
            return self.formatter.text("Please install the arnica parser!")

        ap = arnica_parser("", self.macro.request, format_args=self.args)
        if ap.init_settings:
            return ap.render(self.formatter)

def execute(macro, args):
    return arnica(macro, args).renderInPage()