Changeset 51984 in spip-zone


Ignore:
Timestamp:
Sep 28, 2011, 5:26:05 PM (8 years ago)
Author:
joseph@…
Message:

Ajout de la règle sur les compositions des rubriques, Possibilité d'activer ou non la surcharge d'#URL_RUBRIQUE, réorganisation du formulaire de config, modif des valeurs par défaut pour reproduire V1

Location:
_plugins_/court-circuit/trunk
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/court-circuit/trunk/courtcircuit_fonctions.php

    r48139 r51984  
    1313        $url_base = generer_url_entite(intval($id_rubrique), 'rubrique', '', '', true);
    1414        include_spip('inc/courtcircuit');
    15         $url_redirect = courtcircuit_url_redirection($id_rubrique);
     15        if (isset($GLOBALS['meta']['courtcircuit']))
     16                $config = unserialize($GLOBALS['meta']['courtcircuit']);
     17        else $config = array();
     18        if (isset($config['liens_rubriques']) && $config['liens_rubriques']=='oui')
     19                $url_redirect = courtcircuit_url_redirection($id_rubrique);
     20        else
     21                $url_redirect = '';
    1622        return ($url_redirect!='') ? $url_redirect : $url_base;
    1723}
  • _plugins_/court-circuit/trunk/courtcircuit_pipelines.php

    r48139 r51984  
    55
    66/**
    7  * Pipeline styliser pour cour-circuiter les rubriques
     7 * Pipeline styliser pour court-circuiter les rubriques
    88 *
    99 * @param array $flux
  • _plugins_/court-circuit/trunk/formulaires/configurer_courtcircuit.html

    r47278 r51984  
    77        <form method="post" action="#ENV{action}"><div>
    88                #ACTION_FORMULAIRE{#ENV{action}}
     9                <h3 class="titrem"><:courtcircuit:label_exceptions:></h3>
    910                <ul>
    10                 <li class="explication"><:courtcircuit:explication_configurer:></li>
    11                 #SET{ordre,1}
    12                 <li class="editer_variantes_squelettes[ (#ENV**{erreurs}|table_valeur{variantes_squelettes}|oui)erreur]">
    13                         <label>#GET{ordre}) <:courtcircuit:label_variantes_squelettes:></label>
    14                         <p class="explication"><:courtcircuit:explication_variantes_squelettes:></p>
    15                         <div class="choix">
    16                                 <input type="radio" name="variantes_squelettes" class="radio" id="variantes_squelettes_oui" value="oui" [(#ENV{variantes_squelettes,non}|=={oui}|oui) checked="checked"] />
    17                                 <label for='variantes_squelettes_oui'><:item_oui:></label>
    18                         </div>
    19                         <div class="choix">
    20                                 <input type="radio" name="variantes_squelettes" class="radio" id="variantes_squelettes_non" value="non" [(#ENV{variantes_squelettes,non}|=={non}|oui) checked="checked"] />
    21                                 <label for='variantes_squelettes_non'><:item_non:></label>
    22                         </div>
    23                         #SET{ordre,#GET{ordre}|plus{1}}
    24                 </li>
    25                 <li class="editer_un_article[ (#ENV**{erreurs}|table_valeur{un_article}|oui)erreur]">
    26                         <label>#GET{ordre}) <:courtcircuit:label_un_article:></label>
    27                         <p class="explication"><:courtcircuit:explication_un_article:></p>
    28                         <div class="choix">
    29                                 <input type="radio" name="un_article" class="radio" id="un_article_oui" value="oui" [(#ENV{un_article,oui}|=={oui}|oui) checked="checked"] />
    30                                 <label for='un_article_oui'><:item_oui:></label>
    31                         </div>
    32                         <div class="choix">
    33                                 <input type="radio" name="un_article" class="radio" id="un_article_non" value="non" [(#ENV{un_article,oui}|=={non}|oui) checked="checked"] />
    34                                 <label for='un_article_non'><:item_non:></label>
    35                         </div>
    36                         #SET{ordre,#GET{ordre}|plus{1}}
    37                 </li>
    38                 [(#PLUGIN{article_accueil}|oui)
    39                 <li class="editer_article_accueil[ (#ENV**{erreurs}|table_valeur{article_accueil}|oui)erreur]">
    40                         <label>#GET{ordre}) <:courtcircuit:label_article_accueil:></label>
    41                         <p class="explication"><:courtcircuit:explication_article_accueil:></p>
    42                         <div class="choix">
    43                                 <input type="radio" name="article_accueil" class="radio" id="article_accueil_oui" value="oui" [(#ENV{article_accueil,oui}|=={oui}|oui) checked="checked"] />
    44                                 <label for='article_accueil_oui'><:item_oui:></label>
    45                         </div>
    46                         <div class="choix">
    47                                 <input type="radio" name="article_accueil" class="radio" id="article_accueil_non" value="non" [(#ENV{article_accueil,oui}|=={non}|oui) checked="checked"] />
    48                                 <label for='article_accueil_non'><:item_non:></label>
    49                         </div>
    50                         #SET{ordre,#GET{ordre}|plus{1}}
    51                 </li>]
    52                 <li class="editer_rang_un[ (#ENV**{erreurs}|table_valeur{rang_un}|oui)erreur]">
    53                         <label>#GET{ordre}) <:courtcircuit:label_rang_un:></label>
    54                         <p class="explication"><:courtcircuit:explication_rang_un:></p>
    55                         <div class="choix">
    56                                 <input type="radio" name="rang_un" class="radio" id="rang_un_oui" value="oui" [(#ENV{rang_un,oui}|=={oui}|oui) checked="checked"] />
    57                                 <label for='rang_un_oui'><:item_oui:></label>
    58                         </div>
    59                         <div class="choix">
    60                                 <input type="radio" name="rang_un" class="radio" id="rang_un_non" value="non" [(#ENV{rang_un,oui}|=={non}|oui) checked="checked"] />
    61                                 <label for='rang_un_non'><:item_non:></label>
    62                         </div>
    63                         #SET{ordre,#GET{ordre}|plus{1}}
    64                 </li>
    65                 <li class="editer_plus_recent[ (#ENV**{erreurs}|table_valeur{plus_recent}|oui)erreur]">
    66                         <label>#GET{ordre}) <:courtcircuit:label_plus_recent:></label>
    67                         <p class="explication"><:courtcircuit:explication_plus_recent:></p>
    68                         <div class="choix">
    69                                 <input type="radio" name="plus_recent" class="radio" id="plus_recent_oui" value="oui" [(#ENV{plus_recent,oui}|=={oui}|oui) checked="checked"] />
    70                                 <label for='plus_recent_oui'><:item_oui:></label>
    71                         </div>
    72                         <div class="choix">
    73                                 <input type="radio" name="plus_recent" class="radio" id="plus_recent_non" value="non" [(#ENV{plus_recent,oui}|=={non}|oui) checked="checked"] />
    74                                 <label for='plus_recent_non'><:item_non:></label>
    75                         </div>
    76                         #SET{ordre,#GET{ordre}|plus{1}}
    77                 </li>
    78                 <li class="editer_plus_recent_branche[ (#ENV**{erreurs}|table_valeur{plus_recent_branche}|oui)erreur]">
    79                         <label>#GET{ordre}) <:courtcircuit:label_plus_recent_branche:></label>
    80                         <p class="explication"><:courtcircuit:explication_plus_recent_branche:></p>
    81                         <div class="choix">
    82                                 <input type="radio" name="plus_recent_branche" class="radio" id="plus_recent_branche_oui" value="oui" [(#ENV{plus_recent_branche,non}|=={oui}|oui) checked="checked"] />
    83                                 <label for='plus_recent_branche_oui'><:item_oui:></label>
    84                         </div>
    85                         <div class="choix">
    86                                 <input type="radio" name="plus_recent_branche" class="radio" id="plus_recent_branche_non" value="non" [(#ENV{plus_recent_branche,non}|=={non}|oui) checked="checked"] />
    87                                 <label for='plus_recent_branche_non'><:item_non:></label>
    88                         </div>
    89                         #SET{ordre,#GET{ordre}|plus{1}}
    90                 </li>
    91                 <li class="editer_sousrubrique[ (#ENV**{erreurs}|table_valeur{sousrubrique}|oui)erreur]">
    92                         <label>#GET{ordre}) <:courtcircuit:label_sousrubrique:></label>
    93                         <p class="explication"><:courtcircuit:explication_sousrubrique:></p>
    94                         <div class="choix">
    95                                 <input type="radio" name="sousrubrique" class="radio" id="sousrubrique_oui" value="oui" [(#ENV{sousrubrique,oui}|=={oui}|oui) checked="checked"] />
    96                                 <label for='sousrubrique_oui'><:item_oui:></label>
    97                         </div>
    98                         <div class="choix">
    99                                 <input type="radio" name="sousrubrique" class="radio" id="sousrubrique_non" value="non" [(#ENV{sousrubrique,oui}|=={non}|oui) checked="checked"] />
    100                                 <label for='sousrubrique_non'><:item_non:></label>
    101                         </div>
    102                 </li>
     11                        <li class="editer_variantes_squelettes[ (#ENV**{erreurs}|table_valeur{variantes_squelettes}|oui)erreur]">
     12                                <label><:courtcircuit:label_variantes_squelettes:></label>
     13                                <p class="explication"><:courtcircuit:explication_variantes_squelettes:></p>
     14                                <div class="choix">
     15                                        <input type="radio" name="variantes_squelettes" class="radio" id="variantes_squelettes_oui" value="oui" [(#ENV{variantes_squelettes,oui}|=={oui}|oui) checked="checked"] />
     16                                        <label for='variantes_squelettes_oui'><:courtcircuit:item_jamais_rediriger:></label>
     17                                </div>
     18                                <div class="choix">
     19                                        <input type="radio" name="variantes_squelettes" class="radio" id="variantes_squelettes_non" value="non" [(#ENV{variantes_squelettes,oui}|=={non}|oui) checked="checked"] />
     20                                        <label for='variantes_squelettes_non'><:courtcircuit:item_appliquer_redirections:></label>
     21                                </div>
     22                        </li>
     23                        [(#PLUGIN{compositions}|oui)
     24                        <li class="editer_composition_rubrique[ (#ENV**{erreurs}|table_valeur{composition_rubrique}|oui)erreur]">
     25                                <label><:courtcircuit:label_composition_rubrique:></label>
     26                                <div class="choix">
     27                                        <input type="radio" name="composition_rubrique" class="radio" id="composition_rubrique_oui" value="oui" [(#ENV{composition_rubrique,oui}|=={oui}|oui) checked="checked"] />
     28                                        <label for='composition_rubrique_oui'><:courtcircuit:item_jamais_rediriger:></label>
     29                                </div>
     30                                <div class="choix">
     31                                        <input type="radio" name="composition_rubrique" class="radio" id="composition_rubrique_non" value="non" [(#ENV{composition_rubrique,oui}|=={non}|oui) checked="checked"] />
     32                                        <label for='composition_rubrique_non'><:courtcircuit:item_appliquer_redirections:></label>
     33                                </div>
     34                        </li>]
     35                </ul>
     36               
     37                <h3 class="titrem"><:courtcircuit:label_regles:></h3>
     38                <ul>
     39                        <li class="explication"><:courtcircuit:explication_regles:></li>
     40                        #SET{ordre,1}
     41                        <li class="editer_un_article[ (#ENV**{erreurs}|table_valeur{un_article}|oui)erreur]">
     42                                <label>#GET{ordre}) <:courtcircuit:label_un_article:></label>
     43                                <div class="choix">
     44                                        <input type="radio" name="un_article" class="radio" id="un_article_oui" value="oui" [(#ENV{un_article,oui}|=={oui}|oui) checked="checked"] />
     45                                        <label for='un_article_oui'><:courtcircuit:item_rediriger_sur_article:></label>
     46                                </div>
     47                                <div class="choix">
     48                                        <input type="radio" name="un_article" class="radio" id="un_article_non" value="non" [(#ENV{un_article,oui}|=={non}|oui) checked="checked"] />
     49                                        <label for='un_article_non'><:courtcircuit:item_ne_pas_rediriger:></label>
     50                                </div>
     51                                #SET{ordre,#GET{ordre}|plus{1}}
     52                        </li>
     53                        [(#PLUGIN{article_accueil}|oui)
     54                        <li class="editer_article_accueil[ (#ENV**{erreurs}|table_valeur{article_accueil}|oui)erreur]">
     55                                <label>#GET{ordre}) <:courtcircuit:label_article_accueil:></label>
     56                                <div class="choix">
     57                                        <input type="radio" name="article_accueil" class="radio" id="article_accueil_oui" value="oui" [(#ENV{article_accueil,oui}|=={oui}|oui) checked="checked"] />
     58                                        <label for='article_accueil_oui'><:courtcircuit:item_rediriger_sur_article:></label>
     59                                </div>
     60                                <div class="choix">
     61                                        <input type="radio" name="article_accueil" class="radio" id="article_accueil_non" value="non" [(#ENV{article_accueil,oui}|=={non}|oui) checked="checked"] />
     62                                        <label for='article_accueil_non'><:courtcircuit:item_ne_pas_rediriger:></label>
     63                                </div>
     64                                #SET{ordre,#GET{ordre}|plus{1}}
     65                        </li>]
     66                        <li class="editer_rang_un[ (#ENV**{erreurs}|table_valeur{rang_un}|oui)erreur]">
     67                                <label>#GET{ordre}) <:courtcircuit:label_rang_un:></label>
     68                                <div class="choix">
     69                                        <input type="radio" name="rang_un" class="radio" id="rang_un_oui" value="oui" [(#ENV{rang_un,oui}|=={oui}|oui) checked="checked"] />
     70                                        <label for='rang_un_oui'><:courtcircuit:item_rediriger_sur_article:></label>
     71                                </div>
     72                                <div class="choix">
     73                                        <input type="radio" name="rang_un" class="radio" id="rang_un_non" value="non" [(#ENV{rang_un,oui}|=={non}|oui) checked="checked"] />
     74                                        <label for='rang_un_non'><:courtcircuit:item_ne_pas_rediriger:></label>
     75                                </div>
     76                                #SET{ordre,#GET{ordre}|plus{1}}
     77                        </li>
     78                        <li class="editer_plus_recent[ (#ENV**{erreurs}|table_valeur{plus_recent}|oui)erreur]">
     79                                <label>#GET{ordre}) <:courtcircuit:label_plus_recent:></label>
     80                                <div class="choix">
     81                                        <input type="radio" name="plus_recent" class="radio" id="plus_recent_oui" value="oui" [(#ENV{plus_recent,oui}|=={oui}|oui) checked="checked"] />
     82                                        <label for='plus_recent_oui'><:courtcircuit:item_rediriger_sur_article:></label>
     83                                </div>
     84                                <div class="choix">
     85                                        <input type="radio" name="plus_recent" class="radio" id="plus_recent_non" value="non" [(#ENV{plus_recent,oui}|=={non}|oui) checked="checked"] />
     86                                        <label for='plus_recent_non'><:courtcircuit:item_ne_pas_rediriger:></label>
     87                                </div>
     88                                #SET{ordre,#GET{ordre}|plus{1}}
     89                        </li>
     90                        <li class="editer_plus_recent_branche[ (#ENV**{erreurs}|table_valeur{plus_recent_branche}|oui)erreur]">
     91                                <label>#GET{ordre}) <:courtcircuit:label_plus_recent_branche:></label>
     92                                <div class="choix">
     93                                        <input type="radio" name="plus_recent_branche" class="radio" id="plus_recent_branche_oui" value="oui" [(#ENV{plus_recent_branche,non}|=={oui}|oui) checked="checked"] />
     94                                        <label for='plus_recent_branche_oui'><:courtcircuit:item_rediriger_sur_article:></label>
     95                                </div>
     96                                <div class="choix">
     97                                        <input type="radio" name="plus_recent_branche" class="radio" id="plus_recent_branche_non" value="non" [(#ENV{plus_recent_branche,non}|=={non}|oui) checked="checked"] />
     98                                        <label for='plus_recent_branche_non'><:courtcircuit:item_ne_pas_rediriger:></label>
     99                                </div>
     100                                #SET{ordre,#GET{ordre}|plus{1}}
     101                        </li>
     102                        <li class="editer_sousrubrique[ (#ENV**{erreurs}|table_valeur{sousrubrique}|oui)erreur]">
     103                                <label>#GET{ordre}) <:courtcircuit:label_sousrubrique:></label>
     104                                <p class="explication"><:courtcircuit:explication_sousrubrique:></p>
     105                                <div class="choix">
     106                                        <input type="radio" name="sousrubrique" class="radio" id="sousrubrique_oui" value="oui" [(#ENV{sousrubrique,oui}|=={oui}|oui) checked="checked"] />
     107                                        <label for='sousrubrique_oui'><:item_oui:></label>
     108                                </div>
     109                                <div class="choix">
     110                                        <input type="radio" name="sousrubrique" class="radio" id="sousrubrique_non" value="non" [(#ENV{sousrubrique,oui}|=={non}|oui) checked="checked"] />
     111                                        <label for='sousrubrique_non'><:item_non:></label>
     112                                </div>
     113                        </li>
     114                </ul>
     115               
     116                <h3 class="titrem"><:courtcircuit:label_liens:></h3>
     117                <ul>
     118                        <li class="editer_variantes_squelettes[ (#ENV**{erreurs}|table_valeur{variantes_squelettes}|oui)erreur]">
     119                                <label><:courtcircuit:label_liens_rubriques:></label>
     120                                <p class="explication"><:courtcircuit:explication_liens_rubriques:></p>
     121                                <div class="choix">
     122                                        <input type="radio" name="liens_rubriques" class="radio" id="liens_rubriques_oui" value="oui" [(#ENV{liens_rubriques,oui}|=={oui}|non) checked="checked"] />
     123                                        <label for='liens_rubriques_oui'><:item_oui:></label>
     124                                </div>
     125                                <div class="choix">
     126                                        <input type="radio" name="liens_rubriques" class="radio" id="liens_rubriques_non" value="non" [(#ENV{liens_rubriques,oui}|=={non}|non) checked="checked"] />
     127                                        <label for='liens_rubriques_non'><:item_non:></label>
     128                                </div>
     129                        </li>
    103130                </ul>
    104131                <p class="boutons">
  • _plugins_/court-circuit/trunk/inc/courtcircuit.php

    r47279 r51984  
    88                $config = unserialize($GLOBALS['meta']['courtcircuit']);
    99        else $config = array();
    10         // Tester d'abord les variantes de squelettes
    11         if (isset($config['variantes_squelettes']) && $config['variantes_squelettes']=='oui') {
     10        // Tester d'abord les variantes de squelettes (si on ne les court-circuite pas)
     11        if (!isset($config['variantes_squelettes']) || $config['variantes_squelettes']=='oui') {
    1212                $squelette_rubrique = substr(find_in_path('rubrique.html'),0,-5);
    1313                $flux = array(
     
    2323                        return '';
    2424        }
     25        // Tester ensuite si la rubrique a une composition (si on ne court-circuite pas les compositions)
     26        if ((!isset($config['composition_rubrique']) || $config['composition_rubrique']=='oui') && defined('_DIR_PLUGIN_COMPOSITIONS')) {
     27                if (strlen(compositions_determiner('rubrique', $id_rubrique)))
     28                        return '';
     29        }
     30        // On teste si on doit rediriger
    2531        $redirect_article = recuperer_fond(
    2632                'courtcircuit_selection_article',
  • _plugins_/court-circuit/trunk/lang/courtcircuit_fr.php

    r47278 r51984  
    88        'configurer_courtcircuit' => 'Configurer les règles de court-circuitage des rubriques',
    99        'courtcircuit' => 'Court-circuit',
    10         'explication_article_accueil' => 'Si un article d\'accueil a été défini pour la rubrique, rediriger vers cet article ?',
    11         'explication_configurer' => 'Les différentes règles ci-dessous sont testées dans cet ordre. Si aucune règle ne définit une redirection, alors la rubrique sera affichée normalement.',
    12         'explication_plus_recent' => 'Rediriger la rubrique vers l\'article le plus récent de la rubrique ? (Sans effet si la rubrique ne contient pas d\'article.)',
    13         'explication_plus_recent_branche' => 'Rediriger la rubrique vers l\'article le plus récent de la branche (soit parmi les articles de la rubrique et de ses sous-rubriques) ?',
     10        'explication_regles' => 'Les différentes règles ci-dessous sont testées dans cet ordre. Si aucune règle ne définit une redirection, alors la rubrique sera affichée normalement.',
    1411        'explication_sousrubrique' => 'Parcourir la première sous-rubrique (tri par numéro du titre et date) ? Les règles de redirection seront testées à nouveau dans cette sous-rubrique.',
    15         'explication_rang_un'=> 'Si les articles de la rubrique sont numérotés, rediriger vers l\'article ayant le plus petit rang ?',
    16         'explication_un_article' => 'Si la rubrique ne contient qu\'un seul article publié, rediriger vers cet article ?',
    17         'explication_variantes_squelettes' => 'Si vous utilisez des <a href="http://www.spip.net/fr_article3445.html">variantes de squelette</a> (exemples : <i>rubrique&#8209;2.html</i>, <i>rubrique=3.html</i>), ne pas rediriger les rubriques pour lesquelles une variante de squelette s\'applique ?',
    18         'label_article_accueil' => 'Article d\'accueil',
    19         'label_plus_recent' => 'Article le plus récent',
     12        'explication_variantes_squelettes' => 'Exemple : squelettes de la forme rubrique-2.html ou rubrique=3.html.',
     13        'label_article_accueil' => 'Article d\'accueil de la rubrique',
     14        'label_plus_recent' => 'Article le plus récent de la rubrique',
    2015        'label_plus_recent_branche' => 'Article de la branche le plus récent',
    21         'label_rang_un' => 'Article numéroté',
     16        'label_rang_un' => 'Premier article (articles numérotés)',
    2217        'label_un_article' => 'Seul article de la rubrique',
    2318        'label_sousrubrique' => 'Sous-rubriques',
    24         'label_variantes_squelettes' => 'Variantes de squelettes',
     19        'label_variantes_squelettes' => 'Rubrique avec variante de squelettes',
     20        'label_exceptions' => 'Exceptions',
     21        'item_jamais_rediriger' => 'Ne jamais rediriger',
     22        'item_appliquer_redirections' => 'Appliquer les règles de redirection',
     23        'label_composition_rubrique' => 'Rubrique avec composition',
     24        'label_regles' => 'Règles de redirection des rubriques',
     25        'item_rediriger_sur_article' => 'Rediriger sur cet article',
     26        'item_ne_pas_rediriger' => 'Ne pas rediriger',
     27        'aide_en_ligne' => 'Aide en ligne',
     28        'label_liens' => 'URL des rubriques',
     29        'label_liens_rubriques' => 'Agir sur la balise #URL_RUBRIQUE ?',
     30        'explication_liens_rubriques' => 'Modifier l\'URL des rubriques redirigées directement dans les squelettes ?',
    2531);
    2632
  • _plugins_/court-circuit/trunk/plugin.xml

    r49708 r51984  
    44        <description>Acc&eacute;s direct aux articles.</description>
    55        <lien>http://www.spip-contrib.net/spip.php?article3831</lien>
    6         <version>2.2.2</version>
     6        <version>2.3.0</version>
    77        <etat>test</etat>
    8         <auteur>[romy.tetue.net->http://romy.tetue.net], [Joseph->http://www.spip-contrib.net/Joseph] - 2011</auteur>
     8        <auteur>[romy.tetue.net->http://romy.tetue.net], [Joseph->http://www.spip-contrib.net/Joseph]</auteur>
    99        <prefix>courtcircuit</prefix>
    1010        <fonctions>courtcircuit_fonctions.php</fonctions>
  • _plugins_/court-circuit/trunk/prive/exec/configurer_courtcircuit.html

    r47019 r51984  
    88        #FORMULAIRE_CONFIGURER_COURTCIRCUIT
    99</div>
     10
     11<!--#navigation-->
     12<div class='cadre cadre-info verdana1'>
     13<div class="cadre-padding">
     14<div class="infos">
     15        [<p>(#PLUGIN{courtcircuit, icon}|chemin|image_reduire{48})</p>]
     16        [<p><strong>(#PLUGIN{courtcircuit, nom}|typo)</strong></p>]
     17        [<p>(#PLUGIN{courtcircuit, description}|typo)</p>]
     18        [<p><a href="(#PLUGIN{courtcircuit, lien})"><:courtcircuit:aide_en_ligne:>
     19        <img src="#CHEMIN{images/aide-12.png}" alt="<:courtcircuit:aide_en_ligne:>" /></a></p>]
     20        <ul class="liste-items">
     21                [<li><:version:>&nbsp;(#PLUGIN{courtcircuit, version})[&nbsp;-&nbsp;(#ENV{infos}|table_valeur{etat})]</li>]
     22        </ul>
     23</div>
     24</div>
     25</div>
     26<!--/#navigation-->
Note: See TracChangeset for help on using the changeset viewer.