Files
CRM_Scripts_NVKH/code-current/scripts/VOG Leden waarvan de VOG moet worden vernieuwd.js
T
2026-08-28 12:28:39 +02:00

119 lines
3.7 KiB
JavaScript

// last execution: Wed Sep 21 2022 11:13:38 GMT+0200 (Midden-Europese zomertijd)
$par_VOG_aantal_jaren_geldig=6;
$par_Alleen_ongeldige_VOGs_rapporteren=true;
$par_Leden_openen_in_tab=false;
$par_Aantal_regels_per_pagina=13;
html = '';
logAdd(log);
$p_page_len = $par_Aantal_regels_per_pagina;
$in_tab = $par_Leden_openen_in_tab;
$p_years= $par_VOG_aantal_jaren_geldig;
$c_year = datetime\year(datetime\today());
$limit_year = $c_year - $p_years;
$alleen_geldig = $par_Alleen_ongeldige_VOGs_rapporteren;
$entities = record\fetchManyHash('Contact',
'id, firstName, lastName, middleName, regiocode, datumVOG, emailAddress',
'lastName', 'asc'
);
$n = array\length($entities);
logAdd(log, 'Aantal te beoordelen (ex)leden: ', $n);
$aantal_met_lege_VOG = 0;
$aantal_met_verlopen_VOG = 0;
$aantal_met_geldige_VOG = 0;
$aantal_regio_ok = 0;
$h = '';
strAdd($h, '<div class="nvkhresult">');
$table = table\new('Voornaam', 10,
'Achternaam', 20, 'asc',
'Regiocode', 5, 'center',
'Laatste VOG Datum', 15, 'center',
'Nieuwe VOG Nodig', 10, 'center',
'eMail', 15, 'ellipsis'
);
table\rowsPerPage($table, $p_page_len);
$i = 0;
while($i < $n,
$e = array\at($entities, $i);
$regiocode = hash\get($e, 'regiocode');
$id = hash\get($e, 'id');
$regiocode_nr = string\substring($regiocode, 0, 2) + 0;
$meenemen = $regiocode_nr < 30;
$achternaam = hash\get($e, 'lastName');
$voorvoegsel = hash\get($e, 'middleName');
$voornaam = hash\get($e, 'firstName');
ifThen($meenemen,
$aantal_regio_ok = $aantal_regio_ok + 1;
$vog_datum = hash\get($e, 'datumVOG');
ifThenElse($vog_datum == null,
$vog_nodig = 'ja';
$aantal_met_lege_VOG = $aantal_met_lege_VOG + 1;
,
$y = datetime\year($vog_datum);
ifThenElse($y < $limit_year,
$vog_nodig = 'ja';
$aantal_met_verlopen_VOG = $aantal_met_verlopen_VOG + 1;
,
$vog_nodig = 'nee';
$aantal_met_geldige_VOG = $aantal_met_geldige_VOG + 1;
);
);
$td = '<td>';
$report = true;
ifThen($vog_nodig == 'nee', $report = !$alleen_geldig;);
ifThen($report,
$email = hash\get($e, 'emailAddress');
strAdd($h, '<tr>');
ifThenElse($in_tab,
$target = 'target="_blank"';
,
$target = "";
);
ifThen($voorvoegsel,
strAdd($achternaam, ', ', $voorvoegsel);
);
table\add($table,
$voornaam,
table\link(string\concatenate('/#Contact/view/', $id), $achternaam),
$regiocode,
$vog_datum,
$vog_nodig,
$email
);
);
);
$i = $i + 1;
);
strAdd($h, table\toHtml($table));
strAdd($h, '</div>');
html=$h;
logAdd(log, 'info', 'Totaal aantal leden met regiocode < 30: ', $aantal_regio_ok);
logAdd(log, 'info', 'Aantal leden zonder VOG datum: ', $aantal_met_lege_VOG);
logAdd(log, 'info', 'Aantal leden met verlopen VOG ', $p_years, ' jaar geleden: ', $aantal_met_verlopen_VOG);
logAdd(log, 'info', 'Aantal leden met geldige VOG: ', $aantal_met_geldige_VOG);