Skip to content

Commit 2b74bdd

Browse files
committed
Merge pull request #65 from gregorybesson/develop
Fix user list
2 parents d5a7691 + 67220ed commit 2b74bdd

File tree

3 files changed

+11
-7
lines changed

3 files changed

+11
-7
lines changed

config/module.config.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -444,11 +444,11 @@
444444
'list' => array(
445445
'type' => 'Segment',
446446
'options' => array(
447-
'route' => '/list/:roleId[/:filter][/:p]',
447+
'route' => '/list[/:roleId][/:filter][/:p]',
448448
'defaults' => array(
449449
'controller' => 'playgrounduseradmin',
450450
'action' => 'list',
451-
'roleId' => 'user',
451+
//'roleId' => 'user',
452452
'filter' => 'DESC'
453453
),
454454
'constraints' => array(

src/PlaygroundUser/Controller/Admin/AdminController.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public function listAction()
2424
$adapter = new DoctrineAdapter(new ORMPaginator($this->getAdminUserService()->getQueryUsersByRole($role, null, $search)));
2525

2626
$paginator = new Paginator($adapter);
27-
$paginator->setItemCountPerPage(100);
27+
$paginator->setItemCountPerPage(50);
2828
$paginator->setCurrentPageNumber($this->getEvent()->getRouteMatch()->getParam('p'));
2929

3030

src/PlaygroundUser/Service/User.php

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -733,27 +733,31 @@ public function createRole(array $data)
733733
return $role;
734734
}
735735

736-
public function getQueryUsersByRole($role=1, $order=null, $search='')
736+
public function getQueryUsersByRole($role=null, $order=null, $search='')
737737
{
738738
$em = $this->getServiceManager()->get('doctrine.entitymanager.orm_default');
739739
$filterSearch = '';
740+
$roleSearch = '1=1 ';
740741

741742
if ($search != '') {
742743
$filterSearch = " AND (u.username like '%" . $search . "%' OR u.lastname like '%" . $search . "%' OR u.firstname like '%" . $search . "%' OR u.email like '%" . $search . "%')";
743744
}
744745

746+
if ($role) {
747+
$roleSearch = "r.id = " . $role->getId();
748+
}
749+
745750
// I Have to know what is the User Class used
746751
$zfcUserOptions = $this->getServiceManager()->get('zfcuser_module_options');
747752
$userClass = $zfcUserOptions->getUserEntityClass();
748753

749754
$query = $em->createQuery('
750755
SELECT u FROM ' . $userClass . ' u
751-
JOIN u.roles r
752-
WHERE r.id = :role' .
756+
LEFT JOIN u.roles r
757+
WHERE ' . $roleSearch .
753758
$filterSearch .
754759
(in_array($order,array('ASC','DESC'))?' ORDER BY u.created_at '.$order:'').'
755760
');
756-
$query->setParameter('role', $role);
757761
return $query;
758762
}
759763

0 commit comments

Comments
 (0)