From af80b967213a02fc9cd39dbddbdb2ac582b00200 Mon Sep 17 00:00:00 2001 From: Antonio Gallo Date: Tue, 15 Oct 2013 19:25:31 +0000 Subject: added the ManagerController and the manager users group. Now the users in the manager group can modify the list of allowed distros by means of the main panel --- .../Application/Controllers/ManagerController.php | 72 ++++++++++++++++++++++ h-source/Application/Include/distributions.php | 2 +- h-source/Application/Include/languages.php | 3 + h-source/Application/Models/DistrosModel.php | 2 + .../Application/Views/Desktop/Manager/distros.php | 35 +++++++++++ 5 files changed, 113 insertions(+), 1 deletion(-) create mode 100644 h-source/Application/Controllers/ManagerController.php create mode 100644 h-source/Application/Views/Desktop/Manager/distros.php (limited to 'h-source/Application') diff --git a/h-source/Application/Controllers/ManagerController.php b/h-source/Application/Controllers/ManagerController.php new file mode 100644 index 0000000..b178ea6 --- /dev/null +++ b/h-source/Application/Controllers/ManagerController.php @@ -0,0 +1,72 @@ +. + +if (!defined('EG')) die('Direct access not allowed!'); + +//this controller is used to carry out the actions of the superadmin +class ManagerController extends BaseController +{ + + public function __construct($model, $controller, $queryString) + { + parent::__construct($model, $controller, $queryString); + + $this->model('DistrosModel'); + $this->modelName = 'DistrosModel'; + + $data['title'] = 'Manager - '.Website::$generalName; + $this->append($data); + + $this->setArgKeys(array('page:forceInt'=>1)); + + $this->s['registered']->check('manager'); + } + + public function distros($lang = 'en') { //view all the users + + $this->shift(1); + + $this->loadScaffold('main',array('popup'=>true,'popupType'=>'inclusive','recordPerPage'=>30, 'mainAction'=>'distros/'.$this->lang, "mainMenu" => "add")); + + $this->scaffold->loadMain('distros.full_name,distros.clean_name','distros.id_distro','moveup,movedown,ledit,del'); + $this->scaffold->setHead(gtext('TITLE').','.gtext('DISTRO-CODE')); + + $this->scaffold->mainMenu->links['add']['url'] = 'form/insert/0'; + $this->scaffold->mainMenu->links['add']['title'] = gtext('Insert a new distro'); + + $this->scaffold->update('del'); + + $this->scaffold->model->clear(); + + $this->scaffold->model->orderBy("id_order"); + + $this->scaffold->update('moveup,movedown'); + + $data['scaffold'] = $this->scaffold->render(); +// echo $this->scaffold->model->getQuery(); + + $data['notice'] = $this->scaffold->model->notice; + + $this->append($data); + $this->cleverLoad('distros'); + $this->right($this->lang); + } + +} \ No newline at end of file diff --git a/h-source/Application/Include/distributions.php b/h-source/Application/Include/distributions.php index 0572802..14d59d5 100644 --- a/h-source/Application/Include/distributions.php +++ b/h-source/Application/Include/distributions.php @@ -35,7 +35,7 @@ class Distributions { $distros = new DistrosModel(); - self::$allowed = $distros->clear()->toList("clean_name","full_name")->send(); + self::$allowed = $distros->clear()->toList("clean_name","full_name")->orderBy("id_order")->send(); } public static function getName($distList = '') diff --git a/h-source/Application/Include/languages.php b/h-source/Application/Include/languages.php index 0527dcf..a5cb2eb 100644 --- a/h-source/Application/Include/languages.php +++ b/h-source/Application/Include/languages.php @@ -419,6 +419,9 @@ class Lang /*0358*/"Thanks for helping the h-node project and the free software movement!" => "Grazie per aver aiutato il progetto h-node e il movimento del software libero!", /*0359*/"You have just inserted a new notebook into the database. Can you please insert its devices separately too? Thanks!" => "Hai appena inserito un nuovo portatile. Potresti gentilmente inserire separatamente anche i suoi dispositivi?", /*0360*/"insert" => "inserisci", + /*0361*/"List of allowed fully free distributions" => "Lista delle distribuzioni completamente libere ammesse", + /*0362*/"Insert a new distro" => "Inserisci una nuova distribuzione", + /*0362*/"DISTRO-CODE" => "CODICE DISTRIBUZIONE", ), 'es' => array ( diff --git a/h-source/Application/Models/DistrosModel.php b/h-source/Application/Models/DistrosModel.php index 41e0c6a..58cd435 100644 --- a/h-source/Application/Models/DistrosModel.php +++ b/h-source/Application/Models/DistrosModel.php @@ -26,6 +26,8 @@ class DistrosModel extends Model_Tree { $this->_tables = 'distros'; $this->_idFields = 'id_distro'; + $this->_idOrder = 'id_order'; + parent::__construct(); } diff --git a/h-source/Application/Views/Desktop/Manager/distros.php b/h-source/Application/Views/Desktop/Manager/distros.php new file mode 100644 index 0000000..79d60ea --- /dev/null +++ b/h-source/Application/Views/Desktop/Manager/distros.php @@ -0,0 +1,35 @@ + + +. +?> + +
+ +
+ ">Home » +
+ +
+ +
+ + + +
-- cgit v1.2.3