Esempio n. 1
0
 def editbar_links(self):
     if self.request.is_manager:
         return [
             Link(text=_("Create PDF"),
                  url=self.request.link(self.model, 'create-pdf'),
                  attrs={'class': 'create-pdf'}),
             LinkGroup(title=_("Add"),
                       links=[
                           Link(text=_("Agency"),
                                url=self.request.link(self.model,
                                                      name='new'),
                                attrs={'class': 'new-agency'})
                       ]),
         ]
Esempio n. 2
0
class PersonMutationHandler(Handler):

    handler_title = _("Person")

    @cached_property
    def collection(self):
        return ExtendedPersonCollection(self.session)

    @cached_property
    def person(self):
        return self.collection.by_id(self.data['handler_data']['id'])

    @property
    def deleted(self):
        return self.person is None

    @cached_property
    def email(self):
        return self.data['handler_data']['submitter_email']

    @property
    def title(self):
        return self.person.title

    @property
    def subtitle(self):
        return _("Mutation")

    @cached_property
    def group(self):
        return _("Person")

    def get_summary(self, request):
        layout = ExtendedPersonLayout(self.person, request)
        return render_macro(
            layout.macros['display_person_mutation'], request, {
                'person': self.person,
                'message': self.data['handler_data']['submitter_message'],
                'layout': layout
            })

    def get_links(self, request):
        return []
Esempio n. 3
0
class AgencyMutationHandler(Handler):

    handler_title = _("Agency")

    @cached_property
    def collection(self):
        return ExtendedAgencyCollection(self.session)

    @cached_property
    def agency(self):
        return self.collection.by_id(self.data['handler_data']['id'])

    @property
    def deleted(self):
        return self.agency is None

    @cached_property
    def email(self):
        return self.data['handler_data']['submitter_email']

    @property
    def title(self):
        return self.agency.title

    @property
    def subtitle(self):
        return _("Mutation")

    @cached_property
    def group(self):
        return _("Agency")

    def get_summary(self, request):
        layout = AgencyLayout(self.agency, request)
        return render_macro(
            layout.macros['display_agency_mutation'], request, {
                'agency': self.agency,
                'message': self.data['handler_data']['submitter_message'],
                'layout': layout
            })

    def get_links(self, request):
        return []
Esempio n. 4
0
 def editbar_links(self):
     if self.request.is_manager:
         return [
             Link(text=_("Edit"),
                  url=self.request.link(self.model, 'edit'),
                  attrs={'class': 'edit-link'}),
             Link(text=_("Delete"),
                  url=self.csrf_protected_url(self.request.link(
                      self.model)),
                  attrs={'class': 'delete-link'},
                  traits=(Confirm(
                      _("Do you really want to delete this membership?"),
                      _("This cannot be undone."), _("Delete membership"),
                      _("Cancel")),
                          Intercooler(request_method='DELETE',
                                      redirect_after=self.request.link(
                                          self.model.agency))))
         ]
Esempio n. 5
0
 def group(self):
     return _("Agency")
Esempio n. 6
0
 def subtitle(self):
     return _("Mutation")
Esempio n. 7
0
 def group(self):
     return _("Person")
Esempio n. 8
0
 def editbar_links(self):
     if self.request.is_manager:
         return [
             Link(text=_("Edit"),
                  url=self.request.link(self.model.proxy(), 'edit'),
                  attrs={'class': 'edit-link'}),
             Link(text=_("Move"),
                  url=self.request.link(self.model.proxy(), 'move'),
                  attrs={'class': 'move'}),
             Link(text=_("Delete"),
                  url=self.csrf_protected_url(self.request.link(
                      self.model)),
                  attrs={'class': 'delete-link'},
                  traits=(Confirm(
                      _("Do you really want to delete this agency?"),
                      _("This cannot be undone."), _("Delete agency"),
                      _("Cancel")),
                          Intercooler(request_method='DELETE',
                                      redirect_after=self.request.link(
                                          self.collection)))),
             Link(text=_("Create PDF"),
                  url=self.request.link(self.model.proxy(), 'create-pdf'),
                  attrs={'class': 'create-pdf'}),
             LinkGroup(title=_("Add"),
                       links=[
                           Link(text=_("Agency"),
                                url=self.request.link(self.model.proxy(),
                                                      name='new'),
                                attrs={'class': 'new-agency'}),
                           Link(text=_("Membership"),
                                url=self.request.link(
                                    self.model.proxy(),
                                    name='new-membership'),
                                attrs={'class': 'new-person'}),
                       ]),
             LinkGroup(
                 title=_("Sort"),
                 links=[
                     Link(text=_("Suborganizations"),
                          url=self.csrf_protected_url(
                              self.request.link(self.model.proxy(),
                                                'sort-children')),
                          attrs={'class': 'sort-alphabetically'},
                          traits=(Confirm(
                              _("Do you really want to sort the "
                                "suborganizations alphabetically by "
                                "title?"), _("This cannot be undone."),
                              _("Sort suborganizations"), _("Cancel")),
                                  Intercooler(
                                      request_method='POST',
                                      redirect_after=self.request.link(
                                          self.model)))),
                     Link(text=_("Relationships"),
                          url=self.csrf_protected_url(
                              self.request.link(self.model.proxy(),
                                                'sort-relationships')),
                          attrs={'class': 'sort-alphabetically'},
                          traits=(Confirm(
                              _("Do you really want to sort the "
                                "relationships alphabetically by "
                                "last name and first name?"),
                              _("This cannot be undone."),
                              _("Sort relationships"), _("Cancel")),
                                  Intercooler(
                                      request_method='POST',
                                      redirect_after=self.request.link(
                                          self.model)))),
                 ]),
         ]
Esempio n. 9
0
 def breadcrumbs(self):
     return [
         Link(_("Homepage"), self.homepage_url),
         Link(_("Agencies"), self.request.link(self.collection)),
     ] + list(self.get_breadcrumbs(self.model))[1:]
Esempio n. 10
0
 def breadcrumbs(self):
     return [
         Link(_("Homepage"), self.homepage_url),
         Link(_("Agencies"), self.request.link(self.model))
     ]