Немає опису редагування
Немає опису редагування
Рядок 871: Рядок 871:




// Додавання елементів у бічне меню для всіх користувачів
/// Найпростіший спосіб - додаємо елементи в будь-який список меню
function addMenuItemsToAllUsers() {
function simpleAddMenu() {
     const menuContainer = document.querySelector('#mw-mf-page-left');
     const menu = document.querySelector('#mw-mf-page-left');
   
     if (menu) {
     if (menuContainer) {
         // Створюємо новий список якщо потрібно
         // Знаходимо основний список навігації (який видно всім)
        let navList = menu.querySelector('#p-navigation');
         const mainNavList = menuContainer.querySelector('#p-navigation');
         if (!navList) {
            navList = document.createElement('ul');
            navList.id = 'p-navigation';
            navList.className = 'toggle-list__list';
            menu.prepend(navList);
        }
          
          
         if (mainNavList) {
         // Додаємо елементи
            // Перевіряємо чи вже додано наші елементи
        if (!navList.innerHTML.includes('Головна сторінка')) {
            const existingItems = mainNavList.querySelectorAll('.toggle-list-item');
            navList.innerHTML += `
            let hasMainPage = false;
                 <li class="toggle-list-item">
            let hasRandomPage = false;
                     <a class="toggle-list-item__anchor" href="/w/index.php/%D0%93%D0%BE%D0%BB%D0%BE%D0%B2%D0%BD%D0%B0_%D1%81%D1%82%D0%BE%D1%80%D1%96%D0%BD%D0%BA%D0%B0">
           
            existingItems.forEach(item => {
                const text = item.textContent;
                if (text.includes('Головна') || text.includes('Домашня')) {
                    hasMainPage = true;
                }
                if (text.includes('Випадкова')) {
                    hasRandomPage = true;
                 }
            });
           
            // Додаємо Головну сторінку якщо немає
            if (!hasMainPage) {
                const mainPageItem = document.createElement('li');
                mainPageItem.className = 'toggle-list-item';
                mainPageItem.innerHTML = `
                     <a class="toggle-list-item__anchor menu__item--mainpage"  
                      href="/w/index.php/%D0%93%D0%BE%D0%BB%D0%BE%D0%B2%D0%BD%D0%B0_%D1%81%D1%82%D0%BE%D1%80%D1%96%D0%BD%D0%BA%D0%B0"
                      data-mw="interface">
                         <span class="minerva-icon minerva-icon--home"></span>
                         <span class="minerva-icon minerva-icon--home"></span>
                         <span class="toggle-list-item__label">Головна сторінка</span>
                         Головна сторінка
                     </a>
                     </a>
                 `;
                 </li>
                mainNavList.prepend(mainPageItem);
                 <li class="toggle-list-item">
            }
                     <a class="toggle-list-item__anchor" href="/w/index.php/%D0%A1%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D1%8C%D0%BD%D0%B0:%D0%92%D0%B8%D0%BF%D0%B0%D0%B4%D0%BA%D0%BE%D0%B2%D0%B0_%D1%81%D1%82%D0%BE%D1%80%D1%96%D0%BD%D0%BA%D0%B0">
           
            // Додаємо Випадкову статтю якщо немає
            if (!hasRandomPage) {
                 const randomPageItem = document.createElement('li');
                randomPageItem.className = 'toggle-list-item';
                randomPageItem.innerHTML = `
                     <a class="toggle-list-item__anchor menu__item--randompage"  
                      href="/w/index.php/%D0%A1%D0%BF%D0%B5%D1%86%D1%96%D0%B0%D0%BB%D1%8C%D0%BD%D0%B0:%D0%92%D0%B8%D0%BF%D0%B0%D0%B4%D0%BA%D0%BE%D0%B2%D0%B0_%D1%81%D1%82%D0%BE%D1%80%D1%96%D0%BD%D0%BA%D0%B0"
                      data-mw="interface">
                         <span class="minerva-icon minerva-icon--die"></span>
                         <span class="minerva-icon minerva-icon--die"></span>
                         <span class="toggle-list-item__label">Випадкова стаття</span>
                         Випадкова стаття
                     </a>
                     </a>
                 `;
                 </li>
               
            `;
                // Вставляємо після Головної сторінки або на початок
                const mainPage = mainNavList.querySelector('.menu__item--mainpage');
                if (mainPage) {
                    mainPage.closest('.toggle-list-item').after(randomPageItem);
                } else {
                    mainNavList.prepend(randomPageItem);
                }
            }
         }
         }
     }
     }
}
}


// Запускаємо при завантаженні та при відкритті меню
// Запускаємо часто
document.addEventListener('DOMContentLoaded', function() {
setInterval(simpleAddMenu, 1000);
    addMenuItemsToAllUsers();
   
    // Слідкуємо за відкриттям меню
    const menuCheckbox = document.querySelector('#main-menu-input');
    if (menuCheckbox) {
        menuCheckbox.addEventListener('change', function() {
            if (this.checked) {
                setTimeout(addMenuItemsToAllUsers, 100);
            }
        });
    }
   
    // Також перевіряємо при зміні стану авторизації
    setInterval(addMenuItemsToAllUsers, 1000);
});