Files
monpas/application/libraries/monpas/Gemiddeldenafbeeldingen.php
T
MoniqueandClaude Opus 5.5 172fcf566c CodeIgniter 3.1.11 -> 3.4.5 (pocketarc fork) en PHP 8.3-fixes
- system/ vervangen door CodeIgniter 3.4.5 (pocketarc/codeigniter, PHP 8.2-8.5 compatibel)
- config.php, mimes.php, user_agents.php en error-views bijgewerkt naar 3.4.5
- composer.json: php-constraint "^7.4 || ^8.0" zodat composer install op 8.3 werkt
- PHP 8-fatals opgelost: count()/array-functies op FALSE/null, rekenen met lege
  strings, delen door nul, property zetten op FALSE, curly-brace string offsets,
  ongedefinieerde constanten, foute curl_setopt in Phantom_model::create_img
- dynamic properties gedeclareerd in libraries, optionele parameters voor verplichte opgelost
- vergelijkingen waar '' == 0 in PHP 8 anders uitvalt gecast naar (int)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 09:34:46 +02:00

402 lines
14 KiB
PHP

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Gemiddeldenafbeeldingen {
private $CI;
private $swvid;
private $leerkrachten;
private $ijkpunten;
private $ijkpunt;
private $omschrijving;
private $aantalY;
private $somscore = 0;
private $aantalscores = 0;
private $score;
private $wensen;
private $wens;
private $ambities;
private $adviezen = [];
// private $labels;
private $kleuren;
// private $kleurcodes;
private $orgversie;
private $vantm;
private $gemiddelde;
private $nummer;
private $ijkpuntenok = 0;
private $welkehoogste = 0;
private $hoogstescore = -1;
private $welkelaagste = 0;
private $laagstescore = 101;
private $rij = 708;
private $standaardorg = 250;
private $aantal = 15;
private $resultaten;
private $kolombreedte;
private $orgbreedte;
private $disablenvt = 0;
private $gemiddeldenafbeeldingen;
private $gemiddeldescores;
private $modulenr;
private $orgversieid;
private $orgid;
private $clusterid;
public function __construct(Gemiddeldescores $gemiddeldescores, $modulenr, $orgversieid, $clusterid, $orgid){
$this->CI = & get_instance();
$this->gemiddeldescores = $gemiddeldescores;
$this->modulenr = $modulenr;
$this->orgversieid = $orgversieid;
$this->orgid = $orgid;
$this->clusterid = $clusterid;
$this->setLeerkrachten();
$this->setOrgversie();
$this->setAmbities();
$this->setIJkpunten();
$this->setWensen();
// $this->handle();
}
// public function getGemiddeldenAfbeeldingen(){
// return $this->gemiddeldenafbeeldingen;
// }
//
// public function getAantalScores(){
// return $this->aantalscores;
// }
//
// public function getIJkpunten(){
// return $this->ijkpunten;
// }
//
// public function getAdviezen(){
// return $this->adviezen;
// }
//
// public function getResultaten(){
// $this->resultaten = [
// 'totgem' => $this->gemiddelde->score,
// 'ijkpuntenok' => $this->ijkpuntenok,
// 'welkehoogste' => $this->welkehoogste,
// 'hoogstescore' => round($this->hoogstescore, 1),
// 'welkelaagste' => $this->welkelaagste,
// 'laagstescore' => round($this->laagstescore, 1),
// ];
//
// return $this->resultaten;
// }
//
// public function getKleuren(){
// return $this->kleuren;
// }
//
// private function setLeerkrachten(){
// $this->leerkrachten = $this->gemiddeldescores->getLeerkrachten();
// }
//
// private function setOrgversie(){
// $this->orgversie = $this->CI->Orgversies_model->get_record_by_id($this->orgversieid);
// }
//
// private function setAmbities(){
// $this->ambities = $this->gemiddeldescores->getAmbities();
// }
//
// private function setIJkpunten(){
// $this->ijkpunten = $this->gemiddeldescores->getIJKpunten();
// }
//
// private function setWensen(){
// $this->wensen = $this->gemiddeldescores->getWensen();
// }
//
// private function handle(){
//// $this->setSwvid();
//// $this->setLabels();
//// $this->telIJkpunten();
//// $this->setPeriode();
////
// $this->setKleuren();
// $this->loopIJkpunten();
// $this->loopIJkpunten2(); // verplaatst boven addGemiddelde score omdat je anders een "ijkpunt" te veel hebt
//
// // moet hier niet eerst setGemiddelde worden gedaan?
// $this->setGemiddeldeScore();
// $this->addGemiddeldeScore();
// $this->setGemiddeldenAfbeeldingen();
//
// }
//// private function setSwvid(){
//// $this->swvid = $this->CI->Organisaties_model->get_swvid($this->orgid);
//// }
//
//// private function setLabels(){
//// $this->labels = $this->CI->Labels_model->getalllabels($this->modulenr);
//// if(! $this->labels){
//// $this->labels = $this->CI->Labels_model->getalllabels(1);
//// }
//// }
//
//// private function telIJkpunten(){
//// if($this->ijkpunten){
//// foreach($this->ijkpunten as $ijkpunt){
//// if($ijkpunt->disabled == 'F'){
//// $this->aantalY++;
//// }
//// }
//// }
//// }
//
//// private function setPeriode(){
//// $this->orgversie = $this->CI->Orgversies_model->get_record_by_id($this->orgversieid);
//// $this->vantm = "Gegevens uit periode ".$this->orgversie->periodenummer." van ".
//// mysql2date($this->orgversie->geldigvanaf)." t/m ".mysql2date($this->orgversie->geldigtm);
//// }
//
//
//
// private function setKleuren(){
//
//// $this->kleuren = $this->kleurcodes->getKleurcodesOrg($this->clusterid, $this->swvid);
//// $this->CI->firephp->log($this->kleuren, "kleuren");
//// if(!$this->kleuren || $this->kleuren == " "){
// $this->kleuren = new stdClass();
// $this->kleuren->cluster_id = $this->clusterid;
// $this->kleuren->grens1 = '60';
// $this->kleuren->grens2 = '80';
// $this->kleuren->grens3 = '90';
// $this->kleuren->grens4 = '100';
// if($this->orgversie->scoretype == 7){
// $this->kleuren->grens1 = '33';
// $this->kleuren->grens2 = '66';
// $this->kleuren->grens3 = '100';
//
// }
//
//
// $this->kleuren->kleur1 = '#e08885';
// $this->kleuren->kleur2 = '#ffcc80';
// $this->kleuren->kleur3 = '#9fdf9f';
// $this->kleuren->kleur4 = '#99d6ff';
//
// $this->kleuren->organisatie_id = '0';
//// }
// }
//
//
// private function loopIJkpunten(){
// foreach($this->ijkpunten as $index =>$this->ijkpunt){
// if(! isset($this->ijkpunt->score) || ! $this->ijkpunt->score || $this->ijkpunt->disabled =='T') {continue;};
// $this->telScoresOp();
// $this->setAantalScores();
// }
// $this->setGemiddeldeScore(); // gemiddelde ga je niet in de loop berekenen
// }
//
//
// private function telScoresOp(){
// $this->somscore = $this->somscore + $this->ijkpunt->score;
// }
// private function setAantalScores(){
// if(!$this->ijkpunt->score) return;
// $this->aantalscores++;
// }
//
// private function getKleur ($score){
// $kleur = $this->CI->Scorekleuren_model->getGemiddeldeKleur($this->orgversie->scoretype, $score);
// $kleur = $kleur->kleurcode;
// if(!$kleur) $kleur = '#ffffff';
//
// return $kleur;
// }
//
// private function setGemiddeldeScore(){
// $this->gemiddelde = new stdClass();
// $this->gemiddelde->score = 0;
// $deler = $this->aantalY - $this->disablenvt;
// if($deler > 0) $this->gemiddelde->score = round($this->somscore / $deler);
//
//
// $this->gemiddelde->nummer = 'gem';
// $this->gemiddelde->disabled = 'F';
// $this->gemiddelde->disablenvt = 'F';
// $this->gemiddelde->kleur =$this->getKleur ($this->gemiddelde->score);
// $this->ijkpunt = $this->gemiddelde;
// }
//
// private function addGemiddeldeScore(){
// if(! $this->gemiddelde) return;
// array_push($this->ijkpunten, $this->ijkpunt);
//
// }
// private function loopIJkpunten2(){
// if(!$this->ijkpunten) return;
//
// foreach($this->ijkpunten as $index => $this->ijkpunt){
// if(!isset($this->ijkpunt->score)){continue;};
// if(! $this->ijkpunt->score) $this->ijkpuntscore = 0;
// $this->setScorenummer();
// $this->rondScoresAf();
// $this->setScoreKleuren();
// $this->addGewensteScores($index);
// $this->setWenskleuren();
// $this->setAdvies();
// $this->setResultatenOverzicht();
// $this->telIJkpuntenok();
// }
// }
//
// private function setScoreNummer(){
// if($this->orgversie->scoretype != 7) {
// $this->ijkpunt->huidig = 1;
// if ($this->ijkpunt->score >= $this->kleuren->grens1) $this->ijkpunt->huidig = 2;
// if ($this->ijkpunt->score >= $this->kleuren->grens2) $this->ijkpunt->huidig = 3;
// if ($this->ijkpunt->score >= $this->kleuren->grens3) $this->ijkpunt->huidig = 4;
// }
// if($this->orgversie->scoretype == 7){
// if ($this->ijkpunt->score == $this->kleuren->grens3) $this->ijkpunt->huidig = 4;
// if ($this->ijkpunt->score < $this->kleuren->grens3) $this->ijkpunt->huidig = 3;
// if ($this->ijkpunt->score <= $this->kleuren->grens2) $this->ijkpunt->huidig = 2;
// if ($this->ijkpunt->score <= $this->kleuren->grens1) $this->ijkpunt->huidig = 1;
// }
// }
//
// private function rondScoresAf(){
// $this->ijkpunt->score = round($this->ijkpunt->score);
// }
//
// private function setScoreKleuren(){
// $kleur = $this->CI->Scorekleuren_model->getGemiddeldeKleur($this->orgversie->scoretype, $this->ijkpunt->score);
// $kleur = $kleur->kleurcode;
// if(!$kleur) $kleur = '#ffffff';
// $this->ijkpunt->kleur = $kleur;
//
//
//
//
//// switch ($this->ijkpunt->huidig) {
//// case 1:
//// $this->ijkpunt->kleur = $this->kleuren->kleur1;
//// break;
//// case 2:
//// $this->ijkpunt->kleur = $this->kleuren->kleur2;
//// break;
//// case 3:
//// $this->ijkpunt->kleur = $this->kleuren->kleur3;
//// break;
//// case 4:
//// $this->ijkpunt->kleur = $this->kleuren->kleur4;
//// break;
//// default:
//// $this->ijkpunt->kleur = $this->kleuren->kleur1;
//// }
//
// }
//
// private function addGewensteScores($index)
// {
// $this->ijkpunt->wens = 3;
//
// if (isset($this->wensen) && isset($this->wensen[$index]) ) {
// $this->ijkpunt->wens = $this->wensen[$index]->wens;
// }
// }
//
// private function setWensKleuren(){
// if(!isset($this->ijkpunt->wens)) return;
//
// $kleur = $this->CI->Scorekleuren_model->getWensKleur($this->orgversie->scoretype, $this->ijkpunt->wens);
// if(!$kleur) $kleur = '#ffffff';
// $this->ijkpunt->wenskleur = $kleur;
//
//
//
//// switch ($this->ijkpunt->wens) {
//// case 1:
//// $this->ijkpunt->wenskleur = $this->kleuren->kleur1;
//// break;
//// case 2:
//// $this->ijkpunt->wenskleur = $this->kleuren->kleur2;
//// break;
//// case 3:
//// $this->ijkpunt->wenskleur = $this->kleuren->kleur3;
//// break;
//// case 4:
//// $this->ijkpunt->wenskleur = $this->kleuren->kleur4;
//// break;
//// default:
//// $this->ijkpunt->wenskleur = '#ffffff';
//// }
// }
//
// private function setAdvies(){
// if(isset($this->ijkpunt->wens) &&
// $this->ijkpunt->huidig < $this->ijkpunt->wens &&
//
// $this->ijkpunt->wens!= 0 &&
// isset($this->ijkpunt->omschrijving ) &&
// $this->ijkpunt->disabled == 'F' &&
// $this->ijkpunt->disablenvt == 'F'){
// array_push($this->adviezen, [
// "nummer"=> $this->ijkpunt->nummer,
// "omschrijving" =>$this->ijkpunt->omschrijving
// ]);
// }
// }
//
// private function setResultatenOverzicht()
// {
// if ($this->ijkpunt->score > $this->hoogstescore) {
// $this->hoogstescore = $this->ijkpunt->score;
// $this->welkehoogste = $this->ijkpunt->nummer;
// }
// if ($this->ijkpunt->score <= $this->laagstescore) {
// $this->laagstescore = $this->ijkpunt->score;
// $this->welkelaagste = $this->ijkpunt->nummer;
// }
// }
//
// private function telIJkpuntenok(){
// if ($this->ambities && $this->ijkpunt->score >= $this->ambities->zprocent && $this->ijkpunt->nummer!= 'gem') {
// $this->ijkpuntenok++;
// }
// }
//
//// private function setKolombreedte(){
//// if($this->aantalY > 1) $this->aantal = $this->aantalY;
//// $kolombreedte = floor(($this->rij - $this->standaardorg)/$this->aantal);
//// $this->kolombreedte = $kolombreedte . 'px';
//// }
//// private function setOrgbreedte(){
//// if($this->aantalY > 1) $this->aantal = $this->aantalY;
//// $orgbreedte = floor($this->rij - ($this->aantal * $this->kolombreedte));
//// $this->orgbreedte = $orgbreedte . 'px';
//// }
//
//
// private function setGemiddeldenAfbeeldingen(){
//
// $this->gemiddeldenafbeeldingen = [
// "module" => $this->modulenr,
// "leerkrachten" => $this->leerkrachten,
// "labels" => $this->labels,
// "kleuren" => $this->kleuren,
// "vantm" => $this->vantm,
// "ambitie" => $this->ambities,
// "adviezen" => $this->adviezen,
// "ijkpunten" => $this->ijkpunten,
// 'ijkpuntenok' => $this->ijkpuntenok,
// 'welkehoogste' => $this->welkehoogste,
// 'hoogstescore' => round($this->hoogstescore,1),
// 'welkelaagste' => $this->welkelaagste,
// 'laagstescore' => round($this->laagstescore,1),
// "aantalY" => $this->aantalY,
// "totgem" => $this->gemiddelde->score,
// "orgbreedte" => $this->orgbreedte,
// "kolombreedte" => $this->kolombreedte,
// "aantalscores" => $this->aantalscores
// ];
// }
}