Files
CRM_Scripts_NVKH/code-current/scripts/Ledeninformatie publiceren.js
T
2026-08-28 12:28:39 +02:00

46 lines
1.9 KiB
JavaScript

// last execution: 2026-08-28 05:19:02
logAdd(log);
logAdd(log, 'info', 'Ophalen Ledeninformatie van type "ledenmail" en status <> "gepubliceerd"');
$rows = record\fetchManyHash('KnowledgeBaseArticle', 'id, publishDate,name', 'name', 'asc', 'status!=', 'Published', 'type=', 'ledenmail');
logAdd(log, 'info', array\length($rows));
$i = 0;
$n = array\length($rows);
//$ledenmails_cat_ids = record\fetchManyHash('KnowledgeBaseCategory', 'id', 'name', 'asc', 'id=', '5eb3e7d4bec32f0d7');
//$ledenmails_cat_id = hash\get(array\at($ledenmails_cat_ids, 0), 'id');
$ledenmails_cat_id = '5eb3e7d4bec32f0d7';
logAdd(log, 'info', 'ledenmails categorie id: ', $ledenmails_cat_id);
while($i < $n,
$row = array\at($rows, $i);
$name = hash\Get($row, 'name');
$datum = hash\Get($row, 'publishDate');
$id = hash\Get($row, 'id');
logAdd(log, 'info', 'publiceren: ', $name, ' - datum: ', $datum);
$year = datetime\year($datum);
logAdd(log, 'info', 'in categorie: ', $year);
// Vind de de id voor de gegeven categorie, of maak er één aan
$cat_ids = record\fetchManyHash('KnowledgeBaseCategory', 'id', 'name', 'asc', 'name=', $year, 'parentId=', $ledenmails_cat_id);
$cat_ids_n = array\length($cat_ids);
logAdd(log, 'info', 'categorie: ', $year, ' gevonden: ', $cat_ids_n);
ifThenElse($cat_ids_n == 0,
$cat_id = record\create('KnowledgeBaseCategory', 'name', $year, 'parentId', $ledenmails_cat_id,
'order', -$year);
,
$cat_id = hash\Get(array\at($cat_ids, 0), 'id');
);
// Zet het record in de juiste categorie
record\relate('KnowledgeBaseArticle', $id, 'categories', $cat_id);
record\relate('KnowledgeBaseArticle', $id, 'categories', $ledenmails_cat_id);
// Publiceer het.
record\update('KnowledgeBaseArticle', $id, 'status', 'Published', 'type');
$i = $i + 1;
);