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 @@
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()){ diff --git a/public/tmp/temp150.html b/public/tmp/temp150.html deleted file mode 100644 index 29cc322..0000000 --- a/public/tmp/temp150.html +++ /dev/null @@ -1,1845 +0,0 @@ - - - -