950 lines
30 KiB
JavaScript
950 lines
30 KiB
JavaScript
$(function(){
|
|
|
|
ls.initOntwikkelModel = function(){
|
|
|
|
function fAddSWV(p){
|
|
var dit = this;
|
|
this.id = p.id;
|
|
this.soort = p.soort
|
|
this.naam = p.naam
|
|
this.plaats = p.plaats
|
|
this.geopend = ko.observable(false);
|
|
dit.kamers = ko.observableArray([]);
|
|
if (p.kamers ){
|
|
$.each(p.kamers, function(j,k){
|
|
dit.kamers.push(new fAddKamer(k));
|
|
})
|
|
}
|
|
}
|
|
|
|
function fAddKamer(p){
|
|
var dit = this;
|
|
this.id = p.id;
|
|
this.soort = p.soort
|
|
this.naam = p.naam
|
|
this.plaats = p.plaats
|
|
this.geopend = ko.observable(false);
|
|
this.bgs = ko.observableArray([]);
|
|
|
|
if (p.bgs){
|
|
$.each(p.bgs, function(x,z){
|
|
dit.bgs.push(new fAddBG(z));
|
|
})
|
|
}
|
|
}
|
|
function fAddBG(p){
|
|
var dit = this;
|
|
this.id = p.id;
|
|
this.soort = p.soort
|
|
this.naam = p.naam
|
|
this.plaats = p.plaats
|
|
this.geopend = ko.observable(false);
|
|
this.scholen = ko.observableArray([]);
|
|
if (p.scholen){
|
|
$.each(p.scholen, function(a,b){
|
|
dit.scholen.push(new fAddSchool(b));
|
|
})
|
|
}
|
|
}
|
|
|
|
function fAddSchool(p){
|
|
var dit = this;
|
|
this.id = p.id;
|
|
this.soort = p.soort
|
|
this.naam = p.naam
|
|
this.plaats = p.plaats
|
|
}
|
|
|
|
function fAddUser(p){
|
|
this.orguserid = p.id;
|
|
this.usernaam = p.fullname;
|
|
}
|
|
|
|
function fAddOrgversion(p){
|
|
this.id = p.id; //orgversion id
|
|
this.periodenummer = p.periodenummer
|
|
this.versie_id = p.versie_id
|
|
this.vorm = p.vorm
|
|
var wijik = "schoolversie";
|
|
if(p.vorm == 2){
|
|
wijik = "individuele versie"
|
|
}
|
|
this.scoretype = p.scoretype
|
|
var scoreomschrijving = p.scoreomschrijving;
|
|
if(p.scoreomschrijving === 'included/involved/present/absent')
|
|
scoreomschrijving = 'inc/inv/pre/abs'
|
|
this.scoreomschrijving = scoreomschrijving;
|
|
this.naam = p.naam
|
|
this.geldigvanaf = p.geldigvanaf;
|
|
this.geldigtm = p.geldigtm;
|
|
this.invullentm = p.invullentm;
|
|
this.info = ko.computed(function(){
|
|
var versieInfostr=this.naam;
|
|
versieInfostr += "- periode " + this.periodenummer +
|
|
", scoretype: " + this.scoreomschrijving + ", "+ wijik +
|
|
", " + this.geldigvanaf + " t/m " + this.geldigtm;
|
|
return versieInfostr;
|
|
}
|
|
,this)
|
|
}
|
|
function fAddResult(p) {
|
|
var dit = this;
|
|
this.ijkpuntid = p.ijkpunt_id;
|
|
this.wensid = 0;
|
|
|
|
if (p.gewenstid) { this.wensid = p.gewenstid; }
|
|
this.scoretype = p.scoretype;
|
|
this.disabled = p.disabled;
|
|
this.disablentv = p.disablenvt;
|
|
this.huidig = ko.observable(p.huidig);
|
|
if (p.disabled == 'T' || p.disablenvt == 'T') this.huidig(5)
|
|
|
|
this.gewenst = ko.observable(3);
|
|
if (p.gewenst) {
|
|
this.gewenst(p.gewenst)
|
|
}
|
|
if (p.disabled == 'T' || p.disablenvt == 'T') this.gewenst(5)
|
|
|
|
this.nummer = p.nummer;
|
|
this.omschrijving = p.omschrijving;
|
|
this.toelichting = p.toelichting;
|
|
this.aantalscholen = p.aantalscholen;
|
|
|
|
}
|
|
function fAddAdvies(a) {
|
|
this.nummer = a.nummer;
|
|
this.omschrijving = a.omschrijving;
|
|
}
|
|
|
|
function fIcoon(afbeelding) {
|
|
this.afbeelding = ko.observable(afbeelding);
|
|
}
|
|
|
|
|
|
|
|
if (ls.OntwikkelModel !== undefined){
|
|
ls.OntwikkelModel.initModel();
|
|
}
|
|
else {
|
|
ls.OntwikkelModel = {
|
|
toporg : ko.observableArray([]),
|
|
users : ko.observableArray([]),
|
|
selectedOrg : ko.observable(''),
|
|
usernivo : ko.observable(),
|
|
orgsoort : ko.observable(1),
|
|
orgversions : ko.observableArray([]),
|
|
selectedOrgversion : ko.observable(''),
|
|
selectedUser : ko.observable(''),
|
|
instrument : ko.observable(''),
|
|
// ijkpunten : ko.observableArray([]),
|
|
versieid : ko.observable(), // moet waarschijnlijk orgversie id worden!!
|
|
results : ko.observableArray([]),
|
|
writeOK : ko.observable(false),
|
|
level123 : ko.observable(false),
|
|
wijzigRecht : ko.observable(false),
|
|
eigenLijst : ko.observable(false),
|
|
ingevuld : ko.observable(false),
|
|
bezig : ko.observable(false),
|
|
verberg : ko.observable(false),
|
|
drag_start_index0 : ko.observable(0),
|
|
drag_target_index0 : ko.observable(0),
|
|
drag_start_index1 : ko.observable(0),
|
|
drag_target_index1 : ko.observable(0),
|
|
drag_start_index2 : ko.observable(0),
|
|
drag_target_index2 : ko.observable(0),
|
|
drag_start_index3 : ko.observable(0),
|
|
drag_target_index3 : ko.observable(0),
|
|
drag_start_index4 : ko.observable(0),
|
|
drag_target_index4 : ko.observable(0),
|
|
selectedAgenda : ko.observable('standaard'),
|
|
geentoegang : ko.observable(false),
|
|
orgversie : ko.observable(0),
|
|
adviezen : ko.observableArray(),
|
|
|
|
|
|
dragging0 : ko.computed(function() {
|
|
if(ls.OntwikkelModel) {
|
|
return ls.OntwikkelModel.drag_start_index0() >= 0;
|
|
}
|
|
}),
|
|
dragging1 : ko.computed(function() {
|
|
if(ls.OntwikkelModel) {
|
|
return ls.OntwikkelModel.drag_start_index1() >= 0;
|
|
}
|
|
}),
|
|
dragging2 : ko.computed(function() {
|
|
if(ls.OntwikkelModel) {
|
|
return ls.OntwikkelModel.drag_start_index2() >= 0;
|
|
}
|
|
}),
|
|
dragging3 : ko.computed(function() {
|
|
if(ls.OntwikkelModel) {
|
|
return ls.OntwikkelModel.drag_start_index3() >= 0;
|
|
}
|
|
}),
|
|
dragging4 : ko.computed(function() {
|
|
if(ls.OntwikkelModel) {
|
|
return ls.OntwikkelModel.drag_start_index4() >= 0;
|
|
}
|
|
}),
|
|
basisACC : ko.observableArray([new fIcoon("acceptGrijs"), new fIcoon("acceptRood"), new fIcoon("acceptOranje"), new fIcoon("acceptGroen"), new fIcoon("acceptBlauw")]),
|
|
acceptaties : ko.observableArray([new fIcoon("acceptGrijs"), new fIcoon("leeg"), new fIcoon("leeg"), new fIcoon("leeg"), new fIcoon("leeg")]),
|
|
basisBTR : ko.observableArray([new fIcoon("samenGrijs"), new fIcoon("samenRood"), new fIcoon("samenOranje"), new fIcoon("samenGroen"), new fIcoon("samenBlauw")]),
|
|
betrokkenen : ko.observableArray(),
|
|
basisDIF : ko.observableArray([new fIcoon("diffGrijs"), new fIcoon("diffRood"), new fIcoon("diffOranje"), new fIcoon("diffGroen"), new fIcoon("diffBlauw")]),
|
|
diffs : ko.observableArray(),
|
|
basisEXT : ko.observableArray([new fIcoon("extraGrijs"), new fIcoon("extraRood"), new fIcoon("extraOranje"), new fIcoon("extraGroen"), new fIcoon("extraBlauw")]),
|
|
extras : ko.observableArray(),
|
|
basisOMG : ko.observableArray([new fIcoon("omgevingGrijs"), new fIcoon("omgevingRood"), new fIcoon("omgevingOranje"), new fIcoon("omgevingGroen"), new fIcoon("omgevingBlauw")]),
|
|
omgevingen : ko.observableArray(),
|
|
|
|
|
|
|
|
|
|
initBindings :function(){
|
|
var self = ls.OntwikkelModel;
|
|
if (!ko.dataFor(document.getElementById('pagontwikkel')) ) {
|
|
ko.applyBindings(ls.OntwikkelModel, document.getElementById("pagontwikkel"));
|
|
}
|
|
self.initModel();
|
|
},
|
|
initModel: function() {
|
|
var self = ls.OntwikkelModel;
|
|
$.post("index.php/monpas/rapijkpunten/checkLevel", function(data){
|
|
if(data){
|
|
if(data === 1)
|
|
self.level123(true);
|
|
}
|
|
$.post("index.php/monpas/rapontwikkel/getModule", function(result){
|
|
if(result){
|
|
self.instrument(result);
|
|
if(self.instrument() == '730'){
|
|
self.selectedAgenda('dragdrop')
|
|
}
|
|
}
|
|
self.fGetOrganisaties();
|
|
},'json')
|
|
},'json')
|
|
},
|
|
|
|
|
|
fGetOrganisaties: function(){
|
|
var self = ls.OntwikkelModel;
|
|
self.toporg('');
|
|
|
|
$.post("index.php/monpas/rapijkpunten/getorgs", function(data){
|
|
self.bezig(true);
|
|
if (data.organisatie){
|
|
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
|
|
$.post('index.php/monpas/rapijkpunten/getusernivo', function(result){
|
|
self.usernivo(result);
|
|
self.selectedOrg(self.toporg());
|
|
self.fGetWriteAutorisatie(self.fSwitchLevel());
|
|
|
|
|
|
},'json');
|
|
} // if
|
|
self.bezig(false);
|
|
},'json');
|
|
},
|
|
fGetWriteAutorisatie: function(callback){
|
|
var self = ls.OntwikkelModel;
|
|
var user = 0;
|
|
if(self.selectedUser()){
|
|
user = self.selectedUser().id;
|
|
}
|
|
|
|
|
|
var submitData = {'orgsoort' : self.selectedOrg().soort,
|
|
'orgid' : self.selectedOrg().id,
|
|
'user' : user }
|
|
$.post("index.php/monpas/rapontwikkel/checkSchrijfrechtenOrg/", submitData, function(result){
|
|
self.writeOK(result);
|
|
if(typeof callback ==='function' && callback()){
|
|
callback();
|
|
}
|
|
|
|
},'json');
|
|
|
|
|
|
},
|
|
fToggleGeopend: function(){
|
|
this.geopend(!this.geopend());
|
|
},
|
|
|
|
|
|
fUpdateGewenst: function(num){
|
|
var self=ls.OntwikkelModel;
|
|
if(this.huidig() != 5 ) this.gewenst(num);
|
|
},
|
|
fSwitchOrg: function(){
|
|
var self = ls.OntwikkelModel;
|
|
|
|
if (self.selectedOrg() == undefined) return;
|
|
if (this.id == self.selectedOrg().id) return;
|
|
self.selectedOrg(this);
|
|
self.results.removeAll();
|
|
self.ingevuld(false);
|
|
self.fGetWriteAutorisatie();
|
|
self.fSwitchLevel();
|
|
},
|
|
fSwitchLevel: function(){
|
|
var self = ls.OntwikkelModel;
|
|
|
|
if (self.selectedOrg() == undefined) return;
|
|
if (this.id == self.selectedOrg().id) return;
|
|
var versieid = null;
|
|
if(self.selectedOrgversion() != undefined ) {
|
|
versieid = self.selectedOrgversion().id;
|
|
}
|
|
$.post("index.php/monpas/rapijkpunten/getperiodes3/" + self.selectedOrg().id, function(data){
|
|
self.orgversions.removeAll();
|
|
self.results.removeAll();
|
|
self.wijzigRecht(false);
|
|
self.bezig(true);
|
|
if (data){
|
|
$.each(data,function(i,p){
|
|
self.orgversions.push(new fAddOrgversion(p));
|
|
})
|
|
}
|
|
if(versieid != null ){
|
|
$.each(self.orgversions(), function (i, q) {
|
|
if (q.id == versieid) {
|
|
self.selectedOrgversion(q);
|
|
return false;
|
|
}
|
|
});
|
|
}
|
|
else if(self.orgversions()) {
|
|
self.selectedOrgversion(self.orgversions[0]);
|
|
}
|
|
else{
|
|
self.selectedOrgversion("")
|
|
}
|
|
|
|
if(self.orgsoort()== '4' && self.selectedOrgversion().vorm == '2' && self. usernivo() <= 1){
|
|
self.verberg(false);
|
|
}
|
|
else{
|
|
self.verberg(true);
|
|
}
|
|
|
|
if (self.selectedOrgversion().vorm === '1' && self.writeOK()) self.wijzigRecht(true);
|
|
if (self.selectedOrgversion().vorm === '2' && self.eigenLijst()) self.wijzigRecht(true);
|
|
if (self.selectedOrgversion().vorm === '2' && self.writeOK() &&
|
|
self.selectedUser() === undefined) self.wijzigRecht(true);
|
|
if(self.level123() && self.writeOK()) self.wijzigRecht(true);
|
|
|
|
|
|
self.fChangeUser(function(){
|
|
var zelf = ls.OntwikkelModel;
|
|
zelf.bezig(false);
|
|
zelf.fChangeVersion2()});
|
|
},'json');
|
|
},
|
|
|
|
fChangeUser: function(callback){
|
|
var self = ls.OntwikkelModel;
|
|
|
|
if (self.selectedOrgversion() == undefined) return;
|
|
if (self.selectedOrg() == undefined) return;
|
|
|
|
var submitData = {orgversie : self.selectedOrgversion().id,
|
|
orgid : self.selectedOrg().id}
|
|
$.post("index.php/monpas/rapijkpunten/getusers", submitData, function(results){
|
|
self.users.removeAll();
|
|
self.results.removeAll();
|
|
|
|
|
|
if (results){
|
|
$.each(results, function(i,p){
|
|
self.users.push(new fAddUser(p));
|
|
|
|
}); // each
|
|
}
|
|
if(results && results.length == 1) {
|
|
self.selectedUser(self.users()[0]);
|
|
} else {
|
|
self.selectedUser() == undefined;
|
|
}
|
|
if (typeof callback == "function") callback();
|
|
//
|
|
},'json'); // post
|
|
},
|
|
|
|
|
|
fChangeVersion2: function(){
|
|
var self = ls.OntwikkelModel;
|
|
if (self.selectedOrgversion() == undefined) return;
|
|
if (self.bezig()) return;
|
|
if(self.level123()){
|
|
self.verberg(true);
|
|
self.fHaalOrgScoresOp()}
|
|
|
|
else {
|
|
if (self.selectedOrg().soort == 4 && self.selectedOrgversion().vorm == 2 && self.usernivo() <= 1) {
|
|
self.verberg(false);
|
|
if (self.selectedUser() == undefined) {
|
|
self.fHaalOrgScoresOp();
|
|
|
|
}
|
|
else {
|
|
self.fCheckEigenLijst();
|
|
|
|
self.fGetUserScores();
|
|
|
|
|
|
}
|
|
}
|
|
else {
|
|
self.verberg(true);
|
|
self.selectedUser("");
|
|
self.fHaalOrgScoresOp();
|
|
}
|
|
}
|
|
},
|
|
|
|
fHaalOrgScoresOp: function(){
|
|
var self = ls.OntwikkelModel;
|
|
self.ingevuld(false);
|
|
if(self.geentoegang() && self.orgversie() == self.selectedOrgversion().id ) return;
|
|
if (self.selectedOrgversion() == undefined) return;
|
|
self.orgversie(self.selectedOrgversion().id)
|
|
self.geentoegang(true)
|
|
|
|
|
|
|
|
var submitData = {orgversieid : self.selectedOrgversion().id,
|
|
orgid : self.selectedOrg().id
|
|
}
|
|
$.post("index.php/monpas/rapontwikkel/getscores", submitData, function(data){
|
|
self.results.removeAll();
|
|
self.adviezen.removeAll();
|
|
if (data){
|
|
$.each(data.scores, function(i,p){
|
|
self.results.push(new fAddResult(p));
|
|
self.ingevuld(true);
|
|
})
|
|
|
|
$.each(data.scores, function(z,s){
|
|
switch(Number(s.nummer)) {
|
|
case 1: self.fVulAcceptaties(s.gewenst);
|
|
break;
|
|
case 2: self.fVulBetrokkenen(s.gewenst);
|
|
break;
|
|
case 3: self.fVulDiffs(s.gewenst);
|
|
break;
|
|
case 4: self.fVulExtras(s.gewenst);
|
|
break;
|
|
case 5: self.fVulOmgevingen(s.gewenst);
|
|
break;
|
|
|
|
}
|
|
})
|
|
|
|
self.fGetWriteAutorisatie();
|
|
|
|
$.each(self.results(), function(i,p){
|
|
if(p.gewenst() && p.huidig() < p.gewenst()) {
|
|
self.adviezen.push( new fAddAdvies(p));
|
|
}
|
|
})
|
|
}
|
|
|
|
},'json');
|
|
|
|
},
|
|
|
|
fVulAcceptaties: function(gewenst){
|
|
var self = ls.OntwikkelModel;
|
|
// self.acceptaties.removeAll();
|
|
let streven = gewenst;
|
|
if(Number(gewenst) === 5) streven = 0;
|
|
switch(Number(streven)){
|
|
case 0: self.acceptaties([new fIcoon('acceptGrijs'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg')]);
|
|
break;
|
|
case 1: self.acceptaties([new fIcoon('leeg'), new fIcoon('acceptRood'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg')]);
|
|
break;
|
|
case 2: self.acceptaties([new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('acceptOranje'), new fIcoon('leeg'), new fIcoon('leeg')]);
|
|
break;
|
|
case 3: self.acceptaties([new fIcoon('leeg'),new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('acceptGroen'), new fIcoon('leeg')]);
|
|
break;
|
|
case 4: self.acceptaties([new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg'),new fIcoon('acceptBlauw')]);
|
|
break;
|
|
|
|
|
|
}
|
|
},
|
|
|
|
fVulBetrokkenen: function(gewenst){
|
|
var self = ls.OntwikkelModel;
|
|
self.betrokkenen.removeAll();
|
|
let streven = gewenst;
|
|
if(Number(gewenst) === 5) streven = 0;
|
|
|
|
switch(Number(streven)){
|
|
case 0: self.betrokkenen([new fIcoon('samenGrijs'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg')]);
|
|
break;
|
|
case 1: self.betrokkenen([new fIcoon('leeg'), new fIcoon('samenRood'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg')]);
|
|
break;
|
|
case 2: self.betrokkenen([new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('samenOranje'), new fIcoon('leeg'), new fIcoon('leeg')]);
|
|
break;
|
|
case 3: self.betrokkenen([new fIcoon('leeg'),new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('samenGroen'), new fIcoon('leeg')]);
|
|
break;
|
|
case 4: self.betrokkenen([new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg'),new fIcoon('samenBlauw')]);
|
|
break;
|
|
}
|
|
|
|
},
|
|
|
|
fVulDiffs: function(gewenst){
|
|
var self = ls.OntwikkelModel;
|
|
self.diffs.removeAll();
|
|
let streven = gewenst;
|
|
if(Number(gewenst) === 5) streven = 0;
|
|
switch(Number(streven)){
|
|
case 0: self.diffs([new fIcoon('diffGrijs'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg')]);
|
|
break;
|
|
case 1: self.diffs([new fIcoon('leeg'), new fIcoon('diffRood'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg')]);
|
|
break;
|
|
case 2: self.diffs([new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('diffOranje'), new fIcoon('leeg'), new fIcoon('leeg')]);
|
|
break;
|
|
case 3: self.diffs([new fIcoon('leeg'),new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('diffGroen'), new fIcoon('leeg')]);
|
|
break;
|
|
case 4: self.diffs([new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg'),new fIcoon('diffBlauw')]);
|
|
break;
|
|
|
|
}
|
|
},
|
|
|
|
fVulExtras: function(gewenst){
|
|
var self = ls.OntwikkelModel;
|
|
self.extras.removeAll();
|
|
let streven = gewenst;
|
|
if(Number(gewenst) === 5) streven = 0;
|
|
switch(Number(streven)){
|
|
case 0: self.extras([new fIcoon('extraGrijs'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg')]);
|
|
break;
|
|
case 1: self.extras([new fIcoon('leeg'), new fIcoon('extraRood'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg')]);
|
|
break;
|
|
case 2: self.extras([new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('extraOranje'), new fIcoon('leeg'), new fIcoon('leeg')]);
|
|
break;
|
|
case 3: self.extras([new fIcoon('leeg'),new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('extraGroen'), new fIcoon('leeg')]);
|
|
break;
|
|
case 4: self.extras([new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg'),new fIcoon('extraBlauw')]);
|
|
break;
|
|
|
|
}
|
|
},
|
|
|
|
fVulOmgevingen: function(gewenst){
|
|
var self = ls.OntwikkelModel;
|
|
self.omgevingen.removeAll();
|
|
let streven = gewenst;
|
|
if(Number(gewenst) === 5) streven = 0;
|
|
switch(Number(streven)){
|
|
case 0: self.omgevingen([new fIcoon('omgevingGrijs'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg')]);
|
|
break;
|
|
case 1: self.omgevingen([new fIcoon('leeg'), new fIcoon('omgevingRood'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg')]);
|
|
break;
|
|
case 2: self.omgevingen([new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('omgevingOranje'), new fIcoon('leeg'), new fIcoon('leeg')]);
|
|
break;
|
|
case 3: self.omgevingen([new fIcoon('leeg'),new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('omgevingGroen'), new fIcoon('leeg')]);
|
|
break;
|
|
case 4: self.omgevingen([new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg'), new fIcoon('leeg'),new fIcoon('omgevingBlauw')]);
|
|
break;
|
|
|
|
}
|
|
|
|
// for(let i = 0; i< 5; i++){
|
|
// if(i=== streven){
|
|
// switch(streven){
|
|
// case 0: self.omgevingen.push(new fIcoon('omgevingGrijs'));
|
|
// break;
|
|
// case 1: self.omgevingen.push(new fIcoon('omgevingRood'));
|
|
// break;
|
|
// case 2: self.omgevingen.push(new fIcoon('omgevingOranje'));
|
|
// break;
|
|
// case 3: self.omgevingen.push(new fIcoon('omgevingGroen'));
|
|
// break;
|
|
// case 4: self.omgevingen.push(new fIcoon('omgevingBlauw'));
|
|
// break;
|
|
//
|
|
// }
|
|
// }
|
|
// else{
|
|
// self.omgevingen.push(new fIcoon('leeg'))
|
|
// }
|
|
// }
|
|
},
|
|
|
|
|
|
|
|
fGetUserScores: function(){
|
|
var self = ls.OntwikkelModel;
|
|
self.results.removeAll();
|
|
self.ingevuld(false);
|
|
self.eigenLijst(false);
|
|
var submitData ='';
|
|
|
|
if ( self.selectedOrg() == undefined ||
|
|
self.selectedOrgversion() == undefined ||
|
|
self.users() == undefined ||
|
|
self.usernivo > 1 ) return;
|
|
|
|
|
|
if (self.selectedUser() != undefined){
|
|
|
|
submitData = { orguserid : self.selectedUser().orguserid,
|
|
orgid : self.selectedOrg().id,
|
|
orgversie : self.selectedOrgversion().id}
|
|
$.post("index.php/monpas/rapontwikkel/scoresindividueel" , submitData, function(data){
|
|
self.adviezen.removeAll();
|
|
if (data){
|
|
$.each(data.scores, function(i,p){
|
|
self.results.push(new fAddResult(p));
|
|
self.ingevuld(true);
|
|
})
|
|
|
|
$.each(data.scores, function(z,s){
|
|
switch(Number(s.nummer)) {
|
|
case 1: self.fVulAcceptaties(s.gewenst);
|
|
break;
|
|
case 2: self.fVulBetrokkenen(s.gewenst);
|
|
break;
|
|
case 3: self.fVulDiffs(s.gewenst);
|
|
break;
|
|
case 4: self.fVulExtras(s.gewenst);
|
|
break;
|
|
case 5: self.fVulOmgevingen(s.gewenst);
|
|
break;
|
|
}
|
|
})
|
|
}
|
|
self.fCheckEigenLijst();
|
|
$.each(self.results(), function(i,p){
|
|
if(p.gewenst() && p.huidig() < p.gewenst()) {
|
|
self.adviezen.push( new fAddAdvies(p));
|
|
}
|
|
})
|
|
},'json');
|
|
}
|
|
else {
|
|
self.results.removeAll();
|
|
self.fHaalOrgScoresOp();
|
|
}
|
|
},
|
|
|
|
fCheckEigenLijst: function(){
|
|
var self = ls.OntwikkelModel;
|
|
self.wijzigRecht(false);
|
|
$.post("index.php/monpas/rapontwikkel/checkindividueelschrijfrecht/" +self.selectedUser().orguserid, function(result){
|
|
if (result){
|
|
self.eigenLijst(result);
|
|
}
|
|
else{
|
|
self.eigenLijst(false);
|
|
}
|
|
if (self.eigenLijst()) self.wijzigRecht(true);
|
|
if (self.writeOK() &&
|
|
self.selectedUser() === undefined) self.wijzigRecht(true);
|
|
},'json');
|
|
},
|
|
|
|
fToonToelichting: function(){
|
|
var self = ls.OntwikkelModel;
|
|
var dit = this;
|
|
var toelichting = '';
|
|
if (dit.toelichting != undefined) toelichting = dit.toelichting;
|
|
apprise(dit.nummer + '. ' + dit.omschrijving + '<br/>Toelichting: ' + toelichting);
|
|
},
|
|
fSaveGewenst: function(){
|
|
var self=ls.OntwikkelModel;
|
|
var orguserid = 0;
|
|
|
|
if(self.eigenLijst()){
|
|
orguserid = self.selectedUser().orguserid;
|
|
}
|
|
var wensarray = [];
|
|
|
|
if(self.selectedAgenda()==='standaard') {
|
|
$.each(self.results(), function (i, p) {
|
|
wensarray[i] = {
|
|
'ijkpuntid': p.ijkpuntid,
|
|
'wensid': p.wensid,
|
|
'gewenst': p.gewenst()
|
|
};
|
|
|
|
|
|
});
|
|
}
|
|
if(self.selectedAgenda()==='dragdrop') {
|
|
$.each(self.results(), function (i, p) {
|
|
switch(Number(p.nummer)) {
|
|
case 1: $.each(self.acceptaties(), function (x, a) {
|
|
if (a.afbeelding() !== 'leeg') {
|
|
wensarray.push({'ijkpuntid': p.ijkpuntid,
|
|
'wensid': p.wensid,
|
|
'gewenst': x})
|
|
}
|
|
});
|
|
break;
|
|
case 2: $.each(self.betrokkenen(), function (z, b) {
|
|
if (b.afbeelding() !== 'leeg') {
|
|
wensarray.push({'ijkpuntid': p.ijkpuntid,
|
|
'wensid': p.wensid,
|
|
'gewenst': z})
|
|
}
|
|
});
|
|
break;
|
|
case 3: $.each(self.diffs(), function (s, d) {
|
|
if (d.afbeelding() !== 'leeg') {
|
|
wensarray.push({'ijkpuntid': p.ijkpuntid,
|
|
'wensid': p.wensid,
|
|
'gewenst': s})
|
|
}
|
|
});
|
|
break;
|
|
case 4: $.each(self.extras(), function (g, x) {
|
|
if (x.afbeelding() !== 'leeg') {
|
|
wensarray.push({'ijkpuntid': p.ijkpuntid,
|
|
'wensid': p.wensid,
|
|
'gewenst': g})
|
|
}
|
|
});
|
|
break;
|
|
case 5: $.each(self.omgevingen(), function (f, m) {
|
|
if (m.afbeelding() !== 'leeg') {
|
|
wensarray.push({'ijkpuntid': p.ijkpuntid,
|
|
'wensid': p.wensid,
|
|
'gewenst': f})
|
|
}
|
|
});
|
|
break;
|
|
|
|
|
|
}
|
|
})
|
|
}
|
|
//
|
|
// return;
|
|
|
|
|
|
var submitData= { 'wensarray' : wensarray,
|
|
'orgid' : self.selectedOrg().id,
|
|
'orgversionid' : self.selectedOrgversion().id,
|
|
'orguserid' : orguserid}
|
|
$.post("index.php/monpas/rapontwikkel/savegewenst", submitData, function(wensids){
|
|
|
|
self.adviezen.removeAll();
|
|
$.each(self.results(), function(i,p){
|
|
if(p.gewenst() && p.huidig() < p.gewenst()) {
|
|
self.adviezen.push(new fAddAdvies(p));
|
|
}
|
|
})
|
|
ls.MsgAutoFade("Gegevens zijn opgeslagen", 600);
|
|
;// If wensids
|
|
},'json')
|
|
},
|
|
|
|
fDragstart: function( event, index, parent){
|
|
var self= ls.OntwikkelModel;
|
|
$(event.target).addClass('dragSource')
|
|
switch(parent){
|
|
|
|
case 'ACC': if(self.results()[0] && self.results()[0].disabled=== 'T') {
|
|
apprise("Dit ijkpunt is uitgezet.");
|
|
return;}
|
|
else self.drag_start_index0(index);
|
|
break;
|
|
case 'BTR': if(self.results()[1] && self.results()[1].disabled=== 'T') {
|
|
apprise("Dit ijkpunt is uitgezet.");
|
|
return;}
|
|
else self.drag_start_index1(index);
|
|
break;
|
|
case 'DIF': if(self.results()[2] && self.results()[2].disabled=== 'T') {
|
|
apprise("Dit ijkpunt is uitgezet.");
|
|
return;}
|
|
else self.drag_start_index2(index);
|
|
break;
|
|
case 'EXT': if(self.results()[3] && self.results()[3].disabled=== 'T') {
|
|
apprise("Dit ijkpunt is uitgezet.");
|
|
return;}
|
|
else self.drag_start_index3(index);
|
|
break;
|
|
case 'OMG': if(self.results()[4] && self.results()[4].disabled=== 'T') {
|
|
apprise("Dit ijkpunt is uitgezet.");
|
|
return;}
|
|
else self.drag_start_index4(index);
|
|
break;
|
|
}
|
|
|
|
return $(event.target).hasClass('draggable');
|
|
},
|
|
|
|
fDragend: function( event, index, parent){
|
|
var self= ls.OntwikkelModel;
|
|
switch(parent){
|
|
case 'ACC': self.drag_start_index0(-1);
|
|
break;
|
|
case 'BTR': self.drag_start_index1(-1);
|
|
break;
|
|
case 'DIF': self.drag_start_index2(-1);
|
|
break;
|
|
case 'EXT': self.drag_start_index3(-1);
|
|
break;
|
|
case 'OMG': self.drag_start_index4(-1);
|
|
break;
|
|
}
|
|
$(event.target).removeClass('dragSource')
|
|
return true;
|
|
},
|
|
fDragover: function( event){
|
|
event.preventDefault();
|
|
},
|
|
|
|
fDragenter: function( event, index, parent){
|
|
var self= ls.OntwikkelModel;
|
|
switch(parent){
|
|
case 'ACC': self.drag_target_index0(index);
|
|
break;
|
|
case 'BTR': self.drag_target_index1(index);
|
|
break;
|
|
case 'DIF': self.drag_target_index2(index);
|
|
break;
|
|
case 'EXT': self.drag_target_index3(index);
|
|
break;
|
|
case 'OMG': self.drag_target_index4(index);
|
|
break;
|
|
}
|
|
|
|
var element = $(event.target)
|
|
if(element.hasClass('draggable'))
|
|
element.toggleClass('dragover');
|
|
event.preventDefault();
|
|
},
|
|
|
|
fDragleave: function( event){
|
|
var element = $(event.target)
|
|
|
|
if(element.hasClass('draggable'))
|
|
element.toggleClass('dragover');
|
|
event.preventDefault();
|
|
},
|
|
|
|
fDrop: function( event, index, parent){
|
|
var self= ls.OntwikkelModel;
|
|
|
|
$(event.target).removeClass('dragover');
|
|
switch(parent){
|
|
case 'ACC': self.fWissel(self.drag_start_index0(), self.drag_target_index0(), 'ACC')
|
|
break;
|
|
case 'BTR': self.fWissel(self.drag_start_index1(), self.drag_target_index1(), 'BTR')
|
|
break;
|
|
case 'DIF': self.fWissel(self.drag_start_index2(), self.drag_target_index2(), 'DIF')
|
|
break;
|
|
case 'EXT': self.fWissel(self.drag_start_index3(), self.drag_target_index3(), 'EXT')
|
|
break;
|
|
case 'OMG': self.fWissel(self.drag_start_index4(), self.drag_target_index4(), 'OMG')
|
|
break;
|
|
}
|
|
},
|
|
|
|
|
|
fWissel : function(from, to, parent) {
|
|
var self = ls.OntwikkelModel;
|
|
|
|
switch(parent){
|
|
case 'ACC': if (to > self.acceptaties().length - 1 || to < 0) return;
|
|
var fromObj = self.basisACC()[to];
|
|
var toObj = self.acceptaties()[to];
|
|
self.acceptaties()[from] = toObj;
|
|
self.acceptaties()[to] = fromObj;
|
|
self.acceptaties.valueHasMutated();
|
|
break;
|
|
case 'BTR': if (to > self.betrokkenen().length - 1 || to < 0) return;
|
|
var fromObj = self.basisBTR()[to];
|
|
var toObj = self.betrokkenen()[to];
|
|
self.betrokkenen()[from] = toObj;
|
|
self.betrokkenen()[to] = fromObj;
|
|
self.betrokkenen.valueHasMutated();
|
|
|
|
break;
|
|
case 'DIF': if (to > self.diffs().length - 1 || to < 0) return;
|
|
var fromObj = self.basisDIF()[to];
|
|
var toObj = self.diffs()[to];
|
|
self.diffs()[from] = toObj;
|
|
self.diffs()[to] = fromObj;
|
|
self.diffs.valueHasMutated();
|
|
|
|
break;
|
|
case 'EXT': if (to > self.extras().length - 1 || to < 0) return;
|
|
var fromObj = self.basisEXT()[to];
|
|
var toObj = self.extras()[to];
|
|
self.extras()[from] = toObj;
|
|
self.extras()[to] = fromObj;
|
|
self.extras.valueHasMutated();
|
|
break;
|
|
case 'OMG': if (to > self.omgevingen().length - 1 || to < 0) return;
|
|
var fromObj = self.basisOMG()[to];
|
|
var toObj = self.omgevingen()[to];
|
|
self.omgevingen()[from] = toObj;
|
|
self.omgevingen()[to] = fromObj;
|
|
self.omgevingen.valueHasMutated();
|
|
break;
|
|
}
|
|
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
fPrintOntwikkelmatrix: function(){
|
|
var self = ls.OntwikkelModel;
|
|
var orgid = self.selectedOrg().id;
|
|
var orgversieid = self.selectedOrgversion().id;
|
|
var resultaten= [];
|
|
|
|
if (self.results()){
|
|
$.each(self.results(), function(i,p){
|
|
resultaten.push({'nummer' : p.nummer, 'ijkpuntid': p.ijkpuntid, 'huidig': p.huidig(), 'wens' : p.gewenst()});
|
|
})
|
|
}
|
|
|
|
var data={ 'orgid' : orgid,
|
|
"orgversieid" : orgversieid,
|
|
"resultaten" : resultaten,
|
|
"orgversie" : self.selectedOrgversion(),
|
|
"user" : self.selectedUser() ? self.selectedUser().usernaam : ''}
|
|
var submitUrl = "index.php/monpas/rapontwikkel/printontwikkelmatrix/?json=" + JSON.stringify(data);
|
|
window.open(submitUrl);
|
|
}
|
|
} ; // definition van model
|
|
ls.OntwikkelModel.initBindings();
|
|
|
|
// ls.OntwikkelModel.wijzigRecht = ko.pureComputed(function () {
|
|
// var self = ls.OntwikkelModel;
|
|
// if(!self.ingevuld()) return 'Verberg';
|
|
// if(self.selectedOrgversion().vorm == 1 && self.writeOK()) return 'Toon';
|
|
// if(self.selectedOrgversion().vorm == 2 && self.eigenLijst()) return 'Toon';
|
|
// if(self.selectedOrgversion().vorm == 2 && self.writeOK() && self.selectedUser() == undefined) return 'Toon';
|
|
// return 'Verberg';
|
|
//
|
|
// });
|
|
|
|
|
|
}; // else
|
|
}// function initOntwikkelModel
|
|
}); |