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




 
// Додавання елементів у бічне меню для всіх користувачів
// Додавання елементів в конкретне місце
function addMenuItemsToAllUsers() {
function addMenuItemsToSpecificPlace() {
     const menuContainer = document.querySelector('#mw-mf-page-left');
     const menu = document.querySelector('#mw-mf-page-left');
      
      
     if (menu) {
     if (menuContainer) {
         // Знаходимо список навігації
         // Знаходимо основний список навігації (який видно всім)
         const navList = menu.querySelector('#p-navigation');
         const mainNavList = menuContainer.querySelector('#p-navigation');
          
          
         if (navList && !navList.querySelector('.menu__item--mainpage')) {
         if (mainNavList) {
             // Створюємо елементи
             // Перевіряємо чи вже додано наші елементи
             const mainPageItem = createMenuItem(
             const existingItems = mainNavList.querySelectorAll('.toggle-list-item');
                'Головна сторінка',
            let hasMainPage = false;
                '/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',
             let hasRandomPage = false;
                'home'
             );
              
              
             const randomItem = createMenuItem(
             existingItems.forEach(item => {
                 'Випадкова стаття',
                const text = item.textContent;
                 '/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 (text.includes('Головна') || text.includes('Домашня')) {
                 'die'
                    hasMainPage = true;
             );
                 }
                if (text.includes('Випадкова')) {
                    hasRandomPage = true;
                 }
             });
              
              
             // Додаємо на початок списку
             // Додаємо Головну сторінку якщо немає
             navList.prepend(randomItem);
             if (!hasMainPage) {
             navList.prepend(mainPageItem);
                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="toggle-list-item__label">Головна сторінка</span>
                    </a>
                `;
                mainNavList.prepend(mainPageItem);
             }
           
            // Додаємо Випадкову статтю якщо немає
            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="toggle-list-item__label">Випадкова стаття</span>
                    </a>
                `;
               
                // Вставляємо після Головної сторінки або на початок
                const mainPage = mainNavList.querySelector('.menu__item--mainpage');
                if (mainPage) {
                    mainPage.closest('.toggle-list-item').after(randomPageItem);
                } else {
                    mainNavList.prepend(randomPageItem);
                }
            }
         }
         }
     }
     }
}
}


// Функція для створення пункту меню
// Запускаємо при завантаженні та при відкритті меню
function createMenuItem(text, href, iconType) {
document.addEventListener('DOMContentLoaded', function() {
     const li = document.createElement('li');
     addMenuItemsToAllUsers();
    li.className = 'toggle-list-item';
      
      
     const iconClass = iconType === 'home' ? 'minerva-icon--home' : 'minerva-icon--die';
    // Слідкуємо за відкриттям меню
      
     const menuCheckbox = document.querySelector('#main-menu-input');
    li.innerHTML = `
     if (menuCheckbox) {
        <a class="toggle-list-item__anchor menu__item--${iconType}" href="${href}">
        menuCheckbox.addEventListener('change', function() {
             <span class="minerva-icon ${iconClass}"></span>
             if (this.checked) {
             <span class="toggle-list-item__label">${text}</span>
                setTimeout(addMenuItemsToAllUsers, 100);
         </a>
             }
     `;
         });
     }
      
      
     return li;
     // Також перевіряємо при зміні стану авторизації
}
    setInterval(addMenuItemsToAllUsers, 1000);
 
});
document.addEventListener('DOMContentLoaded', addMenuItemsToSpecificPlace);