def generateZope3Interface(self, element, template, **kw): log.info("%sGenerating zope3 interface '%s'.", ' ', element.getName()) templ = utils.readTemplate(template) d = { 'klass': element, 'generator': self, 'parsed_class': element.parsed_class, 'builtins': __builtins__, 'utils': utils, } d.update(__builtins__) d.update(kw) res = HTML(templ, d)() return res
def generateZopeClass(self, element, template, nolog=False, **kw): if not nolog: log.info("%sGenerating Zope class '%s'.", ' ' * 4 * self.infoind, element.getName()) templ = utils.readTemplate(template) d = { 'klass': element, 'generator': self, 'parsed_class': element.parsed_class, 'builtins': __builtins__, 'utils': utils, } d.update(__builtins__) d.update(kw) res = HTML(templ, d)() return res
def get(self, md5hash): """Instantiate a current user instance of the User model and render the html/adminentry.html page if this user is an administrator. :postcondition: a redirection to the logout page if user is not admin. :postcondition: a rendered version of the html/adminentry.html page if the user is admin. """ curuser = models.User(self) admin = models.Admin(self) if not curuser.is_admin(): self.redirect("/logout") else: items = {} items["useSSL"] = useSSL items["name"] = curuser.get_email() items["assignment"] = admin.get_assignment(md5hash) items["tasks"] = curuser.get_tasks(md5hash) items["next"] = len(items["tasks"]) + 1 items["testTemplate"] = utils.readTemplate("testTemplate.py") self.render('html/adminentry.html', title="ADM server", items=items)
def get_source_template(): return readTemplate("testRunTemplate.py")
def generateWorkflows(self): statemachines = self.package.getStateMachines() if not statemachines: return d = { 'package': self.package, 'generator': self, 'wfgenerator': self, 'atgenerator': self.atgenerator, 'builtins': __builtins__, 'utils' :utils, } d.update(__builtins__) extDir = os.path.join(self.package.getFilePath(), 'Extensions') self.atgenerator.makeDir(extDir) for sm in statemachines: d['statemachine'] = sm sm_name = utils.cleanName(sm.getName()) # Generate workflow script log.info("Generating workflow '%s'.", sm_name) templ = utils.readTemplate('create_workflow.py') scriptpath = os.path.join(extDir, sm_name + '.py') filesrc = self.atgenerator.readFile(scriptpath) or '' parsedModule = PyModule(filesrc, mode='string') d['parsedModule'] = parsedModule dtml = HTML(templ, d) res = dtml() of = self.atgenerator.makeFile(scriptpath) of.write(res) of.close() # Generate workflow transition script, if any if sm.getAllTransitionActionNames(): log.info("Generating workflow script(s).") templ = utils.readTemplate('create_workflow_script.py') scriptpath = os.path.join(extDir, sm_name + '_scripts.py') filesrc = self.atgenerator.readFile(scriptpath) or '' parsedModule = PyModule(filesrc, mode='string') d['parsedModule'] = parsedModule dtml = HTML(templ, d) res = dtml() of = self.atgenerator.makeFile(scriptpath) of.write(res) of.close() else: log.info("Workflow %s has no script(s)." % sm_name) del d['statemachine'] log.debug("Creating InstallWorkflows.py file.") templ = utils.readTemplate('InstallWorkflows.py') scriptpath = os.path.join(extDir, 'InstallWorkflows.py') filesrc = self.atgenerator.readFile(scriptpath) or '' parsedModule = PyModule(filesrc, mode='string') d['parsedModule'] = parsedModule dtml = HTML(templ, d) res = dtml() of = self.atgenerator.makeFile(scriptpath) of.write(res) of.close()