jQuery UI

This is an « educational contribution » which shows, with concrete example, how to develop a new functionality for SPIP.

Cette contribution est la continuité de jQuery UI pour SPIP mais pour SPIP 3.

Depuis SPIP3, jQuery UI est embarqué par défaut. Le plus grand changement est qu’il n’y a plus d’interface graphique dans l’espace privé pour activer des modules.

Comment faire :

Pour notre exemple, nous voulons activer datepicker ainsi que la traduction française (c’est aussi présent par défaut !!)

Méthode 1 : dans le fichier mes_options.php

Ce fichier se trouve dans le répertoire config. S’il n’y est pas, il faut le créer.
il suffit de rajouter ces lignes :

<?php
$GLOBALS['spip_pipeline']['jqueryui_plugins'] .= "|insert_jqueryui";
function insert_jqueryui($jqueryui_plugins) {
   $jqueryui_plugins[] = "jquery.ui.datepicker";
   $jqueryui_plugins[] = "i18n/jquery.ui.datepicker-fr";
   return $jqueryui_plugins ;
}
?>

Méthode 2 : Pour un plugin

  1. Dans le fichier paquet.xml, rajouter la déclaration au pipeline jqueryui-plugins
    1. <pipeline nom="jqueryui_plugins" inclure="prefix_pipelines.php" />
  1. Dans notre fichier prefix_pipelines.php, déclarons nos 2 modules
    function prefix_jqueryui_plugins($scripts){
       $scripts[] = "jquery.ui.datepicker";
       $scripts[] = "i18n/jquery.ui.datepicker-fr";
       return $scripts;
    }

updated on 27 June 2012

Discussion

2 discussions

  • 2
    Webmaster Ayn

    Bonjour,

    Malgré mes recherches sur nénette, je ne trouve pas solution à mon souci.

    Depuis la mise à jour vers Spip 3.1.3, j’ai des soucis que je crois liés à des dysfonctionnement de JQueryUI :
    -  les diaporamas ne fonctionnement plus, ni en privé, ni en public (exemple)
    -  dans les formulaires, certains “gadgets” fonctionnement en privé, mais pas en public (calendrier pour choisir un date, blocs dépliables conditionnés par des réponses à certaines questions), d’autres ni en privé ni en public (blocs déplaçables en cliquer-glisser) (exemple)

    Il y a peut-être d’autres dysfonctionnements que je n’ai pas encore repérés.

    Ai-je raison d’attribuer ça à JQueryUI ?
    Et si oui, ben comment que je fais pour que tout refonctionne ?

    Merci pour vos lumières :)

    • Bonjour,

      Tout les plugins sont à jour ?
      Le cache et local on été vider suite à la mise à jour de spip ?

    • Webmaster Ayn

      Bonjour,

      Oui oui.
      J’ai refait une “vidange” par acquit de conscience, mais ça n’a pas réglé les problèmes.

    Reply to this message

  • 1

    Bonjour,

    En SPIP 3.1.1, c’est ceci qu’il faut mettre :

    1. $jqueryui_plugins[] = "jquery.ui.i18n/datepicker-fr";
    • Pierroy

      Bonjour,

      J’essaie d’utiliser les effets bounce et scale:

      $GLOBALS['spip_pipeline']['jqueryui_plugins'] .= "|insert_jqueryui";
      function insert_jqueryui($jqueryui_plugins) {
          $jqueryui_plugins[] = "jquery.ui.core" ;
          $jqueryui_plugins[] = "jquery.effects.core" ;
          $jqueryui_plugins[] = "jquery.effects.scale" ;
          $jqueryui_plugins[] = "jquery.effects.bounce" ;
          return $jqueryui_plugins ;
      }

      J’ai le sentiment que je n’ai pas la bonne syntaxe ... je vois que vous avez trouvé pour i18n ... une idée ?

      Pierre

    Reply to this message

Comment on this article

Who are you?
  • [Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom