@@ -172,11 +172,33 @@ exports.deleteEntry = function(id, callback){
172
172
} ) ;
173
173
} ;
174
174
175
- exports . getCount = function ( callback ) {
175
+ exports . getCount = function ( filter , callback ) {
176
+ console . log ( filter ) ;
176
177
pool . getConnection ( function ( err , connection ) {
177
178
if ( err ) { console . log ( err ) ; callback ( true ) ; return ; }
178
179
179
- let sql = "SELECT count(*) as cnt FROM entries WHERE email_confirmed > 0 AND status < 2 AND country != '';" ;
180
+ // let sql = "SELECT count(*) as cnt FROM entries WHERE email_confirmed > 0 AND status < 2 AND country != '';";
181
+ let sql = 'SELECT count(*) as cnt FROM entries' ;
182
+
183
+ if ( filter [ 'active' ] === 1 ) {
184
+ sql += ' WHERE email_confirmed > 0 AND status < 2 AND country != \'\'' ;
185
+ }
186
+
187
+ if ( filter [ 'profileImage' ] === 1 ) {
188
+ sql += ( sql . includes ( 'WHERE' ) ? ' AND' : ' WHERE' ) + ' image != \'\'' ;
189
+ }
190
+
191
+ if ( filter [ 'confirmed' ] === 'yes' ) {
192
+ sql += ( sql . includes ( 'WHERE' ) ? ' AND' : ' WHERE' ) + ' email_confirmed = 1' ;
193
+ } else if ( filter [ 'confirmed' ] === 'no' ) {
194
+ sql += ( sql . includes ( 'WHERE' ) ? ' AND' : ' WHERE' ) + ' email_confirmed = 0' ;
195
+ }
196
+
197
+ if ( filter [ 'status' ] === 'active' && filter [ 'active' ] !== 1 ) {
198
+ sql += ( sql . includes ( 'WHERE' ) ? ' AND' : ' WHERE' ) + ' status = 1' ;
199
+ } else if ( filter [ 'status' ] === 'inactive' && filter [ 'active' ] !== 1 ) {
200
+ sql += ( sql . includes ( 'WHERE' ) ? ' AND' : ' WHERE' ) + ' status = 0' ;
201
+ }
180
202
181
203
// make the query
182
204
connection . query ( sql , function ( err , results ) {
0 commit comments