Carnet Wiki

Nombre de jours écoulés depuis la publication

Version 2 — Juin 2020 formatec

Snipet à placer dans squelettes/mes_fonctions.php

<?php
 
/**
 * {mon_age_relatif} ou {mon_age_relatif date_modif}
by Marcimat
 */
function critere_mon_age_relatif_dist($idb, &$boucles, $crit) {
    $boucle = &$boucles[$idb];
 
    $table = $boucle->show;
    $params = $crit->param;
    if ($params) {
        $champ = reset($params);
        $champ = $champ[0]->texte;
    } else {
        $champ = $table['date'] ?? '';
    }
    if (empty($table['field'][$champ])) {
        erreur_squelette("Critere mon_age_relatif sans champ date valide.", $boucle);
    }
    $date_compare = "'\" . normaliser_date(" .
        calculer_argument_precedent($idb, $champ, $boucles) .
        ") . \"'";
    $date_orig = $boucle->id_table . '.' . $champ;
    $as = 'mon_age_relatif';
 
#var_dump(calculer_param_date($date_compare, $date_orig));
    $boucle->select[] = '(' . calculer_param_date($date_compare, $date_orig)  . ") AS $as";
}
 
/**
 * #MON_AGE_RELATIF => 7
 * #MON_AGE_RELATIF* => 7.1234
 * @param Pile $p
 * @return Pile
 */
function balise_MON_AGE_RELATIF_dist($p) {
    $p = rindex_pile($p, 'mon_age_relatif', 'mon_age_relatif');
    if (!$p->etoile) {
        $p->code = "floor(" . $p->code . ")";
    }
    return $p;
}
?>

Dans votre squelette :
#MON_AGE_RELATIF arrondi le nombre de jours sans virgules [floor()]
#MON_AGE_RELATIF* renvoie un nombre virgulé

<BOUCLE_1(ARTICLES){mon_age_relatif}{0, 10}>
#ID_ARTICLE - #MON_AGE_RELATIF - #MON_AGE_RELATIF*<br />
</BOUCLE_1>