Utilisateur:IruleManik/Widget/Générateur de pages/Apparences de la garde-robe
Aller à la navigation
Aller à la recherche
Note : après avoir publié vos modifications, il se peut que vous deviez forcer le rechargement complet du cache de votre navigateur pour voir les changements.
- Firefox / Safari : maintenez la touche Maj (Shift) en cliquant sur le bouton Actualiser ou appuyez sur Ctrl + F5 ou Ctrl + R (⌘ + R sur un Mac).
- Google Chrome : appuyez sur Ctrl + Maj + R (⌘ + Shift + R sur un Mac).
- Internet Explorer / Edge : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl + F5.
- Opera : appuyez sur Ctrl + F5.
<includeonly> <script type="text/javascript" src="https://code.jquery.com/jquery-1.7.1.min.js"></script> <div> <p id="widgetrecherche" width = "50%" style = "display:block"> <a id = "pagetitle" style = 'background-image:url("https://wiki.guildwars2.com/images/3/39/User_Alfa-R_infobox_hader_overlay.png")';></a> <img id = "icon"></img></p> </div> <div id = "resultat"></div> <script type="text/javascript"> var champRecherche = $('<input type="text" />'); var buttonRecherche = $('<button>Chercher</button>'); var champResultat = $('<textarea cols="180" rows="15"></textarea>'); $('#pagetitle').css('font-family', 'IM Fell DW Pica'); $('#pagetitle').css('left', ''); $('#pagetitle').css('font-size', '25px'); $('#pagetitle').css('top', '20px'); $('#widgetrecherche').append(champRecherche); $('#widgetrecherche').append(buttonRecherche); $('#resultat').append(champResultat); champResultat.css('display','none') champResultat.click(function () { champResultat.select(); }); buttonRecherche.click(function () { var id = champRecherche.val(); champResultat.css('display','none') getPages(id, function (response) { champResultat.css('display','block'); champResultat.css('margin-top','50px'); champResultat.val(processResultat(response)); champResultat.select(); }); }); function getPages(id, callback, languages) { if (languages === undefined) { languages = ['fr', 'de', 'en', 'es']; } var data = null; var count = 0; languages.forEach(function (lang) { $.getJSON("https://api.guildwars2.com/v2/skins/" + id + "?lang=" + lang , function (response) { if (data === null) { data = response; var name = {}; name[lang] = response.name; data.name = name; } else { data.name[lang] = response.name; } count += 1; if (count === languages.length) { callback(data); } }); }); } function processResultat(data) { var content = ''; if (data) { switch (data.type) { case 'Armor': case 'Weapon': case 'Back': content = genererInfoboxObjet(data); break; default: content = 'Erreur : id d\'objet invalide3'; } } else { content = 'Erreur : id d\'objet invalide2' }; return content; } // Cette fonction génère l'infobox function genererInfoboxObjet(data) { $('#icon').css("border", "4px solid #F5B11D"); $('#icon').attr("src", data.icon); $('#pagetitle').attr("href", "https://wiki-fr.guildwars2.com/wiki/" + data.name.fr).append(data.name.fr); $('#pagetitle').css("background-color", "#F5B11D"); $('#pagetitle').css("padding", "0 10px 0 10px"); $('#pagetitle').css("background-image", "url('https://wiki.guildwars2.com/images/3/39/User_Alfa-R_infobox_hader_overlay.png') !important;") var content = ''; content += "{{Infobox apparence\r\n"; switch(data.type) { case 'Armor': //Armure content += "| type = " + armortype(data.details.type) + '\r\n'; content += "| type d'armure = " + armorweight(data.details.weight_class) + '\r\n'; break; case 'Weapon': //Arme content += "| type = " + weapontype(data.details.type) + '\r\n'; break; case 'back': //Objet de dos content += '| type = objet de dos\r\n'; break; } if (data.description) { content += "| description = " + data.description.replace('<c=@flavor>', '').replace('</c>"', "") + "\r\n"; } for (var i = 0; i < data.flags.length; i++) { if (data.flags[i] === "NoCost") { content += "| application = gratuite \r\n"; } break } if (data.restrictions.length < 1 ) { } else { content += "| race = " + racerestrictions(data.restrictions) + '\r\n'; } content += '| id = ' + data.id + '\r\n'; content += "}} \r\n"; content += "\r\n"; // Phrase d'intro switch (data.type) { case 'Armor': //Armure content += prépositionintro_armure(data.name.fr) + ' une apparence ' + prépositiontype(apparencetype(data.details.type, data.details.weight_class)) + ' de la [[garde-robe]]. \r\n' break; case 'Weapon': //Arme content += prépositionintro(data.name.fr) + ' est une apparence ' + prépositiontype(weapontype(data.details.type)) + ' de la [[garde-robe]]. \r\n' break; case 'Back': //Objet de dos content += prépositionintro(data.name.fr) + ' une apparence d\'[[objet de dos]] de la [[garde-robe]]. \r\n' } content += '\r\n' content += "{{liste de pièces d'équipement par apparence}}" content += interwikis(data) return content.replace("undefined", "") } // Type d'armure function armorweight(str) { var classe switch (str) { case "Light": classe = 'léger'; break; case "Medium": classe = 'intermédiaire'; break; case "Heavy": classe = 'lourd'; break } return classe } //Emplacement d'armure function armortype(str) { var emplacement switch (str) { case "Boots": emplacement = 'pieds'; break; case "Leggings": emplacement = 'jambes'; break; case "Coat": emplacement = 'torse'; break; case "Gloves": emplacement = 'mains'; break; case "Shoulders": emplacement = 'épaules'; break; case "Helm": emplacement = 'tête'; break; case "HelmAquatic": emplacement = 'aqua-respirateur '; break; } return emplacement } //Type d'arme function weapontype(arme) { var type switch (arme) { case "Axe": type = "hache"; break; case "Dagger": type = "dague"; break; case "Focus": type = "focus"; break; case "Greatsword": type = "espadon"; break; case "Hammer": type = "marteau"; break; case "Harpoon": type = "lance"; break; case "LongBow": type = "arc long"; break; case "Mace": type = "masse"; break; case "Pistol": type = "pistolet"; break; case "Rifle": type = "fusil"; break; case "Scepter": type = "sceptre"; break; case "Shield": type = "bouclier"; break; case "ShortBow": type = "arc court"; break; case "Speargun": type = "fusil-harpon"; break; case "Staff": type = "bâton"; break; case "Sword": type = "épée"; break; case "Torch": type = "torche"; break; case "Trident": type = "trident"; break; case "Warhorn": type = "cor de guerre"; break; } return type } //Phrase d'intro pour les armures function prépositionintro_armure(str) { if (str.match(/collier|corselet|pantalon|gilet|harnois|haubert|plastron|pourpoint|bandana|bandeau|manteau|bonnet|capuchon|casque|chapeau|conique|diadème|cornes|heaume|linceuil|lunettes|masque|monocle|visage/i) && str !== /épée|lance-harpon|super/i) { intro = "Le [[{{PAGENAME}}|" + str.charAt(0).toLowerCase() + str.slice(1) + ']] est' } else if (str.match(/charge|parure|livrée|pansière|jupe|veste|cuirasse|cotte|broigne|tunique|veste|capuche|coiffe|couronne|houppelande|visière/i)) { intro = "La [[{{PAGENAME}}|" + str.charAt(0).toLowerCase() + str.slice(1) + ']] est' } else if (str.match(/armure|appareil|echarpe|esprit|aqua|hydro/i)) { intro = "L'[[{{PAGENAME}}|" + str.charAt(0).toLowerCase() + str.slice(1) + ']] est' } else if (str.match(/bottes|grèves|pattes|chausses|sandales|cuissardes|croquenots|grèves|chausses|tassettes|garde-jambes|jambières|brassards|manchettes|poignes|poings|cornes|bracelets|bras|brassards|canons|gantelets|gants|garde-poignets|lunettes|épaulettes|vêtements|garde-épaules|protège-épaules|spallières|espauliers|plaques|spallières|habits/i)) { intro = "Les [[{{PAGENAME}}|" + str.charAt(0).toLowerCase() + str.slice(1) + ']] sont' } else { intro = "[[{{PAGENAME}}]] est" } return intro.replace('undefined', '') } //Phrase d'intro pour les armes function prépositionintro_arme(str) { if (str && str !== null && str !== "undefined") { if (str.match(/arc recourbé|arc court|arc long|aiguillon|arme|espadon|empaleur|arquebuse|epée|épée|assommoir|aiguille|artefact/i) && str !== /épée|lance-harpon|super/i) { intro = "L'[[{{PAGENAME}}|" + str.charAt(0).toLowerCase() + str.slice(1) + ']]' } else if (str.match(/granrd arc|marteau|fusil|tranchoir|gourdin|bâton|braséro|présage|héraut|bastion|rempart|bouclier|bourdon|couteau|fusil-harpon|lance-harpon|focus|cor de guerre|trident|vengeur|mousquet|rifle|couperet|faucheu|pistolet|mousqueton|revolver|sceptre/i)) { intro = "Le [[{{PAGENAME}}|" + str.charAt(0).toLowerCase() + str.slice(1) + ']]' } else if (str.match(/faux|colonne|torche|barricade|cognée|trompette|pique|hache|masse|trilance|lance|lame|cimeterre|lamerine|trancheuse|dague|badine|baguette/i)) { intro = "La [[{{PAGENAME}}|" + str.charAt(0).toLowerCase() + str.slice(1) + ']]' } else { intro = '[[{{PAGENAME}}]]' } return intro.replace('undefined', '') } } //Préposition pour la phrase d'intro function prépositiontype(str) { var prem = str.charAt(0) if (prem.match(/a|e|i|o|u|é/i)) { var prépo = "d'" + prem.toLowerCase() + str.slice(1) + ""; } else { var prépo = "de " + prem.toLowerCase() + str.slice(1) + ""; } return prépo } //Restriction raciale pour les armures function racerestrictions(str) { var race switch (str) { case "Human": race = "humain"; break; default: race = str; } return race } //Emplacement d'armure function apparencetype(emplacement, type) { var armuretype var classe var classef switch (type) { case "Light": classe = 'léger'; classef = 'légère'; break; case "Medium": classe = 'intermédiaire'; classef = 'intermédiaire'; break; case "Heavy": classe = 'lourd'; classef = 'lourde' break } switch (emplacement) { case "Boots": armuretype = 'bottes ' + classef + 's'; break; case "Leggings": armuretype = 'jambières ' + classef + 's'; break; case "Coat": armuretype = 'cuirasse ' + classef; break; case "Gloves": armuretype = 'gants ' + classe + 's'; break; case "Shoulders": armuretype = 'épaulières ' + classef + 's'; break; case "Helm": armuretype = 'couvre-chef ' + classe; break; case "HelmAquatic": armuretype = 'aqua-respirateur ' + classe; break; } return armuretype } function interwikis(data) { var interwiki = ''; interwiki += '\r\n'; interwiki += '\r\n'; interwiki += '[[de:' + data.name.de + ']] \r\n'; interwiki += '[[en:' + data.name.en + ']] \r\n'; interwiki += '[[es:' + data.name.es + ']] \r\n'; return interwiki.replace('undefined', '') } </script> test edit </includeonly>