[PLUGINS] +clavettes et dependances
[lhc/web/clavette_www.git] / www / plugins / calendrier_mini-2.0 / balise / calendrier_mini.php
1 <?php
2
3 /**
4 * Balise #CALENDRIER_MINI
5 * Auteur James (c) 2006-2012
6 * Plugin pour SPIP 3.0.0
7 * Licence GNU/GPL
8 */
9
10 if (!defined("_ECRIRE_INC_VERSION")) return; #securite
11
12 include_spip('calendriermini_fonctions');
13
14 function balise_CALENDRIER_MINI($p) {
15 return calculer_balise_dynamique($p,'CALENDRIER_MINI', array(VAR_DATE, 'id_rubrique','id_article', 'id_mot'));
16 }
17
18 function balise_CALENDRIER_MINI_stat($args, $filtres) {
19 //les parametres passe en {...}, les filtres sont des vraiss filtres
20 return $args;
21 }
22
23 /**
24 * Syntaxe raccourcie du plugin
25 * #CALENDRIER_MINI
26 * #CALENDRIER_MINI{#SELF}
27 * #CALENDRIER_MINI{#SELF,#URL_PAGE{calendrier_mini.json}}
28 *
29 * Syntaxe ancienne (ou plugin agenda)
30 * #CALENDRIER_MINI{#ENV{date}}
31 * #CALENDRIER_MINI{#ENV{date},date}
32 * #CALENDRIER_MINI{#ENV{date},date,#SELF}
33 * #CALENDRIER_MINI{#ENV{date},date,#SELF,#URL_PAGE{calendrier_mini.json}}
34 *
35 * Quand l'url json est explicitée dans les arguments, la collecte automatisée de id_rubrique, id_article et id_mot est desactivée
36 * car dans ce cas il suffit simplement de les expliciter sur l'url json pour les prendre en compte
37 *
38 * @param string $date
39 * date automatique collectee par VAR_DATE
40 * @param int $id_rubrique
41 * @param int $id_article
42 * @param int $id_mot
43 * @param null $self_or_date_or_nothing
44 * @param null $urljson_or_var_date_or_nothing
45 * @param null $self_or_nothing
46 * @param null $urljson_or_nothing
47 * @return array
48 */
49 function balise_CALENDRIER_MINI_dyn($date, $id_rubrique = 0, $id_article = 0, $id_mot = 0,
50 $self_or_date_or_nothing = null, $urljson_or_var_date_or_nothing = null, $self_or_nothing = null, $urljson_or_nothing = null) {
51 $var_date = VAR_DATE;
52 $url = null;
53 $url_json = null;
54
55 if(!is_null($self_or_date_or_nothing)){
56 // est-ce une date ou une url ?
57 if (!function_exists('recup_date'))
58 include_spip('inc/filtres');
59 if (!strlen($self_or_date_or_nothing) OR
60 (preg_match(",^[\d\s:-]+$,",$self_or_date_or_nothing))
61 AND list($annee, $mois, $jour, $heures, $minutes, $secondes) = recup_date($self_or_date_or_nothing)
62 AND $annee){
63 // si c'est une date on est dans l'ancienne syntaxe
64 $date = $self_or_date_or_nothing;
65 $var_date = $urljson_or_var_date_or_nothing;
66 $url = $self_or_nothing;
67 $url_json = $urljson_or_nothing;
68 }
69 else {
70 // sinon on est sur la nouvelle syntaxe
71 $url = $self_or_date_or_nothing;
72 $url_json = $urljson_or_var_date_or_nothing;
73 }
74 }
75
76 $args = array(
77 'date' => $date?$date:date('Y-m'),
78 'var_date' => $var_date,
79 'self' => $url?$url:self(),
80 );
81
82 // si pas de url_json explicite, la renseigner et peupler automatiquement les
83 if (is_null($url_json)){
84 $url_json = generer_url_public("calendrier_mini.json");
85 if (!is_null($id_rubrique))
86 $args['id_rubrique'] = $id_rubrique;
87 if (!is_null($id_article))
88 $args['id_article'] = $id_article;
89 if (!is_null($id_mot))
90 $args['id_mot'] = $id_mot;
91 }
92
93 if (defined('_VAR_MODE') and _VAR_MODE == "recalcul")
94 $url_json = parametre_url($url_json,'var_mode','recalcul');
95
96 $args['urljson'] = $url_json;
97
98 /* tenir compte de la langue, c'est pas de la tarte */
99 return array('formulaires/calendrier_mini', 3600, $args);
100 }
101
102 ?>