class ErsteHilfeKontakt(grok.Viewlet): grok.context(ErsteHilfe) grok.view(ErsteHilfeExternal) grok.viewletmanager(uvcsite.IAboveContent) def render(self): return '<a href="%s" class="btn pull-right"> Kontakt </a>' % self.view.url(self.context, 'kontakt')
class LadyViewlet(grok.Viewlet): grok.context(Interface) grok.viewletmanager(Pot) grok.view(FireView) def render(self): return 'Lady Viewlet'
class Basic(steps.Basic): grok.context(ISUnfallanzeige) grok.view(UnfallanzeigenWizard) @property def fields(self): adr = self.request.principal.getAdresse() oid = adr['enroid'] session = Session() s = select([traegeruaz], and_(traegeruaz.c.trgrcd == str(oid))) res = session.execute(s).fetchone() fields1 = uvcsite.Fields(ISUnfallanzeige).select('title') fields3 = uvcsite.Fields(ISUnfallanzeige).select('anspname', 'anspfon') fields2 = uvcsite.Fields(ISUnfallanzeige).select('traeger') fields4 = uvcsite.Fields(ISUnfallanzeige).select('unfus2') fields1['title'].htmlAttributes = {'maxlength': 70} fields3['anspname'].htmlAttributes = {'maxlength': 30} fields3['anspfon'].htmlAttributes = {'maxlength': 20} fields4['unfus2'].htmlAttributes = {'maxlength': 30} fields4['unfus2'].title = u'Leiter (Beauftragter) der Einrichtung' fields4['unfus2'].description = u'' fields2['traeger'].mode = "hiddendisplay" if res['trgna1'][:6] == 'PSEUDO': fields2['traeger'].defaultValue = res['trgmnr'] else: fields2['traeger'].defaultValue = res['trgna1'].strip( ) + ' ' + res['trgna2'].strip() return fields1 + fields2 + fields3 + fields4 def update(self): super(Basic, self).update() seite1css.need()
class BlogIndex(grok.Viewlet): grok.context(Blog) grok.viewletmanager(Main) grok.view(Index) def entries(self): return lastEntries(10)
class ExtraViewsViewlet(grok.ViewletManager): grok.order(20) grok.baseclass() grok.view(Interface) grok.name('extra-views') grok.viewletmanager(uvcsite.browser.layout.slots.interfaces.IAboveContent) grok.require("zope.Public") # menu_factory = menus.ExtraViews menu_factory = object() def update(self): super().update() if not len(self.menu.viewlets) or ISimpleForm.providedBy(self.view): self.actions = None else: self.actions = self.compute_actions(self.menu.viewlets) def compute_actions(self, viewlets): for action in viewlets: selected = action.viewName == self.view.__name__ context_url = self.menu.view.url(self.menu.context) url = selected and None or "%s/%s" % (context_url, action.viewName) yield { 'id': action.__name__, 'url': url, 'title': action.title or action.__name__, 'selected': selected, 'class': (selected and 'selected ' + self.menu.menu_class or self.menu.menu_class), }
class BasicInformation(uvcsite.Step): grok.context(IUnfallanzeige) grok.view(UnfallanzeigeWizard) grok.order(60) ignoreContent = False label = form_name = u'Allgemeine Informationen zum Unternehmen' fields = base.Fields(IUnfallanzeige).select('unfus3', 'unfus2')
class AjaxMethods(ViewExtension): grok.view(SimpleView) def getfoo(self): return self.view.foo + self.context.bar def getbar(self): return "EGEO"
class Step2(uvcsite.Step): grok.title('Step2') grok.context(uvcsite.IUVCSite) grok.view(MyWizard) fields = uvcsite.Fields(IPerson).select('vorname') ignoreContent = False label = "Step 2 GANZ LANGER STEP"
class SideBar(grok.ViewletManager): """a viewlet manager used to hold some viewlets. It can be used as a sidebar """ implements(ISideBar) grok.name('sidebar') grok.view(Interface) grok.context(Interface)
class Step3(uvcsite.Step): grok.title('Step3') grok.context(uvcsite.IUVCSite) grok.view(MyWizard) fields = uvcsite.Fields(IPerson).select('name') ignoreContent = False label = "Step 3"
class AddMenuViewlet(grok.Viewlet): grok.view(Index) grok.order(30) grok.context(uvcsite.content.interfaces.IProductFolder) grok.viewletmanager(uvcsite.browser.layout.slots.interfaces.ITabs) def render(self): template = getMultiAdapter((self, self.request), IPageTemplate) return template()
class Finish(uvcsite.Step): grok.context(IUnfallanzeige) grok.view(UnfallanzeigeWizard) grok.order(70) ignoreContent = False label = form_name = u'Versand und Druck der Unfallanzeige' fields = base.Fields(IUnfallanzeige).select('behandlung') fields['behandlung'].mode = "radio"
class AddMenuViewlet(grok.Viewlet): grok.view(Index) grok.order(30) grok.context(IProductFolder) grok.viewletmanager(interfaces.ITabs) def render(self): template = getMultiAdapter((self, self.request), IPageTemplate) return template()
class ThreadInfo(grok.Viewlet): grok.order(600) grok.context(IMessage) grok.require('uvc.AddContent') grok.view(uvcsite.AddForm) grok.viewletmanager(uvcsite.IAboveContent) def render(self): # MAKE ME BETTER return "Sie antworten auf folgende Nachricht: %s" % self.context.message
class Mother(uvcsite.SubForm): grok.context(uvcsite.IUVCSite) grok.view(SplitContact) fields = uvcsite.Fields(IPerson).omit('name') label = "Mother" @uvcsite.action(u'Abschicken') def handleButton(self): data, errors = self.extractData()
class ThreadInfo(grok.Viewlet): grok.order(600) grok.context(IMessage) grok.require('uvc.AddContent') grok.view(uvcsite.AddForm) grok.viewletmanager(uvcsite.IAboveContent) grok.layer(ILayer) @property def daten(self): return self.context
class BasicInformation(steps.BasicInformation): grok.context(ISUnfallanzeige) grok.view(UnfallanzeigenWizard) label = u'Versand und Druck der Unfallanzeige' fields = uvcsite.Fields(ISUnfallanzeige).select('behandlung') #fields = uvcsite.Fields(ISUnfallanzeige).select('unfus2', 'behandlung') fields['behandlung'].mode = "radio" def update(self): super(BasicInformation, self).update() buttonjs.need()
class EntryEdit(grok.Viewlet): grok.context(Entry) grok.viewletmanager(Main) grok.view(Edit) def update(self): self.form = getMultiAdapter((self.context, self.request), name='entryeditform') self.form.update_form() def render(self): return self.form.renderedPreview + self.form.render()
class AddEntryViewlet(grok.Viewlet): grok.viewletmanager(Main) grok.view(AddEntry) grok.context(Blog) def update(self): self.form = getMultiAdapter((self.context, self.request), name='addentryform') self.form.update_form() def render(self): return self.form.renderedPreview + self.form.render()
class BlogEdit(grok.Viewlet): grok.context(Blog) grok.viewletmanager(Main) grok.view(Edit) def update(self): self.form = getMultiAdapter((self.context, self.request), name='blogeditform') self.form.update_form() def render(self): return self.form.render()
class AddComment(grok.Viewlet): grok.context(Entry) grok.viewletmanager(Main) grok.view(Index) grok.order(8) def update(self): self.form = getMultiAdapter((self.context, self.request), name='addcommentform') self.form.update_form() def render(self): return self.form.renderedPreview + self.form.render()
class EditarUsuarioContenido(grok.Viewlet): grok.viewletmanager(IContenido) grok.context(Usuarios) grok.view(EditarUsuarioView) def update(self): self.form = component.getMultiAdapter((self.context, self.request), name='editarusuario') self.form.update_form() if self.request.method == 'POST': self.view.url('index') def render(self): return self.form.render()
class Basic(uvcsite.Step): grok.context(Unfallanzeige) grok.view(UnfallanzeigeWizard) grok.order(10) label = u'Basis Informationen' ignoreContent = False fields = base.Fields(IUnfallanzeige).select( 'title', 'unfustdor', 'unfuname', 'unfustrasse', 'unfunr', 'unfuplz', 'unfuort', 'anspname', 'anspfon', ) fields['unfustdor'].mode = "radio" def update(self): super(Basic, self).update() resources.step1.need() def validateStep(self, data, errors): if data.get('unfustdor') == 'In einer Zweigniederlassung': if data.get('unfuort') == NO_VALUE: errors.append( Error(u'Bitte das Feld Ort ausfüllen.', identifier='form.basic.field.unfuort')) if data.get('unfustrasse') == NO_VALUE: errors.append( Error(u'Bitte das Feld Strasse ausfüllen.', identifier='form.basic.field.unfustrasse')) if data.get('unfunr') == NO_VALUE: errors.append( Error(u'Bitte das Feld Nummer ausfüllen.', identifier='form.basic.field.unfunr')) if data.get('unfuname') == NO_VALUE: errors.append( Error(u'Bitte das Feld Name ausfüllen.', identifier='form.basic.field.unfuname')) if data.get('unfuplz') == NO_VALUE: errors.append( Error(u'Bitte das Feld Plz ausfüllen.', identifier='form.basic.field.unfuplz')) return errors
class AccidentI(steps.AccidentI): grok.context(ISUnfallanzeige) grok.view(UnfallanzeigenWizard) fields = uvcsite.Fields(ISUnfallanzeige).select('unfdatum', 'unfzeit', 'unfort', 'unfhg1', 'unfhg2', 'unfkn1', 'unfkn2') fields['unfhg2'].mode = 'radio' fields['unfkn2'].mode = 'radio' def update(self): super(AccidentI, self).update() seite3css.need() seite3js.need()
class LoginContenido(grok.Viewlet): grok.viewletmanager(IContenido) grok.context(Interface) grok.view(Login) def update(self): self.form = component.getMultiAdapter((self.context, self.request), name='login-form') self.form.update_form() if self.request.method == 'POST': # app = self.context.__parent__ # self.__parent__.redirect(self.__parent__.url(obj=app)) self.view.url(name='index') def render(self): return self.form.render()
class AddSeccionContenido(grok.Viewlet): grok.viewletmanager(IContenido) grok.context(ContenedorSecciones) grok.view(AddSeccionView) def update(self): self.form = component.getMultiAdapter((self.context, self.request), name='addseccion') self.form.update_form() if self.request.method == 'POST': # app = self.context.__parent__ # self.__parent__.redirect(self.__parent__.url(obj=app)) self.view.url(name='index') def render(self): return self.form.render()
class TForm(SubTableForm): grok.title('TableForm') grok.context(uvcsite.IUVCSite) grok.require('zope.Public') grok.view(TF) prefix = "G" tableFields = uvcsite.Fields(IFrage) tableActions = TableActions(MailAction(u'dd')) @uvcsite.action(u'Speichern') def handle_save(self): data, errors = self.extractData() print data, errors def getItems(self): return [dict(frage=1), dict(frage=2), dict(frage=3)]
class AccidentI(uvcsite.Step): grok.context(IUnfallanzeige) grok.view(UnfallanzeigeWizard) grok.order(40) ignoreContent = False label = form_name = u'Informationen zum Unfall Teil I' fields = base.Fields(IUnfallanzeige).select('unfdatum', 'unfzeit', 'unfort_detail', 'unfort', 'unfhg1', 'unfhg2', 'unfkn1', 'unfkn2') fields['unfhg2'].mode = "radio" fields['unfkn2'].mode = "radio" def update(self): super(uvcsite.Step, self).update() resources.step4.need()
class Overview(grok.Viewlet): grok.view(UnfallanzeigeWizard) grok.viewletmanager(uvcsite.IExtraInfo) grok.context(IUnfallanzeige) def available(self): if int(self.view.step) + 1 == len(self.view.allSubforms): return True return False def getTitle(self, term, vocab_name): vocab = zope.component.getUtility( zope.schema.interfaces.IVocabularyFactory, vocab_name)(None) # return vocab.getTrem(term).title try: return vocab.getTerm(term).title except: return term
class PDF(grok.View): grok.view(Altdaten) grok.context(Altdaten) grok.baseclass() def url(self): raise NotImplementedError def render(self): oid = self.request.get('id') principal = self.request.principal.id URL = self.url() server = xmlrpclib.ServerProxy(URL) content = server.asRemotePdf(oid, principal) RESPONSE = self.request.response RESPONSE.setHeader('content-type', 'application/pdf') RESPONSE.setHeader('content-disposition', 'attachment; filename=unfallanzeige.pdf') return base64.decodestring(content)