def roles(self): resultparams = super().resultparams limit = appconfig['pagelimit'] count = count_roles() permissions = get_permissions() allpermissions = [] i = 0 s = len(permissions) while i<s: allpermissions.append([permissions[i].id, permissions[i].permname]) i += 1 roles = get_roles(offset=0, limit=limit) result = {'roles': roles, 'permissions': permissions} resultparams['result'] = result resultparams['title'] += 'Управление ролями' #csslibs csslibs = resultparams['csslibs'] csslibs.append(super().csslib('lib/qtip2/jquery.qtip.min.css')) csslibs.append(super().csslib('lib/chosen/chosen.css')) csslibs.append(super().csslib('css/roles.css')) #jslibs jslibs = resultparams['jslibs'] jslibs.append(super().jslib('lib/jquerypaging/jquery.paging.min.js')) jslibs.append(super().jslib('lib/jquery.customforms.js')) jslibs.append(super().jslib('lib/chosen/chosen.jquery.min.js')) jslibs.append(super().jslib('lib/qtip2/jquery.qtip.min.js')) jslibs.append(super().jslib('lib/ui.spinner.js')) jslibs.append(super().jslib('lib/validate/jquery.validate.js')) jslibs.append(super().jslib('lib/snippets/tplloader.js')) jslibs.append(super().jslib('lib/snippets/checkall.js')) jslibs.append(super().jslib('lib/snippets/totalpages.js')) jslibs.append(super().jslib('lib/snippets/paging.js')) jslibs.append(super().jslib('lib/snippets/filter.js')) jslibs.append(super().jslib('lib/snippets/filterclear.js')) jslibs.append(super().jslib('lib/snippets/orderby.js')) jslibs.append(super().jslib('lib/snippets/deleteitems.js')) jslibs.append(super().jslib('lib/snippets/funcs.js')) jslibs.append(super().jslib('lib/snippets/nebuttons.js')) jslibs.append(super().jslib('lib/snippets/tablemenufunc.js')) jslibs.append(super().jslib('lib/snippets/edititem.js')) jslibs.append(super().jslib('js/rbac/roles.js')) #jsglobal resultparams['jsglobal'] += ''' //Главный объект var pageobj = {}; pageobj.number = %s; pageobj.limit = %s; pageobj.pstart = 1; pageobj.pcurrent = 1; pageobj.preurl = '%s/options/control/roles/'; pageobj.sort = {'col': 2, 'asc': 1}; pageobj.allpermissions = %s; pageobj.dotjsfolder = 'options/control/roles/'; pageobj.rolesgroup = ['Users', 'Administrators']; ''' % (count, limit, self.request.route_url('manager'), json.dumps(allpermissions)) #jsopts jsopts = resultparams['jsopts'] jsopts.append(''' //Экспорт шаблона редактирования window.edittpl = cmtplloader(pageobj.dotjsfolder + 'edittpl'); //Экспорт шаблона таблицы window.trtabletpl = cmtplloader(pageobj.dotjsfolder + 'trtabletpl'); window.newrestore = $('#tablefunc').html(); //Запуск скриптов pageobj.start(); ''') return super().prerender(resultparams)
def roles_count(request): return {'number': count_roles()}