Пример #1
0
    def __init__(self, request):
        super(MainViewer, self).__init__(request)
        self.route = self.request.matched_route.name
        self.layout.main_menu = make_main_menu(self.request)
        self._user_query = self.request.db.query(User)
        self.context = self.request.matchdict['context']

        self.venues = VenueManager(self.request.db)

        menu = BaseMenu()
        menu.set_header("Actions")
        url = self.url(context='add', id='fff')
        menu.append_new_entry('Add Venue', url)
        self.layout.options_menus = dict(actions=menu)
        
        

        # make dispatch table
        self._cntxt_meth = dict(
            main=self.main_view,
            add=self.add_venue,
            )

        if self.context in self._cntxt_meth:
            self._cntxt_meth[self.context]()
        else:
            msg = 'Undefined Context: %s' % self.context
            self.layout.content = '<b>%s</b>' % msg
Пример #2
0
class MainViewer(BaseViewer):
    def __init__(self, request):
        super(MainViewer, self).__init__(request)
        self.route = self.request.matched_route.name
        self.layout.main_menu = make_main_menu(self.request)
        self._user_query = self.request.db.query(User)
        self.context = self.request.matchdict['context']

        self.venues = VenueManager(self.request.db)

        menu = BaseMenu()
        menu.set_header("Actions")
        url = self.url(context='add', id='fff')
        menu.append_new_entry('Add Venue', url)
        self.layout.options_menus = dict(actions=menu)
        
        

        # make dispatch table
        self._cntxt_meth = dict(
            main=self.main_view,
            add=self.add_venue,
            )

        if self.context in self._cntxt_meth:
            self._cntxt_meth[self.context]()
        else:
            msg = 'Undefined Context: %s' % self.context
            self.layout.content = '<b>%s</b>' % msg


    def main_view(self):
        self.layout.content = ''
        for venue in self.venues.query().all():
            self.layout.content += '%s<br>' % venue.name


    def _add_venue_form_submitted(self, form):
        controls = self.request.POST.items()
        self.layout.subheader = "submitted to database"
        try:
            data = form.validate(controls)
        except deform.ValidationFailure, e:
            self.layout.content = e.render()
            return
        name = data['venue']
        description = data['description']
        venue = self.venues.add_venue(name, description)