예제 #1
0
class Parties(NavigationItem):
    grok.context(IBuilderApp)
    title = u'Parties'
    grok.order(20)
    
    def update(self):
        self.link = self.view.url(self.context, 'parties')
예제 #2
0
class ProfileParties(NavigationItem):
    grok.context(IUserProfile)
    title = u'Parties'
    grok.order(20)
    
    def update(self):
        self.link = self.view.url(grok.getApplication(), 'parties')
예제 #3
0
class Profile(NavigationItem):
    grok.context(IBuilderApp)
    title = u'Profile'
    grok.order(10)

    def update(self):
        self.link = self.view.url(self.context, 'profile')
예제 #4
0
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),
                }
예제 #5
0
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')
예제 #6
0
파일: blog.py 프로젝트: bendavis78/zope
class HtmlHead(grok.Viewlet):
    grok.viewletmanager(Head)
    grok.order(0)

    def getAppTitle(self):
        """Get the title of our blog.
        """
        return grok.getSite().title
예제 #7
0
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()
예제 #8
0
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"
예제 #9
0
class UnfallanzeigeRegistration(uvcsite.ProductRegistration):
    grok.name('KinderUnfallanzeige')
    grok.title('Kinder Unfallanzeige')
    grok.description('Kinder Unfallanzeige')
    grok.order(51)
    uvcsite.productfolder('ukh.spsuaz.components.SUnfallanzeigen')

    def action(self):
        return "%sSunfallanzeigen/add" % uvcsite.getHomeFolderUrl(self.request)
예제 #10
0
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()
예제 #11
0
class DatenMenuItem(uvcsite.SubMenu):
    grok.require("zope.View")
    grok.order(93)
    grok.context(Interface)
    grok.title("Meine Daten")
    grok.viewletmanager(uvcsite.IPersonalPreferences)

    @property
    def action(self):
        return self.view.url(get_account(self.request.principal.id), "meinedaten")
예제 #12
0
class KontaktMenuItem(uvcsite.SubMenu):
    grok.require('zope.View')
    grok.order(94)
    grok.context(Interface)
    grok.title('Kontakt')
    grok.viewletmanager(uvcsite.IPersonalPreferences)

    @property
    def action(self):
        return self.view.url(get_account(self.request.principal.id), 'kontakt')
예제 #13
0
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
예제 #14
0
class PersonalPreferences(PersonalPreferencesViewlet):
    grok.order(1)
    grok.name('personalpreferencesviewlet')
    grok.layer(IAdHocLayer)
    grok.require('zope.View')
    base_template = ChameleonPageTemplateFile(
        'templates/personalpreferences.cpt')

    def render(self):
        return self.base_template.render(self)
예제 #15
0
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
예제 #16
0
class PersonalPanelEntry(PersonalPanelEntry):
    grok.name("ppe")
    title = u"Passwort ändern"
    grok.order(99)

    @property
    def action(self):
        return self.view.url(
            # Ausgeblendet, solange es nur Passwort ändern gibt
            # get_account(self.request.principal.id), "personalpanelview"
            get_account(self.request.principal.id), "changepassword"
        )
예제 #17
0
class HomeFolderMenuItem(uvcsite.MenuItem):
    """ Menu fuer das Logout """

    grok.require("zope.View")
    grok.order(90)
    grok.context(Interface)
    grok.title("Meine Dokumente")
    grok.viewletmanager(uvcsite.IPersonalPreferences)

    @property
    def action(self):
        return self.view.url(get_account(self.request.principal.id), "homefolder")
예제 #18
0
class Help(grok.Viewlet):
    grok.viewletmanager(uvcsite.IAboveContent)
    grok.context(interface.Interface)
    grok.order(9999)

    def render(self):
        helpmanager = component.getMultiAdapter(
            (self.context, self.request, self.view),
            viewlet.interfaces.IViewletManager,
            name=u'uvc.hilfen')
        helpmanager.update()
        return helpmanager.render()
예제 #19
0
class AuskunftEntry(uvcsite.MenuItem):
    """ Ein Eintrag im Globalen Menu ohne Dropdown
        Achtung in der Zeile layout.menus.category
        dropdown=False
    """
    grok.title('Home')
    grok.viewletmanager(uvcsite.IGlobalMenu)
    grok.order(20000)

    @property
    def action(self):
        return self.view.url(self.context)
