/* global $, window, document */
$(document).ready(function() {
  // Функция для получения базового пути API
  const getApiPath = () => {
    // Проверяем, содержит ли путь /ms/ (продакшн на dev.bro-js.ru)
    const pathname = window.location.pathname;
    const isMsPath = pathname.includes('/ms/questioneer');
    
    if (isMsPath) {
      // Для продакшна: если в пути есть /ms/, то API доступно по /ms/questioneer/api
      return '/ms/questioneer/api';
    } else {
      // Для локальной разработки: формируем путь к API для главной страницы
      // Убираем завершающий слеш, если он есть
      const basePath = pathname.endsWith('/') ? pathname.slice(0, -1) : pathname;
      
      // Путь до API приложения
      return basePath + '/api';
    }
  };
  
  // Функция для загрузки списка опросов
  const loadQuestionnaires = () => {
    $.ajax({
      url: getApiPath() + '/questionnaires',
      method: 'GET',
      success: function(result) {
        if (result.success) {
          renderQuestionnaires(result.data);
        } else {
          $('#questionnaires-container').html(`<p class="error">Ошибка: ${result.error}</p>`);
        }
      },
      error: function(error) {
        console.error('Error loading questionnaires:', error);
        $('#questionnaires-container').html('<p class="error">Не удалось загрузить опросы. Пожалуйста, попробуйте позже.</p>');
      }
    });
  };
  
  // Функция для отображения списка опросов
  const renderQuestionnaires = (questionnaires) => {
    if (!questionnaires || questionnaires.length === 0) {
      $('#questionnaires-container').html('<p>У вас еще нет созданных опросов.</p>');
      return;
    }
    
    // Получаем базовый путь (для работы и с /questioneer, и с /ms/questioneer)
    const basePath = (() => {
      const pathname = window.location.pathname;
      const isMsPath = pathname.includes('/ms/questioneer');
      
      if (isMsPath) {
        // Для продакшна: нужно использовать /ms/questioneer/ для ссылок
        return '/ms/questioneer/';
      } else {
        // Для локальной разработки: используем текущий путь
        return pathname.endsWith('/') ? pathname : pathname + '/';
      }
    })();
    
    const questionnairesHTML = questionnaires.map(q => `
      <div class="questionnaire-item">
        <h3>${q.title}</h3>
        <p>${q.description || 'Нет описания'}</p>
        <p>Создан: ${new Date(q.createdAt).toLocaleString()}</p>
        <div class="questionnaire-links">
          <a href="${basePath}admin/${q.adminLink}" class="btn btn-small">Редактировать</a>
          <a href="${basePath}poll/${q.publicLink}" class="btn btn-small btn-primary" target="_blank">Смотреть как участник</a>
        </div>
      </div>
    `).join('');
    
    $('#questionnaires-container').html(questionnairesHTML);
  };
  
  // Инициализация страницы
  loadQuestionnaires();
  
  // Обновление данных каждые 30 секунд
  setInterval(loadQuestionnaires, 30000);
}); 