MediaWiki:Common.js: Difference between revisions

From Weegeepie Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Tag: Reverted
Line 22: Line 22:
             var videoUrl = 'https://www.youtube.com/watch?v=' + videoId + '&t=0s';
             var videoUrl = 'https://www.youtube.com/watch?v=' + videoId + '&t=0s';


             // Append the link dynamically
             // Append the link dynamically with inline styles
             $('#ca-talk').append(
             $('#ca-talk').append(
                 $('<a/>')
                 $('<a/>')
                     .addClass('hover-community-header-wrapper')
                     .addClass('hover-community-header-wrapper')
                    .css({
                        'padding-top': '1.25em',
                        'padding-left': '8px',
                        'padding-right': '8px',
                    }) // Add inline styles
                     .append($('<div/>')
                     .append($('<div/>')
                         .addClass('wgp-ep-msg')
                         .addClass('wgp-ep-msg')
Line 46: Line 51:
             $('<a/>')
             $('<a/>')
                 .addClass('hover-community-header-wrapper')
                 .addClass('hover-community-header-wrapper')
                .css({
                    'padding-top': '1.25em',
                    'padding-left': '8px',
                    'padding-right': '8px',
                }) // Add inline styles
                 .append($('<div/>')
                 .append($('<div/>')
                     .addClass('wgp-ep-msg')
                     .addClass('wgp-ep-msg')
Line 54: Line 64:
     }
     }
});
});





Revision as of 19:43, 10 December 2024

/* Any JavaScript here will be loaded for all users on every page load. */

setTimeout(500);

function isMobile() {
return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
}

if (!isMobile()) {

$(document).ready(function () {
    // YouTube API configuration
    var apiKey = 'AIzaSyA4iL2YEMH7m1vNZPkAhCKpPcEd-A0VIA4'; // Replace with your YouTube Data API key
    var channelId = 'UChratm8_g--6XGqSAz7KF8g'; // Replace with your channel's ID
    var apiURL = 'https://www.googleapis.com/youtube/v3/search?key=' + apiKey + '&channelId=' + channelId + '&part=snippet,id&order=date&maxResults=1';
    var fallbackVideoUrl = 'https://www.youtube.com/watch?v=9driCvToAOA&t=0s'; // Hardcoded fallback URL

    // Fetch the latest video
    $.getJSON(apiURL, function (data) {
        if (data.items && data.items.length > 0) {
            var videoId = data.items[0].id.videoId;
            var videoUrl = 'https://www.youtube.com/watch?v=' + videoId + '&t=0s';

            // Append the link dynamically with inline styles
            $('#ca-talk').append(
                $('<a/>')
                    .addClass('hover-community-header-wrapper')
                    .css({
                        'padding-top': '1.25em',
                        'padding-left': '8px',
                        'padding-right': '8px',
                    }) // Add inline styles
                    .append($('<div/>')
                        .addClass('wgp-ep-msg')
                        .text('Click here to view the latest episode!')
                    )
                    .attr('href', videoUrl)
            );
        } else {
            console.error('No videos found for the channel. Falling back to hardcoded link.');
            appendFallbackLink();
        }
    }).fail(function (jqXHR, textStatus, errorThrown) {
        console.error('YouTube API request failed:', textStatus, errorThrown);
        appendFallbackLink();
    });

    // Fallback to the hardcoded link
    function appendFallbackLink() {
        $('#ca-talk').append(
            $('<a/>')
                .addClass('hover-community-header-wrapper')
                .css({
                    'padding-top': '1.25em',
                    'padding-left': '8px',
                    'padding-right': '8px',
                }) // Add inline styles
                .append($('<div/>')
                    .addClass('wgp-ep-msg')
                    .text('Click here to view the latest episode!')
                )
                .attr('href', fallbackVideoUrl)
        );
    }
});


}

var toc, toggleLink;
try {
  toc = document.getElementById('toc').getElementsByTagName('ul')[0];
  toggleLink = document.getElementById('toctogglecheckbox');
  // if (tocIsHidden()) {
  toggleToc();
  // }
} catch (error) {
  console.log('erred', error);
}
function tocIsHidden () {
    return !toc || !toggleLink || window.getComputedStyle(toc).display !== 'block';
}

function toggleToc() {
  var hidden = tocIsHidden();
  if (hidden && document.cookie.indexOf('hidetoc=0') > -1) {
    toggleLink.click();
    // changeText(toggleLink, tocShowText);
    // toc.style.display = 'none';
  } else if (!hidden && document.cookie.indexOf('hidetoc=1') > -1) {
    toggleLink.click();
    // changeText(toggleLink, tocHideText);
    // toc.style.display = 'block';
  }
}
toggleLink && toggleLink.addEventListener('click', function () {
  var isHidden = tocIsHidden();
  document.cookie = isHidden
    ? "hidetoc=1"
    : "hidetoc=0";
});