export class SovTools { static log(value) { try { console.log(value); } catch { } } static arrayRemove(arr, value) { return arr.filter(function (ele) { return ele != value; }); } static toPlainText(html) { let scratchDiv = document.createElement('div'); scratchDiv.innerHTML = html; return scratchDiv.textContent; } static getDateFormatted(date, separator) { if (date) { var date = new Date(date); var _d = date.getDate(), d = _d > 9 ? _d : '0' + _d, _m = date.getMonth() + 1, m = _m > 9 ? _m : '0' + _m, formatted = d + separator + m + separator + date.getFullYear(); return formatted; } else { return ''; } } static getUrlParameter(sParam) { var sPageURL = window.location.search.substring(1), sURLVariables = sPageURL.split('&'), sParameterName, i; for (i = 0; i < sURLVariables.length; i++) { sParameterName = sURLVariables[i].split('='); if (sParameterName[0] === sParam) { return sParameterName[1] === undefined ? true : decodeURIComponent(sParameterName[1]); } } } static indexOfFirstDigit(input) { let i = 0; for (; input[i] < '0' || input[i] > '9'; i++) ; return i == input.length ? -1 : i; } static indexOfLastDigit(input) { let i = input.length - 1; for (; input[i] < '0' || input[i] > '9'; i--) ; return i == input.length ? -1 : i; } static formatNumber(number, toFixed) { if (number) return Number(number.replace(',', '.')).toFixed(toFixed); else return null; } static formatNumberWithoutFixed(number) { if (typeof number == 'string') number = number.replace(',', '.'); if (number) return Number(number); else return null; } static getUrlParameter(sParam) { var sPageURL = window.location.search.substring(1), sURLVariables = sPageURL.split('&'), sParameterName, i; for (i = 0; i < sURLVariables.length; i++) { sParameterName = sURLVariables[i].split('='); if (sParameterName[0] === sParam) { return sParameterName[1] === undefined ? true : decodeURIComponent(sParameterName[1]); } } }; static readFlashMessages(flashMessages) { var currentFlash = new Array(); for (var type in flashMessages) { for (var key in flashMessages[type]) { if (!currentFlash.includes(flashMessages[type][key])) { currentFlash.push(flashMessages[type][key]); SovNotification.add(type, flashMessages[type][key]); } } } } static checkFormValidity(formId) { if (!document.getElementById(formId.substr(1)).checkValidity()) { document.getElementById(formId.substr(1)).reportValidity() return false; } else { return true; } } static initCountSmsCharacter(countSmsTextareaClass) { $(countSmsTextareaClass).each(function () { $(this).after('
'); SovTools.displaySmsTotalCharacter($(this)); $(this).on('keyup', function () { SovTools.displaySmsTotalCharacter($(this)); }); }) } static displaySmsTotalCharacter($textarea) { var totalCharacter = $textarea.val().length; var totalCharacterCurrentSms = totalCharacter % 160; if (totalCharacterCurrentSms == 0 && totalCharacter > 0) { totalCharacterCurrentSms = 160; } let totalSms = Math.ceil(totalCharacter / 160); $textarea.next().html(totalCharacterCurrentSms + '/160 -' + totalSms + ' sms'); } }