Ejemplo n.º 1
0
    def editroot(self):
        self.ResetFlashMessages()
        defaultroot = self.context.app.root()
        form = HTMLForm(view=self,
                        context=defaultroot,
                        loadFromType=self.context.configuration)
        form.use_ajax = True
        form.Setup(subset="edit")

        def updateRoot(data):
            # map pool_filename to deault root
            defaultroot.Update(data, user=self.User())
            if "pool_filename" in data:
                del data["pool_filename"]
            self.context.Update(data, user=self.User())

        form.ListenEvent("success", updateRoot)

        default = form.LoadObjData(defaultroot)
        result, data, action = form.Process(redirectSuccess="page_url",
                                            defaultData=default)
        return {
            u"content": data,
            u"result": result,
            u"cmsview": self,
            u"head": form.HTMLHead()
        }