MediaWiki:Common.js: различия между версиями

Нет описания правки
Попытка #2
Строка 77: Строка 77:




/* Функция для вставки VK-видео на страницу для шаблона VK-video */
/* Функция для вставки VK-видео на страницу для шаблона VKVideo */
window.embedVKVideo = function(containerId, oid, id, width, height) {
document.addEventListener('DOMContentLoaded', function() {
     var container = document.getElementById(containerId);
     console.log('VK Video Embed: Script loaded');
    if (!container) return;
      
      
     var iframe = document.createElement('iframe');
     var videoContainers = document.querySelectorAll('.vk-video-js');
     iframe.src = 'https://vk.com/video_ext.php?oid=' + oid + '&id=' + id;
     console.log('VK Video Embed: Found ' + videoContainers.length + ' containers');
    iframe.width = width || 640;
    iframe.height = height || 360;
    iframe.frameBorder = '0';
    iframe.allowFullscreen = true;
      
      
     container.innerHTML = '';
     videoContainers.forEach(function(container, index) {
    container.appendChild(iframe);
        console.log('VK Video Embed: Processing container ' + index);
};
       
 
/* Автоматическая инициализация при загрузке VK-видео (к предыдущему пункту) */
document.addEventListener('DOMContentLoaded', function() {
    var videoContainers = document.querySelectorAll('.vk-video-js');
    videoContainers.forEach(function(container) {
         var oid = container.getAttribute('data-oid');
         var oid = container.getAttribute('data-oid');
         var id = container.getAttribute('data-id');
         var id = container.getAttribute('data-id');
         var width = container.getAttribute('data-width') || 640;
         var width = container.getAttribute('data-width') || '640';
         var height = container.getAttribute('data-height') || 360;
         var height = container.getAttribute('data-height') || '360';
       
        console.log('VK Video Embed: oid=' + oid + ', id=' + id);
          
          
         if (oid && id) {
         if (oid && id) {
             var iframe = document.createElement('iframe');
             try {
            iframe.src = 'https://vk.com/video_ext.php?oid=' + oid + '&id=' + id;
                var iframe = document.createElement('iframe');
            iframe.width = width;
                iframe.src = 'https://vk.com/video_ext.php?oid=' + oid + '&id=' + id;
            iframe.height = height;
                iframe.width = width;
            iframe.frameBorder = '0';
                iframe.height = height;
            iframe.allowFullscreen = true;
                iframe.frameBorder = '0';
              
                iframe.allowFullscreen = true;
            container.innerHTML = '';
                iframe.style.border = 'none';
             container.appendChild(iframe);
                iframe.style.borderRadius = '4px';
               
                /* Очищаем контейнер и добавляем iframe */
                container.innerHTML = '';
                container.appendChild(iframe);
               
                console.log('VK Video Embed: Successfully embedded video ' + index);
               
             } catch (error) {
                console.error('VK Video Embed: Error creating iframe:', error);
                container.innerHTML = '<div style="color: red; padding: 20px; text-align: center;">Ошибка создания видео: ' + error.message + '</div>';
            }
        } else {
            console.error('VK Video Embed: Missing oid or id for container ' + index);
             container.innerHTML = '<div style="color: red; padding: 20px; text-align: center;">Ошибка: не указаны ID видео (oid или id)</div>';
         }
         }
     });
     });
});
});