Changeset 14639 in spip-zone


Ignore:
Timestamp:
Aug 16, 2007, 2:06:12 PM (13 years ago)
Author:
eric@…
Message:

Encore une maj de la balise #PLUGIN. Cohérence avec SPIP du futur...

Location:
_squelettes_/sarkaspip
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • _squelettes_/sarkaspip/article.html

    r14620 r14639  
    7676                        <div class="article">
    7777                                <a class="imprimer" href="#URL_PAGE{imprimer,id_article=#ID_ARTICLE}" title="<:sarkaspip:imprimer_article:>" alt="<:sarkaspip:imprimer_article:>" target="_blank"></a>
    78                                 [(#PLUGIN{ARTICLE_PDF,EST_ACTIF}|=={oui}|?{
     78                                [(#PLUGIN{ARTICLE_PDF,EST_ACTIF}|=={1}|?{
    7979                                        [(#MODELE{bouton_pdf}{id_article})]
    8080                                })]
  • _squelettes_/sarkaspip/noisettes/bloc-droite-all-news.html

    r14265 r14639  
    55
    66<BOUCLE_acces_splickrbox(RUBRIQUES) {id_rubrique=#RUBRIQUE_GALERIE}>
    7         [(#PLUGIN{SPLICKR,EST_ACTIF}|=={oui}|?{
     7        [(#PLUGIN{SPLICKR,EST_ACTIF}|=={1}|?{
    88                [(#RUBRIQUE_GALERIE|=={0}|?{'', ' '})<INCLURE{fond=noisettes/inc_splickrbox}{id_rubrique=#RUBRIQUE_GALERIE}>]
    99        })]
  • _squelettes_/sarkaspip/noisettes/inc_nav2-visiteur.html

    r14595 r14639  
    99
    1010[(#CONFIG{accepter_inscriptions}|=={oui}|?{<div class="logo-inscription">&nbsp;</div><a class="bouton" href="[(#URL_PAGE{inscription})]"><:sarkaspip:inscription:></a>})]
    11 [(#PLUGIN{SPIPLISTES, EST_ACTIF}|=={oui}?{<div class="logo-inscription">&nbsp;</div><a class="bouton" href="[(#URL_PAGE{abonnement-newsletter})]"><:sarkaspip:newsletter:></a>})]
     11[(#PLUGIN{SPIPLISTES, EST_ACTIF}|=={1}?{<div class="logo-inscription">&nbsp;</div><a class="bouton" href="[(#URL_PAGE{abonnement-newsletter})]"><:sarkaspip:newsletter:></a>})]
    1212
    1313[(#SESSION{id_auteur}|?{' '})
  • _squelettes_/sarkaspip/public/plugin_balises.php

    r14265 r14639  
    44// =======================================================================================================================================
    55// Auteur: Smellup
    6 // Fonction : retourne une info d'un plugin donne
     6// Fonction : retourne une info d'un plugin actif donne
    77// =======================================================================================================================================
    88//
    99include_spip('inc/plugin');
    10 function balise_PLUGIN($p) {
    1110
     11function balise_PLUGIN_dist($p) {
    1212        $plugin = interprete_argument_balise(1,$p);
    13         if (!isset($plugin)) {
    14                 $p->code = "''";
    15         }
    16         else {
    17                 $type_info = interprete_argument_balise(2,$p);
    18                 if (!isset($type_info)) $type_info = 'est_actif';
    19                 $p->code = 'calcul_info_plugin('.$plugin.', '.$type_info.')';
    20         }
     13        $plugin = isset($plugin) ? str_replace('\'', '"', $plugin) : '""';
     14        $type_info = interprete_argument_balise(2,$p);
     15        $type_info = isset($type_info) ? str_replace('\'', '"', $type_info) : '"est_actif"';
     16
     17        $p->code = 'calcul_info_plugin('.$plugin.', '.$type_info.')';
    2118        $p->interdire_scripts = false;
    2219        return $p;
     
    2421
    2522function calcul_info_plugin($plugin, $type_info) {
    26         $dir_tous_plugins = array();
    27         $inf_tous_plugins = array();
    28         $plugins_valides = array();
    29         $plugins_actifs = array();
    30         $plugin_infos = array();
    31        
    32         // Validite du prefixe
    33         $dir_tous_plugins = liste_plugin_files();
    34         $plugins_valides = liste_plugin_valides($dir_tous_plugins, $inf_tous_plugins);
    35         if (!array_key_exists(strtoupper($plugin), $plugins_valides))
    36                 return $valeur_info;
     23        $plugin = strtoupper($plugin);
     24        $type_info = strtolower($type_info);
     25        $plugins_actifs = liste_plugin_actifs();
    3726
    38         // Determination du plugin dans la liste des plugins valides. Si plusieurs plugins de meme prefixe on choisit dans l'ordre
    39         // - 1. Le plugin actif (il y en a forcement qu'un seul actif)
    40         // - 2. Le plugin inactif recense dans la liste des plugins valides
    41         $plugins_actifs = liste_plugin_actifs();
    42         if (isset($plugins_actifs[strtoupper($plugin)])) {
    43                 $plugin_infos = $inf_tous_plugins[$plugins_actifs[strtoupper($plugin)]['dir']];
    44                 $plugin_infos['est_actif'] = 'oui';
    45         }
    46         else {
    47                 $plugin_infos = $inf_tous_plugins[$plugins_valides[strtoupper($plugin)]['dir']];
    48                 $plugin_infos['est_actif'] = 'non';
    49         }
    50 
    51         // Renvoi de l'information demandee
    52         switch (strtoupper($type_info)) {
    53                 case 'NOM':
    54                     $valeur_info = propre($plugin_infos['nom']);
    55                     break;
    56                 case 'VERSION':
    57                     $valeur_info = $plugin_infos['version'];
    58                     break;
    59                 case 'REVISION':
    60                     $valeur_info = $plugin_infos['revision'];
    61                     break;
    62                 case 'AUTEUR':
    63                     $valeur_info = propre($plugin_infos['auteur']);
    64                     break;
    65                 case 'ICONE':
    66                     $valeur_info = $plugin_infos['icon'];
    67                     break;
    68                 case 'DESCRIPTION':
    69                     $valeur_info = propre($plugin_infos['description']);
    70                     break;
    71                 case 'LIEN':
    72                         $valeur_info = formate_lien_plugin($plugin_infos['lien']);
    73                     break;
    74                 case 'ETAT':
    75                     $valeur_info = formate_etat_plugin($plugin_infos['etat']);
    76                     break;
    77                 case 'EST_ACTIF':
    78                     $valeur_info = $plugin_infos['est_actif'];
    79                     break;
    80                 case 'TOUT':
    81                     $valeur_info = serialize($plugin_infos);
    82                     break;
    83                 default:
    84                         $valeur_info = '';
    85         }
    86         return $valeur_info;
     27        if(!$plugin)
     28                return serialize(array_keys($plugins_actifs));
     29        if(!empty($plugins_actifs[$plugin]))
     30                if($type_info == 'est_actif')
     31                        return $plugins_actifs[$plugin] ? 1 : 0;
     32                else {
     33                        $plugins_valides = liste_plugin_valides(liste_plugin_files(), $inf_tous_plugins);
     34                        return $inf_tous_plugins[$plugins_actifs[$plugin]['dir']][$type_info];
     35                }
    8736}
    8837
     
    11968}
    12069
     70
    12171?>
Note: See TracChangeset for help on using the changeset viewer.