@@ -152,6 +152,12 @@ exports.list = function (req, res) {
152
152
// groupListQuery: Pagination
153
153
var pagination = options . pagination ; // is set in modelQuery.apply___ListQueryDefaults
154
154
155
+ // popularGroupListQuery
156
+ var popularGroupListQuery = Group . find ( ) ;
157
+ popularGroupListQuery
158
+ . sort ( '-rating' )
159
+ . limit ( 25 ) ;
160
+
155
161
//--- Tasks
156
162
157
163
// Pagination
@@ -160,6 +166,9 @@ exports.list = function (req, res) {
160
166
// groupListQuery
161
167
tasks . push ( execQueryTask ( groupListQuery , options , 'groupList' ) ) ;
162
168
169
+ // popularGroupListQuery
170
+ tasks . push ( execQueryTask ( popularGroupListQuery , options , 'popularGroupList' ) ) ;
171
+
163
172
//---
164
173
function preRender ( ) {
165
174
// groupList
@@ -168,6 +177,9 @@ exports.list = function (req, res) {
168
177
// Pagination
169
178
options . paginationRendered = pagination . renderDefault ( req ) ;
170
179
180
+ // popularGroupList
181
+ options . popularGroupList = _ . map ( options . popularGroupList , modelParser . parseGroup ) ;
182
+
171
183
// Page <head> meta keywords
172
184
var pageMetaKeywords = [ 'userscript' , 'greasemonkey' ] ;
173
185
if ( options . groupList )
@@ -224,9 +236,10 @@ exports.view = function (req, res, next) {
224
236
// scriptListQuery: Pagination
225
237
var pagination = options . pagination ; // is set in modelQuery.apply___ListQueryDefaults
226
238
227
- // groupListQuery
228
- var groupListQuery = Group . find ( ) ;
229
- groupListQuery
239
+ // popularGroupListQuery
240
+ var popularGroupListQuery = Group . find ( ) ;
241
+ popularGroupListQuery
242
+ . sort ( '-rating' )
230
243
. limit ( 25 ) ;
231
244
232
245
//--- Tasks
@@ -237,16 +250,16 @@ exports.view = function (req, res, next) {
237
250
// scriptListQuery
238
251
tasks . push ( execQueryTask ( scriptListQuery , options , 'scriptList' ) ) ;
239
252
240
- // groupListQuery
241
- tasks . push ( execQueryTask ( groupListQuery , options , 'groupList ' ) ) ;
253
+ // popularGroupListQuery
254
+ tasks . push ( execQueryTask ( popularGroupListQuery , options , 'popularGroupList ' ) ) ;
242
255
243
256
//---
244
257
function preRender ( ) {
245
258
// scriptList
246
259
options . scriptList = _ . map ( options . scriptList , modelParser . parseScript ) ;
247
260
248
- // groupList
249
- options . groupList = _ . map ( options . groupList , modelParser . parseGroup ) ;
261
+ // popularGroupList
262
+ options . popularGroupList = _ . map ( options . popularGroupList , modelParser . parseGroup ) ;
250
263
251
264
// Pagination
252
265
options . paginationRendered = pagination . renderDefault ( req ) ;
0 commit comments