Changeset 34391 in spip-zone


Ignore:
Timestamp:
Jan 10, 2010, 11:13:16 PM (10 years ago)
Author:
cedric@…
Message:

report de [34388]

Location:
_plugins_/bandeau
Files:
4 added
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/bandeau/public/slogan_balise.php

    r34366 r34391  
    2323        if (isset($slogan[$lang]))
    2424                return $slogan[$lang];
    25         if (!$slogan_aleatoire = charger_fonction("slogan_aleatoire_".$lang,"public",true)){
    26                 $slogan_aleatoire = charger_fonction("slogan_aleatoire_fr","public");
    27                 return $slogan[$lang] = "<span lang='$lang'>".$slogan_aleatoire($titre)."</span>";
     25
     26        // si un fichier cache slogans_xx.txt existe, on l'utilise
     27        if ($f = find_in_path("slogans/slogans_$lang.txt")
     28                        AND lire_fichier($f, $slogans)
     29                        AND trim($slogans)
     30                        AND ($n = count($slogans = explode("\n",$slogans)))>1){
     31                return $slogan[$lang] = str_replace("@slogan@",$titre,$slogans[rand(0, $n)]);
     32        }
     33
     34        // sinon on se rabat sur la fonction
     35        if (!$slogan_aleatoire = charger_fonction("slogan_aleatoire_".$lang,"public",true)
     36                AND $lang!='fr'){
     37                // sinon on se rabat sur le slogan en francais
     38                return $slogan[$lang] = "<span lang='$lang'>".slogan_aleatoire($titre,'fr')."</span>";
    2839        }
    2940        return $slogan[$lang] = $slogan_aleatoire($titre);
     
    7283}
    7384
     85function slogan_cache($lang,$fichier,$n=100){
     86        lire_fichier($fichier, $contenu);
     87        $slogans = explode("\n",trim($contenu));
     88
     89        var_dump(count($slogans));
     90
     91        $slogan_aleatoire = charger_fonction("slogan_aleatoire_$lang","public");
     92        while ($n-->0){
     93                $slogans[] = $slogan_aleatoire("@slogan@");
     94        }
     95        $slogans = array_unique($slogans);
     96        var_dump(count($slogans));
     97        ecrire_fichier($fichier, implode("\n",$slogans));
     98}
     99
    74100
    75101?>
Note: See TracChangeset for help on using the changeset viewer.