Proyectos de Subversion LeadersLinked - Services

Rev

Rev 264 | Rev 270 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 264 Rev 269
Línea 1212... Línea 1212...
1212
 
1212
 
Línea 1213... Línea 1213...
1213
        $prototype = new User();
1213
        $prototype = new User();
1214
 
1214
 
-
 
1215
        return $this->executeFetchAllObject($select, $prototype);
-
 
1216
    }
-
 
1217
    
-
 
1218
    
-
 
1219
    /**
-
 
1220
     *
-
 
1221
     * @param int $network_id
-
 
1222
     * @param string $search
-
 
1223
     * @param int $records_per_page
-
 
1224
     * @param int $page
-
 
1225
     * @param int[] $abuseReportIds
-
 
1226
     * 
-
 
1227
     * @return User[]
-
 
1228
     */
-
 
1229
    public function fetchAllSuggestPaginateByNetworkIdAndSearchAndNotAbuseReport($network_id, $search, $records_per_page, $page,  $abuseReportIds = [])
-
 
1230
    {
-
 
1231
        
-
 
1232
        $select = $this->sql->select();
-
 
1233
        $select->from(self::_TABLE);
-
 
1234
        $select->where->equalTo('network_id', $network_id);
-
 
1235
        $select->where->equalTo('status', User::STATUS_ACTIVE);
-
 
1236
        $select->where->equalTo('email_verified', User::EMAIL_VERIFIED_YES);
-
 
1237
        $select->where->notIn('id', $abuseReportIds);
-
 
1238
        
-
 
1239
        if ($search) {
-
 
1240
            $select->where->nest()
-
 
1241
            ->like('first_name', '%' . $search . '%')
-
 
1242
            ->or->like('last_name', '%' . $search . '%')
-
 
1243
            ->or->like(new Expression("CONCAT(first_name,' ',last_name)"), '%' . $search . '%')
-
 
1244
            ->or->like(new Expression("CONCAT(last_name,' ',first_name)"), '%' . $search . '%')
-
 
1245
            ->or->like('email', '%' . $search . '%')
-
 
1246
            ->unnest();
-
 
1247
        }
-
 
1248
        
-
 
1249
        $select->order(['first_name', 'last_name']);
-
 
1250
        
-
 
1251
        // echo $select->getSqlString($this->adapter->platform); exit;
-
 
1252
        
-
 
1253
        $prototype = new User();
-
 
1254
        
-
 
1255
        $hydrator   = new ObjectPropertyHydrator();
-
 
1256
        $resultset  = new HydratingResultSet($hydrator, $prototype);
-
 
1257
        
-
 
1258
        $adapter = new DbSelect($select, $this->sql, $resultset);
-
 
1259
        $paginator = new Paginator($adapter);
-
 
1260
        $paginator->setItemCountPerPage($records_per_page);
-
 
1261
        $paginator->setCurrentPageNumber($page);
-
 
1262
        
-
 
1263
        
-
 
1264
        return $paginator;
Línea 1215... Línea 1265...
1215
        return $this->executeFetchAllObject($select, $prototype);
1265
    }
1216
    }
1266
    
1217
 
1267
 
1218
    /**
1268
    /**