closes #3188, closes #3170

This commit is contained in:
Barış Soner Uşaklı
2015-06-02 16:20:10 -04:00
parent 05c5196965
commit 4420e7a9fc
9 changed files with 184 additions and 23 deletions

View File

@@ -2,25 +2,42 @@
var async = require('async'),
nconf = require('nconf'),
db = require('../database'),
meta = require('../meta'),
groups = require('../groups'),
user = require('../user'),
helpers = require('./helpers'),
pagination = require('../pagination'),
groupsController = {};
groupsController.list = function(req, res, next) {
groups.list(req.uid, 0, -1, function(err, groups) {
var sort = req.query.sort || 'alpha';
groupsController.getGroupsFromSet(req.uid, sort, 0, 8, function(err, data) {
if (err) {
return next(err);
}
res.render('groups/list', data);
});
};
groups = groups.filter(function(group) {
return group && !group.hidden && !group.system;
});
groupsController.getGroupsFromSet = function(uid, sort, start, stop, callback) {
var set = 'groups:visible:name';
if (sort === 'count') {
set = 'groups:visible:memberCount';
} else if (sort === 'date') {
set = 'groups:visible:createtime';
}
res.render('groups/list', {
groups.getGroupsFromSet(set, uid, start, stop, function(err, groups) {
if (err) {
return callback(err);
}
callback(null, {
groups: groups,
allowGroupCreation: parseInt(meta.config.allowGroupCreation, 10) === 1
allowGroupCreation: parseInt(meta.config.allowGroupCreation, 10) === 1,
nextStart: stop + 1
});
});
};