diff --git a/afficher_diff/array_serialized.php b/afficher_diff/array_serialized.php new file mode 100644 index 0000000000000000000000000000000000000000..5ef59e2024754f4fb02c6240c5d036f1a845e6f6 --- /dev/null +++ b/afficher_diff/array_serialized.php @@ -0,0 +1,39 @@ +<?php + +if (!defined('_ECRIRE_INC_VERSION')) { + return; +} + +include_spip('inc/diff'); + +/** + * Afficher le diff d'un tableaux serialize + * + * @param string $champ + * @param string $old + * @param string $new + * @param string $format + * apercu, diff ou complet + * @return string + */ +function afficher_diff_array_serialized($champ, $old, $new, $format = 'diff') { + // Pour le diff de saisies, faire comme un diff de yaml + include_spip('inc/yaml'); + $tenter_unserialize = charger_fonction('tenter_unserialize', 'filtre/'); + $new = $tenter_unserialize($new); + $old = $tenter_unserialize($old); + if (is_array($new)) { + $new = yaml_encode($new); + } else { + $new = ''; + } + if (is_array($old)) { + $old = yaml_encode($old); + } else { + $old = ''; + } + $afficher_diff = charger_fonction('champ', 'afficher_diff', true); + return $afficher_diff($champ, $old, $new, 'complet'); +} + + diff --git a/afficher_diff/formulaire_saisies.php b/afficher_diff/formulaire_saisies.php new file mode 100644 index 0000000000000000000000000000000000000000..606eedce3679d7822775665af4487cc80d202258 --- /dev/null +++ b/afficher_diff/formulaire_saisies.php @@ -0,0 +1,24 @@ +<?php + +if (!defined('_ECRIRE_INC_VERSION')) { + return; +} + +include_spip('inc/diff'); + +/** + * Afficher le diff des saisies de formulaire + * + * @param string $champ + * @param string $old + * @param string $new + * @param string $format + * apercu, diff ou complet + * @return string + */ +function afficher_diff_formulaire_saisies($champ, $old, $new, $format = 'diff') { + $afficher_diff = charger_fonction('array_serialized', 'afficher_diff', true); + return $afficher_diff($champ, $old, $new, 'complet'); +} + + diff --git a/afficher_diff/formulaire_traitements.php b/afficher_diff/formulaire_traitements.php new file mode 100644 index 0000000000000000000000000000000000000000..0f85774410a8420b55ee0b37dcf77dce2be688e4 --- /dev/null +++ b/afficher_diff/formulaire_traitements.php @@ -0,0 +1,24 @@ +<?php + +if (!defined('_ECRIRE_INC_VERSION')) { + return; +} + +include_spip('inc/diff'); + +/** + * Afficher le diff des saisies de formulaire + * + * @param string $champ + * @param string $old + * @param string $new + * @param string $format + * apercu, diff ou complet + * @return string + */ +function afficher_diff_formulaire_traitements($champ, $old, $new, $format = 'diff') { + $afficher_diff = charger_fonction('array_serialized', 'afficher_diff', true); + return $afficher_diff($champ, $old, $new, 'complet'); +} + + diff --git a/paquet.xml b/paquet.xml index 90de6d373ae3555db8e490b0ad4bde23c2a1f716..b7bc575143328d3b71addaab0857b22158772b82 100644 --- a/paquet.xml +++ b/paquet.xml @@ -1,7 +1,7 @@ <paquet prefix="formidable" categorie="communication" - version="4.0.5" + version="4.0.6" etat="stable" compatibilite="[3.1.0;3.2.*]" logo="images/formidable-64.png"