Merge branch 'feature/sopOverzichtPerCriterium'

This commit is contained in:
Monique
2022-02-10 09:17:08 +01:00
11 changed files with 401 additions and 203 deletions
-1
View File
@@ -247,7 +247,6 @@ ls.initMenuModel = function(){
fSetSubmenu: function(){
var self=ls.MenuModel;
var that = this;
console.log(this, "this")
self.toonScholen(true);
$.each(self.menuitems(), function (i, m){
+124 -113
View File
@@ -3,6 +3,8 @@ $(function(){
mh.initSopOverzichtModel = function(){
function fAddSWV(p){
console.log(p, "p")
var dit = this;
this.id = p.id;
this.soort = p.soort;
@@ -15,7 +17,6 @@ mh.initSopOverzichtModel = function(){
if(p.sop === 'T') dit.erIsEenSop(true);
this.kamers = ko.observableArray([]);
// dit.scholen = ko.observableArray([]);
if (p.kamers){
$.each(p.kamers, function(j,k){
dit.kamers.push(new fAddKamer(k));
@@ -23,11 +24,6 @@ mh.initSopOverzichtModel = function(){
}
this.bgs = ko.observableArray([])
this.scholen = ko.observableArray([]);
// if (p.scholen ){
// $.each(p.scholen, function(i,s){
// dit.scholen.push(new fAddSchool(s));
// })
// }
}
function fAddKamer(p){
@@ -44,17 +40,11 @@ mh.initSopOverzichtModel = function(){
this.kamers = ko.observableArray()
this.bgs = ko.observableArray([]);
// this.scholen = ko.observableArray([]);
if (p.bgs){
$.each(p.bgs, function(x,z){
dit.bgs.push(new fAddBG(z));
})
}
// if (p.scholen){
// $.each(p.scholen, function(i,s){
// dit.scholen.push(new fAddSchool(s));
// })
// }
}
function fAddBG(p){
@@ -69,6 +59,7 @@ mh.initSopOverzichtModel = function(){
this.bgs = ko.observableArray();
this.scholen = ko.observableArray([]);
this.erIsEenSop = ko.observable(false);
if(p.sop === 'T') dit.erIsEenSop(true)
@@ -91,24 +82,79 @@ mh.initSopOverzichtModel = function(){
if(b.sop === 'T') dit.erIsEenSop(true)
}
function fAddLabelOrg(p) {
var dit = this;
this.id = p.id;
this.soort = p.soort;
this.naam = p.brin ? p.brin = ' ' + p.naamkort : p.naamkort;
this.soort = ' ';
this.kleur = ko.observable('');
this.achtergrond = ko.observable('');
switch (p.soort) {
case "1":
dit.soort = 'SWOP'
dit.kleur('#A28A29');
dit.achtergrond('#a07b8e');
break;
case "2":
dit.soort = 'ROP';
dit.kleur('#ff8c1a');
dit.achtergrond('#ded0d7');
break;
case "3":
dit.soort = 'BOP';
dit.kleur('#8cff1a');
dit.achtergrond('#f5f0f2');
break;
case "4":
dit.soort = 'SOP';
dit.kleur('#1aa3ff');
dit.achtergrond('#ffffff');
break;
}
this.plaats = p.plaats;
this.geopend = ko.observable(false);
this.erIsEenSop = ko.observable(false);
if (p.sop === 'T') dit.erIsEenSop(true);
this.label = p.label;
this.orgs = ko.observableArray([]);
if (p.scholen) {
$.each(p.scholen, function (a, b) {
dit.orgs.push(new fAddLabelOrg(b));
})
}
}
function fAddSchooljaar(s){
this.id = s.schooljaarnr;
this.naam = s.naam;
}
if (mh.SopOverzichtModel !== undefined){
function fAddCriterium(c) {
this.id = c.id;
this.naam = c.naam;
}
if (mh.SopOverzichtModel !== undefined){
mh.SopOverzichtModel.initModel();
}
else {
mh.SopOverzichtModel = {
toporg : ko.observable(''),
selectedOrg : ko.observable(''),
orgsoort : ko.observable(1),
geopend : ko.observable(false),
schooljaren : ko.observableArray([]),
selectedSchooljaar : ko.observable(''),
gegevens : ko.observable(true),
titel : ko.pureComputed( function(){
orgsoort : ko.observable(4),
geopend : ko.observable(false),
schooljaren : ko.observableArray([]),
criteria : ko.observableArray([]),
selectedSchooljaar : ko.observable(''),
selectedCriterium : ko.observable(''),
selectedOrg : ko.observable(),
topOrg : ko.observable(),
gegevens : ko.observable(true),
bezig : ko.observable(false),
titel : ko.pureComputed( function(){
if(mh.SopOverzichtModel && mh.SopOverzichtModel.orgsoort()){
switch(mh.SopOverzichtModel.orgsoort()){
case 4 : return 'Compact schoolondersteuningsprofiel (SOP)';
@@ -131,129 +177,94 @@ mh.initSopOverzichtModel = function(){
}
}),
initBindings :function(){
var self = mh.SopOverzichtModel;
if (!ko.dataFor(document.getElementById('pagsopoverzicht')) ) {
ko.applyBindings(mh.SopOverzichtModel, document.getElementById("pagsopoverzicht"));
}
self.initModel();
},
initModel: function(){
var self =mh.SopOverzichtModel;
self.fGetSchooljaren();
},
fGetSchooljaren: function() {
var self =mh.SopOverzichtModel;
$.post("index.php/monpas/overzichtsop/getSchooljaren", function(data){
$.post("index.php/monpas/overzichtsop/getSchooljarenEnCriteria", function(data){
self.selectedSchooljaar(null);
self.selectedCriterium(null);
self.schooljaren.removeAll();
if(data) {
$.each(data, function (i, s) {
self.criteria.removeAll();
self.bezig(true);
if(data){
$.each(data.schooljaren, function (i, s) {
self.schooljaren.push(new fAddSchooljaar(s));
});//each
if (self.schooljaren() ) self.selectedSchooljaar(self.schooljaren()[0]);
});
if (self.schooljaren()) self.selectedSchooljaar(self.schooljaren()[0]);
$.each(data.criteria, function (i, c) {
self.criteria.push(new fAddCriterium(c));
}); // each
self.selectedCriterium(self.criteria()[0]);
self.orgsoort(data.orgsoort);
} // if
self.fGetMenu();
self.initModel();
},'json')
},
},
fGetMenu: function(){
initModel: function(){
var self = mh.SopOverzichtModel;
var submitData = {
'schooljaarnr' : self.selectedSchooljaar().id,
'orgid' : 0
};
$.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()){
case 1: self.toporg(new fAddSWV(data.organisatie));
break;
case 2: self.toporg(new fAddKamer(data.organisatie));
break;
case 3: self.toporg(new fAddBG(data.organisatie));
break;
case 4: self.toporg(new fAddSchool(data.organisatie));
break;
} // switch
self.selectedOrg(self.toporg())}
},'json');
self.fGetOverzicht();
},
fChangeSchooljaar: function() {
var self = mh.SopOverzichtModel;
if (!self.selectedSchooljaar()) return;
if(self.bezig()) return;
self.fGetOverzicht();
},
fChangeCriterium: function() {
var self = mh.SopOverzichtModel;
if (!self.selectedCriterium()) return;
if(self.bezig()) return;
self.fGetOverzicht();
},
fGetOverzicht: function(){
var self =mh.SopOverzichtModel;
var self = mh.SopOverzichtModel;
var submitData = {
'schooljaarnr' : self.selectedSchooljaar().id,
'orgid' : self.selectedOrg().id
'criteriumID' : self.selectedCriterium().id,
};
$.post("index.php/monpas/overzichtsop/getoverzicht", submitData , function(data){
if (data.organisatie){
self.orgsoort(data.soort);
switch (self.orgsoort()){
case 1: self.selectedOrg(new fAddSWV(data.organisatie));
break;
case 2: self.selectedOrg(new fAddKamer(data.organisatie));
break;
case 3: self.selectedOrg(new fAddBG(data.organisatie));
break;
case 4: self.selectedOrg(new fAddSchool(data.organisatie));
break;
} // switch
if (data){
self.selectedOrg('');
self.topOrg('');
if(data.criteriumscholen){
self.topOrg(new fAddLabelOrg(data.criteriumscholen));
}
if(data.organisatie) {
switch (Number(self.orgsoort())) {
case 1:
self.selectedOrg(new fAddSWV(data.organisatie));
break;
case 2:
self.selectedOrg(new fAddKamer(data.organisatie));
break;
case 3:
self.selectedOrg(new fAddBG(data.organisatie));
break;
case 4:
self.selectedOrg(new fAddSchool(data.organisatie));
break;
} // switch
}
}
self.bezig(false);
},'json');
},
// fGetAlfabetisch: function(){
// var self =mh.SopOverzichtModel;
// if(self.selectedOrg().soort === '3' || self.selectedOrg().soort === '4'){
// self.fGetOverzicht();
// return;
// }
// var submitData = {
// 'schooljaarnr' : self.selectedSchooljaar().id,
// 'orgid' : self.selectedOrg().id
// };
// $.post("index.php/monpas/overzichtsop/getAlfabetisch", submitData , function(data){
// if (data.organisatie){
// self.orgsoort(data.soort);
// if(self.orgsoort() === '1') self.selectedOrg(new fAddSWV(data.organisatie));
// if(self.orgsoort() === '2') self.selectedOrg(new fAddKamer(data.organisatie));
// }
// },'json');
// },
// fToggleGeopend: function(){
// var self =mh.SopOverzichtModel;
// this.geopend(!this.geopend());
// },
// fSwitchOrg: function(){
// var self =mh.SopOverzichtModel;
// if (self.selectedOrg() === undefined) return;
// if (this.id === self.selectedOrg().id) return;
// self.orgsoort('');
// self.selectedOrg(this);
// if (!self.alfabetisch()) self.fGetOverzicht();
// if (self.alfabetisch()) self.fGetAlfabetisch();
//
// },
fOpenPDF: function(){
var self =mh.SopOverzichtModel;
var dit = this;