function decrypt(encryptedText, key) {
var decryptedBytes = CryptoJS.AES.decrypt(
{
ciphertext: CryptoJS.enc.Base64.parse(encryptedText)
},
CryptoJS.enc.Utf8.parse(key),
{ mode: CryptoJS.mode.ECB }
);
var plaintext = decryptedBytes.toString(CryptoJS.enc.Utf8);
return plaintext;
}
var encryptedText = "P6WsUEHMRTa620LtYJ3Nqu9yKhGev0ZL4Ps+z61kWN4="; // Замените на свой зашифрованный текст
var key = "mysecretpassword"; // Замените на свой ключ
var decryptedText = decrypt(encryptedText, key);
console.log("Decrypted Text:", decryptedText);
function createApp () { //добавляем содержимое в html-вёрстку
// прочитать список
studentList = JSON.parse(localStorage.getItem("myKey") ?? '[]');
const container = document.querySelector('.conteiner'); // подключаем контейнер
const tableObj = createTable(); // создаем таблицу
container.append(tableObj.table); // добавляем в разметку созданную таблицу
const addBtn = document.querySelector('.add-btn'); // поключаем кнопку
addBtn.addEventListener('click', () => { // навешиваем событие на кнопку, чтобы при клике срабатывала функция
addStudent(studentsList, tableObj.tbody); // функция добавления студента из формы.
// При каждом обновлении сохраняем
localStorage.setItem("myKey",JSON.stringify(studentsList));
});
// А это не надо
// localStorage.setItem("myKey",JSON.stringify(studentsList));
}
const containerSelector = '.selectboxss';
const itemClass = 'selectoption';
const itemSelector = `${containerSelector} .${itemClass}`;
const getClasses = el => Array.prototype.filter.call(el.classList, n => n !== itemClass);
//const getClass = el => el.className.match(RegExp(`${itemClass}-\\d+`))[0];
function updateClasses(item) {
const container = item.closest(containerSelector);
const { classList: cl } = container;
cl.remove(...Array.prototype.flatMap.call(container.querySelectorAll(itemSelector), getClasses));
cl.add(...getClasses(item));
//cl.remove(...Array.from(container.querySelectorAll(itemSelector), getClass));
//cl.add(getClass(li));
}
document.querySelectorAll(itemSelector).forEach(function(n) {
n.addEventListener('click', this);
}, e => updateClasses(e.currentTarget));
document.addEventListener('click', e => {
const item = e.target.closest(itemSelector);
if (item) {
updateClasses(item);
}
});
\b(\d[\d\w.-]*)
\b(\d[^ ]*)
preg_match('/\b(\d[^ ]*)/', $product->name, $matches);
moment(String)
) эта самая строка должна соответствовать одному из форматов ISO 8601. В случае если строка стандарту не соответствует - работа во всех браузерах не гарантируется. Там есть специальное предупреждение по этому поводу и примеры строк, которые будут соответствовать. Вероятнее всего вы столкнулись именно с этим - ваши даты не парсятся в определенных браузерах.