Changeset 48961 in spip-zone


Ignore:
Timestamp:
Jun 20, 2011, 8:16:27 PM (10 years ago)
Author:
magegahell@…
Message:

Activation du formulaire de configuration dans le backoffice
Modification des pipelines pour tenir compte de la configuration.
Modification du javascript : Ajout d'une classe blank aux liens s'ouvrant dans une nouvelle fenêtre. Ajout d'une classe spip_doc aux liens vers des documents.

Location:
_plugins_/links
Files:
1 added
5 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/links/formulaires/configurer_links.html

    r48258 r48961  
    77.formulaire_spip li .explication { padding: 0; font-size: .9em !important; line-height: 1; color: #666; }
    88.formulaire_spip .choix input { float: left; }
    9 .todo { opacity: 0.5; }
    10 .todo:hover { opacity: 1; }
     9. { opacity: 0.5; }
     10.:hover { opacity: 1; }
     11.formulaire_spip .erreur{ color:#FF0000; }
     12
     13
    1114</style>
    1215<div class="formulaire_spip formulaire_configurer formulaire_#FORM">
     
    1518        <form method="post" action="#ENV{action}"><div>
    1619                #ACTION_FORMULAIRE{#ENV{action}}
    17                 <input type="hidden" name="_meta_casier" value="links/links" />
    1820                <fieldset>
    1921                        <legend>Apparence</legend>
    20                         <ul class="choix todo">
     22                        <ul class="choix ">
    2123                                <li class="links_style_yes[ (#ENV**{erreurs}|table_valeur{style_yes}|oui)erreur]">
    2224                                        <label for="style_yes">Style par d&eacute;faut</label>[
    2325                                        <span class='erreur'>(#ENV**{erreurs}|table_valeur{style_yes})</span>
    24                                         ]<input type="radio" class="radio" name="style" id="style_yes"[(#ENV{links,style}|=={style_yes}|oui) checked="checked"] />
     26                                        ]<input type="radio" class="radio" name="style" id="style_yes"[ (#ENV{style}|=={on}|?{'checked="checked"'})] value="on" />
    2527                                        <p class="explication">Pour voir, affichez la page de test <code>?page=demo/links</code> ou mieux, ins&eacute;rez le mod&egrave;le <code>&lt;charte|links&gt;</code> dans un de vos articles. Pour toute personnalisation, compl&eacute;tez en CSS, dans votre feuille de style.</p>
    2628                                </li>
    27                                 <li class="links_style_no[ (#ENV**{erreurs}|table_valeur{style_no}|oui)erreur] todo">
     29                                <li class="links_style_no[ (#ENV**{erreurs}|table_valeur{style_no}|oui)erreur] ">
    2830                                        <label for="style_no">Aucun style</label>[
    2931                                        <span class='erreur'>(#ENV**{erreurs}|table_valeur{style_no})</span>
    30                                         ]<input type="radio" class="radio" name="style" id="style_no"[(#ENV{links,style}|=={style_no}|oui) checked="checked"] />
     32                                        ]<input type="radio" class="radio" name="style" id="style_no"[ (#ENV{style}|!={on}|?{'checked="checked"'})] value="off"/>
    3133                                </li>
    3234                        </ul>
     
    3436                <fieldset>
    3537                        <legend>Comportement</legend>
    36                         <ul class="choix todo">
     38                        <ul class="choix ">
    3739                                <li class="links_window_new[ (#ENV**{erreurs}|table_valeur{window_new}|oui)erreur]">
    38                                         <input type="radio" class="radio" name="window" id="window_new" />
     40                                        <input type="radio" class="radio" name="window" id="window_new" [(#ENV{window}|=={on}|?{'checked="checked"'})] value="on" />
    3941                                        <label for="window_new">Forcer l'ouverture de certains liens dans une nouvelle fen&ecirc;tre (d&eacute;conseill&eacute;)</label>[
    4042                                        <span class='erreur'>(#ENV**{erreurs}|table_valeur{window_new})</span>]
     
    4244                                        <ul class="choix">
    4345                                                <li class="links_external[ (#ENV**{erreurs}|table_valeur{external}|oui)erreur]">
    44                                                         <input type="checkbox" class="checkbox" name="external" id="external" checked="checked" />
     46                                                        <input type="checkbox" class="checkbox" name="external" id="external"[ (#ENV{external}|=={on}|?{'checked="checked"'})] value="on" />
    4547                                                        <label for="external">Liens externes</label>[
    4648                                                        <span class='erreur'>(#ENV**{erreurs}|table_valeur{external})</span>]
    4749                                                </li>
    4850                                                <li class="links_download[ (#ENV**{erreurs}|table_valeur{download}|oui)erreur]">
    49                                                         <input type="checkbox" class="checkbox" name="download" id="download" />
     51                                                        <input type="checkbox" class="checkbox" name="download" id="download"[ (#ENV{download}|=={on}|?{'checked="checked"'})] value="on" />
    5052                                                        <label for="download">Documents &agrave; t&eacute;l&eacute;charger</label>[
    5153                                                        <span class='erreur'>(#ENV**{erreurs}|table_valeur{download})</span>]
    5254                                                        <ul>
    5355                                                                <li class="links_doc_list[ (#ENV**{erreurs}|table_valeur{doc_list}|oui)erreur]">
    54                                                                         <label for="download">Indiquer les extensions, s&eacute;par&eacute;es d'une virgule</label>[
     56                                                                        <label for="doc_list">Indiquer les extensions, s&eacute;par&eacute;es d'une virgule (exemple : .pdf,.doc,.xls,.ppt,.odt )</label>[
    5557                                                                        <span class='erreur'>(#ENV**{erreurs}|table_valeur{doc_list})</span>
    56                                                                         ]<input type="text" class="text" name="doc_list" id="doc_list" value=".pdf,.doc,.xls" />
     58                                                                        ]<input type="text" class="text" name="doc_list" id="doc_list" value="[(#ENV{doc_list})]" />
    5759                                                                </li>
    5860                                                        </ul>
     
    6163                                </li>
    6264                                <li class="links_window_same[ (#ENV**{erreurs}|table_valeur{window_same}|oui)erreur]">
    63                                         <input type="radio" class="radio" name="window" id="window_same"[ checked="(#ENV{window_same}|sinon{checked})"] />
     65                                        <input type="radio" class="radio" name="window" id="window_same"[ (#ENV{window}|!={on}|?{'checked="checked"'})] value="off" />
    6466                                        <label for="window_same">Laisser l'internaute libre de choisir (recommand&eacute;)</label>[
    6567                                        <span class='erreur'>(#ENV**{erreurs}|table_valeur{window_same})</span>]
  • _plugins_/links/lang/links_fr.php

    r47894 r48961  
    88'lien_ouvrant' => 'Lien ouvrant une nouvelle fen&ecirc;tre',
    99'titre_menu_liens' => 'Liens explicites',
     10'message_ok_configuration' => 'Enregistrement de vos pr&eacute;f&eacute;rences termin&eacute;e',
     11'message_ok_update_configuration' => 'Mise &agrave; jour de vos pr&eacute;f&eacute;rences termin&eacute;e',
     12'erreur_choisir_liens_ouvrant' => 'Merci de choisir au moins un &eacute;l&eacute;ments effectu&eacute; par l\'ouverture d\'une nouvelle fen&ecirc;tre',
     13'erreur_choisir_extensions' => 'Merci d\'indiquer les extensions des &eacute;lements que vous souhaitez faire ouvrir dans une nouvelle fen&ecirc;tre'
    1014
    1115);
  • _plugins_/links/links.js

    r48257 r48961  
    33        where="_blank";
    44
    5         $("a[href*='://']:not([href^="+links_site+"])")
     5        jQuery("a[href*='://']:not([href^="+links_site+"])")
    66          .attr('target',where)
    77                .attr('rel','external')
     
    99                .each(function(){
    1010                        title =  "(nouvelle fenêtre)";
    11                         if($(this).attr("title")) title = $(this).attr("title") + " (nouvelle fenêtre)";
    12                         $(this).attr("title",title);
     11                        if(jQuery(this).attr("title")) title = jQuery(this).attr("title") + " (nouvelle fenêtre)";
     12                        jQuery(this).attr("title",title);
    1313                });
     14                //Meme chose sur tous les fichiers dont l'extension a été configurée.
     15                var reg=new RegExp("(nouvelle fenêtre)","gi");
     16                if (typeof links_doc != "undefined") {
     17                        var extensions = links_doc.split(',');
     18                        for(var i = 0; i < extensions.length; i++){
     19                                jQuery("a[href$='"+extensions[i]+"']")
     20                                  .attr('target',where)
     21                                        .attr('rel','blank')
     22                                        .addClass('blank')
     23                                        .addClass('spip_doc')
     24                                        .each(function(){
     25                                                title =  "(nouvelle fenêtre)";
     26                                                if((jQuery(this).attr("title"))&&(jQuery(this).attr("title").match(reg) == false)){
     27                                                        title = jQuery(this).attr("title") + " (nouvelle fenêtre)";
     28                                                }       
     29                                                jQuery(this).attr("title",title);
     30                                });     
     31                        }
     32                }
     33       
    1434}
    1535if (window.jQuery)
    1636        (function($){
    1737                if(typeof onAjaxLoad == "function") onAjaxLoad(targetLinks);
    18                 $('document').ready(targetLinks);
     38                $(document).ready(targetLinks);
    1939        })(jQuery);
  • _plugins_/links/links_pipelines.php

    r48614 r48961  
    22
    33function links_insert_head_css($flux) {
    4         $flux .= '<link rel="stylesheet" href="'.find_in_path('css/links.css').'" type="text/css" media="all" />';
     4        //Recuperation de la configuration
     5        $links = sql_fetsel('valeur', 'spip_meta', 'nom = "links"');
     6        $links = unserialize($links['valeur']);
     7        //Styles
     8        if($links['style'] == 'on'){
     9                $flux .= '<link rel="stylesheet" href="'.find_in_path('css/links.css').'" type="text/css" media="all" />';
     10        }
    511        return $flux;
    612}
    713
    814function links_insert_head($flux) {
    9         $flux .= '<script type="text/javascript">var links_site = \''.$GLOBALS['meta']['adresse_site'].'\';</script>';
    10         $flux .= '<script src="'.find_in_path('links.js').'" type="text/javascript"></script>';
     15        //Recuperation de la configuration
     16        $links = sql_fetsel('valeur', 'spip_meta', 'nom = "links"');
     17        $links = unserialize($links['valeur']);
     18
     19        //Ouverture d'une nouvelle fenetre
     20        if($links['window'] == 'on'){
     21                //Ouverture dune nouvelel fenetre sur les liens externes
     22                if($links['external'] == 'on'){
     23                        $flux .= '<script type="text/javascript">var links_site = \''.$GLOBALS['meta']['adresse_site'].'\';</script>';
     24                }
     25                //Ouverture d'une nouvelle fenetre sur les documents (extensions à préciser)
     26                if(($links['download'] == 'on')&&($links['doc_list'])){
     27                        $flux .= '<script type="text/javascript">var links_doc = \''.$links['doc_list'].'\';</script>';
     28                }
     29                $flux .= '<script src="'.find_in_path('links.js').'" type="text/javascript"></script>';
     30        }
    1131        return $flux;
    1232}
  • _plugins_/links/plugin.xml

    r48616 r48961  
    44<description>Styles et pictos explicitant les liens du site : documents &agrave; t&eacute;l&eacute;charger, liens externes, mailto, etc. Il suffit d'activer ce plugin pour que tous les liens externes du site s'ouvrent dans une nouvelle fen&ecirc;tre.</description>
    55<lien>http://www.spip-contrib.net/?article3706</lien>
    6 <auteur>[romy.tetue.net->http://romy.tetue.net] et C&eacute;dric Morin</auteur>
     6<auteur>[romy.tetue.net->http://romy.tetue.net] et C&eacute;dric Morin et Gael Chareyre</auteur>
    77<licence>(c) GPL 2011</licence>
    8 <version>2.2.2</version>
     8<version>2.2.3</version>
    99<etat>test</etat>
    1010<prefix>links</prefix>
     
    2020        <inclure>links_pipelines.php</inclure>
    2121</pipeline>
     22<bouton id='links' parent='bando_squelette'>
     23        <icone>images/links-16.png</icone>
     24        <titre>links:titre_menu_liens</titre>
     25        <url>configurer_links</url>
     26</bouton>
    2227<categorie>navigation</categorie>
    2328</plugin>
     
    2732<description>Styles et pictos explicitant les liens du site : documents &agrave; t&eacute;l&eacute;charger, liens externes, mailto, etc. Il suffit d'activer ce plugin pour que tous les liens externes du site s'ouvrent dans une nouvelle fen&ecirc;tre.</description>
    2833<lien>http://www.spip-contrib.net/?article3706</lien>
    29 <auteur>[romy.tetue.net->http://romy.tetue.net] et C&eacute;dric Morin</auteur>
     34<auteur>[romy.tetue.net->http://romy.tetue.net] et C&eacute;dric Morin et Gael Chareyre</auteur>
    3035<licence>(c) GPL 2011</licence>
    31 <version>2.2.2</version>
     36<version>2.2.3</version>
    3237<etat>test</etat>
    3338<prefix>links</prefix>
Note: See TracChangeset for help on using the changeset viewer.