From 56711a575d372c0734abd353e4ed38a69e83177c Mon Sep 17 00:00:00 2001 From: Daniel Camargo Date: Wed, 12 Feb 2014 12:31:13 -0200 Subject: [PATCH] fixed a bug with drivers/group --- include/controllers/default/cockpit/drivers/assign.php | 2 +- include/library/Crunchbutton/Admin.php | 2 +- include/library/Crunchbutton/Group.php | 8 +++++++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/include/controllers/default/cockpit/drivers/assign.php b/include/controllers/default/cockpit/drivers/assign.php index 9dad7f6f3..ff15d33a8 100644 --- a/include/controllers/default/cockpit/drivers/assign.php +++ b/include/controllers/default/cockpit/drivers/assign.php @@ -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 = []; diff --git a/include/library/Crunchbutton/Admin.php b/include/library/Crunchbutton/Admin.php index 327bcf07b..d7c91b842 100644 --- a/include/library/Crunchbutton/Admin.php +++ b/include/library/Crunchbutton/Admin.php @@ -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 diff --git a/include/library/Crunchbutton/Group.php b/include/library/Crunchbutton/Group.php index 7ba769722..803e37c01 100644 --- a/include/library/Crunchbutton/Group.php +++ b/include/library/Crunchbutton/Group.php @@ -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;