'; $img = find_in_path('img/icone_blockchaine.svg'); if ($img) { $img = ''; $img .= " "; } if (!defined('_BLOCKLOG_CACHER_PDF') or _BLOCKLOG_CACHER_PDF !== true){ if (intval($id_dossier) and $objet) { $blockchaine .= $img; $blockchaine .= trouver_blocklog($id_dossier, $objet); $blockchaine .= ''; } } $texte = str_replace('@@blockchaine@@', $blockchaine, $texte); $texte = str_replace('@@blocklog@@', $blockchaine, $texte); return $texte; } function blocklog_verifier_blockchaine($id_objet, $objet){ if (intval($id_objet) and $objet) { $r = trouver_blocklog($id_objet, $objet, true); $where = array( 'objet='.sql_quote($objet), 'id_blocklog<'.intval($r['id_blocklog']) ); $blockchaine = sql_getfetsel('blockchaine', 'spip_blocklogs', $where, 'id_blocklog DESC', 1); $blockchaine .= "|" . $r['chaine']; $blockchaine = hash(_BLOCKLOG_ALGO, $blockchaine); return $blockchaine === $r['blockchaine']; } } function blocklog_verifier_blockchaines($objet, $date_debut = '', $date_fin = ''){ if (empty($objet)) { return []; } if (empty($date_debut)) { $date_debut = date_create() -> modify('-1 year')->format('Y-m-d H:i:s'); } else { $date_debut = date_create($date_debut)->format('Y-m-d H:i:s'); } if (empty($date_fin)) { $date_fin = date_create()->format('Y-m-d H:i:s'); } else { $date_fin = date_create($date_fin)->format('Y-m-d 23:59:59'); } $from = 'spip_blocklogs'; $where = array( 'objet='.sql_quote($objet), 'maj>='.sql_quote($date_debut), 'maj<='.sql_quote($date_fin), ); $res = sql_allfetsel('*', $from, $where); $retour = []; if (count($res)) { $blockchaine = ""; foreach ($res as $r) { $blockchaine .= "|" . $r['chaine']; $blockchaine = hash(_BLOCKLOG_ALGO, $blockchaine); if ($blockchaine === $r['blockchaine']){ $r['v'] = 'ok'; $retour[] = $r; } else { $r['v'] = 'error'; $retour[] = $r; break; } } } var_dump($retour); die; return $retour; }