Utilisateur:Prosopee/monobook.js
Note : après avoir enregistré la page, vous devrez forcer le rechargement complet du cache de votre navigateur pour voir les changements.
Mozilla / Firefox / Konqueror / Safari : maintenez la touche Majuscule (Shift) en cliquant sur le bouton Actualiser (Reload) ou pressez Maj-Ctrl-R (Cmd-R sur Apple Mac) ;
Firefox (sur GNU/Linux) / Chrome / Internet Explorer / Opera : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5.importScript('User:Antaya/qui.js');
importScript('User:Arkanosis/xportlet.js');
importScript('User:Chphe/Gadget-Evaluation.js');
importScript("User:Pmartin/WikiwixSearch.js");
importScript('User:Stef48/ongletStats.js');
importScript('User:Stef48/randomPage.js')STOP;
obtenir('RefJournalArticle');
/// Actualiser la LdS ///
importScript('Utilisateur:Dr Brains/LiveContribs.js');
/// Contrôler les renvois bibliographiques (Lgd)///
importScript('Utilisateur:Lgd/refErrors/refErrors.js');
/* {{Projet:JavaScript/Script|OuvrageArticle}} */
//<source lang=javascript>//<pre><nowiki>
/*
Permet de mettre en forme des références à partir de
* http://www.worldcat.org/ (Ouvrage)
* http://api.labs.crossref.org/search (Article)
Voir http://fr.wikipedia.org/wiki/Discussion_Projet:JavaScript#G.C3.A9n.C3.A9ration_automatique_mod.C3.A8le_Ouvrage_et_Article
*/
// ------------------------------------------------------ Modèles par défaut
var OuvrageArticle_OuvrageTemplate = "{{Ouvrage"
+"|langue=$LANGUE"
+"|nom1=$NOM1"
+"|prénom1=$PRENOM1"
+"|lien auteur1=$LIENAUTEUR1"
+"|titre chapitre=$TITCHAPITRE"
+"|éditeur=$EDITEUR"
+"|lien éditeur=$LIENEDITEUR"
+"|lieu=$LIEU"
+"|jour=$JOUR"
+"|mois=$MOIS"
+"|année=$ANNEE"
+"|titre=$TITRE"
+"|sous-titre=$SOUSTITRE"
+"|numéro d'édition=$NOEDITION"
+"|isbn=$ISBN"
+"|issn=$ISSN"
+"|oclc=$OCLC"
+"|pages totales=$PAGESTOTALES"
+"|volume=$VOLUME"
+"|tome=$TOME"
+"|passage=$PASSAGE"
+"|lire en ligne=$LIRE"
+"|consulté le=$CONSULATION"
+"|présentation en ligne=$PRESENTATION"
+"}}"
var OuvrageArticle_ArticleTemplate = "{{Article"
+"|langue=$LANGUE"
+"|prénom1=$PRENOM1"
+"|nom1=$NOM1"
+"|lien auteur1=$LIENAUTEUR1"
+"|titre=$TITRE"
+"|périodique=$EDITEUR"
+"|lien périodique=$LIENEDITEUR"
+"|volume=$VOLUME"
+"|numéro=$NUMERO"
+"|jour=$JOUR"
+"|mois=$MOIS"
+"|année=$ANNEE"
+"|pages=$PAGESTOTALES"
+"|isbn=$ISBN"
+"|issn=$ISSN1"
+"|issn2=$ISSN2"
+"|doi=$DOI"
+"|url texte=$LIRE"
+"|consulté le=$CONSULATION"
+"}}"
// ------------------------------------------------------ Lancement
if( (mw.config.get('wgNamespaceNumber')>-1)&&( (mw.config.get('wgAction')=="edit")||(mw.config.get('wgAction')=="submit")) ) addOnloadHook(OuvrageArticle_AddButton);
// ------------------------------------------------------ Ajout du bouton
function OuvrageArticle_AddButton(){
if(!document.editform) return;
var Toolbar = document.getElementById('toolbar');
if(!Toolbar){
Toolbar = document.createElement('div');
Toolbar.id = 'toolbar';
document.editform.insertBefore(Toolbar, document.editform.firstChild);
}
var button = '<img src="http://upload.wikimedia.org/wikipedia/commons/9/9a/Button_references.png" heigth="23" width="23" alt="Ouvrage ou Article" />';
var NewButton = document.createElement('a')
NewButton.title = "Mettre en forme une référence";
NewButton.href="javascript:OuvrageArticle_OpenMenu();";
NewButton.innerHTML = button;
Toolbar.appendChild(NewButton);
}
// ------------------------------------------------------ Création du menu
function OuvrageArticle_OpenMenu(){
var Toolbar = document.getElementById('toolbar');
if(!Toolbar) Toolbar = document.getElementById("Oldbar");
var MenuDiv = document.getElementById('Menu_OuvrageArticle');
if(MenuDiv){
return;
}else{
MenuDiv = document.createElement('div');
MenuDiv.id = 'Menu_OuvrageArticle';
$(MenuDiv).insertAfter(Toolbar);
}
var PreviewDiv = document.createElement('div');
PreviewDiv.id = 'Menu_OuvrageArticle_Preview';
PreviewDiv.setAttribute("style", "border:2px solid grey;padding:1em;");
var TextArea = document.createElement('textarea');
TextArea.id = 'Menu_OuvrageArticle_Input';
TextArea.rows = 5;
var InputOK = document.createElement('input');
InputOK.type = "button";
InputOK.value = "Convertir";
InputOK.onclick = OuvrageArticle_CheckMenu;
InputOK.select = OuvrageArticle_CheckMenu;
var InputPreview = document.createElement('input');
InputPreview.type = "button";
InputPreview.value = "Prévisualiser";
InputPreview.onclick = OuvrageArticle_Preview;
InputPreview.select = OuvrageArticle_Preview;
var InputCancel = document.createElement('input');
InputCancel.type = "button";
InputCancel.value = "Fermer";
InputCancel.onclick = OuvrageArticle_Cancel;
InputCancel.select = OuvrageArticle_Cancel;
MenuDiv.appendChild(PreviewDiv);
MenuDiv.appendChild(TextArea);
MenuDiv.appendChild(InputOK);
MenuDiv.appendChild(InputPreview);
MenuDiv.appendChild(InputCancel);
}
// ------------------------------------------------------ Annulation du menu
function OuvrageArticle_Cancel(){
var MenuDiv = document.getElementById('Menu_OuvrageArticle');
MenuDiv.parentNode.removeChild(MenuDiv);
}
// ------------------------------------------------------ Vérification du menu
function OuvrageArticle_CheckMenu(){
var Textarea = document.getElementById('Menu_OuvrageArticle_Input');
var Value = Textarea.value;
if(Value=="") return;
Value = decodeURIComponent(Value).split("&").join('&');
Value = Value.replace(/.* title=/g, "");
Value = Value.replace(/("|')\>.*/g, "");
//if(Value.indexOf('title="')!=-1) Value = Value.split('title="')[1].split('"')[0];
Value = Value.replace(/\+/g, " ");
if(Value.indexOf("&rft.genre=book")!=-1) Value = OuvrageArticle_CheckOuvrageParams(Value);
if(Value.indexOf("&rft.genre=article")!=-1) Value = OuvrageArticle_CheckArticleParams(Value);
if(Value.indexOf("&rtf.genre=journal-article")!=-1) Value = OuvrageArticle_CheckJournalArticleParams(Value);
Textarea.value = Value;
OuvrageArticle_Preview();
}
// ------------------------------------------------------ Recherche paramètres modèle Ouvrage
function OuvrageArticle_CheckOuvrageParams(Texte){
var Ouvrage = OuvrageArticle_OuvrageTemplate;
var Params = Texte.split("&rft");
for(var a=0;a<Params.length;a++){
var ThisParamName = Params[a].replace(/=.*/, "");
var ThisParam = Params[a].split(ThisParamName).join("");
if(ThisParamName==".btitle") Ouvrage = Ouvrage.split("=$TITRE").join(ThisParam);
if(ThisParamName==".pub") Ouvrage = Ouvrage.split("=$EDITEUR").join(ThisParam);
if(ThisParamName==".date") Ouvrage = Ouvrage.split("=$ANNEE").join(ThisParam);
if(ThisParamName==".isbn") Ouvrage = Ouvrage.split("=$ISBN").join(ThisParam);
if(ThisParamName==".aufirst") Ouvrage = Ouvrage.split("=$PRENOM1").join(ThisParam);
if(ThisParamName==".aulast") Ouvrage = Ouvrage.split("=$NOM1").join(ThisParam);
if(ThisParamName==".au") Ouvrage = Ouvrage.split("=$LIENAUTEUR1").join(ThisParam);
if(ThisParamName==".atitle") Ouvrage = Ouvrage.split("=$TITCHAPITRE").join(ThisParam);
if(ThisParamName==".place") Ouvrage = Ouvrage.split("=$LIEU").join(ThisParam);
if(ThisParamName==".edition") Ouvrage = Ouvrage.split("=$NOEDITION").join(ThisParam);
if(ThisParamName==".issn") Ouvrage = Ouvrage.split("=$ISSN").join(ThisParam);
if(ThisParamName==".volume") Ouvrage = Ouvrage.split("=$VOLUME").join(ThisParam);
if(ThisParamName=="_id"){
if(ThisParam.indexOf("info:oclcnum/")!=-1)
Ouvrage = Ouvrage.split("=$OCLC").join(ThisParam.split("info:oclcnum/").join(''));
}
}
var EmptyParamRegExp1 = new RegExp("\\$[^\\|]+[\\|]", "ig")
var EmptyParamRegExp2 = new RegExp("\\$[^\\}]+[\\}]", "ig")
Ouvrage = Ouvrage.replace(EmptyParamRegExp1, "\|");
Ouvrage = Ouvrage.replace(EmptyParamRegExp2, "\}");
return Ouvrage;
}
// ------------------------------------------------------ Recherche paramètres modèle Article
function OuvrageArticle_CheckArticleParams(Texte){
var Article = OuvrageArticle_ArticleTemplate;
var Params = Texte.split("&rft");
var Spage = false;
var Epage = false;
for(var a=0;a<Params.length;a++){
var ThisParamName = Params[a].replace(/=.*/, "");
var ThisParam = Params[a].split(ThisParamName).join("");
if(ThisParamName==".atitle") Article = Article.split("=$TITRE").join(ThisParam);
if(ThisParamName==".jtitle") Article = Article.split("=$EDITEUR").join(ThisParam);
if(ThisParamName==".stitle") Article = Article.split("=$EDITEUR").join(ThisParam);
if(ThisParamName==".date") Article = Article.split("=$ANNEE").join(ThisParam);
if(ThisParamName==".volume") Article = Article.split("=$VOLUME").join(ThisParam);
if(ThisParamName==".issue") Article = Article.split("=$NUMERO").join(ThisParam);
if(ThisParamName==".aulast") Article = Article.split("=$NOM1").join(ThisParam);
if(ThisParamName==".aufirst") Article = Article.split("=$PRENOM1").join(ThisParam);
if(ThisParamName==".au") Article = Article.split("=$LIENAUTEUR1").join(ThisParam);
if(ThisParamName==".isbn") Article = Article.split("=$ISBN").join(ThisParam);
if(ThisParamName==".issn") Article = Article.split("=$ISSN1").join(ThisParam);
if(ThisParamName==".eissn") Article = Article.split("=$ISSN2").join(ThisParam);
if(ThisParamName==".volume") Article = Article.split("=$VOLUME").join(ThisParam);
if(ThisParamName=="_id"){
if(ThisParam.indexOf("info:doi/")!=-1)
Article = Article.split("=$DOI").join(ThisParam.split("info:doi/").join(''));
}
if(ThisParamName.indexOf(".spage")!=-1){
Spage = ThisParam.split("=").join("");
}
if(ThisParamName.indexOf(".epage")!=-1){
Epage = ThisParam.split("=").join("");
}
}
if(Spage&&Epage) Article = Article.split("$PAGESTOTALES").join(Spage+"-"+Epage);
var EmptyParamRegExp1 = new RegExp("\\$[^\\|]+[\\|]", "ig")
var EmptyParamRegExp2 = new RegExp("\\$[^\\}]+[\\}]", "ig")
Article = Article.replace(EmptyParamRegExp1, "\|");
Article = Article.replace(EmptyParamRegExp2, "\}");
return Article;
}
function OuvrageArticle_CheckJournalArticleParams(Texte){
var Article = OuvrageArticle_ArticleTemplate;
var Params = Texte.split("&r");
var Spage = false;
var Epage = false;
for(var a=0;a<Params.length;a++){
var ThisParamName = Params[a].replace(/=.*/, "");
var ThisParam = Params[a].replace(ThisParamName, "");
//alert(ThisParamName + "\n\n" + ThisParam);
if(ThisParamName.indexOf(".atitle")!=-1) Article = Article.split("=$TITRE").join(ThisParam);
if(ThisParamName.indexOf(".jtitle")!=-1) Article = Article.split("=$EDITEUR").join(ThisParam);
if(ThisParamName.indexOf(".stitle")!=-1) Article = Article.split("=$EDITEUR").join(ThisParam);
if(ThisParamName.indexOf(".date")!=-1) Article = Article.split("=$ANNEE").join(ThisParam);
if(ThisParamName.indexOf(".volume")!=-1) Article = Article.split("=$VOLUME").join(ThisParam);
if(ThisParamName.indexOf(".issue")!=-1) Article = Article.split("=$NUMERO").join(ThisParam);
if(ThisParamName.indexOf(".aulast")!=-1) Article = Article.split("=$NOM1").join(ThisParam);
if(ThisParamName.indexOf(".aufirst")!=-1) Article = Article.split("=$PRENOM1").join(ThisParam);
if(ThisParamName.indexOf(".isbn")!=-1) Article = Article.split("=$ISBN").join(ThisParam);
if(ThisParamName.indexOf(".issn")!=-1) Article = Article.split("=$ISSN1").join(ThisParam);
if(ThisParamName.indexOf(".eissn")!=-1) Article = Article.split("=$ISSN2").join(ThisParam);
if(ThisParamName==".volume") Article = Article.split("=$VOLUME").join(ThisParam);
if(ThisParamName.indexOf("_id")!=-1){
if(ThisParam.indexOf("info:doi/")!=-1)
Article = Article.split("=$DOI").join(ThisParam.split("info:doi/").join(''));
}
if(ThisParamName.indexOf(".spage")!=-1){
Spage = ThisParam.split("=").join("");
}
if(ThisParamName.indexOf(".epage")!=-1){
Epage = ThisParam.split("=").join("");
}
}
if(Spage&&Epage) Article = Article.split("$PAGESTOTALES").join(Spage+"-"+Epage);
var EmptyParamRegExp1 = new RegExp("\\$[^\\|]+[\\|]", "ig")
var EmptyParamRegExp2 = new RegExp("\\$[^\\}]+[\\}]", "ig")
Article = Article.replace(EmptyParamRegExp1, "\|");
Article = Article.replace(EmptyParamRegExp2, "\}");
return Article;
}
// ------------------------------------------------------ Prévisualisation
function OuvrageArticle_Preview(){
var PreviewWindow = document.getElementById('Menu_OuvrageArticle_Preview');
var Textarea = document.getElementById('Menu_OuvrageArticle_Input');
if(!Textarea||!PreviewWindow) return;
var Value = Textarea.value;
if(Value=="") return;
var url = mw.config.get('wgServer') + mw.config.get('wgScriptPath') + "/api.php?format=xml&action=parse&text=" + encodeURIComponent(Value);
//alert(url);
var ajaxRequest = sajax_init_object();
ajaxRequest.open("GET", url, true);
ajaxRequest.onreadystatechange = function() {
if(ajaxRequest.readyState != 4) return;
PreviewWindow = document.getElementById('Menu_OuvrageArticle_Preview');
if(!PreviewWindow) return;
while(PreviewWindow.firstChild){PreviewWindow.removeChild(PreviewWindow.firstChild);}
var XMLObject = ajaxRequest.responseXML;
var TextNode = XMLObject.getElementsByTagName('text')[0];
if(!TextNode) return;
var FirstNode = TextNode.firstChild;
if(FirstNode){
var Texte = FirstNode.nodeValue;
Texte = Texte.replace(/</g, "<");
Texte = Texte.replace(/>/g, ">");
}else{
var Texte = "";
}
PreviewWindow.innerHTML = Texte;
}
ajaxRequest.send(null);
}
// ------------------------------------------------------
//</nowiki></pre></source>
//====================================WikiEd typographie désactivée
var wikEdFixPunctFrench = true;
var wikEdRegExTypoFix = true;
var wikEdRegExTypoFixURL = 'http://fr.wikipedia.org/w/index.php?title=Wikipédia:AutoWikiBrowser/Typos&action=raw';
//====================================fonctions communes
//Affiche un onglet "Consultation" juste après l'onglet "Historique". Cet onglet permet de consulter le nombre de fois où l'article courant a été consulté le mois courant et précédent
function addArticleTrafficStatistics()
{
var histo = document.getElementById("ca-history");
if(histo)
{
var today = new Date();
//Mois précédent
var annee = today.getYear() + 1900;
if(today.getMonth() == 0)
{
var mois = "12";
annee--;
}
else
{
var mois = new String(today.getMonth());
if(mois.length < 2)
{
mois = "0" + mois;
}
}
var lien_mois_preced = document.createElement("a");
lien_mois_preced.setAttribute("href", "http://stats.grok.se/fr/" + annee + mois + "/" + mw.config.get('wgPageName'));
lien_mois_preced.setAttribute("title", "Voir le mois précédent");
lien_mois_preced.appendChild(document.createTextNode("<="));
//Mois courant
var annee = today.getYear() + 1900;
var mois = new String(today.getMonth() + 1);
if(mois.length < 2)
{
mois = "0" + mois;
}
var lien_mois_courant = document.createElement("a");
lien_mois_courant.setAttribute("href", "http://stats.grok.se/fr/" + annee + mois + "/" + mw.config.get('wgPageName'));
lien_mois_courant.setAttribute("title", "Voir le mois courant");
lien_mois_courant.appendChild(document.createTextNode("Consultation"));
var stats = document.createElement("li");
stats.setAttribute("id", "ca-stats");
stats.appendChild(lien_mois_preced);
stats.appendChild(document.createTextNode(""));
stats.appendChild(lien_mois_courant);
histo.parentNode.insertBefore(stats, histo.nextSibling);
}
}
$(addArticleTrafficStatistics);
obtenir("EvalProject");
function initEvalProjectNames()
{
evalProjectNames=new Array(); //liste de vos projets
evalProjectNames.push("Psychologie")
};
var alwaysEval = false; // ''true'' --> évaluation lancée automatiquement (à éviter en temps normal)
function initEvalProjectNames()
{
evalProjectNames=new Array(); //liste de vos projets
psychologie
evalProjectNames.push("Psychologie") // Une ligne comme celle-ci pour chaque projet que vous voulez évaluer
evalProjectNames.push("Psychologie")
}