|
|
سطر ٣: |
سطر ٣: |
| /* الجافاسكريبت الموضوع هنا سيتم تحميله لكل المستخدمين مع كل تحميل للصفحة. */ | | /* الجافاسكريبت الموضوع هنا سيتم تحميله لكل المستخدمين مع كل تحميل للصفحة. */ |
| | | |
− | /* Liste des équipements */ | + | /* GF Cookie */ |
− | function changeDisplay(content){
| + | (function () { |
− |
| |
− | var boutonSwitch = content.querySelector(".button");
| |
− | var frereList = content.nextElementSibling;
| |
− |
| |
− | boutonSwitch.addEventListener("click", function(){
| |
− | if (this.classList.length == 1) {
| |
− | this.classList.add('tabber-active');
| |
− | frereList.classList.remove('tabber-noactive');
| |
− | } else {
| |
− | this.classList.remove('tabber-active');
| |
− | frereList.classList.add('tabber-noactive');
| |
− | }
| |
− | });
| |
− | }
| |
− | | |
− | /* Liste des monstres */
| |
− | function init(list){
| |
− | list.forEach(function(el){
| |
− | el.classList.remove("tabber-noactive");
| |
− | })
| |
− | }
| |
− | | |
− | function displayTableMob(content) {
| |
− |
| |
− | var allMob = content.querySelectorAll('.card-mob');
| |
− | var buttons = content.querySelectorAll('div.button');
| |
− |
| |
− | init(allMob);
| |
− |
| |
− | buttons.forEach(function(button){
| |
− |
| |
− | button.addEventListener("click", function() {
| |
− | var activeButton = content.querySelector(".button.tabber-active");
| |
− | if (this === activeButton) {
| |
− | activeButton.classList.remove("tabber-active");
| |
− | init(allMob);
| |
− | return
| |
− | }
| |
− | if (activeButton !== null) {
| |
− | activeButton.classList.remove("tabber-active");
| |
− | }
| |
− | init(allMob);
| |
− | button.classList.add("tabber-active");
| |
− | var caract = Object.keys(this.dataset)[0]
| |
− | var value = this.dataset[caract];
| |
− | allMob.forEach(function(mob){
| |
− | if (mob.dataset[caract] !== value ) {
| |
− | mob.classList.add("tabber-noactive");
| |
− | }
| |
− | });
| |
− | });
| |
− | });
| |
− | }
| |
− | | |
− | /* BOUTON RETOUR VERS LE HAUT */
| |
− | function addButtonTop() {
| |
− |
| |
− | var contentText = document.querySelector("div#mw-content-text");
| |
− |
| |
− | if (contentText !== null) {
| |
− |
| |
− | var divButtonTop = document.createElement("div");
| |
− | divButtonTop.classList.add("top-button");
| |
− | contentText.appendChild(divButtonTop);
| |
− | }
| |
− | }
| |
− | | |
− | function buttonTop() {
| |
− |
| |
− | var balise = document.querySelector("div#mw-page-header-links");
| |
− | var topButton = document.querySelector(".top-button");
| |
− |
| |
− | if (balise !== null) {
| |
− | var options = {
| |
− | root: null,
| |
− | rootMargin: "0px",
| |
− | threshold: 0,
| |
− | };
| |
− |
| |
− | var observer = new IntersectionObserver(callback, options);
| |
− | observer.observe(balise);
| |
− | | |
− | function callback(entries) {
| |
− | entries.forEach(function(entry) {
| |
− | if (entry.isIntersecting) {
| |
− | topButton.classList.remove("show-button");
| |
− | } else {
| |
− | topButton.classList.add("show-button");
| |
− | }
| |
− | });
| |
− | }
| |
− | | |
− | topButton.addEventListener("click", function(){
| |
− | document.documentElement.scrollTo({
| |
− | top: 0
| |
− | });
| |
− | });
| |
− | }
| |
− | }
| |
− | | |
− | /* Cookies */
| |
− | function cookies() { | |
| var req = new XMLHttpRequest(); | | var req = new XMLHttpRequest(); |
| req.addEventListener('load', function (ev) { | | req.addEventListener('load', function (ev) { |
سطر ١٢٠: |
سطر ١٨: |
| req.open('GET', "https://s3-static.geo.gfsrv.net/cookiebanner/version.json"); | | req.open('GET', "https://s3-static.geo.gfsrv.net/cookiebanner/version.json"); |
| req.send(); | | req.send(); |
− | }
| |
− |
| |
− | /* =======================================
| |
− | FONCTION GLOBALE
| |
− | Exécutée une fois au chargement de la page
| |
− | ========================================== */
| |
− |
| |
− | (function(){
| |
− | fixInsecureFavicon()
| |
− |
| |
− | var ccontainer = document.querySelectorAll("div#mw-content-text .list-equip");
| |
− | ccontainer.forEach(function(e){
| |
− | changeDisplay(e);
| |
− | });
| |
− |
| |
− | var mobContainers = document.querySelectorAll("div#mw-content-text div.mob-container");
| |
− | mobContainers.forEach( function(mobContainer) {
| |
− | displayTableMob(mobContainer)
| |
− | });
| |
− |
| |
− | var loadScripts = document.querySelectorAll("div[data-load-javascript]");
| |
− |
| |
− | /* Charge des scripts spécifiques au chargement de certaines pages */
| |
− | if (loadScripts.length) {
| |
− | var checkArray = new Array(0);
| |
− | loadScripts.forEach(function(loadScript){
| |
− | script = loadScript.dataset["loadJavascript"];
| |
− | if (checkArray.indexOf(script) === -1) {
| |
− | checkArray.push(script);
| |
− | switch (script) {
| |
− | case "tabber" : // charge le script pour utiliser les tabber
| |
− | mw.loader.load("/index.php?title=MediaWiki:Script/Tabber.js&action=raw&ctype=text/javascript");
| |
− | break;
| |
− | case "skills" : // charge le script pour utiliser le simulateur de compétence
| |
− | mw.loader.load("/index.php?title=MediaWiki:Script/Skills.js&action=raw&ctype=text/javascript");
| |
− | break;
| |
− | case "modal" : // charge le script pour utiliser les modal
| |
− | mw.loader.load("/index.php?title=MediaWiki:Script/Modal.js&action=raw&ctype=text/javascript");
| |
− | break;
| |
− | case "switch" : // charge le script pour utiliser les changements de contenu
| |
− | mw.loader.load("/index.php?title=MediaWiki:Script/Switch.js&action=raw&ctype=text/javascript");
| |
− | break;
| |
− | }
| |
− | }
| |
− | });
| |
− | }
| |
− | var userGroup = mw.config.get("wgUserGroups")
| |
− |
| |
− | if (userGroup.indexOf("*") !== 0 || userGroup.length >= 2) {
| |
− | mw.loader.load("/index.php?title=MediaWiki:Script/Redactor.js&action=raw&ctype=text/javascript");
| |
− | }
| |
− | addButtonTop();
| |
− | buttonTop();
| |
− | cookies()
| |
| })(); | | })(); |