def tabs(self): url = IURL(self.context, self.request) for id, view in self._tabs: yield { 'active': self.view.__class__ is view, 'title': title.get(view) or id, 'url': '%s/%s' % (url, id), }
def apply(self): data, errors = self.extractData() if errors: form.errors = errors return FAILURE content = self.getContent() apply_data_event(self.fields, content, data) raise HTTPFound(IURL(content, self.request))
def add(self): data, errors = self.extractData() if errors: form.errors = errors return FAILURE uid = str(uuid.uuid4()) # a simple UUID id to avoid conflict. content = Leaf(data['title'], data['body']) self.context[uid] = content raise HTTPFound(IURL(self.context, self.request))
def __call__(self, form): data, errors = form.extractData() if errors: form.submissionError = errors return FAILURE apply_data_event(form.fields, form.getContentData(), data) message(self.successMessage) url = str(IURL(form.context, form.request)) return SuccessMarker('Updated', True, url=url)
def tabs(self): url = IURL(self.context, self.request) result = [] for id, view in self._tabs: result.append( { 'active': self.view.__class__ is view, 'title': title.get(view) or id, 'url': '%s/%s' % (url, id), }) result.sort(key=operator.itemgetter('title')) return result
def __call__(self, form): self.form=form data, errors = form.extractData() if errors: form.submissionError = errors return FAILURE apply_data_event(form.fields, form.getContentData(), data) message(_(u"Content updated")) form.postProcess() baseURL = str(IURL(form.context, form.request)) url=self.newURL(baseURL) return SuccessMarker('Updated', True, url=url)
def __call__(self, form): data, errors = form.extractData() if errors: form.submissionError = errors return FAILURE obj = self.factory() set_fields_data(form.fields, obj, data) notify(ObjectCreatedEvent(obj)) form.context.add(obj) message(self.successMessage) url = str(IURL(obj, form.request)) return SuccessMarker('Added', True, url=url)
def update(self): # We get the real context menu_context = self.getMenuContext() # Get the MenuContext and calculate its url self.context_url = str(IURL(menu_context, self.request)) # Get the viewlets, sort them and update them self.viewlets = sort_components( list( query_components(menu_context, self.request, self.view, self, interface=IMenuEntry)))
def __call__(self, form): content = form.getContentData().getContent() if ILocation.providedBy(content): container = content.__parent__ name = content.__name__ if name in container: try: del container[name] form.status = self.successMessage message(form.status) url = str(IURL(container, form.request)) return SuccessMarker('Deleted', True, url=url) except ValueError: pass form.status = self.failureMessage message(form.status) return FAILURE
def __call__(self, form): self.form=form data, errors = form.extractData() if errors: form.submissionError = errors return FAILURE obj= form.factory() form.new=obj context=form.context set_fields_data(form.fields, obj, data) notify(ObjectCreatedEvent(obj)) name=data['__name__'] newName=uniqueName(context,name,ofType="#") context[newName]=obj message(_(u"Content created")) baseURL = str(IURL(obj, form.request)) self.new=form.new=obj url=self.newURL(baseURL) form.new.postProcess() return SuccessMarker('Added', True, url=url,code=307)
def __call__(self, form): content = form.getContentData().getContent() url = str(IURL(content, form.request)) return SuccessMarker('Aborted', True, url=url)
def url(self): content = self.form.getContentData().getContent() return IURL(content, self.request)