From 47bd7ac76d7a68e21a11631637e0459489a62b3d Mon Sep 17 00:00:00 2001 From: Monique Date: Mon, 3 Jan 2022 12:15:03 +0100 Subject: [PATCH] zichtbaarheid paginas --- application/controllers/Toner.php | 6 +- .../controllers/monpas/Overzichtsop.php | 20 +++++-- application/controllers/shared/Menu.php | 59 ++----------------- application/models/monpas/Menus_model.php | 40 ++++++++++--- .../monpas/compactsop/overzicht/_bestuur.php | 5 +- .../monpas/compactsop/overzicht/_regio.php | 4 +- .../monpas/compactsop/overzicht/_school.php | 2 +- .../monpas/compactsop/overzicht/_swv.php | 10 ++-- .../views/monpas/pages/sopoverzicht.php | 6 +- public/js/monpas/models/sopoverzichtmodel.js | 1 + 10 files changed, 71 insertions(+), 82 deletions(-) diff --git a/application/controllers/Toner.php b/application/controllers/Toner.php index 12e6659..195398a 100644 --- a/application/controllers/Toner.php +++ b/application/controllers/Toner.php @@ -47,14 +47,14 @@ class Toner extends MY_Controller{ } if ($module >= 0){ // hier wordt het menu opgehaald om de pagina's van de module te laden - - $menu = $this->Menus_model->getmenu($module,$this->userrole); + $org = $this->Organisaties_model->get_record_by_id($this->globorgid); + $menu = $this->Menus_model->getmenu($module,$this->userrole, $org->soort); }; if ($menu){ foreach($menu as $menuitem){ - $menuitem->submenus=$this->Menus_model->getsubmenus($menuitem->id, $this->userrole); + $menuitem->submenus=$this->Menus_model->getsubmenus($menuitem->id, $this->userrole, $org->soort); } } $lbl = array(); diff --git a/application/controllers/monpas/Overzichtsop.php b/application/controllers/monpas/Overzichtsop.php index e7063ed..cbc6c79 100644 --- a/application/controllers/monpas/Overzichtsop.php +++ b/application/controllers/monpas/Overzichtsop.php @@ -39,12 +39,12 @@ class Overzichtsop extends MY_Controller{ $orgid = $this->clean_input("orgid"); if ($orgid == 0) $orgid = $this->globorgid; $organisatie = $this->Organisaties_model->getorg($orgid); + $organisatie->sop = 'F'; + $compactsopID = $this->Compactsop_model->get_fieldvalue(['organisatie_id' => $orgid, + 'schooljaarnummer' => $schooljaarnr], 'id'); + if ($compactsopID) $organisatie->sop = 'T'; switch ($organisatie->soort) { case 4: - $organisatie->sop = 'F'; - $compactsopID = $this->Compactsop_model->get_fieldvalue(['organisatie_id' => $orgid, - 'schooljaarnummer' => $schooljaarnr], 'id'); - if ($compactsopID) $organisatie->sop = 'T'; echo json_encode(array("organisatie" => $organisatie, "soort" => 4,)); break; case 3: @@ -65,6 +65,10 @@ class Overzichtsop extends MY_Controller{ $organisatie->bgs = $this->Organisaties_model->getorgsvanaf($kamerid); if ($organisatie->bgs) { foreach ($organisatie->bgs as $bg) { + $bg->sop = 'F'; + $compactsopID = $this->Compactsop_model->get_fieldvalue( + ['organisatie_id' => $bg->id, 'schooljaarnummer' => $schooljaarnr], 'id'); + if ($compactsopID) $bg->sop = 'T'; $bg->scholen = $this->Organisaties_model->getorgsvanaf($bg->id); foreach ($bg->scholen as $index => $school) { $school->sop = 'F'; @@ -84,9 +88,17 @@ class Overzichtsop extends MY_Controller{ $organisatie->kamers = objectToArray($organisatie->kamers); } foreach ($organisatie->kamers as $kamer) { + $kamer->sop = 'F'; + $compactsopID = $this->Compactsop_model->get_fieldvalue( + ['organisatie_id' => $kamer->id, 'schooljaarnummer' => $schooljaarnr], 'id'); + if ($compactsopID) $kamer->sop = 'T'; $kamer->bgs = $this->Organisaties_model->getorgsvanaf($kamer->id); if ($kamer->bgs) { foreach ($kamer->bgs as $bg) { + $bg->sop = 'F'; + $compactsopID = $this->Compactsop_model->get_fieldvalue( + ['organisatie_id' => $bg->id, 'schooljaarnummer' => $schooljaarnr], 'id'); + if ($compactsopID) $bg->sop = 'T'; $bg->scholen = $this->Organisaties_model->getorgsvanaf($bg->id); foreach ($bg->scholen as $index => $school) { $school->sop = 'F'; diff --git a/application/controllers/shared/Menu.php b/application/controllers/shared/Menu.php index 69f6785..507f779 100644 --- a/application/controllers/shared/Menu.php +++ b/application/controllers/shared/Menu.php @@ -19,8 +19,6 @@ class Menu extends MY_Controller{ } public function get_menu(){ - - $user = new stdClass; $organisatie = new stdClass; $module = $this->session->userdata['module']; @@ -29,60 +27,12 @@ class Menu extends MY_Controller{ if (0 == $module) {$modulenaam = "Instrumenten";} else {$modulenaam= $this->Modules_model->get_fieldvalue(array("sysnr" => $module), 'naamkort'); } - - - $menu = $this->Menus_model->getmenu($module,$this->userrole); - $aangepastmenu = []; - $org = $this->Organisaties_model->get_record_by_id($this->globorgid); if ($org){ + $menu = $this->Menus_model->getmenu($module,$this->userrole, $org->soort); + $aangepastmenu = []; foreach ($menu as $menuitem){ - if ($menuitem->holdernaam == "sophoofd"){ - - switch ($org->soort){ - case 1: $menuitem->naam = "SWOP"; break; - case 2: $menuitem->naam = "ROP" ; break; - case 3: $menuitem->naam = "BOP" ; break; - default: $menuitem->naam = "SOP"; - };//switch - - $menuitem->subpaginas = $this->Menus_model->getsubmenus($menuitem->id, $this->userrole); - foreach($menuitem->subpaginas as $subpagina) { - if ($subpagina->paginanaam == 'compactsop') { - switch ($org->soort) { - case 1: - $subpagina->naam = "Compact SWOP"; - break; - case 2: - $subpagina->naam = "Compact ROP"; - break; - case 3: - $subpagina->naam = "Compact BOP"; - break; - default: - $subpagina->naam = "Compact SOP"; - - } - } - if ($subpagina->paginanaam == 'sophome') { - switch ($org->soort) { - case 1: - $subpagina->naam = "SWOP Home"; - break; - case 2: - $subpagina->naam = "ROP Home"; - break; - case 3: - $subpagina->naam = "BOP Home"; - break; - default: - $subpagina->naam = "SOP Home"; - - } - } - } - - }; //if + $menuitem->subpaginas = $this->Menus_model->getsubmenus($menuitem->id, $this->userrole, $org->soort); $aangepastmenu [] = $menuitem; }; // foreach @@ -140,7 +90,8 @@ class Menu extends MY_Controller{ function getsubmenu(){ //TODO clean input $pageid = $this->uri->segment(4); - $submenus = $this->Menus_model->getsubmenus($pageid, $this->userrole); + $org = $this->Organisaties_model->get_record_by_id($this->globorgid); + $submenus = $this->Menus_model->getsubmenus($pageid, $this->userrole, $org->soort); echo json_encode($submenus); } function getmodule(){ diff --git a/application/models/monpas/Menus_model.php b/application/models/monpas/Menus_model.php index fe17ed0..5c67379 100644 --- a/application/models/monpas/Menus_model.php +++ b/application/models/monpas/Menus_model.php @@ -13,22 +13,46 @@ class Menus_model extends MY_Model{ $this->load->model($models); } - function getmenu($module, $autorisatienivo){ + function getmenu($module, $autorisatienivo, $orgsoort){ $this->sql="SELECT id, naam, paginanaam,holdernaam FROM tb_menus WHERE ( {$autorisatienivo} & autorisatienivo) AND ((module = {$module}) OR ({$module} !=0 && module = 9)) - AND valtonder = 0 - ORDER BY volgorde"; - return $this->get_query_result(); + AND valtonder = 0 "; + + switch($orgsoort){ + case 1: $this->sql.=" AND(orgniveau = 'ALL' OR orgniveau = 'SWV' OR orgniveau = 'BGRESWV') "; + break; + case 2: $this->sql.= "AND(orgniveau = 'ALL' OR orgniveau = 'REGIO' OR orgniveau = 'BGRESWV') "; + break; + case 3: $this->sql.= "AND(orgniveau = 'ALL' OR orgniveau = 'BG' OR orgniveau = 'BGRESWV') "; + break; + case 4: $this->sql.= "AND(orgniveau = 'ALL' OR orgniveau = 'SCHOOL') "; + break; + } + $this->sql.="ORDER BY volgorde "; + + return $this->get_query_result(); + } - function getsubmenus($pageid,$autorisatienivo){ + function getsubmenus($pageid,$autorisatienivo, $orgsoort){ $this->sql="SELECT id, naam, paginanaam, holdernaam, volgorde FROM tb_menus WHERE ( {$autorisatienivo} & autorisatienivo) - AND valtonder= $pageid - ORDER BY volgorde" ; - return $this->get_query_result(); + AND valtonder = $pageid " ; + + switch($orgsoort){ + case 1: $this->sql.=" AND(orgniveau = 'ALL' OR orgniveau = 'SWV' OR orgniveau = 'BGRESWV') "; + break; + case 2: $this->sql.= "AND(orgniveau = 'ALL' OR orgniveau = 'REGIO' OR orgniveau = 'BGRESWV') "; + break; + case 3: $this->sql.= "AND(orgniveau = 'ALL' OR orgniveau = 'BG' OR orgniveau = 'BGRESWV') "; + break; + case 4: $this->sql.= "AND(orgniveau = 'ALL' OR orgniveau = 'SCHOOL') "; + break; + } + $this->sql.=" ORDER BY volgorde "; + return $this->get_query_result(); } function gettypes($modulenr){ diff --git a/application/views/monpas/compactsop/overzicht/_bestuur.php b/application/views/monpas/compactsop/overzicht/_bestuur.php index 2c4b11f..f982d9d 100644 --- a/application/views/monpas/compactsop/overzicht/_bestuur.php +++ b/application/views/monpas/compactsop/overzicht/_bestuur.php @@ -12,7 +12,7 @@ BOP @@ -25,7 +25,8 @@ SOP diff --git a/application/views/monpas/compactsop/overzicht/_regio.php b/application/views/monpas/compactsop/overzicht/_regio.php index 0f93ca5..5736880 100644 --- a/application/views/monpas/compactsop/overzicht/_regio.php +++ b/application/views/monpas/compactsop/overzicht/_regio.php @@ -30,7 +30,7 @@ ROP @@ -44,7 +44,7 @@ SOP diff --git a/application/views/monpas/compactsop/overzicht/_school.php b/application/views/monpas/compactsop/overzicht/_school.php index 87c060a..2bc34c3 100644 --- a/application/views/monpas/compactsop/overzicht/_school.php +++ b/application/views/monpas/compactsop/overzicht/_school.php @@ -6,7 +6,7 @@ diff --git a/application/views/monpas/compactsop/overzicht/_swv.php b/application/views/monpas/compactsop/overzicht/_swv.php index 2a35d66..6c87e0b 100644 --- a/application/views/monpas/compactsop/overzicht/_swv.php +++ b/application/views/monpas/compactsop/overzicht/_swv.php @@ -11,8 +11,8 @@ SWOP @@ -28,7 +28,7 @@ ROP @@ -42,7 +42,7 @@ BOP @@ -56,7 +56,7 @@ SOP diff --git a/application/views/monpas/pages/sopoverzicht.php b/application/views/monpas/pages/sopoverzicht.php index 8c8f836..d1e7613 100644 --- a/application/views/monpas/pages/sopoverzicht.php +++ b/application/views/monpas/pages/sopoverzicht.php @@ -4,10 +4,10 @@
-

-

-

+

+ +

Selecteer een schooljaar:

diff --git a/public/js/monpas/models/sopoverzichtmodel.js b/public/js/monpas/models/sopoverzichtmodel.js index 12c2099..4cd2b20 100644 --- a/public/js/monpas/models/sopoverzichtmodel.js +++ b/public/js/monpas/models/sopoverzichtmodel.js @@ -171,6 +171,7 @@ mh.initSopOverzichtModel = function(){ $.post("index.php/monpas/overzichtsop/getoverzicht", submitData , function(data){ self.toporg(''); if (data.organisatie){ + self.orgsoort(data.soort); self.orgsoort(data.soort); switch (self.orgsoort()){