| Current Path : /home/b/o/u/bourgleram/www/398a1/ |
| Current File : /home/b/o/u/bourgleram/www/398a1/afficher_diff.tar |
id_rubrique.php 0000666 00000002742 15252636335 0007612 0 ustar 00 <?php
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
* Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
* Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
\***************************************************************************/
if (!defined("_ECRIRE_INC_VERSION")) return;
include_spip('inc/diff');
/**
* Afficher le diff d'un id_rubrique
* on affiche en fait le deplacement si id_rubrique a change
* le nom de la rubrique sinon
*
* @param string $champ
* @param string $old
* @param string $new
* @param string $format
* @return string
*/
function afficher_diff_id_rubrique_dist($champ,$old,$new,$format='diff'){
// ne pas se compliquer la vie !
if ($old==$new)
$out = _T('info_dans_rubrique')
. " <b>« ".generer_info_entite($new,'rubrique','titre')." »</b>";
else
$out = _T('revisions:version_deplace_rubrique',
array('from'=> generer_info_entite($old,'rubrique','titre')
,'to'=>generer_info_entite($new,'rubrique','titre')
)
);
return $out;
} champ.php 0000666 00000004032 15252636335 0006362 0 ustar 00 <?php
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
* Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
* Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
\***************************************************************************/
if (!defined("_ECRIRE_INC_VERSION")) return;
include_spip('inc/diff');
/**
* Afficher le diff d'un champ texte generique
* @param string $champ
* @param string $old
* @param string $new
* @param string $format
* apercu, diff ou complet
* @return string
*/
function afficher_diff_champ_dist($champ,$old,$new,$format='diff'){
// ne pas se compliquer la vie !
if ($old==$new)
$out = ($format!='complet'?'':$new);
else {
if($f = charger_fonction($champ,'afficher_diff', true)){
return $f($champ, $old, $new, $format);
}
$diff = new Diff(new DiffTexte);
$n = preparer_diff($new);
$o = preparer_diff($old);
$out = afficher_diff($diff->comparer($n,$o));
if ($format == 'diff' OR $format == 'apercu')
$out = afficher_para_modifies($out, ($format == 'apercu'));
}
return $out;
}
/**
* http://code.spip.net/@afficher_para_modifies
*
* @param string $texte
* @param bool $court
* @return string
*/
function afficher_para_modifies ($texte, $court = false) {
// Limiter la taille de l'affichage
if ($court) $max = 200;
else $max = 2000;
$texte_ret = "";
$paras = explode ("\n",$texte);
for ($i = 0; $i < count($paras) AND strlen($texte_ret) < $max; $i++) {
if (strpos($paras[$i], '"diff-')) $texte_ret .= $paras[$i]."\n\n";
# if (strlen($texte_ret) > $max) $texte_ret .= '(...)';
}
$texte = $texte_ret;
return $texte;
}
jointure.php 0000666 00000004272 15252636335 0007137 0 ustar 00 <?php
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
* Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
* Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
\***************************************************************************/
if (!defined("_ECRIRE_INC_VERSION")) return;
include_spip('inc/diff');
/**
* Afficher le diff d'un champ texte generique
* @param string $champ
* @param string $old
* @param string $new
* @param string $format
* apercu, diff ou complet
* @return string
*/
function afficher_diff_jointure_dist($champ,$old,$new,$format='diff'){
$join = substr($champ,9);
$objet = objet_type($join);
$old = explode(',',$old);
$new = explode(',',$new);
$liste = array();
// les communs
$intersection = array_intersect($new,$old);
foreach($intersection as $id)
if ($id=intval(trim($id)))
$liste[$id] = "<a href='".generer_url_entite($id,$objet)."' title='"._T(objet_info($objet,'texte_objet'))." $id'>".generer_info_entite($id,$objet,'titre')."</a>";
// les supprimes
$old = array_diff($old,$intersection);
foreach($old as $id)
if ($id=intval(trim($id)))
$liste[$id] = "<span class='diff-supprime'>"
. "<a href='".generer_url_entite($id,$objet)."' title='"._T(objet_info($objet,'texte_objet'))." $id'>".generer_info_entite($id,$objet,'titre')."</a>"
. "</span>";
// les ajoutes
$new = array_diff($new,$intersection);
foreach($new as $id)
if ($id=intval(trim($id)))
$liste[$id] = "<span class='diff-ajoute'>"
. "<a href='".generer_url_entite($id,$objet)."' title='"._T(objet_info($objet,'texte_objet'))." $id'>".generer_info_entite($id,$objet,'titre')."</a>"
. "</span>";
ksort($liste);
$liste = implode(', ',$liste);
return $liste;
}