Reprise du plugin Scriptaculous Slider
Par Bounga le lundi, 8 décembre 2008, 16:47 - Développement - Lien permanent
J'ai eu récemment besoin d'utiliser les sliders scriptaculous de manière massive. Il s'avére qu'en utilisant du javascript et de l'HTML pur sans passer par des helpers, ça devient très vite fastidieux à mettre en place mais surtout à maintenir.
J'ai donc voulu me tourner vers le plugin de Thomas Fuchs mais je me suis vite rendu compte qu'il n'était plus maintenu et qu'il ne chargeait même pas dans Rails 2.x.
Pour me simplifier la vie, j'ai donc décidé de forker le projet pour le mettre à jour et l'améliorer par la même occasion.
Comment ça marche ?
Ce plugin est une extension d'ActionView qui permet d'insérer dans vos vues le code nécessaire à l'affichage de sliders scriptaculous.
Il est dès lors possible de simplifier votre code HTML en évitant les nombreuses répétitions et les morceaux de code JS un peu partout.
Installation
Dans une console, à la racine de votre projet Rails, il vous suffit d'entrer la commande suivante :
$ cd vendor/plugins
$ hg clone http://www.bitbucket.org/Bounga/scriptaculous-slider
ou pour une installation globale :
$ sudo gem install scriptaculous_slider
puis dans le fichier environment.rb :
config.gem 'scriptaculous_slider'
Vous devrez également utiliser la commande suivante :
rake scriptaculous_slider_install
qui installe slider.js dans votre répertoire javascripts puisque qu'il n'est pas livré avec Rails.
Exemples d'utilisation
<%= slider_stylesheet %>
<%= slider_field :object, :method, :range => 1..10 %>
<%= slider_element "my_slider", :range => 1..10, :hidden_fields => true %>
slider_element ne crée pas de hidden field par défaut mais vous pouvez forcer ce comportement.
slider_field créera automatiquement un hidden field qui sera automatiquement mis à jour quand vous utiliserez le slider.
slider_stylesheet crée un style pour les sliders ce qui peut vous servir de base pour la création de votre propre CSS.
Pour voir toutes les fonctionnalités disponibles, jettez un oeil sur les tests disponibles avec le code source de script.aculo.us : http://github.com/madrobby/scriptaculous/tree/master.
Pour les discussions à propos de ce plugin, utilisez le Google Group Prototype / Scriptaculous.
Et les sources ?!
Le projet est hébergé chez BitBucket. J'utilise le SCM Mercurial pour le contrôle des sources.
Vous pourrez donc le trouver à cette adresse : http://www.bitbucket.org/Bounga/scriptaculous-slider/.
Vous pouvez suivre les commits, avoir accès à de jolis graphes, récupérer les sources ou encore forker le projet !
Le mot de la fin
J'espère que ce plugin pourra vous être utile.
Tout rapports de problèmes, commentaires ou suggestions sont les bienvenues.