initial commit
This commit is contained in:
@@ -0,0 +1,239 @@
|
||||
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
|
||||
class Monitor extends MY_Controller{
|
||||
|
||||
function __construct(){
|
||||
parent::__construct();
|
||||
$models = array("shared/Users_model",
|
||||
"monpas/Filledversions_model" ,
|
||||
"monpas/Modules_model",
|
||||
"monpas/Orgversies_model",
|
||||
"monpas/Ijkpunten_model",
|
||||
"monpas/Antwoordopties_model",
|
||||
"monpas/Indicatoren_model",
|
||||
"monpas/Scores_model",
|
||||
"monpas/Oordelen_model",
|
||||
"shared/Session_model",
|
||||
"Phantom_model");
|
||||
$this->load->model($models);
|
||||
$this->load->helper('string');
|
||||
if ( ! $this->check_online_status() ) {
|
||||
echo json_encode( array('offline' => TRUE) );
|
||||
die;
|
||||
};// if
|
||||
}
|
||||
|
||||
function getperiodesperschool(){
|
||||
if (!$this->userid) die;
|
||||
$versies = array();
|
||||
$organisatie=$this->Organisaties_model->get_record_by_id($this->globorgid);
|
||||
$module = $this->session->userdata('module');
|
||||
$gaverder = true; // zoek verder omdat er nog geen actieve versie is
|
||||
// zoek eerst de reeds ingevulde versies
|
||||
// zoek dan de actieve versie
|
||||
// als de actieve versie nog niet bij de ingevulde versies zit, voeg die dan toe.
|
||||
$versies = $this->Filledversions_model->getfilledversionsperorg($organisatie->id, $module);
|
||||
if ($versies){
|
||||
foreach($versies as $versie){
|
||||
if ($versie->actief){$gaverder = false;};
|
||||
}
|
||||
};
|
||||
if ($gaverder){
|
||||
// zoek de actieve versie
|
||||
$BGid = $this->Organisaties_model->get_fieldvalue(array("id" => $this->globorgid), 'valtonder_id');
|
||||
$actieveversie = $this->Orgversies_model->getallorgversies($BGid,$module,true);
|
||||
|
||||
if (!$actieveversie){
|
||||
$KamerID = $this->Organisaties_model->get_fieldvalue(array("id" =>$BGid), 'valtonder_id');
|
||||
$actieveversie = $this->Orgversies_model->getallorgversies($KamerID,$module,true);
|
||||
|
||||
if (!$actieveversie){
|
||||
$SWVID = $this->Organisaties_model->get_fieldvalue(array("id" =>$KamerID), 'valtonder_id');
|
||||
$actieveversie = $this->Orgversies_model->getallorgversies($SWVID, $module,true);
|
||||
}
|
||||
// merge de actieveversie als die gevonden is
|
||||
if (!$versies ) {$versies = array();};
|
||||
if (!$actieveversie) {$actieveversie = array();};
|
||||
$versies = array_merge($actieveversie, $versies);
|
||||
}
|
||||
};
|
||||
echo json_encode(array("versies"=>$versies, "soort"=>$organisatie->soort));
|
||||
}
|
||||
function getperiodesperschoolvanuitpartituur(){
|
||||
if (!$this->userid) die;
|
||||
|
||||
$versies = array();
|
||||
|
||||
$organisatie=$this->Organisaties_model->get_record_by_id($this->globorgid);
|
||||
$module = $this->uri->segment(4); // dit hier gezet worden omdat de partituur zelf een module is
|
||||
$gaverder = true; // zoek verder omdat er nog geen actieve versie is
|
||||
// zoek eerst de reeds ingevulde versies
|
||||
// zoek dan de actieve versie
|
||||
// als de actieve versie nog niet bij de ingevulde versies zit, voeg die dan toe.
|
||||
$versies = $this->Filledversions_model->getfilledversionsperorg($organisatie->id, $module);
|
||||
if ($versies){
|
||||
foreach($versies as $versie){
|
||||
if ($versie->actief){$gaverder = false;};
|
||||
}
|
||||
};
|
||||
if ($gaverder){
|
||||
// zoek de actieve versie
|
||||
$BGid = $this->Organisaties_model->get_fieldvalue(array("id" => $this->globorgid), 'valtonder_id');
|
||||
$actieveversie = $this->Orgversies_model->getallorgversies($BGid,$module,true);
|
||||
|
||||
if (!$actieveversie){
|
||||
$KamerID = $this->Organisaties_model->get_fieldvalue(array("id" =>$BGid), 'valtonder_id');
|
||||
$actieveversie = $this->Orgversies_model->getallorgversies($KamerID,$module,true);
|
||||
|
||||
if (!$actieveversie){
|
||||
$SWVID = $this->Organisaties_model->get_fieldvalue(array("id" =>$KamerID), 'valtonder_id');
|
||||
$actieveversie = $this->Orgversies_model->getallorgversies($SWVID, $module,true);
|
||||
}
|
||||
// merge de actieveversie als die gevonden is
|
||||
if (!$versies ) {$versies = array();};
|
||||
if (!$actieveversie) {$actieveversie = array();};
|
||||
$versies = array_merge($actieveversie, $versies);
|
||||
}
|
||||
};
|
||||
echo json_encode(array("versies"=>$versies, "soort"=>$organisatie->soort));
|
||||
}
|
||||
function getperiodes(){
|
||||
if (!$this->userid) die;
|
||||
$versies = false;
|
||||
|
||||
$organisatie=$this->Organisaties_model->get_record_by_id($this->globorgid);
|
||||
$soort = $organisatie->soort;
|
||||
$module = $this->session->userdata('module');
|
||||
if ($soort == 4) {
|
||||
$versies = $this->Filledversions_model->getfilledversionsperorg($organisatie->id, $module);
|
||||
|
||||
$BGid = $this->Organisaties_model->get_fieldvalue(array("id" => $this->globorgid), 'valtonder_id');
|
||||
$versies = $this->Orgversies_model->getallorgversies($BGid,$module);
|
||||
if (!$versies ){
|
||||
$KamerID = $this->Organisaties_model->get_fieldvalue(array("id" =>$BGid), 'valtonder_id');
|
||||
$versies = $this->Orgversies_model->getallorgversies($KamerID,$module);
|
||||
}
|
||||
$gaverder = $this->Orgversies_model->getallorgversies($BGid, $module, TRUE);
|
||||
if (!$versies ){
|
||||
$SWVID = $this->Organisaties_model->get_fieldvalue(array("id" =>$KamerID), 'valtonder_id');
|
||||
$versies = $this->Orgversies_model->getallorgversies($SWVID, $module);
|
||||
}
|
||||
}
|
||||
echo json_encode(array("versies"=>$versies, "soort"=>$soort));
|
||||
}
|
||||
|
||||
function getlistitems(){
|
||||
if (!$this->userid) die;
|
||||
$orgversieid = $this->uri->segment(4);
|
||||
$orgversie = $this->Orgversies_model->get_record_by_id($orgversieid);
|
||||
|
||||
// haal de ijkpunten op waar de scores onder moeten komen
|
||||
$listijkpunten = $this->Ijkpunten_model->getijkpunten1($orgversie->versie_id);
|
||||
// zoek op of er al scores zijn ingevuld (via filledversion)
|
||||
$fillerid =false;
|
||||
$orgid = $this->globorgid; //er moet altijd gezocht worden op orgid omdat de gebruiker tot verschillende organisaties kan behoren
|
||||
if ($orgversie->vorm == 2) $fillerid = $this->userid;
|
||||
$filledversion = $this->Filledversions_model->getfilledversion($orgversieid, $orgid,$fillerid, $orgversie->vorm);
|
||||
if (!$filledversion){
|
||||
// start een nieuwe filledversion
|
||||
$userid= null;
|
||||
if ($orgversie->vorm == 2) {$userid = $this->userid;};
|
||||
$data = array( "orgversie_id" => $orgversie->id,
|
||||
"organisatie_id" => $this->globorgid,
|
||||
"user_id" => $userid);
|
||||
$newid = $this->Filledversions_model->insert_record($data);
|
||||
$filledversion = $this->Filledversions_model->getfilledversionbyid($newid);
|
||||
// start een nieuwe set van score-records
|
||||
if ($listijkpunten){
|
||||
foreach($listijkpunten as $ijkpunt){
|
||||
$this->MaakScoreRecords($ijkpunt->id,$filledversion->id, $orgversie->scoretype);
|
||||
}; //foreach
|
||||
}; //if
|
||||
}; // if not fillversion
|
||||
// als er al wel een filledversion is, haal dan de scores op
|
||||
if ($listijkpunten) {
|
||||
foreach($listijkpunten as $ijkpunt){
|
||||
$ijkpunt->indicatorscores = $this->Scores_model->getscores($ijkpunt->id, $filledversion->id,$orgversie->vorm);
|
||||
if ($ijkpunt->indicatorscores){
|
||||
foreach($ijkpunt->indicatorscores as $score){
|
||||
if ($score->scoretype != 1){$score->score= substr($score->score, 0, strlen($score->score) -2 ); };
|
||||
if ($score->scoretype ==1) {$score->score= str_replace('.',',',$score->score); };
|
||||
}; //for each
|
||||
}; // if scores
|
||||
}; //foreach
|
||||
};
|
||||
if ($listijkpunten) {
|
||||
$scoreopties = $this->Antwoordopties_model->getAntwoordopties($orgversie->scoretype);
|
||||
}
|
||||
$writer = $this->Autorisaties_model->check_write();
|
||||
echo json_encode(array("ijkpunten" => $listijkpunten,
|
||||
"notitie" => $filledversion->notitie,
|
||||
"fvid" => $filledversion->id,
|
||||
"meetellen" => $filledversion->meetellen,
|
||||
"scoreopties" => $scoreopties,
|
||||
"writer" => $writer) );
|
||||
}
|
||||
|
||||
function MaakScoreRecords($ijkpuntid, $filledversionid, $scoretype){
|
||||
$indicators = $this->Indicatoren_model->getindicatoren($ijkpuntid);
|
||||
if ($indicators){
|
||||
foreach($indicators as $indicator){
|
||||
$data=array( "filledversion_id" =>$filledversionid,
|
||||
"ijkpunt_id" => $ijkpuntid,
|
||||
"indicator_id" => $indicator->id,
|
||||
"score" => 0,
|
||||
"scoretype" =>$scoretype);
|
||||
$this->Scores_model->insert_record($data);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function updatescore(){
|
||||
//TODO clean input
|
||||
if (!$this->userid) die;
|
||||
$scoreid = $this->clean_input("indicatorscoreid");
|
||||
$score = str_replace(',','.',$this->clean_input("score"));
|
||||
// $this->deleteOordeel($scoreid);
|
||||
$scorerecord = $this->Scores_model->get_record_by_id($scoreid);
|
||||
$this->Oordelen_model->delete_record_where(array("ijkpunt_id"=>$scorerecord->ijkpunt_id,
|
||||
"filledversion_id"=>$scorerecord->filledversion_id))
|
||||
;
|
||||
$this->Scores_model->update_record(array("score" => $score), $scoreid);
|
||||
}
|
||||
|
||||
function savenotitie(){
|
||||
// TODO Clean input
|
||||
if (!$this->userid) die;
|
||||
$notitie = $this->clean_input('notitie');
|
||||
$fvid = $this->clean_input('fvID');
|
||||
if ($fvid){
|
||||
$this->Filledversions_model->update_record(array("notitie"=>$notitie), $fvid);
|
||||
}
|
||||
}
|
||||
|
||||
function lijstmeetellen(){
|
||||
if (!$this->userid) die;
|
||||
$meetellen = $this->clean_input('meetellen');
|
||||
$fvid = $this->clean_input('fvID');
|
||||
if($fvid)
|
||||
$this->Filledversions_model->update_record(array('meetellen' =>$meetellen), $fvid);
|
||||
|
||||
}
|
||||
|
||||
function printlijst(){
|
||||
$input0 = $this->input->post('data');
|
||||
$input = json_decode($input0);
|
||||
//var_dump('input', $input);
|
||||
$organisatie = $this->Organisaties_model->get_orgnaam($this->globorgid);
|
||||
$instrument = $this->Modules_model->get_fieldvalue(array("sysnr" =>$this->module), "naam") ;
|
||||
|
||||
$data=array( "instrument" => $instrument,
|
||||
"organisatie" => $organisatie,
|
||||
"versie" => $input->orgversie,
|
||||
"today" => date('d-m-Y'),
|
||||
"listitems" => json_decode($input->tabelinfo),
|
||||
"notitie" => $input->notitie);
|
||||
$html=$this->load->view("monpas/reports/printlijst", $data, true);
|
||||
$filenaam="MonPasInvullijst";
|
||||
$this->Phantom_model->create_pdf($html,$filenaam, FALSE,FALSE,FALSE);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user