Пример #1
0
 def blocks(self):
     resultparams = super().resultparams
     
     limit = appconfig['pagelimit']
     count = count_blocks()
     allusers = get_users()
     exlusers = get_users_exclude((1,))
     exlpermissons = get_permissions_exclude((3,))
     
     resultparams['result'] = {'blocks': get_blocks(offset=0, limit=limit),
                               'users': allusers,
                               'excusers': exlusers,
                               'permissions': exlpermissons}
     
     def userslist(obj):
         result = []
         for e in obj:
             result.append([e.id, e.username])
         return result
     
     def permlist(obj):
         result = []
         for e in obj:
             result.append([e.id, e.permname])
         return 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/blocks.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/timepicker/jquery-ui-timepicker-addon.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/validate/jquery.validate.js'))
     jslibs.append(super().jslib('lib/datef/datef.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/paging2.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/blocks.js'))
     
     #jsglobal
     resultparams['jsglobal'] += '''
     
                 //Главный объект
                 var pageobj = {};
     
                 pageobj.number = %s;
                 pageobj.limit  = %s;
                 pageobj.pstart = 1;
                 pageobj.pcurrent = 1;
                 pageobj.preurl = '%s/options/control/blocks/';
                 pageobj.sort   = {'col': 2, 'asc': 1};
                 pageobj.allusers = %s;
                 pageobj.exlusers = %s;
                 pageobj.exlpermissons = %s;
                 pageobj.timeformat = '%s';
                 pageobj.dotjsfolder = 'options/control/blocks/';
                 
     ''' % (count, limit, self.request.route_url('manager'), json.dumps(userslist(allusers)), json.dumps(userslist(exlusers)), json.dumps(permlist(exlpermissons)), appconfig['timeformat'][1])
     
     #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)
Пример #2
0
def blocks_count(request):
    return {'number': count_blocks()}