Overgebleven stuk uitgecommentarieerde grafiek-JS zonder controller-class;
de url monpas/tijdelijk toonde de inhoud, ook zonder login.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
insert_record() stond buiten de else (geen accolades), waardoor bij een
bestaande koppeling een lege rij in tb_aantalxondersteuningsvorm kwam
plus een warning over $data. activeerOS maakt een nieuwe koppeling nu
actief aan (archief 'F').
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
getgroepen() verwacht de module; printaantallen() riep hem aan met twee
argumenten (ArgumentCountError, de pdf met leerlingaantallen crashte
altijd). De module gaat nu mee in de print-url, met de sessie-module
als terugval.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Schoolscores/Lijsten: ontbrekend gemiddelde of orgversie geeft null/''
- Lijsten, Userlijsten, ijkpuntengrafiek, ijkpuntentabel: geen foreach
over false bij een lijst zonder scores
- Pdfmaker: oude pdf alleen verwijderen als het bestand bestaat
- Compactsop_model: 404 als record of pdf-bestand ontbreekt
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
checkadmin() zocht het niveau op bij de gekozen organisatie (globorgid),
waardoor een systeembeheerder in een andere organisatie geen berichten
meer kon maken. Nu eerst $this->super (systeembeheerder/helpdesk);
checkrechten() gebruikt dezelfde regel.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
'if(!$admin = 1 || !$admin = 2)' is een toewijzing en blokkeerde nooit,
waardoor elke ingelogde gebruiker berichten kon beheren. checkadmin()
geeft nu TRUE alleen bij niveau 1 of 2 (zoals checkrechten) en is, net
als deletebericht(), niet meer als url aan te roepen.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Een leeg bericht (create_empty_bericht) gaf base64_decode(null); de
deprecation kwam lokaal voor de JSON van getAdminBerichten, waardoor
'nieuw bericht' vastliep. saveBericht vangt lege velden ook af.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Pdfmaker: chmod() op logo-url verwijderd (warning kwam voor de pdf-data)
- pdfSVG en download_pdf sturen door naar een url die op de bestandsnaam
eindigt, zodat de browser niet 'download' als naam voorstelt
- bestandsnaam zonder dubbel 'compactsop', met tijdstip (dmY-Hi)
- index.php: date_default_timezone_set('Europe/Amsterdam'), php.ini van
PHP 8.3 heeft geen date.timezone
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- 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>
per jaartal te bepalen in in MonFin
in bestemmingen geen deelbudgetten als het is uitgezet en dan uitgaven niet in rode kleur
foutmeldingen ivm order by en group by kolommen die niet in select stonden
tooltips bij archieveren, activeren en verwijderen onddersteuningsvormen in mondiv
als gekozen is voor scoretype 4 bij een orgversie (ja,nee, nvt) de optie nvt niet meetellen in het gemiddelde als bij een ijkpunt in een filledversion voor alle opties nvt is gekozen.
De optie elf wordt dan grijs