def get_organizations(self): context = {'model': model, 'session': model.Session, 'user': c.user or c.author, 'for_view': True, 'auth_user_obj': c.userobj} sort_option = c.sort_by_selected = request.params.get( 'sort', 'title asc') data_dict = { 'all_fields': True, 'sort': sort_option } all_orgs = get_action('organization_list')(context, data_dict) all_orgs = helper.sort_results_case_insensitive(all_orgs, sort_option) def pager_url(q=None, page=None): if sort_option: url = h.url_for( 'browse_list', page=page, sort=sort_option) + \ '#organizationsSection' else: url = h.url_for('browse_list', page=page) + \ '#organizationsSection' return url c.page = h.Page( collection=all_orgs, page=request.params.get('page', 1), url=pager_url, items_per_page=20 ) return (c.page, len(all_orgs))
def index(self): group_type = self._guess_group_type() context = {'model': model, 'session': model.Session, 'user': c.user or c.author, 'for_view': True, 'with_private': False} q = c.q = request.params.get('q', '') data_dict = {'all_fields': True, 'q': q} sort_by = c.sort_by_selected = request.params.get('sort') if sort_by: data_dict['sort'] = sort_by else: data_dict['sort'] = 'title asc' try: self._check_access('site_read', context) except NotAuthorized: abort(401, _('Not authorized to see this page')) # pass user info to context as needed to view private datasets of # orgs correctly if c.userobj: context['user_id'] = c.userobj.id context['user_is_admin'] = c.userobj.sysadmin results = self._action('organization_list')(context, data_dict) results = helper.sort_results_case_insensitive(results, sort_by) def pager_url(q=None, page=None): if sort_by: url = h.url_for( 'organizations_index', page=page, sort=sort_by) else: url = h.url_for('organizations_index', page=page) return url c.page = h.Page( collection=results, page=request.params.get('page', 1), url=pager_url, items_per_page=21 ) return render(self._index_template(group_type))