source: spip-zone/_squelettes_/soyezcreateurs_net/plugins_1.9.3/plugins/__soyezcreateurs/agenda.html @ 21160

Last change on this file since 21160 was 21160, checked in by real3t@…, 11 years ago

La SVN n'est plus en register global, donc, il faut explicitement aller chercher les variable dans l'URL en PHP.

File size: 10.8 KB
Line 
1#CACHE{30*24*3600}
2<?php
3$months = array('', '<:date_mois_1:>', '<:date_mois_2:>', '<:date_mois_3:>', '<:date_mois_4:>', '<:date_mois_5:>', '<:date_mois_6:>', '<:date_mois_7:>', '<:date_mois_8:>', '<:date_mois_9:>', '<:date_mois_10:>', '<:date_mois_11:>', '<:date_mois_12:>');
4$days = array('<:date_jour_1:>', '<:date_jour_2:>', '<:date_jour_3:>', '<:date_jour_4:>', '<:date_jour_5:>', '<:date_jour_6:>', '<:date_jour_7:>');
5$date_ev = _request('date_ev');
6if (!isset($date_ev) || $date_ev == '') $date_ev = date('Y-m-d');
7
8ereg("^([0-9]{4})-([0-9]{2})-([0-9]{2}).*$", $date_ev, $regs);
9$cal_day = mktime(0, 0, 0, $regs[2], $regs[3], $regs[1]);
10
11$D = date('d', $cal_day);
12$M = date('m', $cal_day);
13$Y = date('Y', $cal_day);
14
15if (!isset($genre)) $genre = "<:pyrat:tout:>";
16
17$titrePage = '<:pyrat:agenda|texte_script:> - '.$months[intval($M)].' '.$Y;
18
19// Liste des rubriques de l agenda
20$branche = array();
21<BOUCLE_courante(RUBRIQUES){id_rubrique}>
22        <BOUCLE_branche(RUBRIQUES){branche}>
23                $branche[] = #ID_RUBRIQUE;
24        </BOUCLE_branche>
25</BOUCLE_courante>
26
27// Construction liste des evenements (1 liste par jour => liste des jours)
28$events = array();
29<BOUCLE_evts_com(EVENEMENTS){statut=publie}{date_debut>(#ENV{date_ev,(#ENV{date})}|affdate{'Y-m-01'}|DateAdd{-6})}{date_debut<(#ENV{date_ev,(#ENV{date})}|affdate{'Y-m-01'}|DateAdd{35})}{par date_debut}><B_EvenementArticle>
30        if ('#DATE_DEBUT' != '' && in_array(#ID_RUBRIQUE, $branche)) {
31                $dateEvt = ereg_replace("^([0-9]{4})-([0-9]{2})-([0-9]{2}).*$", "\\1\\2\\3", '#DATE_DEBUT');
32                if (!isset($events[$dateEvt])) { $events[$dateEvt] = array(); }
33                $res="";
34                ereg("($genre)", '<BOUCLE_genre(MOTS){id_evenement}>[(#TITRE|texte_script)]</BOUCLE_genre>', $res);
35                if (($genre=='<:pyrat:tout:>') || ($genre==$res[1])) {
36                        <BOUCLE_EvenementArticle(ARTICLES){id_article}>$events[$dateEvt][] = array('rub' => #ID_RUBRIQUE, 'link' => '#URL_ARTICLE', 'title' => '[(#TITRE|texte_script)][&nbsp;: (#_evts_com:TITRE|=={#TITRE}|?{'',[(#_evts_com:TITRE|texte_script)]})]', 'logo' => '<BOUCLE_TitreRubrique(RUBRIQUES){id_rubrique}>[<img src="/(#LOGO_ARTICLE_RUBRIQUE||image_reduire{32,32}|extraire_attribut{src})" class="logo_agenda" alt="[(#TITRE|attribut_html|texte_script)]" title="[(#TITRE|attribut_html|texte_script)]" />]</BOUCLE_TitreRubrique>', 'genres' => '<B_Genres><em>(<BOUCLE_Genres(MOTS){id_evenement}{", "}><a href="#URL_MOT" rel="tag" title="<:pyrat:savoirpluscritere:>: [(#TITRE|attribut_html|texte_script)]">[(#TITRE|texte_script)]</a></BOUCLE_Genres>)</em></B_Genres>', 'titre_rub' => '<B_TitreRub><strong<BOUCLE_CouleurRub(MOTS){id_rubrique}{type=_CouleurRubrique}> style="background-color:#[(#TEXTE|couleur_eclaircir)];"</BOUCLE_CouleurRub>><BOUCLE_TitreRub(RUBRIQUES){id_rubrique}>[(#TITRE|attribut_html|texte_script)</strong>&nbsp;: ]</BOUCLE_TitreRub>');</BOUCLE_EvenementArticle>
37                }
38        }
39</B_EvenementArticle></BOUCLE_evts_com>
40
41?>
42<BOUCLE_rubrique_principal(RUBRIQUES) {id_rubrique}>
43<?php $jp_rubrique = [(#ID_RUBRIQUE|texte_script)]; ?>
44<?php $titre = '[(#TITRE|attribut_html|texte_script)] - '.$months[intval($M)].' '.$Y; ?>
45<?php $titretop = '[(#TITRE|attribut_html|nettoyer_marqueur|texte_script)]'; ?>
46<INCLURE{fond=header}>
47        <div id="miettesdepain">
48        <ul>
49        <li><a href="#URL_SITE_SPIP"><:pyrat:accueil:></a></li>
50        <BOUCLE_plan(HIERARCHIE){id_rubrique}><li><a href="#URL_SITE_SPIP/spip.php?page=agenda&amp;id_rubrique=#_rubrique_principal:ID_RUBRIQUE"[ title="(#DESCRIPTIF|attribut_html)"]>[(#TITRE)]</a></li>
51        </BOUCLE_plan>
52        <li>[(#TITRE)]</li>
53        </ul>
54        </div>
55
56<div class="texte">
57<!-- Une : contenu de la rubrique -->
58<div class="cartouche">
59<h1>[(#SET{lelogo,[(#MODELE{rubrique_logo}{mode=normal}|image_reduire{64,64})]})][<img class="logo_rubrique" src="/(#GET{lelogo}|extraire_attribut{src})" width="[(#GET{lelogo}|extraire_attribut{width})]" height="[(#GET{lelogo}|extraire_attribut{height})]" alt="[(#TITRE|texte_script|supprimer_tags|entites_html) (logo)]" />]
60[(#TITRE)]<?php echo ' - '.$months[intval($M)].' '.$Y; ?></h1>
61</div>
62
63<B_themes>
64<div id="artrecents" class="flottant">
65<h2><:pyrat:themes:></h2>
66<BOUCLE_themes(RUBRIQUES){racine}{id_secteur}><B_sous_rubriques1>
67<!-- Les themes avec recursivite -->
68        <ul>
69                <BOUCLE_sous_rubriques1(RUBRIQUES){id_parent}{par titre}>
70                        <li[ style="list-style-image: url(/(#MODELE{rubrique_logo}{mode=normal}|image_reduire{9,9}|extraire_attribut{src}));"]>
71                        <?php if ($jp_rubrique != [(#ID_RUBRIQUE|texte_script)]) { ?>
72                        <a href="#URL_RUBRIQUE?date_ev=[(#ENV{date_ev,[(#ENV{date})]}|annee)]-01-01[&amp;genre=(#ENV{genre,''}|urlencode)]" title="[(#DESCRIPTIF|attribut_html)] ([(#DATE|nom_jour)] [(#DATE|affdate)])"><?php } ?>[(#TITRE)]<?php if ($jp_rubrique != [(#ID_RUBRIQUE|texte_script)]) { ?></a><?php } ?>
73                        <BOUCLE_RecursionRubriques(BOUCLE_sous_rubriques1)></BOUCLE_RecursionRubriques>
74                        </li>
75                </BOUCLE_sous_rubriques1>
76        </ul>
77</B_sous_rubriques1></BOUCLE_themes>
78</div></B_themes>
79
80        <div id="letexte">
81[<div class="descriptif">(#DESCRIPTIF)</div>]
82[(#TEXTE)]
83
84<!-- Fabrication du tableau : l'en tete -->
85
86                <form id="frmnavigation" method="get" action="#SELF"><fieldset><legend><:pyrat:precisezrecherche:></legend>
87                <BOUCLE_PremiereAnnee(EVENEMENTS){statut=publie}{branche}{par date_debut}{0,1}>
88                <?php if (!([(#DATE_DEBUT|annee)]==[(#ENV{date_ev,[(#ENV{date})]}|annee)] && [(#ENV{date_ev,[(#ENV{date})]}|mois)]==01)) { ?>
89                <a href="#URL_SITE_SPIP/spip.php?page=agenda&amp;id_rubrique=#_rubrique_principal:ID_RUBRIQUE&amp;date_ev=<?php echo (($M - 1 > 0) ? $Y : ($Y - 1)); ?>-<?php printf('%02d', ($M - 1) > 0 ? ($M - 1) : 12); ?>-01[&amp;genre=(#ENV{genre,''}|urlencode)]"><img src="/#CHEMIN{images/prev.gif}" title="<:precedent:>" alt="<:precedent:>" /></a>
90                <?php } ?>
91                </BOUCLE_PremiereAnnee>
92                <select id="var_nav_month">
93                <?php
94                for($i = 1; $i < 13; $i++) {
95                        echo '<option value="'.sprintf('%02d', $i).'"'.($i == $M ? ' selected="selected" ' : '').'>'.$months[$i].'</option>';
96                }
97                ?>
98                </select>
99                <select id="var_nav_year">
100                <BOUCLE_Annees(EVENEMENTS){statut=publie}{branche}{par date_debut}>[
101                <option value="[(#DATE_DEBUT|annee)]"[(#ENV{date_ev,[(#ENV{date})]}|annee|=={[(#DATE_DEBUT|annee)]}|?{' selected="selected"',''})]>(#DATE_DEBUT|annee|unique)</option>
102                ]</BOUCLE_Annees>
103                </select>
104
105                <!-- Construction Menu selection -->
106                <B_ListMotsClefs>[(#REM) Objectif : n'afficher que les mots clefs effectivement utilise' dans le secteur]
107                <select id="var_nav_cle">
108                <option value=""[(#ENV{genre,''}|=={''}|?{' selected="selected"',''})]><:pyrat:tout:></option>
109                <BOUCLE_ListMotsClefs(EVENEMENTS){statut=publie}{id_secteur}{par titre}>
110                <BOUCLE_MotClefAssocie(MOTS){id_evenement}{unique}>
111                <option value="[(#TITRE|attribut_html)]"[(#ENV{genre}|=={[(#TITRE|attribut_html)]}|?{' selected="selected"',''})]>[(#TITRE)]</option>
112                </BOUCLE_MotClefAssocie>
113                </BOUCLE_ListMotsClefs>
114                </select>
115                </B_ListMotsClefs>
116
117                <input type="button" value="<:pass_ok:>" class="form_submit" onclick="document.location.href='#URL_SITE_SPIP/spip.php?page=agenda&amp;id_rubrique=#_rubrique_principal:ID_RUBRIQUE&amp;date_ev=' + document.getElementById('var_nav_year').value + '-' + document.getElementById('var_nav_month').value + '-01&amp;genre=' + document.getElementById('var_nav_cle').value ; return false;" />
118                <BOUCLE_DerniereAnnee(EVENEMENTS){statut=publie}{branche}{!par date_debut}{0,1}>
119                <?php if (!([(#DATE_DEBUT|annee)]==[(#ENV{date_ev,[(#ENV{date})]}|annee)] && [(#ENV{date_ev,[(#ENV{date})]}|mois)]==12)) { ?>
120                <a href="#URL_SITE_SPIP/spip.php?page=agenda&amp;id_rubrique=#_rubrique_principal:ID_RUBRIQUE&amp;date_ev=<?php echo (($M + 1 < 13) ? $Y : ($Y + 1)); ?>-<?php printf('%02d', ($M + 1) < 13 ? ($M + 1) : 1); ?>-01[&amp;genre=(#ENV{genre,''}|urlencode)]"><img src="/#CHEMIN{images/next.gif}" title="<:suivant:>" alt="<:suivant:>" /></a>
121                <?php } ?>
122                </BOUCLE_DerniereAnnee>
123                <?php if ( ([(#ENV{date}|annee)] != [(#ENV{date_ev,[(#ENV{date})]}|annee)]) || ([(#ENV{date}|mois)] != [(#ENV{date_ev,[(#ENV{date})]}|mois)]) ) { ?>
124                <input type="button" value="Aujourd'hui" onclick="document.location.href='#URL_SITE_SPIP/spip.php?page=agenda&amp;id_rubrique=#_rubrique_principal:ID_RUBRIQUE&amp;date_ev=<?php echo (date('Y-m-d')); ?>&amp;genre=<?php echo $genre ?>'; return false;" />
125                <?php } ?>
126                </fieldset>
127                </form>
128
129<h2>[(#TITRE)]</h2>
130<table class="agenda" summary="<:pyrat:agendamoisde:> <?php echo $months[intval($M)].'&nbsp;'.$Y;?>">
131<caption>
132                <?php
133                                echo $months[intval($M)].'&nbsp;';
134                ?>
135                <a href="#URL_RUBRIQUE?date_ev=[(#ENV{date}|annee)]-01-01&amp;genre=<?php echo urlencode((($genre=='<:pyrat:tout:>')?'':$genre)); ?>&amp;calendrier=1" title="<:pyrat:voirdetailannee:> [(#ENV{date}|annee)]">[(#ENV{date}|annee)]</a>
136</caption>
137<!-- Fabrication du tableau : les donnees -->
138<tr>
139        <?php
140        for($i = 1; $i < 8; $i++) {
141                echo '<th class="agendahead" scope="col">'.$days[$i%7].'</th>';
142        }
143        $TempD = 1;
144        if(date('w', mktime(0, 0, 0, $M, 1, $Y)) != 1) {
145                echo '</tr><tr>';
146                $tmp = '';
147                while(date('w', mktime(0, 0, 0, $M, $TempD, $Y)) != 1) {
148                        $TempD--;
149                        $case = '<td valign="top" class="agendanotthismonth">';
150                        $case .= date('j', mktime(0, 0, 0, $M, $TempD, $Y));
151                        $date_ev = date('Ymd', mktime(0, 0, 0, $M, $TempD, $Y));
152                        if (isset($events[$date_ev])) {
153                                $countev = $TempD;
154                                while (list(, $event) = each($events[$date_ev])) {
155                                        $case .= ((($countev % 2)==0) ? '<div >' : '<div class="odd">').$event['logo'].(($event['logo'] == '') ? $event['titre_rub'] : '').'<a href="'.$event['link'].'">'.$event['title'].'</a> '.$event['genres'].'</div>';
156                                        $countev++;
157                                }
158                        }
159                        $case .= '</td>';
160                        $tmp = $case.$tmp;
161                }
162                echo $tmp;
163        }
164        $TempD = 1;
165        while((date('m', mktime(0, 0, 0, $M, $TempD, $Y)) == $M) || (date('w', mktime(0, 0, 0, $M, $TempD, $Y)) != 1)) {
166                if(date('w', mktime(0, 0, 0, $M, $TempD, $Y)) == 1) {
167                        echo '</tr><tr>';
168                }
169                $date_ev = date('Ymd', mktime(0, 0, 0, $M, $TempD, $Y));
170                echo '<td valign="top" class="agenda'.(date('m', mktime(0, 0, 0, $M, $TempD, $Y)) != $M ? 'not' : '').'this'.(date('Ymd', mktime(0, 0, 0, $M, $TempD, $Y)) == date('Ymd') ? 'day' : 'month').(isset($events[$date_ev]) ? ' event' : '').'">';
171                echo date('j', mktime(0, 0, 0, $M, $TempD, $Y));
172                if (isset($events[$date_ev])) {
173                        $countev = $TempD;
174                        while (list(, $event) = each($events[$date_ev])) {
175                                echo ((($countev % 2)==0) ? '<div >' : '<div class="odd">').$event['logo'].(($event['logo'] == '') ? $event['titre_rub'] : '').'<a href="'.$event['link'].'">'.$event['title'].'</a> '.$event['genres'].'</div>';
176                                $countev++;
177                        }
178                }
179                echo '</td>';
180                $TempD++;
181        }
182        ?>
183</tr>
184</table>
185<p>&nbsp;</p>
186[<div class="notes">(#NOTES)</div>]
187        </div><!-- Fin de #LeTexte -->
188</div><!-- Fin de .texte -->
189
190</BOUCLE_rubrique_principal>
191</B_rubrique_principal>
192<?php $titre = '<:pyrat:erreur|texte_script:>'; ?>
193<?php $titretop = '<:pyrat:erreur|nettoyer_marqueur|texte_script:>'; ?>
194<INCLURE{fond=header}{connexion}>
195<:pyrat:erreur_rubriqueexistepas:>
196<//B_rubrique_principal>
197[(#FORMULAIRE_ADMIN)]
198<INCLURE{fond=footer}>
199
200
Note: See TracBrowser for help on using the repository browser.