fixed a bug with drivers/group

This commit is contained in:
Daniel Camargo 2014-02-12 12:31:13 -02:00
parent 132c9f19d9
commit 56711a575d
3 changed files with 9 additions and 3 deletions

View File

@ -52,7 +52,7 @@ class Controller_drivers_assign extends Crunchbutton_Controller_Account {
$this->loadData();
if( c::getPagePiece( 3 ) ){
$community = c::getPagePiece( 3 );
$community = Crunchbutton_Group::normalizeDriverGroup( c::getPagePiece( 3 ) );
$group = Crunchbutton_Group::getDeliveryGroupByCommunity( $community );
$drivers = Crunchbutton_Admin::q( "SELECT a.* FROM admin a INNER JOIN admin_group ag ON ag.id_admin = a.id_admin AND ag.id_group = {$group->id_group}" );
$deliveryFor = [];

View File

@ -64,7 +64,7 @@ class Crunchbutton_Admin extends Cana_Table {
return Admin::q( 'SELECT a.* FROM admin a
INNER JOIN (
SELECT DISTINCT(id_admin) FROM (
SELECT DISTINCT(a.id_admin) FROM admin a INNER JOIN notification n ON n.id_admin = a.id_admin INNER JOIN admin_notification an ON a.id_admin = an.id_admin AND an.active = 1
SELECT DISTINCT(a.id_admin) FROM admin a INNER JOIN admin_notification an ON a.id_admin = an.id_admin AND an.active = 1
UNION
SELECT DISTINCT(a.id_admin) FROM admin a
INNER JOIN admin_group ag ON ag.id_admin = a.id_admin

View File

@ -5,7 +5,7 @@ class Crunchbutton_Group extends Cana_Table {
const DRIVER_GROUPS_PREFIX = 'drivers-';
public function driverGroupOfCommunity( $community ){
return str_replace( ' ' , '-', Crunchbutton_Group::DRIVER_GROUPS_PREFIX . strtolower( $community ) );
return Crunchbutton_Group::normalizeDriverGroup( str_replace( ' ' , '-', Crunchbutton_Group::DRIVER_GROUPS_PREFIX . strtolower( $community ) ), 0, 20);
}
public function __construct($id = null) {
@ -25,12 +25,18 @@ class Crunchbutton_Group extends Cana_Table {
}
}
public function normalizeDriverGroup( $community ){
return substr( $community, 0, 20 );
}
public function getDeliveryGroupByCommunity( $community ){
if( !$community ){
die( 'Error:getDeliveryGroupByCommunity' );
}
$community = Crunchbutton_Group::normalizeDriverGroup( $community );
$group = Crunchbutton_Group::byName( $community );
if( $group->id_group ){
return $group;