document.addEventListener("DOMContentLoaded", function () { const loadMoreBtn = document.getElementById("load-more-btn"); const newsContainer = document.getElementById("news-container"); const videoContainer = document.getElementById("video-container"); const newsContent = document.getElementById("news-content"); const videoContent = document.getElementById("videos-content"); const tabs = document.querySelectorAll(".tab-btn"); const tabIndicator = document.getElementById("tab-indicator"); let newsOffset = 0; let videoOffset = 0; const itemsPerLoad = 3; setTabIndicatorPosition(tabs[0]); tabs[0].classList.add("text-white", "font-medium"); tabs.forEach((tab) => { tab.addEventListener("click", () => { setTabIndicatorPosition(tab); tabs.forEach((t) => { t.classList.remove("text-white", "font-medium"); t.classList.add("text-gray-600"); }); tab.classList.add("text-white", "font-medium"); tab.classList.remove("text-gray-600"); const targetTab = tab.getAttribute("data-tab"); document.querySelectorAll(".tab-content").forEach((content) => { content.classList.add("hidden"); }); document .getElementById(`${targetTab}-content`) .classList.remove("hidden"); // Update button visibility when switching tabs updateLoadMoreButtonVisibility(); }); }); function setTabIndicatorPosition(activeTab) { tabIndicator.style.width = `${activeTab.offsetWidth}px`; tabIndicator.style.left = `${activeTab.offsetLeft}px`; } function updateLoadMoreButtonVisibility() { if (newsContent.classList.contains("hidden") === false) { if (newsOffset >= moreArticles.length) { loadMoreBtn.classList.add("hidden"); } else { loadMoreBtn.classList.remove("hidden"); } } else { if (videoOffset >= moreVideos.length) { loadMoreBtn.classList.add("hidden"); } else { loadMoreBtn.classList.remove("hidden"); } } } const moreArticles = [ { image: "https://developers.elementor.com/docs/assets/img/elementor-placeholder-image.png", title: "Panduan Lengkap Perizinan AMDAL Terbaru", description: "Prosedur dan persyaratan terbaru untuk mendapatkan persetujuan AMDAL dalam proyek pembangunan skala besar di Indonesia...", published_date: "10 April 2025", slug: "panduan-perizinan-amdal-terbaru", }, { image: "https://developers.elementor.com/docs/assets/img/elementor-placeholder-image.png", title: "Regulasi UKL-UPL: Apa yang Perlu Diketahui", description: "Panduan praktis tentang dokumen Upaya Pengelolaan Lingkungan dan Upaya Pemantauan Lingkungan untuk usaha skala menengah...", published_date: "12 April 2025", slug: "regulasi-ukl-upl-terbaru", }, { image: "https://developers.elementor.com/docs/assets/img/elementor-placeholder-image.png", title: "Perubahan Kebijakan Perizinan Lingkungan 2025", description: "Analisis mendalam tentang perubahan kebijakan perizinan lingkungan dan dampaknya terhadap sektor industri di Indonesia...", published_date: "15 April 2025", slug: "perubahan-kebijakan-perizinan-lingkungan-2025", }, ]; const moreVideos = [ { src: "https://www.w3schools.com/html/movie.mp4", title: "Tutorial Pengisian Formulir Izin Lingkungan", description: "Panduan langkah demi langkah cara mengisi formulir perizinan lingkungan dengan benar dan efisien...", date: "8 April 2025", }, { src: "https://www.w3schools.com/html/movie.mp4", title: "Proses Sidang Perizinan Lingkungan: Apa yang Harus Dipersiapkan", description: "Penjelasan detail tentang tahapan sidang perizinan lingkungan dan tips sukses menghadapinya...", date: "11 April 2025", }, { src: "https://www.w3schools.com/html/movie.mp4", title: "Studi Kasus: Penolakan Izin Lingkungan dan Solusinya", description: "Analisis kasus penolakan izin lingkungan dan strategi untuk mengatasi masalah perizinan yang umum terjadi...", date: "14 April 2025", }, ]; loadMoreBtn.addEventListener("click", function () { const loadingText = loadMoreBtn.innerHTML; loadMoreBtn.innerHTML = ` Loading... `; setTimeout(() => { if (newsContent.classList.contains("hidden") === false) { const remainingArticles = moreArticles.slice( newsOffset, newsOffset + itemsPerLoad ); remainingArticles.forEach((article) => { const articleElement = createArticleElement(article); newsContainer.appendChild(articleElement); }); newsOffset += remainingArticles.length; } else { const remainingVideos = moreVideos.slice( videoOffset, videoOffset + itemsPerLoad ); remainingVideos.forEach((video) => { const videoElement = createVideoElement(video); videoContainer.appendChild(videoElement); }); videoOffset += remainingVideos.length; } loadMoreBtn.innerHTML = loadingText; updateLoadMoreButtonVisibility(); }, 1000); }); updateLoadMoreButtonVisibility(); function createArticleElement(article) { const div = document.createElement("div"); div.className = "bg-white rounded-xl overflow-hidden shadow-lg transition-all duration-300 hover:shadow-2xl hover:-translate-y-2 group"; div.innerHTML = `