function Validate(){}; Validate.defaultOption = {}; Validate.defaultOption.errorClass = 'evidenzia-campo-obbligatorio'; Validate.defaultOption.errorMessage = ''; /** * @param $elementId, mettere il div che contiene ore e minuti, es. bx-permesso-alle * @param oreMinutiFrom il formato è HH:mm * @return bool */ Validate.oreMinuti = function ($bxElementId, equalTo, oreMinutiFrom){ equalTo = equalTo || []; oreMinutiFrom = oreMinutiFrom || null; let i, n = equalTo.length; let $uiOre = $bxElementId.find('.ti-ore'); let $uiMinuti = $bxElementId.find('.cb-minuti'); for(i=0; i $uiOre.val() || (hhmm[0] == $uiOre.val() && hhmm[1] >= $uiMinuti.val() )){ $uiOre.addClass('evidenzia-campo-obbligatorio-ore'); $uiMinuti.parent().find('.select2-selection.select2-selection--single').addClass('evidenzia-campo-obbligatorio-minuti'); return false; } } return true; } Validate.combobox = function ($elementId, equalTo, errorClass, errorMessage){ errorClass = errorClass || Validate.defaultOption.errorClass; errorMessage = errorMessage || Validate.defaultOption.errorMessage; if (!$elementId || $elementId.length === 0) { return true; } let selectedData = getSelect2Value($elementId); let val = selectedData.value; let $targetUi = $elementId.next('.select2-container').length > 0 ? $elementId.next('.select2-container') : $elementId.next(); let isValid = true; if (!Array.isArray(equalTo)) { if (val == equalTo) { isValid = false; } } else { let i, n = equalTo.length; for (i = 0; i < n; i++) { if (val == equalTo[i]) { isValid = false; break; } } } if (!isValid) { $targetUi.addClass(errorClass); return false; } else { $targetUi.removeClass(errorClass); return true; } }; Validate.comboboxSelect2 = function ($elementId, equalTo, errorClass, errorMessage){ errorClass = errorClass || Validate.defaultOption.errorClass; errorMessage = errorMessage || Validate.defaultOption.errorMessage; if (!Array.isArray(equalTo) && getSelect2Value($elementId).value == equalTo){ $elementId.prev().addClass(errorClass); return false; }else if (Array.isArray(equalTo)){ var i, n = equalTo.length; for(i=0; i