MediaWiki:Gadget-refbuttons.js e Usuário:Vitor Mazuco/Ferramentas de referência.js: diferenças entre as páginas
(Diferenças entre páginas)
Conteúdo apagado Conteúdo adicionado
m moveu Wikipédia:Software/Scripts/refToolbar.js para MediaWiki:Gadget-refbuttons.js: pedido do usuário:Helder.wiki: http://pt.wikipedia.org/w/index.php?diff=25306753&oldid=25266002 (ver http://pt.wikipedia.org/w/index.php?ol... |
|||
Linha 2: | Linha 2: | ||
var wikEdAutoUpdateUrl; |
var wikEdAutoUpdateUrl; |
||
function refbuttons() { |
function refbuttons() { |
||
if (mwCustomEditButtons && document.getElementById('toolbar') && |
if (mwCustomEditButtons && document.getElementById('toolbar') && wikEdAutoUrl === null) { |
||
button = document.createElement('a'); |
button = document.createElement('a'); |
||
button.href = |
button.href = URL; |
||
button.title = "Inserir referência"; |
button.title = "Inserir referência"; |
||
buttonimage = document.createElement('img'); |
buttonimage = document.createElement('img'); |
||
Linha 51: | Linha 51: | ||
function oldFormHide() { |
function oldFormHide() { |
||
if (numforms != 0) { |
if (numforms !== 0) { |
||
document.getElementById('citediv'+numforms).style.display = 'none'; |
document.getElementById('citediv'+numforms).style.display = 'none'; |
||
} |
} |
||
if (document.getElementById('errorform') != null) { |
if (document.getElementById('errorform') !== null) { |
||
document.getElementById('citeselect').removeChild(document.getElementById('errorform')); |
document.getElementById('citeselect').removeChild(document.getElementById('errorform')); |
||
} |
} |
||
Linha 232: | Linha 232: | ||
var citeinner = ''; |
var citeinner = ''; |
||
for (var i=0; i<cites.length-1; i++) { |
for (var i=0; i<cites.length-1; i++) { |
||
if (cites[i].value != '' && cites[i].id != "refname" && cites[i].id != "template") { |
if (cites[i].value !== '' && cites[i].id !== "refname" && cites[i].id !== "template") { |
||
citeinner += "|" + cites[i].id + "=" + cites[i].value; |
citeinner += "|" + cites[i].id + "=" + cites[i].value; |
||
} |
} |
||
else if (cites[i].value != '' && cites[i].id == "refname" && cites[i].id != "template") { |
else if (cites[i].value !== '' && cites[i].id == "refname" && cites[i].id !== "template") { |
||
citebegin += ' name="' + cites[i].value + '"'; |
citebegin += ' name="' + cites[i].value + '"'; |
||
} |
} |
||
else if (cites[i].value != '' && cites[i].id != "refname" && cites[i].id == "template") { |
else if (cites[i].value !== '' && cites[i].id !== "refname" && cites[i].id == "template") { |
||
citename = '>{{' + cites[i].value; |
citename = '>{{' + cites[i].value; |
||
} |
} |
||
Linha 250: | Linha 250: | ||
text = document.getElementById('wpTextbox1').value; |
text = document.getElementById('wpTextbox1').value; |
||
var regex; |
var regex; |
||
if (calls) { |
|||
regex = /< *?ref +?name *?= *?(('([^']*?)')|("([^"]*?)")|([^'"\s]*?[^/]\b)) *?\/ *?>/gi // |
regex = /< *?ref +?name *?= *?(('([^']*?)')|("([^"]*?)")|([^'"\s]*?[^\/]\b)) *?\/ *?>/gi; // |
||
} else { |
|||
regex = /< *?ref +?name *?= *?(('([^']*?)')|("([^"]*?)")|([^'"\s]*?[^/]\b)) *?>/gi // |
regex = /< *?ref +?name *?= *?(('([^']*?)')|("([^"]*?)")|([^'"\s]*?[^\/]\b)) *?>/gi; // |
||
} |
|||
var namedrefs = |
var namedrefs = []; |
||
var i=0; |
var i=0; |
||
var nr=true; |
var nr=true; |
||
do { |
do { |
||
ref = regex.exec(text); |
ref = regex.exec(text); |
||
if(ref != null){ |
if(ref !== null){ |
||
if (ref[5]) { |
if (ref[5]) { |
||
namedrefs[i] = ref[5]; |
namedrefs[i] = ref[5]; |
||
Linha 272: | Linha 272: | ||
nr=false; |
nr=false; |
||
} |
} |
||
} while (nr==true); |
} while (nr===true); |
||
return namedrefs; |
return namedrefs; |
||
} |
} |
||
Linha 278: | Linha 278: | ||
function citeNamedRef() { |
function citeNamedRef() { |
||
namedrefs = getNamedRefs(false); |
namedrefs = getNamedRefs(false); |
||
if (namedrefs == '') { |
if (namedrefs === '') { |
||
oldFormHide(); |
oldFormHide(); |
||
numforms++; |
numforms++; |
||
Linha 305: | Linha 305: | ||
function addnamedcite() { |
function addnamedcite() { |
||
name = document.getElementById('citediv'+numforms).getElementsByTagName('select')[0].value; |
var name = document.getElementById('citediv'+numforms).getElementsByTagName('select')[0].value; |
||
ref = '<ref name="'+name+'" />'; |
ref = '<ref name="'+name+'" />'; |
||
insertTags(ref, '', ''); |
insertTags(ref, '', ''); |
||
Linha 313: | Linha 313: | ||
function getAllRefs() { |
function getAllRefs() { |
||
text = document.getElementById('wpTextbox1').value; |
text = document.getElementById('wpTextbox1').value; |
||
regex = /< *?ref( +?name *?= *?(('([^']*?)')|("([^"]*?)")|([^'"\s]*?[^/]\b)))? *?>((.|\n)*?)< *?\/? *?ref *?>/gim //" |
regex = /< *?ref( +?name *?= *?(('([^']*?)')|("([^"]*?)")|([^'"\s]*?[^\/]\b)))? *?>((.|\n)*?)< *?\/? *?ref *?>/gim; //" |
||
var allrefs = |
var allrefs = []; |
||
var i=0; |
var i=0; |
||
var nr=true; |
var nr=true; |
||
do { |
do { |
||
ref = regex.exec(text); |
ref = regex.exec(text); |
||
if(ref != null){ |
if(ref !== null){ |
||
if (ref[0].search(/[^\s]{150}/) != -1) { |
if (ref[0].search(/[^\s]{150}/) != -1) { |
||
ref[0] = ref[0].replace(/\|([^\s])/g, "| $1"); |
ref[0] = ref[0].replace(/\|([^\s])/g, "| $1"); |
||
Linha 330: | Linha 330: | ||
nr=false; |
nr=false; |
||
} |
} |
||
} while (nr==true); |
} while (nr===true); |
||
return allrefs; |
return allrefs; |
||
} |
} |
||
Linha 345: | Linha 345: | ||
function errorCheck() { |
function errorCheck() { |
||
var allrefs = getAllRefs(); |
var allrefs = getAllRefs(); |
||
var allrefscontent = |
var allrefscontent = []; |
||
var samecontentexclude = |
var samecontentexclude = []; |
||
var sx=0; |
var sx=0; |
||
var templateexclude = |
var templateexclude = []; |
||
var tx=0; |
var tx=0; |
||
var skipcheck = false; |
var skipcheck = false; |
||
var namedrefcalls = getNamedRefs(true); |
var namedrefcalls = getNamedRefs(true); |
||
for (var i=0; i<allrefs.length; i++) { |
for (var i=0; i<allrefs.length; i++) { |
||
allrefscontent[i] = allrefs[i].replace(/< *?ref( +?name *?= *?(('([^']*?)')|("([^"]*?)")|([^'"\s]*?[^/]\b)))? *?>((.|\n)*?)< *?\/? *?ref *?>/gim, "$8"); //" |
allrefscontent[i] = allrefs[i].replace(/< *?ref( +?name *?= *?(('([^']*?)')|("([^"]*?)")|([^'"\s]*?[^\/]\b)))? *?>((.|\n)*?)< *?\/? *?ref *?>/gim, "$8"); //" |
||
} |
} |
||
var namedrefs = getNamedRefs(false); |
var namedrefs = getNamedRefs(false); |
||
var errorlist = |
var errorlist = []; |
||
var q=0; |
var q=0; |
||
unclosed = document.getElementById('unclosed').checked; |
unclosed = document.getElementById('unclosed').checked; |
||
Linha 363: | Linha 363: | ||
repeated = document.getElementById('repeated').checked; |
repeated = document.getElementById('repeated').checked; |
||
undef = document.getElementById('undef').checked; |
undef = document.getElementById('undef').checked; |
||
for ( |
for (; i<allrefs.length; i++) { |
||
if (allrefs[i].search(/< *?\/ *?ref *?>/) == -1 && unclosed) { |
if (allrefs[i].search(/< *?\/ *?ref *?>/) == -1 && unclosed) { |
||
errorlist[q] = '<tr><td width="75%"><tt>'+allrefs[i]+'</tt></td>'; |
errorlist[q] = '<tr><td width="75%"><tt>'+allrefs[i]+'</tt></td>'; |
||
Linha 381: | Linha 381: | ||
errorlist[q] += '<td width="25%">Múltiplas referências deste conteúdo <a href="http://pt.wikipedia.org/wiki/Wikipedia:Livro de estilo/Notas de rodapé">devem ser usadas uma vez</a></td></tr>'; |
errorlist[q] += '<td width="25%">Múltiplas referências deste conteúdo <a href="http://pt.wikipedia.org/wiki/Wikipedia:Livro de estilo/Notas de rodapé">devem ser usadas uma vez</a></td></tr>'; |
||
q++; |
q++; |
||
samecontentexclude[sx] = allrefscontent[i] |
samecontentexclude[sx] = allrefscontent[i]; |
||
sx++; |
sx++; |
||
break; |
break; |
||
Linha 389: | Linha 389: | ||
skipcheck=false; |
skipcheck=false; |
||
} |
} |
||
if (allrefscontent[i].search(/{{cite/i) == -1 && allrefscontent[i].search(/{{citation/i) == -1 && allrefscontent[i].search(/{{Comic (book|strip) reference/i) == -1 && allrefscontent[i].search(/{{Editorial cartoon reference/i) == -1 && allrefscontent[i].search(/{{harv/i) == -1 && templates) { |
if (allrefscontent[i].search(/\{\{cite/i) == -1 && allrefscontent[i].search(/\{\{citation/i) == -1 && allrefscontent[i].search(/\{\{Comic (book|strip) reference/i) == -1 && allrefscontent[i].search(/\{\{Editorial cartoon reference/i) == -1 && allrefscontent[i].search(/\{\{harv/i) == -1 && templates) { |
||
for (var x=0; x<templateexclude.length; x++) { |
for (var x=0; x<templateexclude.length; x++) { |
||
if (allrefscontent[i] == templateexclude[x]) { |
if (allrefscontent[i] == templateexclude[x]) { |
||
Linha 406: | Linha 406: | ||
} |
} |
||
if (repeated) { |
if (repeated) { |
||
var repeatnameexclude = |
var repeatnameexclude = []; |
||
var rx=0; |
var rx=0; |
||
for (var k=0; k<namedrefs.length; k++) { |
for (var k=0; k<namedrefs.length; k++) { |
||
Linha 430: | Linha 430: | ||
} |
} |
||
if (undef) { |
if (undef) { |
||
var undefexclude = |
var undefexclude = []; |
||
var ux=0; |
var ux=0; |
||
for (var p=0; p<namedrefcalls.length; p++) { |
for (var p=0; p<namedrefcalls.length; p++) { |
||
Linha 475: | Linha 475: | ||
var errors = errorCheck(); |
var errors = errorCheck(); |
||
document.getElementById('citeselect').removeChild(document.getElementById('errorform')); |
document.getElementById('citeselect').removeChild(document.getElementById('errorform')); |
||
if (errors == 0) { |
if (errors === 0) { |
||
if (numforms != 0) { |
if (numforms !== 0) { |
||
document.getElementById('citediv'+numforms).style.display = 'none'; |
document.getElementById('citediv'+numforms).style.display = 'none'; |
||
} |
} |
||
Linha 485: | Linha 485: | ||
} |
} |
||
else { |
else { |
||
if (numforms != 0) { |
if (numforms !== 0) { |
||
document.getElementById('citediv'+numforms).style.display = 'none'; |
document.getElementById('citediv'+numforms).style.display = 'none'; |
||
} |
} |