Exemplo n.º 1
0
    def _location_action(self, path, obj_type=None):
        location = LocationTag.get(path)
        if location is None:
            abort(404)

        c.security_context = location
        c.object_location = None
        c.location = location

        c.selected_sub_department_id = request.params.get('sub_department_id', None)
        c.selected_sub_department = None
        if c.selected_sub_department_id:
            subdepartment = SubDepartment.get(c.selected_sub_department_id)
            c.selected_sub_department = subdepartment
            c.menu_items = subdepartment_menu_items(subdepartment)

        else:
            c.tabs = location_feed_subtabs(location)
            if c.user:
                c.menu_items = location_menu_items(location)
            else:
                c.menu_items = location_menu_public_items(location)

        c.breadcrumbs = location_breadcrumbs(location)

        c.theme = location.get_theme()
        c.notabs = True


        c.current_menu_item = None
        if obj_type is None:
            return method(self, location)
        else:
            return method(self, location, obj_type)
Exemplo n.º 2
0
    def add_sub_department(self, location):
        c.menu_items = location_edit_menu_items(location)
        c.current_menu_item = 'sub-departments'
        form = Form(location, request,
                    schema=SubDepartmentAddForm(),
                    action='ADD')

        result = form.work()
        if result is not None:
            sub_department = SubDepartment(result['title'], location)
            sub_department.site_url = result['site_url']
            sub_department.description = result['description']
            meta.Session.commit()
            redirect(location.url(action='edit_sub_departments'))

        c.form = form
        return render('location/add_sub_department.mako')
Exemplo n.º 3
0
    def edit_sub_department(self, location):
        sub_department_id = request.urlvars['id']
        sub_department = SubDepartment.get(sub_department_id)

        c.menu_items = location_edit_menu_items(location)
        c.current_menu_item = 'sub-departments'
        form = Form(sub_department, request,
                    defaults={'title': sub_department.title,
                              'site_url': sub_department.site_url,
                              'description': sub_department.description},
                    schema=SubDepartmentAddForm(),
                    action='UPDATE')

        result = form.work()
        if result is not None:
            sub_department.title = result['title']
            sub_department.site_url = result['site_url']
            sub_department.description = result['description']
            meta.Session.commit()
            redirect(location.url(action='edit_sub_departments'))

        c.form = form
        return render('location/edit_sub_department.mako')
Exemplo n.º 4
0
 def delete_sub_department(self, location):
     sub_department_id = request.urlvars['id']
     sub_department = SubDepartment.get(sub_department_id)
     sub_department.delete()
     meta.Session.commit()
     redirect(location.url(action='edit_sub_departments'))
Exemplo n.º 5
0
 def _to_python(self, value, state):
     s = SubDepartment.get(value)
     if s is None:
         raise Invalid(self.message('invalid', state), value, state)
     return value