Changeset 61372 in spip-zone


Ignore:
Timestamp:
May 17, 2012, 5:12:52 PM (8 years ago)
Author:
joseph@…
Message:
  • correctif sur la recherche (pas de LIKE conditionnel)
  • personnalisation de l'ordre du tri par type
Location:
_plugins_/zotspip/trunk
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/zotspip/trunk/formulaires/configurer_zotspip.html

    r59617 r61372  
    6565                                </div>
    6666                        </li>
     67                        <B_ordre_types>
     68                        <li class="editer_ordre_types[ (#ENV**{erreurs}|table_valeur{ordre_types}|oui)erreur]">
     69                                <label for='ordre_types'><:zotspip:label_ordre_types:></label>
     70                                <p class="explication"><:zotspip:explication_ordre_types:></p>
     71                                <ul class="spip" id="liste_ordre_types">
     72                                <BOUCLE_ordre_types(POUR){tableau #ENV**{ordre_types}|zotspip_configurer_ordre_types}>
     73                                        <li style="list-style-image : url([(#CLE|zotspip_icone_type|extraire_attribut{src})]);">#VALEUR
     74                                        <input type="hidden" name="ordre_types[]" value="#CLE" />
     75                                        </li>
     76                                </BOUCLE_ordre_types>
     77                                </ul>
     78                        </li>
     79                        </B_ordre_types>
    6780                </ul></fieldset></li>
    6881                </ul>
     
    7285        </div></form>
    7386</div>
     87<script type="text/javascript">// <![CDATA[
     88$(document).ready(function(){
     89        $( "ul#liste_ordre_types" ).sortable({
     90                        placeholder: "ui-state-highlight"
     91                });
     92});
     93 //]]></script>
  • _plugins_/zotspip/trunk/lang/zotspip_fr.php

    r60688 r61372  
    2323        'explication_id_librairie' => 'Pour une librairie personnelle, le <em>userID</em> est indiqué sur la <a href="https://www.zotero.org/settings/keys">page Zotero de gestion des clés personnelles</a>. Pour un groupe, le <em>groupID</em> se trouve dans l\'URL de configuration du groupe qui est de la forme <em>https://www.zotero.org/groups/&lt;groupID&gt;/settings</em>.',
    2424        'explication_maj_zotspip' => 'ZotSpip se synchronise à intervalles réguliers (environ toutes les 4 heures) avec le serveur Zotero. Seules les dernières modifications (depuis la dernière synchronisation) sont prises en compte. Au besoin, vous pouvez forcer une mise à jour complète de la base de données, toutes les références étant alors téléchargées à nouveau (si votre librairie est importante, cette synchronisation se fera en plusieurs étapes, seulement 50 référénces pouvant être mises à jour à la fois).',
     25        'explication_ordre_types' => 'Vous pouvez personnaliser l\'ordre utilisé pour les tris par type de référence (changez l\'ordre par glisser/déposer).',
    2526        'explication_username' => 'Pour une librairie personnelle, le nom d\'utilisateur est indiqué sur la <a href="https://www.zotero.org/settings/account">page de configuration du compte</a>. Pour un groupe partagé, le nom du groupe se situe à la fin de l\'URL de la page d\'accueil du groupe qui est de la forme <em>https://www.zotero.org/groups/&lt;nom_du_groupe&gt;</em> (dans certain cas, le nom du groupe correspondant à son identifiant numérique).',
    2627        'exporter_reference' => 'Exporter la référence :',
     
    3637        'label_id_librairie' => 'Identifiant de la librairie',
    3738        'label_options' => 'Options',
     39        'label_ordre_types' => 'Tri par type de référence',
    3840        'label_tags' => 'Mots-Clés',
    3941        'label_type_librairie' => 'Type de librairie Zotero',
  • _plugins_/zotspip/trunk/modeles/biblio.html

    r61367 r61372  
    1010        numero,-1
    1111}})]
    12 <B_biblio>
    1312
    14 recherche #ENV{recherche}
    15 
    16 <ul class="spip">
    17 <BOUCLE_biblio(ZITEMS){id_parent==0}{auteur?}{type?}{annee?}{publication?}{editeur?}{collection?}{type_doc?}{tag?}{zcollection?}{json ?LIKE %#ENV{recherche}%}{zotsip_depuis}{0,#ENV{max,100000}}{tri #ENV{par,auteurs},#GET{defaut_tri}}>
    18 #INCLURE{fond=inclure/zitem,id_zitem,csl,liste=oui,icones=oui,details=#GET{details},export=#GET{export},liens=#GET{liens},souligne=#GET{souligne}}
    19 </BOUCLE_biblio>
    20 </ul>
    21 </B_biblio>
     13<BOUCLE_test_tri(CONDITION){si #ENV{par}|=={type}}>
     14        <B_biblio_type>
     15        <ul class="spip">
     16        <BOUCLE_biblio_type(ZITEMS){id_parent==0}{auteur?}{type?}{annee?}{publication?}{editeur?}{collection?}{type_doc?}{tag?}{zcollection?}{json LIKE %#ENV{recherche}%}{zotsip_depuis}{0,#ENV{max,100000}}{par_type_zotero}>
     17        #INCLURE{fond=inclure/zitem,id_zitem,csl,liste=oui,icones=oui,details=#GET{details},export=#GET{export},liens=#GET{liens},souligne=#GET{souligne}}
     18        </BOUCLE_biblio_type>
     19        </ul>
     20        </B_biblio_type>
     21</BOUCLE_test_tri>
     22        <B_biblio>
     23        <ul class="spip">
     24        <BOUCLE_biblio(ZITEMS){id_parent==0}{auteur?}{type?}{annee?}{publication?}{editeur?}{collection?}{type_doc?}{tag?}{zcollection?}{json LIKE %#ENV{recherche}%}{zotsip_depuis}{0,#ENV{max,100000}}{tri #ENV{par,auteurs},#GET{defaut_tri}}>
     25        #INCLURE{fond=inclure/zitem,id_zitem,csl,liste=oui,icones=oui,details=#GET{details},export=#GET{export},liens=#GET{liens},souligne=#GET{souligne}}
     26        </BOUCLE_biblio>
     27        </ul>
     28        </B_biblio>
     29<//B_test_tri>
  • _plugins_/zotspip/trunk/modeles/biblio_annee.html

    r61367 r61372  
    44#SET{souligne,#ENV{auteur}|et{#ENV{souligne}|!={non}}|?{#ENV{auteur},''}}
    55<B_biblio>
    6 <BOUCLE_biblio(ZITEMS){id_parent==0}{auteur?}{type?}{annee?}{publication?}{editeur?}{collection?}{type_doc?}{tag?}{zcollection?}{zotsip_depuis}{0,#ENV{max,100000}}{!par annee}{par auteurs}{json ?LIKE %#ENV{recherche}%}>
     6<BOUCLE_biblio(ZITEMS){id_parent==0}{auteur?}{type?}{annee?}{publication?}{editeur?}{collection?}{type_doc?}{tag?}{zcollection?}{zotsip_depuis}{0,#ENV{max,100000}}{!par annee}{par auteurs}{json LIKE %#ENV{recherche}%}>
    77[[(#COMPTEUR_BOUCLE|>{1}|oui)</ul>]<h4 class="h4">(#ANNEE|=={0}|?{<:zotspip:annee_non_precisee:>,#ANNEE}|unique)</h4><ul class="spip">]
    88#INCLURE{fond=inclure/zitem,id_zitem,csl,liste=oui,icones=oui,details=#GET{details},export=#GET{export},liens=#GET{liens},souligne=#GET{souligne}}
  • _plugins_/zotspip/trunk/modeles/biblio_annee_type.html

    r61367 r61372  
    44#SET{souligne,#ENV{auteur}|et{#ENV{souligne}|!={non}}|?{#ENV{auteur},''}}
    55<B_biblio>
    6 <BOUCLE_biblio(ZITEMS){id_parent==0}{auteur?}{type?}{annee?}{publication?}{editeur?}{collection?}{type_doc?}{tag?}{zcollection?}{zotsip_depuis}{0,#ENV{max,100000}}{!par annee}{par type}{par auteurs}{json ?LIKE %#ENV{recherche}%}>
     6<BOUCLE_biblio(ZITEMS){id_parent==0}{auteur?}{type?}{annee?}{publication?}{editeur?}{collection?}{type_doc?}{tag?}{zcollection?}{zotsip_depuis}{0,#ENV{max,100000}}{!par annee}{par_type_zotero}{par auteurs}{json LIKE %#ENV{recherche}%}>
    77#SET{ouvert,' '}
    88[[(#COMPTEUR_BOUCLE|>{1}|oui)</ul>]<h4 class="h4">(#ANNEE|=={0}|?{<:zotspip:annee_non_precisee:>,#ANNEE}|unique)</h4>#SET{ouvert,''}]
  • _plugins_/zotspip/trunk/modeles/biblio_simple.html

    r61367 r61372  
    77        numero,-1
    88}})]
    9 <BOUCLE_biblio(ZITEMS){id_parent==0}{auteur?}{type?}{annee?}{publication?}{editeur?}{collection?}{type_doc?}{tag?}{zcollection?}{json ?LIKE %#ENV{recherche}%}{zotsip_depuis}{0,#ENV{max,100000}}{tri #ENV{par,auteurs},#GET{defaut_tri}}>
    10 #INCLURE{fond=inclure/zitem,id_zitem,csl,souligne=#GET{souligne}}
    11 </BOUCLE_biblio>
     9
     10<BOUCLE_test_tri(CONDITION){si #ENV{par}|=={type}}>
     11        <BOUCLE_biblio_type(ZITEMS){id_parent==0}{auteur?}{type?}{annee?}{publication?}{editeur?}{collection?}{type_doc?}{tag?}{zcollection?}{json LIKE %#ENV{recherche}%}{zotsip_depuis}{0,#ENV{max,100000}}{par_type_zotero}>
     12        #INCLURE{fond=inclure/zitem,id_zitem,csl,souligne=#GET{souligne}}
     13        </BOUCLE_biblio_type>
     14</BOUCLE_test_tri>
     15        <BOUCLE_biblio(ZITEMS){id_parent==0}{auteur?}{type?}{annee?}{publication?}{editeur?}{collection?}{type_doc?}{tag?}{zcollection?}{json LIKE %#ENV{recherche}%}{zotsip_depuis}{0,#ENV{max,100000}}{tri #ENV{par,auteurs},#GET{defaut_tri}}>
     16        #INCLURE{fond=inclure/zitem,id_zitem,csl,souligne=#GET{souligne}}
     17        </BOUCLE_biblio>
     18<//B_test_tri>
  • _plugins_/zotspip/trunk/modeles/biblio_type.html

    r61367 r61372  
    44#SET{souligne,#ENV{auteur}|et{#ENV{souligne}|!={non}}|?{#ENV{auteur},''}}
    55<B_biblio>
    6 <BOUCLE_biblio(ZITEMS){id_parent==0}{auteur?}{type?}{annee?}{publication?}{editeur?}{collection?}{type_doc?}{tag?}{zcollection?}{zotsip_depuis}{0,#ENV{max,100000}}{par type}{par auteurs}{json ?LIKE %#ENV{recherche}%}>
     6<BOUCLE_biblio(ZITEMS){id_parent==0}{auteur?}{type?}{annee?}{publication?}{editeur?}{collection?}{type_doc?}{tag?}{zcollection?}{zotsip_depuis}{0,#ENV{max,100000}}{par_type_zotero}{par auteurs}{json LIKE %#ENV{recherche}%}>
    77[[(#COMPTEUR_BOUCLE|>{1}|oui)</ul>]<h4 class="h4">(#TYPE|zotspip_traduire_type|unique)</h4><ul class="spip">]
    88#INCLURE{fond=inclure/zitem,id_zitem,csl,liste=oui,icones=oui,details=#GET{details},export=#GET{export},liens=#GET{liens},souligne=#GET{souligne}}
  • _plugins_/zotspip/trunk/modeles/biblio_type_annee.html

    r61367 r61372  
    44#SET{souligne,#ENV{auteur}|et{#ENV{souligne}|!={non}}|?{#ENV{auteur},''}}
    55<B_biblio>
    6 <BOUCLE_biblio(ZITEMS){id_parent==0}{auteur?}{type?}{annee?}{publication?}{editeur?}{collection?}{type_doc?}{tag?}{zcollection?}{zotsip_depuis}{0,#ENV{max,100000}}{par type}{!par annee}{par auteurs}{json ?LIKE %#ENV{recherche}%}>
     6<BOUCLE_biblio(ZITEMS){id_parent==0}{auteur?}{type?}{annee?}{publication?}{editeur?}{collection?}{type_doc?}{tag?}{zcollection?}{zotsip_depuis}{0,#ENV{max,100000}}{par_type_zotero}{!par annee}{par auteurs}{json LIKE %#ENV{recherche}%}>
    77#SET{ouvert,' '}
    88[[(#COMPTEUR_BOUCLE|>{1}|oui)</ul>]<h4 class="h4">(#TYPE|zotspip_traduire_type|unique)</h4>#SET{ouvert,''}]
  • _plugins_/zotspip/trunk/zotspip_fonctions.php

    r60688 r61372  
    250250        $annee = false;
    251251        if (is_numeric($depuis)) $annee = intval($depuis);
    252         elseif (substr($depuis,-2)=='an' && is_numeric(substr($depuis,0,-2))) $annee = 1 + intval(date('Y')) - intval(substr($depuis,0,-2)); // L'année en cours ocmpte pour un
     252        elseif (substr($depuis,-2)=='an' && is_numeric(substr($depuis,0,-2))) $annee = 1 + intval(date('Y')) - intval(substr($depuis,0,-2)); // L'année en cours compte pour un
    253253        elseif (substr($depuis,-3)=='ans' && is_numeric(substr($depuis,0,-3))) $annee = 1 + intval(date('Y')) - intval(substr($depuis,0,-3));
    254254        if ($annee) return array('>=',"$table.annee",$annee);
     
    304304}
    305305
     306// Fonction renvoyant le tableau adequat pour la configuration de l'ordre des types de documents
     307function zotspip_configurer_ordre_types($ordre) {
     308        if (!is_array($ordre)) $ordre=array();
     309        $ordre = array_flip($ordre);
     310        // Il faut completer par rapport au schema Zotero (au cas ou le schema change)
     311        $zotero = schema_zotero('itemTypes');
     312        $zotero[]='attachment'; // Ajouter les pieces jointes non presentes dans le schema
     313        $ordre = array_merge($ordre,array_flip($zotero));
     314        // Ajout des chaines de langue
     315        foreach ($ordre as $cle => $val)
     316                $ordre[$cle] = zotspip_traduire_type($cle);
     317        return $ordre;
     318}
     319
     320// Le critere qui permet le tri par type (selon l'ordre defini)
     321function critere_par_type_zotero($idb, &$boucles, $crit) {
     322        $boucle = &$boucles[$idb];
     323        $id_table = $boucle->id_table;
     324        include_spip('inc/config');
     325        $config = lire_config('zotspip/ordre_types');
     326        if (is_array($config) && count($config))
     327                $boucle->order[] = "\"FIELD($id_table.type,'".implode("','",$config)."')\"";
     328        else
     329                $boucle->order[] = "'$id_table.type'";
     330}
     331
    306332?>
Note: See TracChangeset for help on using the changeset viewer.