Changeset 44235 in spip-zone


Ignore:
Timestamp:
Feb 6, 2011, 2:56:14 PM (9 years ago)
Author:
alexandra.guiderdoni@…
Message:

nouvelle version du calendrier d'agenda 2 mais qui renvoie sur jour #ENV date et non pas #SELF

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _galaxie_/spip-party/squelettes/formulaires/calendrier_mini.html

    r10036 r44235  
    1 <BOUCLE_rubrique(RUBRIQUES){id_rubrique}{id_secteur IN 1,30}>
    2 <BOUCLE_event_test(EVENEMENTS){branche} {statut=publie}{par date_fin}{age<7} {0,1}> </BOUCLE_event_test>
    3 
    4 [(#REM)
    5         Tout d'abord on cherche dans quelle rubrique l'on est,
    6         pour n'afficher que les evenements de celle-ci.
    7         Ensuite, on n'affiche le calendrier que s'il y a des
    8         evenement a venir dans la branche. ]
    9 
    101<div id="calendar">
    11         <h2>Prochains rendez-vous</h2>
     2        <h2><BOUCLE_titre(ARTICLES){id_article}>#TITRE</BOUCLE_titre><:icone_calendrier:><//B_titre></h2>
    123        <table summary="<:icone_calendrier:>">
    13                 <caption>[<a
    14                                 href="(#URL_PAGE{mois}|parametre_url{#ENV{var_date},[(#ENV{date}|Agenda_dateplus{-27*24*3600,'Y-m'})]})"
    15                                 title="[(#ENV{date}|Agenda_dateplus{-27*24*3600,'Y-m'}|affdate_mois_annee|ucfirst)]">&#171;</a>][&nbsp;<a href="[(#URL_PAGE{mois}|parametre_url{#ENV{var_date},[(#ENV{date}|affdate{'Y-m'})]})]">(#ENV{date}|affdate_mois_annee|majuscules)</a>&nbsp;][<a
    16                                 href="(#URL_PAGE{mois}|parametre_url{#ENV{var_date},[(#ENV{date}|Agenda_dateplus{33*24*3600,'Y-m'})]})"
    17                                 title="[(#ENV{date}|Agenda_dateplus{33*24*3600,'Y-m'}|affdate_mois_annee|ucfirst)]">&#187;</a>]
     4                <caption>[
     5                        <a
     6                                href="(#ENV{self}|parametre_url{#ENV{var_date},[(#ENV{#ENV{var_date},#ENV{date}}|Agenda_moisdecal{-1,'Y-m'})]})"
     7                                title="[(#ENV{#ENV{var_date},#ENV{date}}|Agenda_moisdecal{-1,'Y-m'}|affdate_mois_annee)]"
     8                        >&#171;</a>][
     9                        (#ENV{#ENV{var_date},#ENV{date}}|affdate_mois_annee)][
     10                        <a
     11                                href="(#ENV{self}|parametre_url{#ENV{var_date},[(#ENV{#ENV{var_date},#ENV{date}}|Agenda_moisdecal{1,'Y-m'})]})"
     12                                title="[(#ENV{#ENV{var_date},#ENV{date}}|Agenda_moisdecal{1,'Y-m'}|affdate_mois_annee)]"
     13                        >&#187;</a>]
    1814                </caption>
    1915                <thead>
     
    2824                        </tr>
    2925                </thead>
    30                 <tbody><BOUCLE_calendrier_rubrique(EVENEMENTS) {branche} {agenda date_debut, mois, (#ENV{date}|annee), (#ENV{date}|mois)} {statut=publie}>[(#DATE_DEBUT|Agenda_memo_full{
    31                         #DATE_FIN,
    32                         [(#DATE_DEBUT|nom_jour|ucfirst) ][(#DATE_DEBUT|affdate)],
    33                         #DESCRIPTIF,
    34                         #LIEU,
    35                         [(#URL_PAGE{jour}|parametre_url{#ENV{var_date},[(#ENV{date}|affdate{'Y-m-d'})]})]
    36                 })]</BOUCLE_calendrier_rubrique>[
    37                 (#ENV{date}|agenda_mini)
    38                 ]</tbody>
     26                <tbody>
     27                        [(#REM)
     28                        Simplification: On commence par calculer les evenements qui:
     29                                        (1) commencent avant le debut du mois suivant le mois demande (borne_fin_mois est en fait le 1er jour du mois suivant)
     30                                                ET
     31                                        (2) finissent apres le debut du mois demande (1er jour inclus)
     32                                Sont donc inclus:
     33                                        (a) les evenements qui commencent dans le mois demande (test 1)
     34                                                et dont la fin est necessairement apres le debut du mois demande (test 2 vrai aussi)
     35                                        (b) les evenements qui finissent dans le mois demande (test 2)
     36                                                et dont le debut est necessairement avant la fin du mois demande (test 1 vrai aussi)
     37                                        (c) les evenements qui commencent avant le mois demande (test 1) ET finissent apres le mois demande (test 2)
     38                                Plus simple depuis qu'on dispose du calcul des bornes de debut et fin de mois... et plus de doublons :-)
     39                        Correction: on tronque le jour de la date pour bien partir du debut de mois quelle que soit la date demandee:
     40                                        2009-12-15 donne quand meme borne_debut_mois==2009-12-01 et borne_fin_mois==2010-01-01
     41                                                au lieu de borne_debut_mois==2009-12-15 et borne_fin_mois==2010-01-15
     42                        ]
     43                        #SET{'borne_debut_mois', (#ENV{#ENV{var_date},#ENV{date}}|affdate{'Y-m'}|Agenda_moisdecal{0,'Y-m-d'})}
     44                        #SET{'borne_fin_mois', (#ENV{#ENV{var_date},#ENV{date}}|affdate{'Y-m'}|Agenda_moisdecal{1,'Y-m-d'})}
     45                        <!-- le debut de mois est #GET{'borne_debut_mois'}, le debut du suivant est #GET{'borne_fin_mois'} -->
     46                        <BOUCLE_calendrier(EVENEMENTS)
     47                        {id_article?}{id_mot?}
     48                        {date_debut < #GET{'borne_fin_mois'}}
     49                        {date_fin >= #GET{'borne_debut_mois'}}>
     50                [(#DATE_DEBUT|Agenda_memo_full{#DATE_FIN,[(#TITRE|addslashes)],#DESCRIPTIF,#LIEU,#URL_PAGE{jour},'',#ENV{var_date}})]
     51                        </BOUCLE_calendrier>
     52                        [(#REM) le "courante" ci-dessus peut etre remplace par "debut" pour retrouver l'ancien comportement]
     53                       
     54                        [(#REM) Puis on les affiche dans un agenda]
     55                        [(#ENV{#ENV{var_date},#ENV{date}}|agenda_mini)]
     56                       
     57                </tbody>
    3958        </table>
     59        <span>&nbsp;</span>
    4060</div>
    41 <small class="metadata" style="display: block; text-align: center;">Abonnez-vous au<br />calendier [(#TITRE|supprimer_numero)]&nbsp;: <a rel="alternate" href="[(#URL_PAGE{ical}|parametre_url{id_rubrique,#ID_RUBRIQUE})]" title="iCal [(#TITRE|supprimer_numero|textebrut)] [(#NOM_SITE_SPIP|textebrut)]">iCal</a> | <a rel="alternate" type="application/rss+xml" href="[(#URL_PAGE{backend-calendrier}|parametre_url{id_rubrique,#ID_RUBRIQUE})]" title="RSS Calendrier [(#TITRE|supprimer_numero|textebrut)] [(#NOM_SITE_SPIP|textebrut)]">RSS&nbsp;2.0</a></small>
    42 
    43 </B_event_test>
    44 </BOUCLE_rubrique>
    45 
    46 [(#REM)
    47         Si l'on n'est pas dans une rubrique,
    48         on affiche tous les evenements du site. ]
    49 
    50 <div id="calendar">
    51         <h2>Prochains rendez-vous</h2>
    52         <table summary="<:icone_calendrier:>">
    53                 <caption>[<a
    54                                 href="(#URL_PAGE{mois}|parametre_url{#ENV{var_date},[(#ENV{date}|Agenda_dateplus{-27*24*3600,'Y-m'})]})"
    55                                 title="[(#ENV{date}|Agenda_dateplus{-27*24*3600,'Y-m'}|affdate_mois_annee|ucfirst)]">&#171;</a>][&nbsp;<a href="[(#URL_PAGE{mois}|parametre_url{#ENV{var_date},[(#ENV{date}|affdate{'Y-m'})]})]">(#ENV{date}|affdate_mois_annee|majuscules)</a>&nbsp;][<a
    56                                 href="(#URL_PAGE{mois}|parametre_url{#ENV{var_date},[(#ENV{date}|Agenda_dateplus{33*24*3600,'Y-m'})]})"
    57                                 title="[(#ENV{date}|Agenda_dateplus{33*24*3600,'Y-m'}|affdate_mois_annee|ucfirst)]">&#187;</a>]
    58                 </caption>
    59                 <thead>
    60                         <tr>
    61                                 <th scope="col"><abbr title="<:date_jour_2:>"><:date_jour_2|spip_substr{0,1}|strtoupper:></abbr></th>
    62                                 <th scope="col"><abbr title="<:date_jour_3:>"><:date_jour_3|spip_substr{0,1}|strtoupper:></abbr></th>
    63                                 <th scope="col"><abbr title="<:date_jour_4:>"><:date_jour_4|spip_substr{0,1}|strtoupper:></abbr></th>
    64                                 <th scope="col"><abbr title="<:date_jour_5:>"><:date_jour_5|spip_substr{0,1}|strtoupper:></abbr></th>
    65                                 <th scope="col"><abbr title="<:date_jour_6:>"><:date_jour_6|spip_substr{0,1}|strtoupper:></abbr></th>
    66                                 <th scope="col"><abbr title="<:date_jour_7:>"><:date_jour_7|spip_substr{0,1}|strtoupper:></abbr></th>
    67                                 <th scope="col"><abbr title="<:date_jour_1:>"><:date_jour_1|spip_substr{0,1}|strtoupper:></abbr></th>
    68                         </tr>
    69                 </thead>
    70                 <tbody><BOUCLE_calendrier_general(EVENEMENTS) {agenda date_debut, mois, (#ENV{date}|annee), (#ENV{date}|mois)} {statut=publie}>[(#DATE_DEBUT|Agenda_memo_full{
    71                         #DATE_FIN,
    72                         [(#DATE_DEBUT|nom_jour|ucfirst) ][(#DATE_DEBUT|affdate)],
    73                         #DESCRIPTIF,
    74                         #LIEU,
    75                         [(#URL_PAGE{jour}|parametre_url{#ENV{var_date},[(#ENV{date}|affdate{'Y-m-d'})]})]
    76                 })]</BOUCLE_calendrier_general>[
    77                 (#ENV{date}|agenda_mini)
    78                 ]</tbody>
    79         </table>
    80 </div>
    81 <small class="metadata" style="display: block; text-align: center;">Abonnez-vous au<br />calendrier g&eacute;n&eacute;ral&nbsp;: <a rel="alternate" href="[(#URL_PAGE{ical})]" title="iCal [(#NOM_SITE_SPIP|textebrut)]">iCal</a> | <a rel="alternate" type="application/rss+xml" href="[(#URL_PAGE{backend-calendrier})]" title="RSS Calendrier [(#NOM_SITE_SPIP|textebrut)]">RSS&nbsp;2.0</a></small>
    82 
    83 <//B_rubrique>
Note: See TracChangeset for help on using the changeset viewer.