Cette astuce a pour objectif de paramétrer automatiquement l'application d'un sondage à un sujet dans un ou plusieurs forum(s) ou sous-forum(s) à l'instar du support de Forumactif :
Création du script
Panneau d'administration Modules HTML & JAVASCRIPT - Gestion des codes Javascript
Assurez-vous que la gestion des codes Javascript soit activée, puis créez un nouveau javascript ayant pour titre "Paramétrage automatique des sondages" et pour placement "Sur toutes les pages" (plus d'informations sur la gestion des scripts).
- Code:
var version = 'VOTRE_CHOIX'; var selectors = { 'phpbb2': 'tbody', 'phpbb3': 'fieldset', 'punbb': 'div', 'invision': 'div', 'modernbb': 'div', 'awesomebb': 'div' }; "/post" == location.pathname && $(function() { document.post && !("newtopic" != document.post.mode.value || -1 == $.inArray(parseInt(document.post.f.value), [8])) && $(document.post.poll_title).closest(selectors[version]).html('<span class="gen">Le sondage a été automatiquement ajouté.</span><input type="hidden" name="poll_title" value="Êtes-vous pour ou contre ?" /><input type="hidden" name="poll_option_text" value="Pour\nContre"><input type="hidden" name="poll_length" value="15" /><input type="hidden" name="poll_multiple" value="0" /><input type="hidden" name="poll_cancel_vote" value="1" /><input type="hidden" name="poll_public_members" value="0" /><input type="hidden" name="poll_public_whovoted" value="0" />') });
N'oubliez pas de cliquer sur le bouton Valider afin de sauvegarder les modifications.
Paramétrage du script Vous avez la possibilité de paramétrer les différentes options relatives à la gestion d'un sondage :
- var version = 'VOTRE_CHOIX'; : remplacez "VOTRE_CHOIX" par la version de votre forum. Exemple var version = 'phpbb2';
- $.inArray(parseInt(document.post.f.value), [8] : permet de désigner le forum ou sous-forum où le sondage sera automatiquement programmé. Ici, nous avons désigné le forum numéro 8. Il vous suffit de remplacer ce nombre par le numéro de votre forum ou sous-forum. Si vous souhaitez appliquer ce script à plusieurs forums ou sous-forums, il convient de séparer les numéros par des virgules : 8, 26, 213 ;
- <span class="gen">Le sondage a été automatiquement ajouté.</span> : permet de mettre un message afin d'avertir vos membres que le sondage est paramétré par défaut. Vous pouvez, bien évidemment, modifier cette phrase ;
- <input type="hidden" name="poll_title" value="Êtes-vous pour ou contre ?" /> : permet de définir la question type du sondage qui sera automatiquement affichée à chaque sondage publié ;
- <input type="hidden" name="poll_option_text" value="Pour\nContre"> : permet de définir les choix proposés aux membres. Ici, les membres pourront choisir de voter Pour et Contre. Toutefois, vous avez la possibilité de modifier les choix proposés en séparant par \n. Par exemple : <input type="hidden" name="poll_option_text" value="Pour\nContre\nSans avis"> ;
- <input type="hidden" name="poll_length" value="15" /> : permet de définir la durée du sondage. Ici, le sondage a une durée de 15 jours. Toutefois, vous pouvez la modifier à votre convenance, sachant que value="0" correspond au fait que le sondage n'a pas de durée de fin ;
- <input type="hidden" name="poll_multiple" value="0" /> : permet de définir si le membre peut choisir un ou plusieurs choix pour répondre au sondage. Ici, nous avons fait le choix que le membre ne puisse choisir qu'une seul choix. Si vous souhaitez que vos membres puissent cocher plusieurs choix, alors vous devez mettre value="1" ;
- <input type="hidden" name="poll_cancel_vote" value="1" /> : permet de définir si le membre peut annuler ou non son vote. Ici, nous avons fait le choix de laisser la possibilité aux membres d'annuler le vote. Pour l'interdire, il suffit de mettre value="0".
- <input type="hidden" name="poll_public_members" value="0" /> : permet de définir si la liste des membres ayant participé au sondage sera affichée. Ici, nous avons fait le choix de ne pas l'afficher. Pour l'afficher, il suffit de mettre value="1".
Remarque : Pour que cette option soit prise en compte, elle doit être activée pour l'utilisateur qui poste le sondage (Voir point 2.4. du tutoriel "Publier un sondage")
- <input type="hidden" name="poll_public_whovoted" value="0" /> : permet de définir si la liste des membres ayant voté pour chaque choix sera affichée. Ici, nous avons fait le choix de ne pas l'afficher. Pour l'afficher, il suffit de mettre value="1". Pour l'afficher quand le sondage est terminé, il suffit de mettre value="2"
Remarque : Pour que cette option soit prise en compte, elle doit être activée pour l'utilisateur qui poste le sondage (Voir point 2.4. du tutoriel "Publier un sondage")
|