コード例 #1
0
ファイル: Core.py プロジェクト: chifflier/prewikka
def init_dataset(dataset, config, request):
    interface = config.interface
    dataset["document.title"] = "[PREWIKKA]"
    dataset["document.charset"] = localization.getCurrentCharset()
    dataset["document.css_files"] = [ "prewikka/css/style.css" ]
    dataset["document.js_files"] = [ "prewikka/js/jquery.js", "prewikka/js/functions.js" ]
    dataset["prewikka.title"] = interface.getOptionValue("title", " ")
    dataset["prewikka.software"] = interface.getOptionValue("software", " ")
    dataset["prewikka.place"] = interface.getOptionValue("place", " ")
    dataset["prewikka.date"] = localization.getDate()

    val = config.general.getOptionValue("external_link_new_window", "true")
    if (not val and config.general.has_key("external_link_new_window")) or (val == None or val.lower() in ["true", "yes"]):
        dataset["prewikka.external_link_target"] = "_blank"
    else:
        dataset["prewikka.external_link_target"] = "_self"

    dataset["arguments"] = []
    for name, value in request.arguments.items():
        if name in ("_login", "_password"):
            continue

        if name == "view" and value == "logout":
            continue

        dataset["arguments"].append((name, utils.toUnicode(value)))
コード例 #2
0
ファイル: main.py プロジェクト: 4sp1r3/prewikka
    def _setupDataSet(self, dataset, request, user):
        login = user.name if user else None

        dataset["document.base_url"] = request.getBaseURL()
        dataset["document.fullhref"] = "/".join(request.getViewElements()) # Needed for view that aren't completly ported to ajax
        dataset["document.href"] = "/".join(request.getViewElements()[0:2]) # Subview are hidden
        dataset["document.request_method"] = request.getMethod()
        dataset["document.query_string"] = request.getQueryString()
        dataset["document.charset"] = localization.getCurrentCharset()
        dataset["toplayout_extra_content"] = ""
        dataset["prewikka.user"] = user
コード例 #3
0
ファイル: Core.py プロジェクト: chifflier/prewikka
            self._cleanupView(view_object)

        except Error.PrewikkaUserError, e:
            if e._log_priority:
                self._env.log.log(e._log_priority, unicode(e), request=request, user=login or e._log_user)

            self._setupDataSet(e.dataset, request, user, view=view)
            dataset, template_name = e.dataset, e.template

        except Exception, e:
            error = self.prepareError(e, request, user, login, view)
            dataset, template_name = error.dataset, error.template

        #self._printDataSet(dataset)
        template = load_template(template_name, dataset)

        # We check the character set after loading the template,
        # since the template might trigger a language change.
        dataset["document.charset"] = localization.getCurrentCharset()
        resolve.process(self._env.dns_max_delay)

        try:
                request.content = template.respond()
        except Exception, e:
            error = self.prepareError(e, request, user, login, view)
            request.content = load_template(error.template, error.dataset).respond()

        request.content = request.content.encode(encoding, "xmlcharrefreplace")
        request.sendResponse()