// document.getElementById("email").addEventListener("keyup", function() { // var password = this.value; // var strengthStatus = document.getElementById("password-strength-status"); // var colorClass = ''; // console.log("Password input:", password); // Menambahkan log untuk debug // // Regex untuk memeriksa kriteria kata sandi // var hasUpper = /[A-Z]/.test(password); // Memeriksa huruf besar // var hasLower = /[a-z]/.test(password); // Memeriksa huruf kecil // var hasNumber = /\d/.test(password); // Memeriksa angka // var hasSymbol = /[!@#$%^&*(),.?":{}|<>]/.test(password); // Memeriksa simbol // // Cek apakah kata sandi memenuhi semua kriteria // if (hasUpper && hasLower && hasNumber && hasSymbol) { // strengthStatus.textContent = 'Kata sandi valid'; // colorClass = 'valid'; // Jika valid, set warna hijau // } else { // strengthStatus.textContent = 'Kata sandi tidak memenuhi syarat'; // colorClass = 'invalid'; // Jika tidak memenuhi syarat, set warna merah // } // // Ubah warna input dan border sesuai dengan status // this.classList.remove("invalid", "valid"); // this.classList.add(colorClass); // // Set warna indikator kekuatan // strengthStatus.className = colorClass; // }); $(document).ready(function () { $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } }); function setupLinkChecker(inputSelector, feedbackSelector, checkUrl) { let typingTimer; let delay = 500; $(inputSelector).on('keyup', function () { clearTimeout(typingTimer); const inputField = $(this); const linkValue = inputField.val(); if (linkValue.length > 0) { typingTimer = setTimeout(function () { $.ajax({ url: checkUrl, method: 'POST', data: { link: linkValue }, success: function (response) { console.log('Response:', response); const feedbackEl = $(feedbackSelector); if (response.exists) { feedbackEl .removeClass('d-none text-success') .addClass('text-danger') .text('Link tersebut sudah ada di database!'); inputField.addClass('is-invalid').removeClass('is-valid'); } else { feedbackEl .removeClass('d-none text-danger') .addClass('text-success') .text('Link tidak ada di database.'); inputField.addClass('is-valid').removeClass('is-invalid'); } }, error: function (xhr, status, error) { console.error('AJAX Error:', error); } }); }, delay); } else { $(feedbackSelector).addClass('d-none').text(''); inputField.removeClass('is-invalid is-valid'); } }); } // Panggil fungsi untuk masing-masing input setupLinkChecker('#newsLink', '#newsLinkFeedback', '/dashboard/news/check-link'); setupLinkChecker('#mediaMonitoringLink', '#mediaMonitoringLinkFeedback', '/dashboard/media-monitorings/check-link'); setupLinkChecker('#reportLink', '#reportLinkFeedback', '/dashboard/reports/check-link'); setupLinkChecker('#contentRecapLink', '#contentRecapLinkFeedback', '/dashboard/content-recaps/check-link'); }); document.querySelector('.image-preview').addEventListener('change', function(event) { var reader = new FileReader(); reader.onload = function(e) { // Set the image source to the preview document.getElementById('imagePreview').src = e.target.result; // Show the modal $('#imagePreviewModal').modal('show'); }; reader.readAsDataURL(event.target.files[0]); }); // Mendapatkan file PDF dari input document.querySelector('.pdf-preview').addEventListener('change', function(event) { var file = event.target.files[0]; if (file && file.type === 'application/pdf') { var reader = new FileReader(); reader.onload = function(e) { var pdfDataUrl = e.target.result; var iframe = document.getElementById('pdfPreviewIframe'); iframe.src = pdfDataUrl; // Menampilkan file PDF di iframe // Menampilkan modal var myModal = new bootstrap.Modal(document.getElementById('pdfPreviewModal'), { keyboard: true }); myModal.show(); }; reader.readAsDataURL(file); // Membaca file PDF sebagai data URL } else { alert('Please upload a valid PDF file.'); } });