From e60d212e230bcc3d37c5db25fd9c57be76a2b73c Mon Sep 17 00:00:00 2001 From: Pererinha Date: Thu, 22 Jan 2015 13:58:33 -0200 Subject: [PATCH] track which admin created new driver accounts, so we know who hired each driver #4092 --- db/migrate/000264_admin.sql | 4 ++++ .../default/cockpit2/api/driver/list/index.php | 1 + include/library/Cockpit/Admin.php | 7 +++++++ include/library/Crunchbutton/Admin.php | 11 +++++++++++ .../frontend/drivers/drivers-onboarding-list.phtml | 8 ++++++-- 5 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 db/migrate/000264_admin.sql diff --git a/db/migrate/000264_admin.sql b/db/migrate/000264_admin.sql new file mode 100644 index 000000000..ec824cbba --- /dev/null +++ b/db/migrate/000264_admin.sql @@ -0,0 +1,4 @@ +ALTER TABLE `admin` ADD `id_admin_author` int(11) unsigned DEFAULT NULL; + +ALTER TABLE `admin` ADD KEY `admin_ibfk_1` (`id_admin_author`); +ALTER TABLE `admin` ADD CONSTRAINT `admin_ibfk_1` FOREIGN KEY (`id_admin_author`) REFERENCES `admin` (`id_admin`) ON DELETE SET NULL ON UPDATE SET NULL; diff --git a/include/controllers/default/cockpit2/api/driver/list/index.php b/include/controllers/default/cockpit2/api/driver/list/index.php index cf5cc90d9..76445347e 100644 --- a/include/controllers/default/cockpit2/api/driver/list/index.php +++ b/include/controllers/default/cockpit2/api/driver/list/index.php @@ -32,6 +32,7 @@ class Controller_api_driver_list extends Crunchbutton_Controller_RestAccount { $list = []; foreach( $drivers as $driver ){ + if( $count >= $start && $count < $end ){ $data = $driver->exports( [ 'permissions', 'groups' ] ); $data[ 'vehicle' ] = $driver->vehicle(); diff --git a/include/library/Cockpit/Admin.php b/include/library/Cockpit/Admin.php index 1477d69b1..ccc493461 100644 --- a/include/library/Cockpit/Admin.php +++ b/include/library/Cockpit/Admin.php @@ -110,6 +110,13 @@ class Cockpit_Admin extends Crunchbutton_Admin { $out['referral_admin_credit'] = floatval( $this->referral_admin_credit ); $out['referral_customer_credit'] = floatval( $this->referral_customer_credit ); + $author = $this->author(); + if( $author->id_admin ){ + $out['author'] = $author->name; + } else { + $out['author'] = null; + } + if ($this->location()) { $out['location'] = $this->location()->exports(); } diff --git a/include/library/Crunchbutton/Admin.php b/include/library/Crunchbutton/Admin.php index 8736bc565..448bc9b09 100644 --- a/include/library/Crunchbutton/Admin.php +++ b/include/library/Crunchbutton/Admin.php @@ -914,10 +914,21 @@ class Crunchbutton_Admin extends Cana_Table { return $driver_info; } + public function author(){ + if( !$this->_author && $this->id_admin_author ){ + $this->_author = Admin::o( $this->id_admin_author ); + } + return $this->_author; + } + public function save() { $this->phone = Phone::clean($this->phone); $this->txt = Phone::clean($this->txt); $this->testphone = Phone::clean($this->testphone); + // if it is a new record saves the author + if( !$this->id_admin && c::admin()->id_admin ){ + $this->id_admin_author = c::admin()->id_admin; + } return parent::save(); } diff --git a/include/views/default/cockpit2/frontend/drivers/drivers-onboarding-list.phtml b/include/views/default/cockpit2/frontend/drivers/drivers-onboarding-list.phtml index 6c20511c1..343e00574 100644 --- a/include/views/default/cockpit2/frontend/drivers/drivers-onboarding-list.phtml +++ b/include/views/default/cockpit2/frontend/drivers/drivers-onboarding-list.phtml @@ -14,7 +14,7 @@

- Documents | + Documents | Create a new driver



@@ -26,6 +26,7 @@ Login Vehicle Community + Created by @@ -43,6 +44,9 @@ {{community}} + + {{driver.author}} + Docs ok @@ -64,7 +68,7 @@ - +