view includes/class.textutils.php @ 29:750613da68ec

Ajout d'un fallback en cas d'absence de TreeWalker. Ca devrait permettre de faire fonctionner l'administration dans la plupart des navigateurs (modulo la vérification de validité XML éventuellement).
author Franck Deroche <webmaster@defr.org>
date Thu, 01 Nov 2007 17:44:43 +0100
parents 8f1125d27079
children ec0c926a78a6
line wrap: on
line source
<?php
    class TextUtils
    {
	public static function SplitTags($str)
	{
	    $str = str_replace("\\\"", "\"", $str);
	    $tags = array();
	    preg_match_all('/"([a-zA-Z0-9 ]+)"/', $str, $tests);
	    $useful = $tests[1];
	    foreach($useful as $match)
	    {
		$tags[] = $match;
		$str = str_replace("\"{$match}\"", null, $str);
	    }
	    $str = preg_replace("/( )+/", " ", trim($str));
	    if(strlen($str) > 0)
		$tags = array_merge($tags, explode(" ", $str));
	    asort($tags);
	    return $tags;
	}
	
	public static function DiffTagLine($old, $new, &$ajout, &$suppr)
	{
	    $arOld = TextUtils::SplitTags($old);
	    $arNew = TextUtils::SplitTags($new);
	    $ajout = array_diff($arNew, $arOld);
	    $suppr = array_diff($arOld, $arNew);
	}

    public static function StripTitle($Titre) {
        $Titre_url = str_replace(" ", "_", strip_tags($Titre));
		$Titre_url = str_replace("-", "_", $Titre_url);
        $Titre_url = str_replace(array("é", "è"), "e", $Titre_url);
        $Titre_url = str_replace("à", "a", $Titre_url);
        $Titre_url = str_replace("ù", "u", $Titre_url);
        $Titre_url = str_replace(array("î", "ï"), "i", $Titre_url);
        return $Titre_url;
    }

    public static function getMonthName($monthNumber) {
        return ucfirst(strftime('%B', strtotime('2007-' . $monthNumber . '-01')));
    }
    }
?>