예제 #20
0
class LogoutMenu(uvcsite.MenuItem):
    """ Menu fuer das Logout """

    grok.require("zope.View")
    grok.order(99)
    grok.context(Interface)
    grok.title("Abmelden")
    grok.viewletmanager(uvcsite.IPersonalPreferences)

    @property
    def action(self):
        return self.view.application_url() + "/logout"
예제 #21
0
파일: entry.py 프로젝트: bendavis78/zope
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()
예제 #22
0
class FlashMessages(grok.Viewlet):
    grok.baseclass()
    grok.order(200)
    grok.context(Interface)
    grok.name('uvcsite.messages')
    grok.viewletmanager(IPageTop)

    def update(self):
        received = receive()
        if received is not None:
            self.messages = list(received)
        else:
            self.messages = []
예제 #23
0
class ChangePasswordMenu(uvc.menus.components.MenuItem):
    grok.context(IHomeFolder)
    #grok.require('zope.View')
    grok.order(50)
    grok.name('ChangePW')
    uvc.menus.directives.menu(
        uvcsite.browser.layout.slots.interfaces.IPersonalMenu)

    title = u"Passwort ändern"
    icon = u"fas fa-lock-open"

    def url(self):
        return self.view.url(IHomeFolder(self.request.principal),
                             'changepassword')
예제 #24
0
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
예제 #25
0
class PersonalPanel(uvcsite.browser.Page):
    """Page for Personal Properties
    """
    grok.name("personalpanelview")
    grok.order(35)
    grok.require("zope.View")
    grok.context(IHomeFolder)

    grok.title(u"Meine Einstellungen")
    title = u"Meine Einstellungen"
    description = u"Hier werden Einstellungen zu" " Ihrem Benutzerprofil \
        vorgenommen."

    def render(self):
        template = getMultiAdapter((self, self.request), IPageTemplate)
        return template()
예제 #26
0
class UserName(uvc.menus.components.MenuItem):
    grok.name("username")
    grok.title("USERSNAME")
    uvc.menus.directives.menu(
        uvcsite.browser.layout.slots.interfaces.IPersonalPreferences)
    grok.order(10)
    grok.require("zope.View")

    action = ""

    @property
    def title(self):
        return self.request.principal.title

    def url(self):
        return "#"
예제 #27
0
class MeinOrdner(uvc.menus.components.MenuItem):
    grok.context(Interface)
    grok.name("Mein Ordner")
    grok.order(20)
    grok.require("zope.View")
    uvc.menus.directives.menu(
        uvcsite.browser.layout.slots.interfaces.IPersonalPreferences)

    title = "Mein Ordner"

    def url(self):
        principal = self.request.principal
        if IUnauthenticatedPrincipal.providedBy(principal):
            return
        hf = IHomeFolder(principal, None)
        if hf:
            return urllib.parse.unquote(grok.util.url(self.request, hf))
        return ""
예제 #28
0
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()
예제 #29
0
파일: blog.py 프로젝트: bendavis78/zope
class Breadcrumbs(grok.Viewlet):
    grok.viewletmanager(Top)
    grok.context(Interface)
    grok.order(10)

    def parents(self):
        parent_list = getParents(self.context)
        parent_list.reverse()
        return parent_list[1:]

    def getName(self, obj):
        """Get a name for an object.
        """
        if IBlog.providedBy(obj):
            return obj.title
        elif isinstance(obj, Entries):
            return 'All Entries'
        return getattr(obj, '__name__', '')
예제 #30
0
class PersonalPanelEntry(uvc.menus.components.MenuItem):
    grok.name("personalpanelentry")
    grok.require("zope.View")
    grok.order(35)
    uvc.menus.directives.menu(
        uvcsite.browser.layout.slots.interfaces.IPersonalPreferences)

    title = "Meine Einstellungen"

    def url(self):
        principal = self.request.principal
        if IUnauthenticatedPrincipal.providedBy(principal):
            return
        hf = IHomeFolder(principal, None)
        if None:
            return ""
        viewname = "personalpanelview"
        return urllib.parse.unquote(grok.util.url(self.request, hf, viewname))