From c6245987a20934ac62c58886105a6d346033c477 Mon Sep 17 00:00:00 2001 From: helmutm Date: Mon, 19 Jan 2009 16:10:20 +0000 Subject: [PATCH] make create forms configurable on view-class level git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@3161 fd906abe-77d9-0310-91a1-e0d9ade77398 --- browser/form.py | 20 ++++++++++++++------ browser/form_macros.pt | 5 ++--- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/browser/form.py b/browser/form.py index 8849868..d68e74f 100644 --- a/browser/form.py +++ b/browser/form.py @@ -251,20 +251,28 @@ class CreateObjectForm(ObjectForm): dialog_name = 'create' @Lazy - def title(self): - if self.request.form.get('fixed_type'): - return _(u'Create %s') % self.typeConcept.title - else: - return _(self.defaultTitle) + def fixedType(self): + return self.request.form.get('fixed_type') @Lazy def defaultTypeToken(self): return (self.controller.params.get('form.create.defaultTypeToken') or '.loops/concepts/textdocument') + @Lazy + def typeToken(self): + return self.request.form.get('form.type') or self.defaultTypeToken + + @Lazy + def title(self): + if self.fixedType: + return _(u'Create %s') % self.typeConcept.title + else: + return _(self.defaultTitle) + @Lazy def typeConcept(self): - typeToken = self.request.get('form.type') or self.defaultTypeToken + typeToken = self.typeToken if typeToken: return self.loopsRoot.loopsTraverse(typeToken) diff --git a/browser/form_macros.pt b/browser/form_macros.pt index 32697d9..8e31013 100644 --- a/browser/form_macros.pt +++ b/browser/form_macros.pt @@ -65,9 +65,8 @@ id="dialog_form" class="dialog" tal:define="qualifier request/qualifier | string:resource; innerForm request/inner_form | string:inner_form.html; - typeToken python: request.get('form.type') - or view.defaultTypeToken; - fixedType request/fixed_type | nothing"> + typeToken view/typeToken; + fixedType view/fixedType">