Changeset 59242 in spip-zone


Ignore:
Timestamp:
Mar 12, 2012, 6:26:33 PM (8 years ago)
Author:
cy_altern@…
Message:

#fail: le calendrier_mini du plugin minical est trop specifique de spipclear pour etre compatible simplement avec celui de l'agenda donc retour sur 59234

Location:
_plugins_/agenda/trunk
Files:
3 added
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/agenda/trunk/inc/agenda_filtres.php

    r58799 r59242  
    431431        return $total . ($ligne ? "\n<tr>$ligne\n</tr>" : '');
    432432}
     433
     434if(!function_exists('http_calendrier_init')){
     435        ///
     436        /// init: calcul generique des evenements a partir des tables SQL
     437        /// Fonction récupérée des anciens SPIP
     438        ///
     439       
     440        // http://doc.spip.org/@http_calendrier_init
     441        function http_calendrier_init($time='', $type='mois', $echelle='', $partie_cal='', $script='', $evt=null){
     442                if (is_array($time)) {
     443                        list($j,$m,$a) = $time;
     444                        if ($j+$m+$a) $time = @mktime(0,0,0, $m, $j, $a);
     445                }
     446       
     447                if (!is_numeric($time)) $time = time();
     448       
     449                $jour = date("d",$time);
     450                $mois = date("m",$time);
     451                $annee = date("Y",$time);
     452                        if (!$echelle = intval($echelle)) $echelle = DEFAUT_D_ECHELLE;
     453                        if (!is_string($type) OR !preg_match('/^\w+$/', $type)) $type ='mois';
     454                        if (!is_string($partie_cal) OR !preg_match('/^\w+$/', $partie_cal))
     455                                $partie_cal =  DEFAUT_PARTIE;
     456                list($script, $ancre) =
     457                  calendrier_retire_args_ancre($script);
     458                if (is_null($evt)) {
     459                        $g = 'quete_calendrier_' . $type;
     460                        $evt = quete_calendrier_interval($g($annee,$mois, $jour));
     461                        quete_calendrier_interval_articles("'$annee-$mois-00'", "'$annee-$mois-1'", $evt[0]);
     462                }
     463       
     464                $f = 'http_calendrier_' . $type;
     465                if (!function_exists($f)) $f = 'http_calendrier_mois';
     466                return $f($annee, $mois, $jour, $echelle, $partie_cal, $script, $ancre, $evt);
     467        }
     468}
     469if(!function_exists('calendrier_retire_args_ancre')){
     470        ///
     471        ///Utilitaires sans html ni sql
     472        ///Fonction récupérée des anciens SPIP
     473        ///
     474       
     475        /// Utilitaire de separation script / ancre
     476        /// et de retrait des arguments a remplacer
     477        /// (a mon avis cette fonction ne sert a rien, puisque parametre_url()
     478        /// sait remplacer les arguments au bon endroit -- Fil)
     479        /// Pas si simple: certains param ne sont pas remplaces
     480        /// et doivent reprendre leur valeur par defaut -- esj.
     481        /// http://doc.spip.org/@calendrier_retire_args_ancre
     482        function calendrier_retire_args_ancre($script){
     483       
     484                if (preg_match(',^(.*)#([\w-]+)$,',$script, $m)) {
     485                        $script = $m[1];
     486                        $ancre = $m[2];
     487                } else { $ancre = ''; }
     488       
     489                foreach(array('echelle','jour','mois','annee', 'type', 'partie_cal', 'bonjour') as $arg) {
     490                        $script = preg_replace("/([?&])$arg=[^&]*&/",'\1', $script);
     491                        $script = preg_replace("/([?&])$arg=[^&]*$/",'\1', $script);
     492                }
     493                if (in_array(substr($script,-1),array('&','?'))) $script =   substr($script,0,-1);
     494                return array(quote_amp($script), $ancre);
     495        }
     496}
     497
    433498?>
Note: See TracChangeset for help on using the changeset viewer.