« MediaWiki:Common.js » : différence entre les versions
Apparence
Aucun résumé des modifications |
Aucun résumé des modifications |
||
| Ligne 8 : | Ligne 8 : | ||
*/ | */ | ||
(function () { | |||
function rebuildAecfcHeader() { | |||
/* | |||
* Lien global d'origine de Vector : | |||
* logo + titre + sous-titre. | |||
*/ | |||
const oldLogoLink = document.querySelector('a.mw-logo'); | |||
if (!oldLogoLink) { | |||
return; | |||
} | |||
if ( | /* | ||
* Empêche la création en double. | |||
*/ | |||
if (document.querySelector('.aecfc-brand')) { | |||
return; | return; | ||
} | } | ||
/* | /* | ||
* | * Récupère uniquement l'image du logo. | ||
*/ | */ | ||
const logoImage = | |||
oldLogoLink.querySelector('img.mw-logo-icon') || | |||
} | oldLogoLink.querySelector('img'); | ||
if (!logoImage) { | |||
console.warn('Image du logo AECFC introuvable'); | |||
return; | |||
} | |||
/* | /* | ||
* | * Nouveau conteneur général. | ||
*/ | */ | ||
const brand = document.createElement('div'); | |||
brand.className = 'aecfc-brand'; | |||
/* | /* | ||
* | * 1. Logo graphique → site public AECFC. | ||
*/ | */ | ||
const logoLink = document.createElement('a'); | |||
logoLink.className = 'mw-logo aecfc-logo-link'; | |||
logoLink.href = 'https://aecfc.org/'; | logoLink.href = 'https://aecfc.org/'; | ||
logoLink.title = 'Site officiel de l’AECFC'; | logoLink.title = 'Site officiel de l’AECFC'; | ||
| Ligne 44 : | Ligne 56 : | ||
'Accéder au site officiel de l’AECFC' | 'Accéder au site officiel de l’AECFC' | ||
); | ); | ||
logoLink.appendChild(logoImage.cloneNode(true)); | |||
/* | /* | ||
* | * Conteneur des deux liens du wiki. | ||
*/ | */ | ||
const | const textLinks = document.createElement('div'); | ||
textLinks.className = 'aecfc-text-links'; | |||
/* | |||
* 2. Accueil → page Accueil du wiki. | |||
*/ | |||
const accueilLink = document.createElement('a'); | const accueilLink = document.createElement('a'); | ||
accueilLink.className = 'aecfc- | accueilLink.className = 'aecfc-accueil-link'; | ||
accueilLink.href = | accueilLink.href = 'https://wiki.aecfc.org/wiki/Accueil'; | ||
accueilLink.textContent = 'Accueil'; | accueilLink.textContent = 'Accueil'; | ||
accueilLink.title = 'Accueil du wiki'; | accueilLink.title = 'Accueil du wiki'; | ||
/* | |||
* 3. Devoirs → page Devoirs du wiki. | |||
*/ | |||
const devoirsLink = document.createElement('a'); | const devoirsLink = document.createElement('a'); | ||
devoirsLink.className = 'aecfc- | devoirsLink.className = 'aecfc-devoirs-link'; | ||
devoirsLink.href = | devoirsLink.href = 'https://wiki.aecfc.org/wiki/Devoirs'; | ||
devoirsLink.textContent = 'Devoirs'; | devoirsLink.textContent = 'Devoirs'; | ||
devoirsLink.title = 'Consulter les devoirs'; | devoirsLink.title = 'Consulter les devoirs'; | ||
textLinks.appendChild(accueilLink); | |||
textLinks.appendChild(devoirsLink); | |||
brand.appendChild(logoLink); | |||
brand.appendChild(textLinks); | |||
/* | /* | ||
* | * Supprime entièrement l'ancien lien global | ||
* | * et le remplace par les trois liens indépendants. | ||
*/ | */ | ||
oldLogoLink.replaceWith(brand); | |||
} | } | ||
| Ligne 76 : | Ligne 98 : | ||
document.addEventListener( | document.addEventListener( | ||
'DOMContentLoaded', | 'DOMContentLoaded', | ||
rebuildAecfcHeader, | |||
{ once: true } | { once: true } | ||
); | ); | ||
} else { | } else { | ||
rebuildAecfcHeader(); | |||
} | } | ||
}); | })(); | ||
Version du 2 juillet 2026 à 16:24
/* Tout JavaScript présent ici sera exécuté par tous les utilisateurs à chaque chargement de page. */
$(function () {
$('a.mw-wiki-logo, a.mw-logo')
.attr('href', 'Accueil')
.attr('title', 'Retour a l'accueil');
});
*/
(function () {
function rebuildAecfcHeader() {
/*
* Lien global d'origine de Vector :
* logo + titre + sous-titre.
*/
const oldLogoLink = document.querySelector('a.mw-logo');
if (!oldLogoLink) {
return;
}
/*
* Empêche la création en double.
*/
if (document.querySelector('.aecfc-brand')) {
return;
}
/*
* Récupère uniquement l'image du logo.
*/
const logoImage =
oldLogoLink.querySelector('img.mw-logo-icon') ||
oldLogoLink.querySelector('img');
if (!logoImage) {
console.warn('Image du logo AECFC introuvable');
return;
}
/*
* Nouveau conteneur général.
*/
const brand = document.createElement('div');
brand.className = 'aecfc-brand';
/*
* 1. Logo graphique → site public AECFC.
*/
const logoLink = document.createElement('a');
logoLink.className = 'mw-logo aecfc-logo-link';
logoLink.href = 'https://aecfc.org/';
logoLink.title = 'Site officiel de l’AECFC';
logoLink.setAttribute(
'aria-label',
'Accéder au site officiel de l’AECFC'
);
logoLink.appendChild(logoImage.cloneNode(true));
/*
* Conteneur des deux liens du wiki.
*/
const textLinks = document.createElement('div');
textLinks.className = 'aecfc-text-links';
/*
* 2. Accueil → page Accueil du wiki.
*/
const accueilLink = document.createElement('a');
accueilLink.className = 'aecfc-accueil-link';
accueilLink.href = 'https://wiki.aecfc.org/wiki/Accueil';
accueilLink.textContent = 'Accueil';
accueilLink.title = 'Accueil du wiki';
/*
* 3. Devoirs → page Devoirs du wiki.
*/
const devoirsLink = document.createElement('a');
devoirsLink.className = 'aecfc-devoirs-link';
devoirsLink.href = 'https://wiki.aecfc.org/wiki/Devoirs';
devoirsLink.textContent = 'Devoirs';
devoirsLink.title = 'Consulter les devoirs';
textLinks.appendChild(accueilLink);
textLinks.appendChild(devoirsLink);
brand.appendChild(logoLink);
brand.appendChild(textLinks);
/*
* Supprime entièrement l'ancien lien global
* et le remplace par les trois liens indépendants.
*/
oldLogoLink.replaceWith(brand);
}
if (document.readyState === 'loading') {
document.addEventListener(
'DOMContentLoaded',
rebuildAecfcHeader,
{ once: true }
);
} else {
rebuildAecfcHeader();
}
})();