def manage_association(association_id): if not g.user: abort(401) session = Client().session() try: association = session.query(Association).\ join(UserAssociation, UserAssociation.association_id == Association.association_id).\ filter(Association.association_id == association_id).\ filter(UserAssociation.user_id == g.user.user_id).\ one() except NoResultFound: abort(404) radlibs = session.query(Lib.name, Lib.lib_id, Rad.rad_id, Rad.rad).\ select_from(Lib).\ outerjoin(Rad, Lib.lib_id == Rad.lib_id).\ filter(Lib.association_id == association.association_id).\ all() member_emails = session.query(User.email).\ join(UserAssociation, UserAssociation.user_id == User.user_id).\ filter(UserAssociation.association_id == association_id).\ all() libs = {} for (lib_name, lib_id, rad_id, rad) in radlibs: if lib_name not in libs: libs[lib_name] = {'rads': []} libs[lib_name]['lib_id'] = lib_id if rad: libs[lib_name]['rads'].append({'rad_id': rad_id, 'rad': rad}) return render_template('manage_association.html.jinja', association=association, libs=libs, member_emails=[e[0] for e in member_emails], breadcrumbs=breadcrumbs(association.name))
def test_just_a_string(self): with app.app_context(): crumbs = breadcrumbs('Blammo') eq_(crumbs, [ ('Associations', 'http://localhost/associations'), ('Blammo', None)])
def new_association(): if not g.user: abort(401) return render_template('new_thing.html.jinja', thing_name="Association", breadcrumbs=breadcrumbs('New'))