/** * This file is part of Zwii. * * For full copyright and license information, please see the LICENSE * file that was distributed with this source code. * * @author Frédéric Tempez <frederic.tempez@outlook.com> * @copyright Copyright (C) 2018-2020, Frédéric Tempez * @license GNU General Public License, version 3 * @link http://zwiicms.fr/ */ $( document).ready(function() { /** * Afficher et masquer options SMTP */ if ($("input[name=configSmtpEnable]").is(':checked')) { $("#configSmtpParam").addClass("disabled"); $("#configSmtpParam").slideDown(); } else { $("#configSmtpParam").removeClass("disabled"); $("#configSmtpParam").slideUp(); } /** * Afficher et masquer options Auth */ if ($("select[name=configSmtpAuth]").val() == true) { $("#configSmtpAuthParam").addClass("disabled"); $("#configSmtpAuthParam").slideDown(); } else { $("#configSmtpAuthParam").removeClass("disabled"); $("#configSmtpAuthParam").slideUp(); } /** * Initialisation des blocs */ var i = [ "social", "ceo", "network", "smtp", "login", "logs", "script", "system" ]; $.each(i,function(e) { if (getCookie(i[e]) === "true") { $("#" + i[e]).find(".zwiico-plus").hide(); $("#" + i[e]).find(".zwiico-minus").show(); $("#" + i[e]).find(".blockContainer").show(); } }); /** * * Blocs dépliants */ $("div .block").click(function(e) { $(this).find(".zwiico-plus").toggle(); $(this).find(".zwiico-minus").toggle(); $(this).find(".blockContainer").slideToggle(); /* * Sauvegarder la position des blocs * true = bloc déplié */ document.cookie = $(this).attr('id') + "=" + $(this).find(".zwiico-minus").is(":visible") + ";expires=Fri, 31 Dec 9999 23:59:59 GMT;path=/;SameSite=Lax"; }).on("click", "span > input, input, textarea, label, option, button, a:not(.inputFile), .blockContainer", function(e) { // Empêcher les déclenchements dans les blocs e.stopPropagation(); }); /** * Afficher et masquer options SMTP */ $("input[name=configSmtpEnable]").on("change", function() { if ($("input[name=configSmtpEnable]").is(':checked')) { $("#configSmtpParam").addClass("disabled"); $("#configSmtpParam").slideDown(); } else { $("#configSmtpParam").removeClass("disabled"); $("#configSmtpParam").slideUp(); } }); /** * Afficher et masquer options Auth */ $("select[name=configSmtpAuth]").on("change", function() { if ($("select[name=configSmtpAuth]").val() == true) { $("#configSmtpAuthParam").addClass("disabled"); $("#configSmtpAuthParam").slideDown(); } else { $("#configSmtpAuthParam").removeClass("disabled"); $("#configSmtpAuthParam").slideUp(); } }); /** * Options de blocage de connexions * Contrôle la cohérence des sélections et interdit une seule valeur Aucune */ $("select[name=configConnectAttempt]").on("change", function() { if ($("select[name=configConnectAttempt]").val() === "999") { $("select[name=configConnectTimeout]").val(0); } else { if ($("select[name=configConnectTimeout]").val() === "0") { $("select[name=configConnectTimeout]").val(300); } } }); $("select[name=configConnectTimeout]").on("change", function() { if ($("select[name=configConnectTimeout]").val() === "0") { $("select[name=configConnectAttempt]").val(999); } else { if ($("select[name=configConnectAttempt]").val() === "999") { $("select[name=configConnectAttempt]").val(3); } } }); }); /** * Lire un cookie s'il existe */ function getCookie(name) { var v = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)'); return v ? v[2] : null; }