Cette astuce sert à être capable de rétracter des catégories et mémoriser l'état comme c'est le cas pour les forums version Invision.
- Voir illustration :
Si vous cliquez sur le "-' : Vous obtenez le résultat suivant : Et si vous appuyez sur le "+" vous réouvrez la catégorie.
Dans cette astuce, nous n'utliserons pas une image, mais le clic sur la barre de titre afin d'ouvrir ou fermer une catégorie.
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 "Catégories rétractables" et pour placement "Sur l'index" (plus d'informations sur la gestion des scripts).
- Code:
$(function() { if(window.localStorage) { var b = JSON.parse(localStorage.getItem("catRet")) || {} } var f = 0; if($("body#phpbb").length) { var a = "div.table-title h2", e = "ul.topiclist", c = ":not(ul.topiclist.forums)" }else { $("#pun-intro").length ? (a = "div.page-title h2", e = "div.main-head", c = ":not(div.main-content)") : (a = "th.secondarytitle h2", e = "tr", c = ":not(tr)") } $(a).closest(e).css("cursor", "pointer").each(function() { var d = "c" + f++, a; window.localStorage ? b[d] && (a = !0) : a = !1; a && $(this).nextUntil(c).toggle(); $(this).click(function() { $(this).nextUntil(c).toggle(); window.localStorage && (b[d] ? delete b[d] : b[d] = 1, localStorage.setItem("catRet", JSON.stringify(b))) }) }) });
N'oubliez pas de cliquer sur le bouton Valider pour sauvegarder les modifications.
Autres possibilités
Catégories rétractables seulement pour les administrateurs
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 "Catégories rétractables" et pour placement "Sur l'index" (plus d'informations sur la gestion des scripts).
- Code:
$(function() { if(_userdata.user_level == 1) { if (window.localStorage) { var b = JSON.parse(localStorage.getItem("catRet")) || {} } var f = 0; if ($("body#phpbb").length) { var a = "div.table-title h2", e = "ul.topiclist", c = ":not(ul.topiclist.forums)" } else { $("#pun-intro").length ? (a = "div.page-title h2", e = "div.main-head", c = ":not(div.main-content)") : (a = "th.secondarytitle h2", e = "tr", c = ":not(tr)") } $(a).closest(e).css("cursor", "pointer").each(function() { var d = "c" + f++, a; window.localStorage ? b[d] && (a = !0) : a = !1; a && $(this).nextUntil(c).toggle(); $(this).click(function() { $(this).nextUntil(c).toggle(); window.localStorage && (b[d] ? delete b[d] : b[d] = 1, localStorage.setItem("catRet", JSON.stringify(b))) }) }) } });
N'oubliez pas de cliquer sur le bouton Valider pour sauvegarder les modifications.
Catégories rétractables seulement pour les administrateurs et modérateurs
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 "Catégories rétractables" et pour placement "Sur l'index" (plus d'informations sur la gestion des scripts).
- Code:
$(function() { i if(_userdata.user_level == -1 | _userdata.user_level == 0) { if (window.localStorage) { var b = JSON.parse(localStorage.getItem("catRet")) || {} } var f = 0; if ($("body#phpbb").length) { var a = "div.table-title h2", e = "ul.topiclist", c = ":not(ul.topiclist.forums)" } else { $("#pun-intro").length ? (a = "div.page-title h2", e = "div.main-head", c = ":not(div.main-content)") : (a = "th.secondarytitle h2", e = "tr", c = ":not(tr)") } $(a).closest(e).css("cursor", "pointer").each(function() { var d = "c" + f++, a; window.localStorage ? b[d] && (a = !0) : a = !1; a && $(this).nextUntil(c).toggle(); $(this).click(function() { $(this).nextUntil(c).toggle(); window.localStorage && (b[d] ? delete b[d] : b[d] = 1, localStorage.setItem("catRet", JSON.stringify(b))) }) }) } });
N'oubliez pas de cliquer sur le bouton Valider pour sauvegarder les modifications.
|