Changeset 60688 in spip-zone


Ignore:
Timestamp:
Apr 26, 2012, 4:40:30 PM (9 years ago)
Author:
joseph@…
Message:

Meilleur prise en compte des dates
Dépendance jQuery (nécessaire pour une évolution à venir du formulaire de config, utilisé également par AERES)
Déplacement du style AERES vers le plugin du même nom

Location:
_plugins_/zotspip/trunk
Files:
1 deleted
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/zotspip/trunk/lang/zotspip_fr.php

    r59623 r60688  
    2020        'erreur_simplexml' => 'Pour fonctionner, ZotSpip nécessite l\'extension PHP SimpleXML. Veuillez activer/installer cette extension.',
    2121        'explication_api_key' => 'S\'obtient sur la <a href="https://www.zotero.org/settings/keys">page Zotero de gestion des clés personnelles</a>. Pensez à accorder des droits d\'accès suffisants à cette clé.',
    22         'explication_corriger_date' => 'Zotero transmets les dates de publication telles qu\'elles ont été saisies. Dès lors, le processeur CSL n\'est pas toujours en capacité de décomposer correctement ces dernières en raison de la grande variété de formats différents. Si tel est le cas, la date de publication ne sera pas affichée une fois les références mises en forme. ZotSpip peut corriger en amont les dates de publications. Attention : seule l\'année sera alors transmise au processeur CSL. Cette option n\'a par contre aucune répercussion sur la librairie Zotero elle-même.',
     22        'explication_corriger_date' => 'Zotero transmets les dates de publication telles qu\'elles ont été saisies. Dès lors, le processeur CSL n\'est pas toujours en capacité de décomposer correctement ces dernières en raison de la grande variété de formats différents. Si tel est le cas, la date de publication ne sera pas affichée une fois les références mises en forme. ZotSpip peut corriger en amont les dates de publications. Attention : seule l\'année sera alors transmise au processeur CSL, sauf si la date est de la forme aaaa-mm-jj ou aaaa-mm. Cette option n\'a par contre aucune répercussion sur la librairie Zotero elle-même.',
    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).',
  • _plugins_/zotspip/trunk/plugin.xml

    r59617 r60688  
    4040                <inclure>zotspip_pipelines.php</inclure>
    4141        </pipeline>
     42        <pipeline>
     43                <nom>jqueryui_forcer</nom>
     44                <inclure>zotspip_pipelines.php</inclure>
     45        </pipeline>
    4246
    4347        <bouton id='zotspip' parent="configuration">
     
    5155                <icone>images/zotspip-16.png</icone>
    5256        </bouton>
    53         <bouton id='zitems' parent="edition">
     57        <bouton id='zitems' parent="naviguer">
    5458                <url>zitems</url>
    5559                <titre>zotspip:items_zotero</titre>
     
    6468        <necessite id="SPIP" version="[2.1.0;2.1.99]" />
    6569        <necessite id="spip_bonux" />
     70        <necessite id="jqueryui" />
    6671</plugin>
  • _plugins_/zotspip/trunk/zotspip_fonctions.php

    r60188 r60688  
    2525        $style = interprete_argument_balise(1,$p);
    2626        $souligne = interprete_argument_balise(2,$p);
     27        $date = champ_sql('date', $p);
    2728        if (!$style) $style='""';
    2829        if (!$souligne) $souligne='array()';
    2930       
    30         $p->code = "zotspip_calculer_reference($csljson,$annee,$style,$souligne,htmlentities($_lang ? $_lang : \$GLOBALS['spip_lang']))";
    31         return $p;
    32 }
    33 
    34 function zotspip_calculer_reference($csljson,$annee,$style,$souligne,$lang) {
     31        $p->code = "zotspip_calculer_reference($csljson,$annee,$style,$souligne,$date,htmlentities($_lang ? $_lang : \$GLOBALS['spip_lang']))";
     32        return $p;
     33}
     34
     35function zotspip_calculer_reference($csljson,$annee,$style,$souligne,$date,$lang) {
    3536        include_spip('lib/citeproc-php/CiteProc');
    3637        include_spip('inc/config');
     
    4445        if (isset($data->issued->raw) && lire_config('zotspip/corriger_date')) { // Correction de la date de publication (si fournie brute et si option activée)
    4546                unset($data->issued->raw);
    46                 $data->issued->{'date-parts'} = array(array($annee));
    47         }
    48        
     47                // Gestion des cas où la date est de la forme yyyy-mm ou yyyy-mm-dd
     48                if (preg_match('#^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})$#',trim($date),$matches))
     49                        $data->issued->{'date-parts'} = array(array($matches[1],$matches[2],$matches[3]));
     50                elseif (preg_match('#^([0-9]{4})-([0-9]{1,2})$#',trim($date),$matches))
     51                        $data->issued->{'date-parts'} = array(array($matches[1],$matches[2]));
     52                else
     53                        $data->issued->{'date-parts'} = array(array($annee));
     54        }
     55
    4956        if (!is_array($souligne)) $souligne = explode(';',$souligne);
    5057       
  • _plugins_/zotspip/trunk/zotspip_pipelines.php

    r59617 r60688  
    1111        return $flux;
    1212}
     13
     14function zotspip_jqueryui_forcer($scripts){
     15        $scripts[] = "jquery.ui.resizable";
     16        $scripts[] = "jquery.ui.sortable";
     17        return $scripts;
     18}
     19
    1320?>
Note: See TracChangeset for help on using the changeset viewer.