@@ -172,11 +172,33 @@ exports.deleteEntry = function(id, callback){
172172 } ) ;
173173} ;
174174
175- exports . getCount = function ( callback ) {
175+ exports . getCount = function ( filter , callback ) {
176+ console . log ( filter ) ;
176177 pool . getConnection ( function ( err , connection ) {
177178 if ( err ) { console . log ( err ) ; callback ( true ) ; return ; }
178179
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+ }
180202
181203 // make the query
182204 connection . query ( sql , function ( err , results ) {
0 commit comments