Changeset 5992 in spip-zone


Ignore:
Timestamp:
Oct 7, 2006, 11:27:38 AM (13 years ago)
Author:
franck.ducas@…
Message:

Ajout d'une rubrique d'aide encore vide, surtout la pour expliquer la personnalisation des habillages. On commence a configurer le choix de style (non fonctionnel encore).

Location:
_plugins_/_dev_/habillages
Files:
3 added
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/_dev_/habillages/exec/habillages_styles.php

    r5917 r5992  
    1010include_spip('inc/layer');
    1111include_spip('inc/actions');
     12include_spip('inc/habillages_plugins');
    1213
    1314// http://doc.spip.org/@exec_admin_plugin
     
    2425                fin_page();
    2526                exit;
     27        }
     28       
     29        if (_request('changer_plugin')=='oui'){
     30                $lire_meta_squelettes = array(isset($GLOBALS['meta']['habillages_styles'])?$GLOBALS['meta']['habillages_styles']:'');
     31                ecrire_plugin_actifs($lire_meta_squelettes,'',$operation='enleve');
     32                ecrire_meta('habillages_styles', _request('statusplug'));
     33                ecrire_metas;
     34                $lire_meta_squelettes_modifs = array(isset($GLOBALS['meta']['habillages_styles'])?$GLOBALS['meta']['habillages_styles']:'');
     35                ecrire_plugin_actifs($lire_meta_squelettes_modifs,'',$operation='ajoute');
     36               
    2637        }
    2738
     
    105116        global $couleur_foncee;
    106117       
    107         $lire_meta_squelettes = isset($GLOBALS['meta']['habillages_squelettes'])?$GLOBALS['meta']['habillages_squelettes']:'';
     118        echo "<table border='0' cellspacing='0' cellpadding='5' width='100%'>";
     119        echo "<tr><td bgcolor='$couleur_foncee' background='' colspan='4'><b>";
     120        echo "<font face='Verdana,Arial,Sans,sans-serif' size='3' color='#ffffff'>";
     121        echo _T('habillages:squelettes_titre')."</font></b></td></tr>";
     122        echo "<tr><td class='serif' colspan=4>";
    108123       
    109         if (!isset($lire_meta_squelettes)){
    110                 echo "Vous ne pouvez pas choisir de style si vous n'avez pas choisi de squelettes. Veuillez aller dans la rubrique squelettes et choisir un jeu de squelettes";
    111         }
     124                # Chercher les fichiers theme.xml.
     125                $fichier_theme = preg_files(_DIR_PLUGINS,"/theme[.]xml$");
     126               
     127                # Pour chaque fichier theme.xml trouve, on releve le <type> et on ne garde que
     128                # les styles pour les lister.
     129                foreach ($fichier_theme as $fichier){
     130                        lire_fichier($fichier, $texte);
     131                        $arbre = parse_plugin_xml($texte);
     132                        $arbre = $arbre['theme'][0];
     133                        $type_theme = trim(applatit_arbre($arbre['type']));
     134                        $squelettes_theme = trim(applatit_arbre($arbre['squelettes']));
     135                        $nom_dossier_theme = dirname ($fichier);
     136                        $fichier_plugin_xml = $nom_dossier_theme."/plugin.xml";
     137                        echo $squelettes_theme;
     138                       
     139                        echo generer_url_post_ecrire("habillages_styles");
     140                       
     141                                if (!is_file($fichier_plugin_xml)) {
     142                                        # Mettre dans la construction du dossier habillages-data (lorsque les themes se
     143                                        # telechargeront adopter le meme principe sur les dossiers telecharges) un refus
     144                                        # de telechargement/copie des dossiers qui n'ont pas de theme.xml *ni* de plugin.xml.
     145                                        # Ca evitera de mettre des gros pates dans les logs et on laissera l'ecriture dans
     146                                        # ceux-ci aux etourdis qui personnaliseront leurs themes sans mettre de plugin.xml
     147                                        # dans le dossier de theme.
     148                                        spip_log("Le dossier ".$nom_dossier_theme." ne contient pas de fichier plugin.xml. Le plugin habillages ne peut pas gerer les elements de ce dossier.");
     149                                }
     150                               
     151                                if ($type_theme=="styles" && is_file($fichier_plugin_xml)) {
     152                                        echo "<ul>";
     153                                        habillages_affichage_styles($fichier_plugin_xml);
     154                                        echo "</ul>";
     155                                }
     156                               
     157                }
     158       
     159        echo "</table></div>\n";
     160
     161        echo "\n<input type='hidden' name='id_auteur' value='$connect_id_auteur' />";
     162        echo "\n<input type='hidden' name='hash' value='" . calculer_action_auteur("valide_plugin") . "'>";
     163        echo "\n<input type='hidden' name='changer_plugin' value='oui'>";
     164
     165        echo "\n<p>";
     166
     167        echo "<div style='text-align:$spip_lang_right'>";
     168        echo "<input type='submit' name='Valider' value='"._T('bouton_valider')."' class='fondo'>";
     169        echo "</div>";
     170        echo "</form></tr></table>\n";
     171       
     172        echo "<br />";
     173       
     174//      $lire_meta_squelettes = isset($GLOBALS['meta']['habillages_squelettes'])?$GLOBALS['meta']['habillages_squelettes']:'';
     175//     
     176//      if (!isset($lire_meta_squelettes)){
     177//              echo "Vous ne pouvez pas choisir de style si vous n'avez pas choisi de squelettes. Veuillez aller dans la rubrique squelettes et choisir un jeu de squelettes";
     178//      }
    112179        echo "<br />";
    113180
  • _plugins_/_dev_/habillages/habillages_pipelines.php

    r5936 r5992  
    3434        $flux['data']['icones']= new Bouton(
    3535        _DIR_PLUGIN_HABILLAGES.'/img_pack/habillages_icones_prive-22.png', 'Icones', generer_url_ecrire("habillages_icones"));
    36  
     36        $flux['data']['aide']= new Bouton(
     37        _DIR_PLUGIN_HABILLAGES.'/img_pack/habillages_aide-22.png', 'Aide', generer_url_ecrire("habillages_aide"));
    3738}
    3839return $flux;
  • _plugins_/_dev_/habillages/inc/habillages_plugins.php

    r5966 r5992  
    7070        fin_boite_info();
    7171}
     72
     73function habillages_affichage_styles($fichier_plugin_xml) {
     74        global $couleur_claire;
     75        global $couleur_foncee;
     76       
     77        lire_fichier($fichier_plugin_xml, $texte_plugin_xml);
     78        $arbre = parse_plugin_xml($texte_plugin_xml);
     79        $arbre = $arbre['plugin'][0];
     80       
     81        # Contenu du fichier plugin.xml dans le dossier choisi.
     82        $nom_plugin = applatit_arbre($arbre['nom']);
     83        $auteur_plugin = applatit_arbre($arbre['auteur']);
     84        $etat_plugin = applatit_arbre($arbre['etat']);
     85        $version_plugin = applatit_arbre($arbre['version']);
     86        $description_plugin = applatit_arbre($arbre['description']);
     87        $fonctions_plugin = trim(applatit_arbre($arbre['fonctions']));
     88        $options_plugin = trim(applatit_arbre($arbre['options']));
     89        $prefix_plugin = trim(applatit_arbre($arbre['prefix']));
     90        $pipeline_plugin = trim(applatit_arbre($arbre['pipeline']));
     91        $chemin_plugin_complet = dirname($fichier_plugin_xml);
     92        $chemin_plugin_court = substr($chemin_plugin_complet, strlen(_DIR_PLUGINS));
     93       
     94        if (isset($etat_plugin))
     95                $etat = trim($etat_plugin);
     96                switch ($etat) {
     97                        case 'experimental':
     98                                $couleur_txt = "CA2F2F";
     99                                $titre_etat = _T('habillages:plugin_etat_experimental');
     100                                break;
     101                        case 'test':
     102                                $couleur_txt = "E85600";
     103                                $titre_etat = _T('habillages:plugin_etat_test');
     104                                break;
     105                        case 'stable':
     106                                $couleur_txt = "149E06";
     107                                $titre_etat = _T('habillages:plugin_etat_stable');
     108                                break;
     109                        default:
     110                                $couleur_txt = "900B06";
     111                                $titre_etat = _T('habillages:plugin_etat_developpement');
     112                                break;
     113                }
     114       
     115                if (_request('exec')=='habillages_styles'){
     116                        $lire_meta_habillages = isset($GLOBALS['meta']['habillages_styles'])?$GLOBALS['meta']['habillages_styles']:'';
     117                }
     118       
     119        if ($lire_meta_habillages == $chemin_plugin_court) {
     120                $checked = " checked='checked'";
     121        }
     122        else {
     123                $checked = "";
     124        }
     125               
     126        debut_boite_info();
     127        echo "<div style='background-color:$couleur_claire'>";
     128        echo "<input type='radio' name='statusplug' value='$chemin_plugin_court'$checked>";
     129        echo "<strong>".$nom_plugin."</strong>(version ".$version_plugin.")<label for='label_$id_input' style='display:none'>"._T('activer_plugin')."</label><br /><br /></div>";
     130        # Laisser la possibilite de definir le nom et le chemin de la capure ecran
     131        # dans theme.xml.
     132        echo '<div style="float:right";><img src="'.$chemin_plugin_complet.'/captureBW.png" alt="description" class="preview" /></div>';
     133        # Ajouter : si theme.xml ne contient pas de theme.xml, on prend la description de plugin.xml.
     134        # Il est necessaire que theme.xml puisse definir les caracteristiques d'un squelette, d'un style,
     135        # d'un jeu d'images.
     136        echo "<small>".propre($description_plugin)."</small><br /><br /><hr>";
     137        echo "<div class='auteur'>".propre($auteur_plugin)."</div><hr>";
     138        echo "<img src='"._DIR_PLUGIN_HABILLAGES."/../img_pack/".$etat.".png' />";
     139        echo "&nbsp;<small><strong><font COLOR='#".$couleur_txt."'>".$titre_etat."</font></strong></small><br />";
     140        fin_boite_info();
     141}
     142
    72143?>
Note: See TracChangeset for help on using the changeset viewer.