status wat betreft invullen lijsten

This commit is contained in:
Monique
2022-06-24 14:35:50 +02:00
parent f7fe1ced6b
commit 9545473157
13 changed files with 518 additions and 57 deletions
@@ -156,4 +156,59 @@ class Swvversies extends MY_Controller{
$modules = $this->Modules_model->getmodulesmetlijst();
echo json_encode($modules);
}
function getInvulstatus(){
if (!$this->userid) die;
$orgversie = $this->clean_input('orgversie');
$orgID = $this->clean_input('orgID');
$vorm = $this->clean_input('vorm');
$module = $this->clean_input('module');
$percentage = 0;
$ingevuld = 0;
$aantal = 0;
$mail = [];
$actiemail = [];
$orgsoort = $this->Organisaties_model->get_fieldvalue(['id'=>$orgID], 'soort');
$lijstorg = $this->Orgversies_model->get_fieldvalue(['id' =>$orgversie], 'organisatie_id');
$lijstsoort = $this->Organisaties_model->get_fieldvalue(['id'=>$lijstorg], 'soort');
if($lijstsoort == 1) $join = 'K.valtonder_id';
else $join = "K.id";
$status = FALSE;
if($vorm == 1){
$orgs = $this->Orgversies_model->getOrgsBijOrgversie($orgID, $orgversie, $orgsoort, $module, $join);
if($orgs){
foreach($orgs AS $org){
$status = $this->Filledversions_model->getMeetellen($orgversie, $org->schoolID, FALSE);
if($status) $org->status = $status;
if($status == 'meetellen') $ingevuld++;
}
}
}
if($vorm == 2) {
$orgs = $this->Orgversies_model->getUsersBijOrgversie($orgID, $orgversie, $orgsoort, $module, $join);
if($orgs){
foreach($orgs AS $org){
$status = $this->Filledversions_model->getMeetellen($orgversie, $org->schoolID, $org->gebruikerID);
if($status) $org->status = $status;
if($status == 'meetellen') $ingevuld++;
}
}
}
if($orgs){
$aantal = count($orgs);
$percentage = round($ingevuld/$aantal * 100);
}
echo json_encode(['status' => $orgs,
'lijsten' => $aantal,
'ingevuld' => $ingevuld,
'percentage' => $percentage
]);
}
}
@@ -13,6 +13,7 @@ class Organisaties extends MY_Controller{
"monpas/Orgversies_model",
"monpas/Filledversions_model",
"monpas/Scores_model",
"monpas/Schooldetails_model",
"monpas/Ambities_model",
"shared/Licenties_model");
$this->load->model($models);
@@ -82,7 +83,15 @@ class Organisaties extends MY_Controller{
"actief" =>1,
);
$newid = $this->Organisaties_model->insert_record($data);
$licenties = $this->input->post('licenties');
$data = [ 'organisatie_id' =>$newid,
'plaats' =>$this->clean_input("plaats"),
'email1' =>$this->clean_input("email"),
];
$this->Schooldetails_model->insert_record($data);
$licenties = $this->input->post('licenties');
if ($licenties){
foreach($licenties as $licentie){
$this->Licenties_model->insert_record(array("orgid"=>$newid, "modulenr"=>$licentie));
@@ -156,6 +165,17 @@ class Organisaties extends MY_Controller{
// "mondiv" =>$mondiv
);
$this->Organisaties_model->update_record($data,$orgid);
$detailsid = $this->Schooldetails_model->get_fieldvalue(["organisatie_id" =>$orgid], 'id');
if($detailsid){
$this->Schooldetails_model->update_record(["email1" =>$this->clean_input("email")], $detailsid);
}
else {
$data = [ 'organisatie_id' =>$orgid,
'plaats' =>$this->clean_input("plaats"),
'email1' =>$this->clean_input("email"),
];
$this->Schooldetails_model->insert_record($data);
}
$this->Licenties_model->delete_record_where(array("orgid"=>$orgid));
$licenties = $this->input->post("licenties");
if ($licenties){
+3 -2
View File
@@ -74,7 +74,8 @@ class MY_Controller extends CI_Controller{
// public $version = '1.17.98';// instrumenten voor ouders
// public $version = '1.17.99';// instrumenten ook voor leerlingen
// public $version = '1.18.00';// alle instrumenten in het compact sop
public $version = '1.18.02';// fout in resultaatmatrix
// public $version = '1.18.02';// fout in resultaatmatrix
public $version = '1.18.03';// invul status
@@ -86,7 +87,7 @@ class MY_Controller extends CI_Controller{
public $globorgid; //orgid which has been chosen by user (only BG and SUPERUSER)
public $userbg; // TRUE or FALSE for orgid if this org is BG
public $globisbg; // TRUE or FALSE for globorgid if this org is BG
public $userrole; //role of the user logged in dwz autorisatienivo van de eigen organisatie
public $userrole; //role of the nguser logged in dwz autorisatienivo van de eigen organisatie
// dus echt het nivo en niet het id van autorisatienivos
public $roleid;
public $super; //TRUE or FALSE for user SUPERUSER
@@ -96,6 +96,10 @@ class Schoolafbeeldingen {
return $this->adviezen;
}
public function getSomscore(){
return $this->somscore;
}
private function setScores(){
$this->scores = $this->schoolscores->getScores();
}
@@ -200,12 +200,13 @@ class Lijsten
private function setSchoolScores(){
if ($this->soort != 4 || $this->lijst->vorm != 1) return;
$this->schoolScores = new Schoolscores($this->lijst->orgversieid, $this->orgid);
if($this->schoolScores) {
$this->metingen = 1;
$this->aantalorgs = 1;
$this->schoolAfbeeldingen = new Schoolafbeeldingen($this->schoolScores, $this->modulenr, $this->lijst->orgversieid,
$this->clusterid, $this->orgid);
$this->metingen = 0;
$this->aantalorgs = 1;
$somscore = $this->schoolAfbeeldingen->getSomscore();
if($somscore > 0) $this->metingen = 1;
}
}
@@ -301,7 +302,8 @@ class Lijsten
break;
case 4: if(empty($this->schoolScores) ||empty($this->gemiddeldeScores) ) return;
if(count((array) $this->schoolScores) > 0) {
$this->lijst->metingen = 1;
$somscore = $this->schoolAfbeeldingen->getSomscore();
if($somscore > 0) $this->lijst->metingen = 1;
$this->lijst->aantalorgs = 1;
}
if(count((array)$this->gemiddeldeScores)> 0){
@@ -121,6 +121,7 @@ class Filledversions_model extends MY_Model{
JOIN tb_antwoordtypes A ON A.sysnr = OV.scoretype
WHERE FV.organisatie_id ={$orgid}
AND V.modulenr = {$modulenr}
ORDER BY OV.periodenummer DESC";
return $this->get_query_result();
}
@@ -139,6 +140,7 @@ class Filledversions_model extends MY_Model{
JOIN tb_versies V ON V.id =OV.versie_id
WHERE FV.organisatie_id IN ($idlijst)
AND V.modulenr = {$module}
AND FV.meetellen = 1
ORDER BY OV.geldigtm DESC";
return $this->get_query_result();
}
@@ -490,13 +492,19 @@ class Filledversions_model extends MY_Model{
return $this->get_query_row('meting');
}
function getMeetellen($orgversie, $orgid, $userid = FALSE){
$this->sql = " SELECT CASE WHEN meetellen = 1 THEN 'meetellen'
ELSE '(nog) niet meetellen'
END AS meetellen
FROM tb_filledversions
WHERE organisatie_id = {$orgid}
AND orgversie_id = {$orgversie} ";
if($userid){
$this->sql .= "AND user_id = {$userid}";
}
return $this->get_query_row('meetellen');
}
}
@@ -200,5 +200,71 @@ class Orgversies_model extends MY_Model{
}
function getOrgsBijOrgversie($orgID, $orgversie, $orgsoort, $module, $join){
$this->sql=" SELECT O.id AS schoolID, O.brin, O.naam AS school, BG.naam AS bg, K.naam AS kamer, SD.email1 AS mail,
'niet geopend' AS status
FROM tb_organisaties O
JOIN tb_organisaties BG ON O.valtonder_id = BG.id
JOIN tb_organisaties K ON BG.valtonder_id = K.id
JOIN tb_licenties L ON O.id = L.orgid
JOIN tb_orgversies OV ON OV.organisatie_id = {$join}
LEFT JOIN tb_schooldetails SD ON O.id = SD.organisatie_id
WHERE O.soort = 4
AND O.actief = 1
AND L.modulenr ={$module}
AND OV.id = {$orgversie} ";
if($orgsoort == 2){
$this->sql.="
AND K.id = {$orgID}
ORDER BY BG.naam, O.naam ";
}
else{
$this->sql.=" AND K.valtonder_id = {$orgID}
ORDER BY K.naam, BG.naam, O.naam ";
}
return $this->get_query_result();
}
function getUsersBijOrgversie($orgID, $orgversie, $orgsoort, $module, $join){
$this->sql=" SELECT O.id AS schoolID, O.brin, O.naam AS school, BG.naam AS bg, K.naam AS kamer, U.email AS mail,
U.id AS gebruikerID, Concat_ws(' ', U.voornaam, U.tussenvoegsel, U.achternaam) AS gebruiker,
'niet geopend' AS status, AN.naam AS autorisatie
FROM tb_organisaties O
JOIN tb_organisaties BG ON O.valtonder_id = BG.id
JOIN tb_organisaties K ON BG.valtonder_id = K.id
JOIN tb_orgusers OU ON OU.organisatie_id = O.id
JOIN tb_users U ON OU.user_id = U.id
JOIN tb_licenties L ON O.id = L.orgid
JOIN tb_orgversies OV ON OV.organisatie_id = {$join}
JOIN tb_autorisaties AU ON OU.id = AU.orguser_id
JOIN tb_autorisatienivos AN ON AU.nivo_id = AN.id
AND O.soort = 4
AND O.actief = 1
AND U.actief = 1
AND L.modulenr = {$module}
AND OV.id = {$orgversie}
AND AN.nivo < 1024
AND AN.nivo > 0
AND LENGTH(U.achternaam) > 2
";
if($orgsoort == 2){
$this->sql.="
AND K.id = {$orgID}
ORDER BY BG.naam, O.naam, U.achternaam
";
}
else{
$this->sql.="
AND K.valtonder_id = {$orgID}
ORDER BY K.naam, BG.naam, O.naam, U.achternaam ";
}
return $this->get_query_result();
}
}
@@ -277,20 +277,22 @@ class Organisaties_model extends MY_Model{
function getorgsdetails($soort, $valtonder){
$this->sql="SELECT id, soort, brin, naamkort, naam,
plaats,valtonder_id, actief, monbas, mondiv,
bijlagefile
FROM tb_organisaties
WHERE soort = {$soort}
AND actief = 1";
$this->sql="SELECT O.id, O.soort, O.brin, O.naamkort, O.naam,
O.plaats, O.valtonder_id, O.actief, O.monbas, O.mondiv,
O.bijlagefile, SD.email1
FROM tb_organisaties O
LEFT JOIN tb_schooldetails SD ON O.id = SD.organisatie_id
WHERE O.soort = {$soort}
AND O.actief = 1";
if ($valtonder) {
$this->sql .=" AND valtonder_id = {$valtonder} ";
$this->sql .=" AND O.valtonder_id = {$valtonder} ";
};
return $this->get_query_result();
}
function getorgdetails($id){
$this->sql="SELECT id, soort, brin, naamkort, naam, plaats,valtonder_id, actief,monbas, mondiv
FROM tb_organisaties
FROM tb_organisaties
WHERE id= {$id}
ORDER BY naamkort ";
return $this->get_query_row();
@@ -64,7 +64,7 @@
<td data-bind="text: nummer"></td>
<td data-bind="text: naamkort, attr:{'title': naam}"></td>
<td data-bind="text: plaats"></td>
<td class="klikbaar editbutton" data-bind="click:$root.fPopEditOrg.bind($data,4)"></td>
<td class="klikbaar editbutton" data-bind="click:$root.fPopEditOrg.bind($data,4)"></td>
<td ><button class="noshow delete" data-bind="click: $root.fDeleteOrg.bind($data,4) "></button></td>
</tr>
</tbody>
@@ -99,6 +99,10 @@
<td>Plaats</td>
<td><input data-bind="textInput: plaats" style="width: 100%"/></td>
</tr>
<tr>
<td>Email</td>
<td><input data-bind="textInput: email" style="width: 100%"/></td>
</tr>
<tr>
<td>Actief</td>
<td><input type="checkbox" data-bind="checked: actief"/></td>
@@ -172,6 +176,10 @@
<td>Plaats</td>
<td><input data-bind="textInput: newPlaats" style="width: 100%"/></td>
</tr>
<tr>
<td>Email</td>
<td><input data-bind="textInput: newEmail" style="width: 100%"/></td>
</tr>
<tr>
<td colspan=2> <hr/></td>
</tr>
+194 -16
View File
@@ -1,20 +1,20 @@
<div class="col-sm-12 mainpagina submenupage" id ="pagSWVversies">
<div class="col-sm-12 col-md-3">
<div class="col-sm-12 col-md-2">
<h4 style="margin-top:20px"> selecteer een organisatie</h4>
<div style="width: 99% ; height: 500px; overflow-y:auto; margin-top:20px">
<ul data-bind= "foreach: swvs" class="lsul ">
<li class= 'header clickable' data-bind="text: naam, click: $parent.fSetSelectedOrg"></li>
<li class= 'header clickable' style="text-align: left; padding: 5px; " data-bind="text: naam, click: $parent.fSetSelectedOrg"></li>
<li data-bind="visible: kamers().length > 0">
<ul data-bind="foreach: kamers">
<li class="clickable" data-bind="text: naam, click: $root.fSetSelectedOrg"></li>
<ul data-bind="foreach: kamers" class="lsul ">
<li class="clickable" style="text-align: left; padding: 5px; " data-bind="text: naam, click: $root.fSetSelectedOrg"></li>
</ul>
</li>
</ul>
</div>
</div><!-- kolom links -->
<div class="col-sm-12 col-md-9" >
<div class="col-sm-12 col-md-10" >
<div class="col-sm-12">
<h3>Instrument
<select
@@ -34,17 +34,19 @@
<table style="width: 100%; margin-top:20px;">
<thead>
<tr>
<th style="width: 3%">A</th>
<th style="width: 12%">geldig vanaf</th>
<th style="width: 12%">geldig t.m</th>
<th style="width: 20%">versie</th>
<th style="width: 15%">vorm</th>
<th style="width: 20%; ">score type</th>
<th style="width: 3%;">
S <sup style="font-weight: bold" data-bind="click: $parent.fToonInfoTekst">i</sup>
<th style="width: 5%" >actief</th>
<th style="width: 10%" >geldig vanaf</th>
<th style="width: 10%" >geldig t/m</th>
<th style="width: 5%" >nr</th>
<th style="width: 15%" >versie</th>
<th style="width: 14%" >vorm</th>
<th style="width: 17%" >score type</th>
<th style="width: 5%" >
score-tekst<sup style="font-weight: bold" data-bind="click: $parent.fToonInfoTekst">i</sup>
</th>
<th style="width: 13%">invullen tot</th>
<th style="width: 3%"> </th>
<th style="width: 10%" >invullen tot</th>
<th style="width: 5%" >status</th>
<th style="width: 4%" ></th>
</tr>
</thead>
<tbody data-bind="foreach: $parent.koppelingen">
@@ -58,6 +60,7 @@
<td><input class= "datum"
data-bind="datepicker:{minDate: geldigvanaf}, value: geldigtm, event: {change: $root.fUpdateKoppeling}" />
</td>
<td data-bind="text: nummer"></td>
<td data-bind="text: naam"> </td>
<td>
<select data-bind="options: $root.vormarray,
@@ -86,6 +89,9 @@
<td><input class= "datum"
data-bind="datepicker{minDate: geldigvanaf, maxDate: geldigtm}, value: invullentm, event: {change: $root.fUpdateKoppeling}" />
</td>
<td ><button data-bind="click: $root.fToonStatus " style="width: 99%; height: 25px;padding: 0; padding-top: 1px; background-color: #ded0d7; ">toon
</button>
</td>
<td><button class="delete"
data-bind="click: $root.fDeleteKoppeling, visible:wijzigok"> </button> </td>
</tr>
@@ -94,6 +100,170 @@
</div>
</div> <!-- kolom rechts -->
<!-- ******************** popups ************************** -->
<div class="modal fade " id="modInvulStatus" role="dialog">
<div class="modal-dialog " style="width: 95%; display: block; ">
<div class="modal-content">
<div class="modal-header">
<button style="width: 20px; float: right; padding:2px; padding-bottom: 10px; ; color: #6F0B3D" data-dismiss="modal" >x</button>
<p><span data-bind="text: selectedModule() ? selectedModule().naam: '' "></span>
<span>, lijst nr</span>
<span data-bind="text: selectedOrgversie() ? selectedOrgversie().nummer + ' ' + selectedOrgversie().naam +
', ' + selectedOrgversie().geldigvanaf() + ' t/m ' + selectedOrgversie().geldigtm() : ' ' ">
</span>
</p>
<p>
<span data-bind="text: selectedOrgversie() ? selectedOrgversie().vorm == 1 ? 'schoolversie' : 'individuele versie' : ' ' ">
</span>
</p>
</div>
<div class="modal-body">
<div class="row">
<div class="col-xs-3">
<table style="margin-bottom: 20px; border: 1px solid gainsboro;">
<thead>
<tr><th colspan="2" style="color: #ffffff; background-color: #6F0B3D; vertical-align: top;">
status
</th>
</tr>
</thead>
<tbody>
<tr>
<td data-bind="text: selectedOrgversie() && selectedOrgversie().vorm() == 2 ? 'aantal gebruikers: ': 'aantal scholen: ' "
style="border-left: 1px solid gainsboro; border-right: 1px solid gainsboro" >
</td>
<td data-bind="text: aantalLijsten "
style="text-align: right; border-left: 1px solid gainsboro; border-right: 1px solid gainsboro">
</td>
</tr>
<tr>
<td style="border-left: 1px solid gainsboro; border-right: 1px solid gainsboro" >ingevuld en meetellen:
</td>
<td data-bind="text: ingevuld " style="text-align: right; border-left: 1px solid gainsboro; border-right: 1px solid gainsboro">
</td>
</tr>
<tr>
<td style="border-left: 1px solid gainsboro; border-right: 1px solid gainsboro">percentage:
</td>
<td data-bind="text: percentage() + '%' "
style="text-align: right; border-left: 1px solid gainsboro; border-right: 1px solid gainsboro">
</td>
</tr>
</tbody>
</table>
</div>
<div class="col-xs-9">
<div data-bind="visible: toonAdressen()== false" >
<button data-bind="text: selectedOrgversie() && selectedOrgversie().vorm() == 2 ? 'alle mailadressen' : 'mailadressen' , click: fGetAdressen.bind($data, 'alle') " style="margin-right: 10px;"></button>
<div data-bind="visible: selectedOrgversie() && selectedOrgversie().vorm() == 2 ">
<button data-bind="click: fGetAdressen.bind($data, 'manage') " style="margin-right: 10px;">mail management</button>
<button data-bind="click: fGetAdressen.bind($data, 'mede') " style="margin-right: 10px;">mail medewerkers</button>
</div>
</div>
<div data-bind="visible: toonAdressen()== true" >
<textarea rows="10" cols="100" id ="mails" data-bind="textInput: maillijst "></textarea>
<br>
<!-- <button style="margin-bottom: 5px;" data-bind="click: fCopyAdressen">kopieer</button>-->
<!-- <br>-->
<button style="margin-bottom: 5px;" data-bind="click: fSluitAdressen">sluit</button>
</div>
</div>
</div>
<div class="row">
<div class="col-xs-12">
<table class="lstable" style="width: 100%;" >
<thead>
<tr >
<th style="color: #ffffff;background-color: #6F0B3D; vertical-align: top; width: 8%;
border-left: 1px solid gainsboro; border-right: 1px solid gainsboro">brin
</th>
<th style="color: #ffffff;background-color: #6F0B3D; vertical-align: top; width: 17%;
border-left: 1px solid gainsboro; border-right: 1px solid gainsboro">school</th>
<!--ko if: selectedOrgversie() && selectedOrgversie().vorm() == 2 -->
<th style="color: #ffffff;background-color: #6F0B3D; vertical-align: top; width: 17%;
border-left: 1px solid gainsboro; border-right: 1px solid gainsboro">gebruiker
</th>
<th style="color: #ffffff;background-color: #6F0B3D; vertical-align: top; width: 18%;
border-left: 1px solid gainsboro; border-right: 1px solid gainsboro">autorisatie
</th>
<!--/ko -->
<th style="color: #ffffff; background-color: #6F0B3D; vertical-align: top; width: 25%;
border-left: 1px solid gainsboro; border-right: 1px solid gainsboro; word-break: break-all">email
</th>
<th style="color: #ffffff; background-color: #6F0B3D;vertical-align: top; width: 15%;
border-left: 1px solid gainsboro; border-right: 1px solid gainsboro">status
</th>
</tr>
</thead>
<tbody data-bind="foreach: statussen">
<!--ko if: $index() == 0 || ($index() != 0 && $parent.statussen()[$index()-1].kamer != kamer ) -->
<tr >
<td data-bind="text: kamer,
attr: {'colspan': $parent.selectedOrgversie() && $parent.selectedOrgversie().vorm() == 2 ? 6 : 4 }"
style="background-color: #ded0d7;color: #6F0B3D; text-align: center; vertical-align: top;
border-left: 1px solid gainsboro; border-right: 1px solid gainsboro">
</td>
</tr>
<!--/ko-->
<!--ko if: $index() == 0 || ($index() != 0 && $parent.statussen()[$index()-1].bestuur != bestuur ) -->
<tr>
<td data-bind="text: bestuur,
attr: {'colspan': $parent.selectedOrgversie() && $parent.selectedOrgversie().vorm() == 2 ? 6 : 4 }"
style="background-color: #f5f0f2;color: #6F0B3D; text-align: center; vertical-align: top;
border-left: 1px solid gainsboro; border-right: 1px solid gainsboro">
</td>
</tr>
<!--/ko-->
<tr>
<td data-bind="text: brin"
style="vertical-align: top; border-left: 1px solid gainsboro;border-right: 1px solid gainsboro">
</td>
<td data-bind="text: school"
style="vertical-align: top; border-left: 1px solid gainsboro; border-right: 1px solid gainsboro"></td>
<!--ko if: $parent.selectedOrgversie() && $parent.selectedOrgversie().vorm() == 2 -->
<td data-bind="text: gebruiker "
style="vertical-align: top; border-left: 1px solid gainsboro; border-right: 1px solid gainsboro">
</td>
<td data-bind="text: autorisatie "
style="vertical-align: top; border-left: 1px solid gainsboro; border-right: 1px solid gainsboro">
</td>
<!--/ko -->
<td data-bind="text: mail"
style="vertical-align: top; border-left: 1px solid gainsboro; border-right: 1px solid gainsboro">
</td>
<td data-bind="text: status"
style="vertical-align: top; border-left: 1px solid gainsboro; border-right: 1px solid gainsboro">
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="modal-footer">
<button style="width: 80px;" data-dismiss="modal" >sluit</button>
</div>
</div>
</div>
</div>
<div class="modal fade" id="modNieuweKoppeling" role="dialog" >
<div class="modal-dialog ">
<div class="modal-content">
@@ -154,5 +324,13 @@
</div>
</div>
</div>
</div>
</div>
</div>
+12 -15
View File
@@ -180,10 +180,10 @@ ls.initIJkpuntenModel = function(){
var index = i;
var dit = this;
this.aantalScores = ko.observable(0);
if(index){
dit.aantalScores(index + 1);
}
// dit.aantalScores = ko.observable(0);
// if(index){
// dit.aantalScores(index + 1);
// }
this.nummer = s.nummer;
this.omschrijving = s.omschrijving;
this.toelichting = s.toelichting;
@@ -432,15 +432,13 @@ ls.initIJkpuntenModel = function(){
var selectie = [];
if(self.selectedSerie()) {
$.each(self.selectedSerie().periodes(), function (i, p) {
console.log(p, "periode")
console.log(p.geselecteerd(), "geslecteerd")
if (p.geselecteerd()=== true) {
var orgversie =
{'orgversieid': p.orgversieid,
'vorm' : p.vorm };
self.selectie.push(orgversie);
console.log(self.selectie(), "selectie")
}
})
}
@@ -458,7 +456,6 @@ ls.initIJkpuntenModel = function(){
showAjaxLoader();
$.post('index.php/monpas/rapijkpunten/getingevuldelijsten/', submitData, function(result){
console.log(result, "result")
self.erzijnlijsten(false);
self.nietIngevuld(false);
self.medewerkerKiezen(false);
@@ -467,13 +464,14 @@ ls.initIJkpuntenModel = function(){
self.ijkpunten.removeAll();
self.aantal('');
var teller = 0;
if( result.lijsten[0].metingen > 0 ) {
if( Number(result.lijsten[0].resultaten.totgem) > 0 ) {
console.log("metingen groter dan 0");
$.each(result.lijsten, function (i, p) {
if (p.scores || p.vergelijkingen) {
self.erzijnlijsten(true);
self.nietIngevuld(false)
}
if(self.erzijnlijsten === false){
if(!self.erzijnlijsten()){
self.nietIngevuld(true)
}
if(i === 0 && p.orgversie){
@@ -532,10 +530,10 @@ ls.initIJkpuntenModel = function(){
self.selectedUser(self.users()[0]);
}
}
else{
self.fGetVergelijkbareVersies();
}
// else{
//
// self.fGetVergelijkbareVersies();
// }
}, 'json').always(function(){
hideAjaxLoader() } );
@@ -548,7 +546,6 @@ ls.initIJkpuntenModel = function(){
self.isSWV(false);
if (self.selectedOrg() === undefined) return;
if (this.id === self.selectedOrg().id) return;
console.log("in switch org")
self.selectedOrg(this);
if(self.selectedOrg().soort === '1'){
self.isSWV(true);
+12 -3
View File
@@ -7,7 +7,8 @@ ls.initOrganisatiesModel = function(){
this.naam = ko.observable(p.naam);
this.naamkort = ko.observable(p.naamkort);
this.plaats = ko.observable(p.plaats);
this.nummer = ko.observable(p.brin);
this.email = ko.observable(p.email1 ? p.email1 : '')
this.nummer = ko.observable(p.brin);
this.soort = p.soort;
this.valtonder_id = p.valtonder_id;
this.actief = ko.observable(false);
@@ -20,11 +21,11 @@ ls.initOrganisatiesModel = function(){
}
function fAddEditOrg(p){
this.id = p.id
this.naam = ko.observable(p.naam());
this.naamkort = ko.observable(p.naamkort());
this.plaats = ko.observable(p.plaats());
this.email = ko.observable(p.email())
this.nummer = ko.observable(p.nummer());
this.soort = p.soort;
this.valtonder_id = p.valtonder_id;
@@ -70,6 +71,7 @@ ls.initOrganisatiesModel = function(){
newNaam : ko.observable(''),
newNaamkort : ko.observable(''),
newPlaats : ko.observable(''),
newEmail : ko.observable(''),
newMonbas : ko.observable(false),
newMondiv : ko.observable(false)
}),
@@ -159,6 +161,7 @@ ls.initOrganisatiesModel = function(){
self.newOrg().newNaam('');
self.newOrg().newNaamkort('');
self.newOrg().newPlaats('');
self.newOrg().newEmail('');
self.newOrg().newMonbas(true);
self.newOrg().newMondiv(true);
// haal modules op
@@ -175,6 +178,7 @@ ls.initOrganisatiesModel = function(){
self.newOrg().newNaam('');
self.newOrg().newNaamkort('');
self.newOrg().newPlaats('');
self.newOrg().newEmail('');
self.newOrg().newMonbas(true);
self.newOrg().newMondiv(true);
self.fGetModules(0);
@@ -190,6 +194,7 @@ ls.initOrganisatiesModel = function(){
self.newOrg().newNaam('');
self.newOrg().newNaamkort('');
self.newOrg().newPlaats('');
self.newOrg().newEmail('');
self.newOrg().newMonbas(true);
self.newOrg().newMondiv(true);
self.fGetModules(0);
@@ -205,6 +210,7 @@ ls.initOrganisatiesModel = function(){
self.newOrg().newNaam('');
self.newOrg().newNaamkort('');
self.newOrg().newPlaats('');
self.newOrg().newEmail('');
self.newOrg().newMonbas(true);
self.newOrg().newMondiv(true);
self.fGetModules(0);
@@ -239,6 +245,7 @@ ls.initOrganisatiesModel = function(){
'naam' : self.newOrg().newNaam(),
'naamkort' : self.newOrg().newNaamkort(),
'plaats' : self.newOrg().newPlaats(),
'email' : self.newOrg().newEmail(),
'licenties' : licenties
// 'monbas' : self.newOrg().newMonbas(),
// 'mondiv' : self.newOrg().newMondiv()
@@ -297,7 +304,7 @@ ls.initOrganisatiesModel = function(){
break;
}
self.editOrg( new fAddEditOrg(self.oldOrg() ) );
self.editOrg( new fAddEditOrg(self.oldOrg() ) );
self.fGetModules(self.oldOrg().id);
//$("#modEditOrg").modal('show');
},
@@ -357,6 +364,7 @@ ls.initOrganisatiesModel = function(){
naamkort : self.editOrg().naamkort(),
naam : self.editOrg().naam(),
plaats : self.editOrg().plaats(),
email : self.editOrg().email(),
actief : self.editOrg().actief(),
licenties : licenties
};
@@ -371,6 +379,7 @@ ls.initOrganisatiesModel = function(){
self.oldOrg().naam(self.editOrg().naam());
self.oldOrg().naamkort(self.editOrg().naamkort());
self.oldOrg().plaats(self.editOrg().plaats());
self.oldOrg().email(self.editOrg().email());
self.oldOrg().actief(self.editOrg().actief());
self.oldOrg().monbas(self.editOrg().monbas());
self.oldOrg().mondiv(self.editOrg().mondiv());
+112 -1
View File
@@ -35,7 +35,8 @@ ls.initSWVversiesModel = function(){
function fAddKoppeling(p){
var dit = this;
this.id = p.id
this.id = p.id;
this.nummer = p.periodenummer ? p.periodenummer : '' ;
this.versieid = p.versie_id;
this.actief = ko.observable(true);
if (p.actief == 0) this.actief(false);
@@ -60,6 +61,17 @@ ls.initSWVversiesModel = function(){
}
function fAddStatus(i,s){
this.brin = s.brin;
this.school = s.school;
this.bestuur = s.bg;
this.kamer = s.kamer;
this.gebruiker = s.gebruiker ? s.gebruiker : '';
this.autorisatie = s.autorisatie ? s.autorisatie : '' ;
this.mail = s.mail && s.mail.length > 3 ? s.mail: '';
this.status = s.status;
}
function fAddVersie(k){
this.id = k.id
this.naam = k.naam;
@@ -75,8 +87,10 @@ ls.initSWVversiesModel = function(){
bgs : ko.observableArray([]),
orgtype : ko.observable(1), // 1 = swvs en kamers 2=bgs
selectedOrg : ko.observable(),
selectedOrgversie : ko.observable(),
versies : ko.observableArray([]),
koppelingen : ko.observableArray([]),
statussen : ko.observableArray([]),
newKoppelingVersie : ko.observable(),
newKoppelingGeldigvanaf : ko.observable(),
newKoppelingGeldigtm : ko.observable(),
@@ -92,6 +106,11 @@ ls.initSWVversiesModel = function(){
{id: 3, naam: 'ja/nee/bezig'}]),
modules : ko.observableArray([]),
selectedModule : ko.observable(''),
aantalLijsten : ko.observable(0),
ingevuld : ko.observable(0),
percentage : ko.observable(0),
maillijst : ko.observable(''),
toonAdressen : ko.observable(false),
toonOptie : ko.pureComputed(function(){
var toon = true;
if(ls.SWVversiesModel && (ls.SWVversiesModel.newScoretype()== '1' ||
@@ -176,6 +195,98 @@ ls.initSWVversiesModel = function(){
},
fToonStatus: function(){
var self =ls.SWVversiesModel;
self.statussen.removeAll();
self.ingevuld(0);
self.aantalLijsten(0);
self.percentage(0);
var submitData = {
orgversie: this.id,
vorm : this.vorm(),
orgID : self.selectedOrg().id,
module : self.selectedModule().sysnr
};
self.selectedOrgversie(this);
$.post("index.php/monpas/swvversies/getinvulstatus" ,submitData, function(result){
if(!result.status) {
apprise("Er zijn geen licenties gevonden.")
}
else{
if(result.ingevuld <= 0) {
apprise("Er zijn geen ingevulde versies")
}
else{
self.aantalLijsten(result.lijsten);
self.ingevuld(result.ingevuld);
self.percentage(result.percentage);
$.each(result.status, function (i, s) {
self.statussen.push(new fAddStatus(i, s))
})
$("#modInvulStatus").modal('show');
}
}
},'json');
},
fGetAdressen: function(type){
var self =ls.SWVversiesModel;
self.toonAdressen(false);
self.maillijst('');
$.each(self.statussen(), function(i, s){
if(s.mail) {
switch (type) {
case 'alle': self.maillijst(self.maillijst() + s.mail + '; ');
break;
case 'manage':
if (s.autorisatie == 'School Management') {
self.maillijst(self.maillijst() + s.mail + '; ')
}
break;
case 'mede': if (s.autorisatie == 'School Medewerker') {
self.maillijst(self.maillijst() + s.mail + '; ')
}
break;
}
}
});
if(self.maillijst().length > 3){
self.toonAdressen(true)
}
else{apprise('geen emailadressen'
)}
},
fSluitAdressen: function(){
var self =ls.SWVversiesModel;
self.toonAdressen(false);
},
fCopyAdressen: function(){
var self =ls.SWVversiesModel;
// var mails = document.getElementById("mails")
var mails = self.maillijst()
console.log(mails, "mails")
// mails.select();
navigator.clipboard.writeText(mails);
apprise(mails)
},
fNieuweKoppeling: function(){
var self =ls.SWVversiesModel;
// hier moet wel rekening gehouden worden met de module!!