Usuari:Coet/scripts/escrutini.js
Aparença
(S'ha redirigit des de: Usuari:Pasqual/scripts/escrutini.js)
El codi que afegiu en aquesta pàgina podria tenir contingut maliciós que comprometi el vostre compte. Si no esteu segur si el codi a afegir és segur, pregunteu abans en la Taverna. El codi s'executarà en mostrar una previsualització d'aquesta pàgina. |
Nota: Després de desar, heu de netejar la memòria cau del navegador per veure els canvis. En la majoria de navegadors amb Windows o Linux, premeu Ctrl+F5 o bé premeu Shift i cliqueu el botó "Actualitza" (Ctrl i "Actualitza" amb Internet Explorer). Vegeu més informació i instruccions per a cada navegador a Viquipèdia:Neteja de la memòria cau.
//<pre><nowiki>
/*
mòdul implementat per l'usuari Coet
*/
/*
ToDo:
1. les propostes d'esborrat amb un resultat de 2-1 no s'han d'esborrar, s'han d'arxivar han de tenir un percentatge del 67% per poder-se esborrar, i no 64%
2. Les propostes amb un sol vot a favor de l'esborrament esperem a processar-les als 14 dies enlloc de fer-ho als 7 dies
3. No se perquè però de tant en tant passa això: https://ca.wikipedia.org?diff=13322095&oldid=prev (crec que només passa quan s'esborra la primera proposta)
*/
if (typeof veAnyActual !== 'undefined') {
if (typeof veCorregixFormat == "undefined") veCorregixFormat = false;
veProva = /Usuari:Coet\/pr:Esborrar pàgines\/Propostes/.test(document.title)
vePaginaPropostes = veProva
? "Usuari:Coet/pr:Esborrar_pàgines/Propostes"
: "Viquipèdia:Esborrar_pàgines/Propostes";
vePaginaHistorial = vePaginaPropostes.replace(/Propostes/,"Historial/")+veAnyActual+"/"+veTextMes;
function recompte(txt){
reVotes=/((?:<s(?:trike)?>)? *(?: *\*? *)?\{\{ ?(?:[Aa]provació|[Oo]bjecció|[Ss]uport|[Aa]ssumible|[Ii]ndiferent|[Cc]onsentible|[Rr]ebuig|[Nn]snc|[Ee]n contra|[Aa] favor) ?\}\} *(?:<\/s(?:trike)?>)?)/gmi
votes = txt.split(reVotes)
//recompte dels vots
idxVot=0
positius=0; negatius=0; anul_lats=0; nuls=0;
for(v in votes){
if(/.*([Aa]provació|[Oo]bjecció|[Ss]uport|[Aa]ssumible|[Ii]ndiferent|[Cc]onsentible|[Rr]ebuig|[Nn]snc|[Ee]n contra|[Aa] favor).*/.test(votes[v])==true){
esNul=/<s(?:trike)?>/gi.test(votes[v])
vot=votes[v].toLowerCase()
if(!esNul){
vot=vot.replace(/.*([Aa]provació|[Oo]bjecció|[Ss]uport|[Aa]ssumible|[Ii]ndiferent|[Cc]onsentible|[Rr]ebuig|[Nn]snc|[Ee]n contra|[Aa] favor).*/,"$1")
switch (vot.toLowerCase()){
case "aprovació" :
case "a favor" :
case "suport" :
case "assumible" :positius++; break;
case "objecció" :
case "en contra" :
case "rebuig" :
case "consentible":negatius++;break;
case "indiferent" :
case "nsnc" :nuls++;break;
}
} else {
anul_lats++
}
idxVot++
}
}
return {positius: positius, negatius: negatius, nuls: nuls, anul_lats: anul_lats}
}
function extreu_dades(txt) {
proposta=/\* *.*?\[\[(?:Us(?:uari|er)|\{\{ns:2\}\}):([^|]+?)\|(?:[^\]]+?)\]\].*?[\d:]{5}, (\d\d?) ([a-zç]{3,4}) (\d{4}) \(CES?T\)(?: \(proponent\))?/i
dades = proposta.exec(txt)
console.log(dades)
console.log(txt)
proponent = dades[1]
diaProposta = convertix(dades[2])
mesProposta = obtin_mes(dades[3])
anyProposta = convertix(dades[4])
dataProposta = "".concat(elidix("el",diaProposta), " ", elidix("de",mesProposta), " de ", anyProposta)
tempsTotal = calcula_lapse(diaProposta, mesProposta, anyProposta)
data1 = new Date(anyProposta, obtin_mes(mesProposta,true)-1, diaProposta);
return {data: data1, data2: dataProposta, temps: tempsTotal, proponent: proponent}
}
function veredicte(proposta){
if( /\{\{anul·lada\}\}\s*(?!<\/s(?:trike)?>)/gi.test(proposta.contingut) ) return "S'anul·la";
var dataPrp = proposta.dades.data
var decisio = "";
var hui = new Date();
var un_dia = 1000*60*60*24;
var totalDies = Math.ceil((hui.getTime()-dataPrp.getTime())/(un_dia))-1;
var totalVotsComputables = proposta.vots.positius + proposta.vots.negatius;
var ratio = .75 * totalVotsComputables;
var ratio7d = .75 * totalVotsComputables;
var ratio14d = .64 * totalVotsComputables;
var difMes = calcula_lapse(dataPrp.getDay(), dataPrp.getMonth()+1, dataPrp.getYear(), "m");
var textTotalDies = difMes>=1?" ("+totalDies+" di"+(totalDies==1?"a":"es")+")":"";
proposta.dades.ntotaldies = totalDies
proposta.dades.totaldies = textTotalDies
/**
* deprecated: la conserve, però és totalment prescindible
*
//implementació temporal deguda als canvis de política
//calculem els dies que separen el moment actual del 16 d'oct 2007 (=dataCanvi)
dataCanvi =new Date(2007, 10-1, 16);
if (dataPrp < dataCanvi) {
if (totalDies >= 7){
if (positius>=ratio) decisio = "S'esborra";
if (negatius>=ratio) decisio = "Es conserva";
}
if(totalDies > 30) {
if (positius < ratio &&
negatius < ratio) decisio = "S'arxiva";
}
} else {
*/
if (totalDies >= 4){
if (proposta.vots.positius >= 5 && proposta.vots.negatius == 0) decisio = "S'esborra";
if (proposta.vots.negatius >= 5 && proposta.vots.positius == 0) decisio = "Es conserva";
}
if (ratio7d != 0 || ratio14d !=0) {
if (totalDies >= 7 && decisio == "") {
if (proposta.vots.positius >= ratio7d) decisio = "S'esborra";
if (proposta.vots.negatius >= ratio7d) decisio = "Es conserva";
}
if (totalDies >= 14 && decisio == ""){
if (proposta.vots.positius >= ratio14d) decisio = "S'esborra";
if (proposta.vots.negatius >= ratio14d) decisio = "Es conserva";
}
if (totalDies >= 14 && decisio == "") {
if (proposta.vots.positius < ratio14d &&
proposta.vots.negatius < ratio14d) decisio = "S'arxiva";
}
}
//en qualsevol altre cas:
if (decisio=="") decisio = "Pendent";
return decisio
}
dbug=true
function recompte_vots(){
if(veEditant) {
veContingut = document.getElementById("wpTextbox1").value;
} else {
veContingut = topaz.wputil.getpagecontent(vePaginaPropostes)
}
veDadesPropostes = {}
vePropostes = veContingut.split(/==(.*)==([\s\S]*?)(?:(?===)|$)/g)
for (x=1;x<vePropostes.length;x+=3){
dades = extreu_dades(vePropostes[x+1])
vots = recompte(vePropostes[x+1])
veDadesPropostes[vePropostes[x]]={
titol: vePropostes[x],
contingut: vePropostes[x+1],
dades: dades,
decisio: null,
vots: vots
}
}
for (proposta in veDadesPropostes){
veDadesPropostes[proposta]['decisio'] = veredicte(veDadesPropostes[proposta])
}
}
function URLseccio (seccio){
paginaURL = location.href.toString().match(/https?:\/\/.*(?:Propostes|VP:EP\/P)/);
if (paginaURL == null) return 'href="#"';
accioURL = location.href.toString().match(/&action=.*/)
if (accioURL == null) {accioURL = ""} else {accioURL = accioURL.toString().split("#")[0]};
seccio = seccio.replace(/ /g, "_")
seccio = encodeURIComponent(seccio)
seccio = seccio.replace(/'/g, "%27")
seccio = seccio.replace(/\(/g, "%28")
seccio = seccio.replace(/\)/g, "%29")
seccio = seccio.replace(/%/g, ".")
seccio = seccio.replace(/.3A/g, ":") //reconvertim codi a caràcter, capricis del MediaWiki?
seccio = "".concat(' href="', paginaURL, accioURL, '#', seccio, '" ');
return seccio
};
function obrePopup(){
recompte_vots()
llistaPropostes = propostesAdjacents()
ompleContingut(veDadesPropostes[llistaPropostes.primera])
};
function tancaPopup(){
popup.style.width="";
popup.style.height="";
popup.style.bottom="420px";
popup.innerHTML='<a onclick="obrePopup()">escrutini</a>';
};
function propostesAdjacents(titol) {
propostes = []
dadesPropostes = veDadesPropostes
for (prop in dadesPropostes) {propostes.push(prop)}
propia = propostes.indexOf(titol)
anterior = propia-1
seguent = propia+1
if(anterior < 0) anterior = propostes.length-1
if(anterior > propostes.length-1) anterior = 0
if(seguent < 0) seguent = propostes.length-1
if(seguent > propostes.length-1) seguent = 0
return {seguent: propostes[seguent], anterior: propostes[anterior], propia: titol, primera: propostes[0], numero: propostes.indexOf(titol)+1}
};
function ves_hi(prop){
prop = recuperaApostrof(prop)
mostraAmaga('avís','hidden')
ompleContingut(veDadesPropostes[prop])
};
function ompleContingut(proposta){
nomProposta = proposta.titol.trim()
nomProponent = proposta.dades.proponent
dataProposta = proposta.dades.data2
tempsTotal = proposta.dades.temps
totalDies = proposta.dades.totaldies
nTotalDies = proposta.dades.ntotaldies
positius = proposta.vots.positius
negatius = proposta.vots.negatius
anul_lats = proposta.vots.anul_lats
nuls = proposta.vots.nuls
decisio = proposta.decisio
processables=""; indexPropostes=""; nombreProc=0; totalPropostes=0;
i=0
dadesPropostes = veDadesPropostes //vull evitar que s'esborre la variable quan acabe el bucle.
for (prop in dadesPropostes){
if(veDadesPropostes[prop].decisio != "" && processables == "") processables = "Propostes processables: "
if(veDadesPropostes[prop].decisio != "Pendent"){
if(processables != "Propostes processables: ") processables += " · ";
processables+= '<a id="processables" title="'+ veDadesPropostes[prop].titol.trim() +' ('+ veDadesPropostes[prop].decisio.toLowerCase()
+')" onclick="ves_hi(\''+ camuflaApostrof(prop) +'\')" '
+ URLseccio(veDadesPropostes[prop].titol.trim()) +'>'+ (i+1)+'</a>';
nombreProc++
}
if (i>0) indexPropostes += " "
indexPropostes += '<small><a id="processables" title="'+ veDadesPropostes[prop].titol.trim()
+ ' ('+ veDadesPropostes[prop].decisio.toLowerCase() +')" onclick="ves_hi(\''
+ camuflaApostrof(prop) +'\')" '
+ URLseccio(veDadesPropostes[prop].titol.trim())+'>'+ (i+1) +'</a></small>';
i++
}
totalPropostes=i; totalProcessables=nombreProc;
if (totalProcessables==0) processables+='<font color="grey">cap de processable.</font>'
popup=document.getElementById("popup")
popup.style.width="330px";
popup.style.height="420px";
popup.style.bottom="80px";
llista = propostesAdjacents(proposta.titol)
if(nomProponent==veUsuari){nomProponent="vós"}
contingutPopup='<table class="vePopup" width=100% style="background:white; display:block; background-color:#FFFFE0; opacity: 100; z-index: 1;">'+
'<tr><td width=85%><span style ="font-weight:bold; color:blue;">Resultats de les '+
'propostes</span></td>'+
'<td width=15% align=right><a title="amaga" onclick="tancaPopup()">✕</a></td></tr>'+
'<tr style="background-color:white; bordercolor:white;"><td align="left">'+
'<span style ="font-weight:bold; '+
'color:gold;">'+ totalProcessables +'/'+ totalPropostes +'</span></td>'+
'<td align="right"><a onclick="ves_hi(\''+ camuflaApostrof(llista.anterior) +'\')"'+
URLseccio(veDadesPropostes[llista.anterior].titol.trim()) +' title="'
+veDadesPropostes[llista.anterior].titol.trim() +'"><big><</big>'+
'</a> <a onclick="ves_hi(\''+ camuflaApostrof(llista.seguent) +'\')"'+
URLseccio(veDadesPropostes[llista.seguent].titol.trim()) +' title="'
+veDadesPropostes[llista.seguent].titol.trim() +'"><big>>'+
'</big></a></td></tr>'+
'<tr style="background-color:white; border-color:white;"><td colspan="2">'+
processables +'</td></tr>'+
'<tr style="background-color:white; border-color:white;"><td colspan="2">'+
indexPropostes +'</td></tr>'+
'<tr><td colspan="2"><b>'+ (llista.numero) +'.-</b> <a style="color:blue; '+
'font-weight:bold" href="'+ mw.config.get('wgServer') +'/wiki/'+ encodeURI(nomProposta) +'">'+ nomProposta +
'</a></td></tr>'+
'<tr><td colspan="2">La proposta ha estat presentada '+ dataProposta +'.</td></tr>'+
'<tr><td colspan="2">'+ tempsTotal + totalDies +'.</td></tr>'+
'<tr><td colspan="2">Proposada per <b>'+nomProponent+'</b>.</td></tr>'+
'<tr><td colspan="2">Compta amb:</td></tr>'+
'<tr><td colspan="2"> • <input id="vePositius" type="text" '+
'size="2" maxlength="3" align="right" value="'+ positius +'" '+
'onblur="resolucio('+ proposta +')"/> a favor</td></tr>'+
'<tr><td colspan="2"> • <input id="veNegatius" type="text" '+
'size="2" maxlength="3" align="right" value="'+ negatius +'"'+
'onblur="resolucio('+ proposta +')"/> en contra</td></tr>'+
'<tr><td colspan="2"> • <input id="veNuls" type="text" '+
'size="2" maxlength="3" align="right" value="'+ nuls +'"'+
'onblur="resolucio('+ proposta +')"/> nuls</td></tr>'+
'<tr><td colspan="2"> • <input id="veAnul·lats" type="text" '+
'size="2" maxlength="3" align="right" value="'+ anul_lats +'" '+
'onblur="resolucio('+ proposta +')"/> anul·lats</td></tr>'+
'<tr><td colspan="2" id="resolucio"></td></tr>'+
'<tr><td colspan="2" id="accions"></td></tr></table>'
popup.innerHTML=contingutPopup
resolucio(proposta)
};
function resolucio(proposta){
nomProposta = proposta.titol
nomProponent = proposta.dades.proponent
dataProposta = proposta.dades.data2
tempsTotal = proposta.dades.temps
totalDies = proposta.dades.totaldies
nTotalDies = proposta.dades.ntotaldies
nousPositius = parseInt(document.getElementById("vePositius").value)
nousNegatius = parseInt(document.getElementById("veNegatius").value)
nousNuls = parseInt(document.getElementById("veNuls").value)
nousAnul_lats = document.getElementById("veAnul·lats").value
decisio = ""
dataPrp = proposta.dades.data
totalVotsComputables = nousPositius + nousNegatius;
ratio = .75 * totalVotsComputables;
ratio7d = .75 * totalVotsComputables;
ratio14d = .64 * totalVotsComputables;
dataCanvi = new Date(2007, 10-1, 16);
if (dataPrp < dataCanvi) {
if (nTotalDies >= 7){
if (nousPositius>=ratio) decisio = "S'esborra";
if (nousNegatius>=ratio) decisio = "Es conserva";
}
if(nTotalDies > 30) {
if (nousPositius < ratio &&
nousNegatius < ratio) decisio = "S'arxiva";
}
} else {
//el següent codi és el que romandrà una vegada s'hagen resolt les propostes
//anteriors al 16 d'octubre de 2007 (fins a nous canvis :) )
if (nTotalDies >= 4){
if (nousPositius>=5 && nousNegatius == 0) decisio = "S'esborra";
if (nousNegatius>=5 && nousPositius == 0) decisio = "Es conserva";
}
if (ratio7d != 0 || ratio14d != 0){
if (nTotalDies >= 7 && ratio7d != 0){
if (nousPositius>=ratio7d) decisio = "S'esborra";
if (nousNegatius>=ratio7d) decisio = "Es conserva";
}
if (nTotalDies >= 14 && ratio14d != 0){
if (nousPositius>=ratio14d) decisio = "S'esborra";
if (nousNegatius>=ratio14d) decisio = "Es conserva";
}
if(nTotalDies >= 14 && ratio14d != 0) {
if (nousPositius < ratio14d &&
nousNegatius < ratio14d) decisio = "S'arxiva";
}
}
}
if(proposta.contingut.indexOf("{{anul·lada}}")>-1) decisio="S'anul·la";
//en qualsevol altre cas:
if (decisio=="") decisio = "Pendent";
proposta.decisio = decisio;
var resolucio = decisio == "Pendent"
? 'la votació <b>roman oberta</b>'
: 'la pàgina <a onclick="processa(\''+ camuflaApostrof(proposta.titol) +'\')">'
+ '<b>'+decisio.toLowerCase()+'rà</b></a>';
if(decisio=="S'arxiva") color="green"
if(decisio=="Es conserva" || decisio=="S'anul·la") color="blue"
if(decisio=="S'esborra") color="red"
if(decisio=="Pendent") color="orange"
resolucio='<font color="'+ color +'">'+ resolucio +'</font>'
resolucio='Segons les normes vigents i el resultat obtingut '+resolucio
document.getElementById("resolucio").innerHTML=resolucio;
};
// retira la proposta de la pàgina Viquipèdia:Esborrar pàgines/Propostes
function retira_proposta (proposta, comentari){
reconsprop = RegExp("== *"+ prepare4regexp(proposta.titol.trim()) +" *==[\\r\\n]*")
senseProposta = veContingut.replace(reconsprop, "");
senseProposta = senseProposta.replace(proposta.contingut,"")
resumRetirada = veVEprefixat +"arxivant la proposta «"+proposta.titol.trim()+"». Resultat: "+comentari;
if(veEditant){
document.getElementById("wpTextbox1").value = senseProposta;
document.editform.wpSummary.value = resumRetirada;
if(confirm("Heu eliminat una proposta d'aquesta pàgina\n"+
"¿Desitgeu desar els canvis efectuats a la pàgina?")){
document.editform.submit();
document.editform.wpWatchthis.checked = true;
}
} else {
topaz.wputil.setpagecontent(vePaginaPropostes,
senseProposta,
resumRetirada,
true)
}
//obre_pagina (vePaginaPropostes);
};
// arxiva la proposta
function arxiva_proposta(proposta, coment) {
var resumArxivaProposta = veVEprefixat+"arxivada proposta «"+proposta.titol+"». Resultat: "+coment;
var arxiuProposta='\n\n== '+ proposta.titol +' ==\n\n'+ proposta.contingut +'\n* '+coment+' --~~'+'~~';
contingutHistorial = topaz.wputil.getpagecontent(vePaginaHistorial)
if(contingutHistorial=="") arxiuProposta =
"Arxiu dels [[VP:EP/P|processos]] de [[VP:EP]] corresponents al " +veTextMes +
" de "+veAnyActual +".\n[[Categoria:Viquipèdia:Manteniment]]\n__NOINDEX__" +
arxiuProposta
topaz.wputil.addpagecontent(vePaginaHistorial,
arxiuProposta,
resumArxivaProposta,
false);
//obre_pagina (vePaginaHistorial);
};
//retira plantilla d'esborrament ( {{esborrar1}} ) de l'article
function retira_plantilla(proposta, coment) {
nomPag = proposta.titol.trim()
nomPag = nomPag.replace(/ /g,"_");
paginaDesti = topaz.wputil.getpagecontent(proposta.titol);
existeixPlantEsborrament = paginaDesti.search(/\{\{[Ee]sborrar1?\b.*\}\}/g)>-1
if (!existeixPlantEsborrament) {obre_pagina (proposta.titol); return;}
sensePlantilla = paginaDesti.replace(/\{\{esborrar1? *[^}]+\}\}[\s\n\r]+/gi, "")
resumRetiraPlantilla = veVEprefixat+"retirada plantilla {{esborrar1}}. Resultat: "+ coment;
topaz.wputil.setpagecontent(nomPagina,
sensePlantilla,
resumRetiraPlantilla,
false);
obre_pagina (proposta.titol);
};
// afegix el resultat a la pàgina de discussió de l'article
function afegix_resultat(proposta, coment, pagDiscussio, dataProp) {
nomPag = proposta.titol.replace(/ /g,"_");
var textDiscussio="", resumDiscussio="";
textDiscussio = "\n==Resultat de la proposta d'esborrament==\n"
+ "La pàgina principal d'esta discussió es va proposar per a ser esborrada "
+ proposta.dades.data2 + "\n\nEl resultat de [["+vePaginaHistorial + "#" + nomPag
+ "|les votacions]] ha estat el següent:\n\n"+coment+"\n\nResultat obtingut amb "
+ "[[Usuari:Coet/viquiestris|Viquiestris]]\n\n~~~~";
resumDiscussio = "Afegint resultat de proposta d'esborrament "+ veUString(veEnllacResum);
topaz.wputil.addpagecontent(pagDiscussio,
textDiscussio,
resumDiscussio,
false);
obre_pagina (proposta.titol);
};
// esborra l'article
function esborra_pagina(proposta, coment) {
urlnomPag = proposta.titol.replace(/ /,"_");
window.open(mw.config.get('wgServer')+'/wiki/Special:Whatlinkshere/'+urlnomPag)
alert("Abans d'esborrar:\n\nComproveu què hi enllaça.\n"+
"Cal esborrar les redireccions que quedaran rompudes.\n\n"+
"Si pel motiu d'esborrament no té sentit que l'article es torni "+
"a crear en el futur, cal treure els enllaços interns que tingui en "+
"altres articles.\n\n"+
"En cas d'esborrar una plantilla o una imatge cal treure-la"+
"abans de les pàgines on estigui inclosa.\n\n"+
"Comproveu si té pàgina de discussió. Si el contingut no és "+
"rellevant pel futur, es pot esborrar. Si no té sentit que la pàgina "+
"es torni a crear en el futur, el contingut de la discussió que pugui "+
"ser interessant es pot traslladar a un lloc més adequat.\n\n"+
"Si té alguna imatge no lliure que només està justificada per "+
"aquest article, cal esborrar-la.\n\n"+
"Comproveu els enllaços interwiki i considereu eliminar l\'enllaç "+
"a ca: en les altres viquis amb un resum d\'edició que els pugui "+
"servir d'avís: deleted on ca.wiki per (copyvio, not notable, spam...)")
if(veMarcaAdmin){
veResumEsborraPagina = "".concat(
"[[", vePaginaHistorial, "#", proposta.titol, "|Pàgina esborrada]] ",
veUString(veEnllacResum), " - Resultat: ", coment
);
veResumEsborraPagina = veResumEsborraPagina.replace(" ","_")
window.open("".concat(mw.config.get('wgServer'), '/w/index.php?title=', proposta.titol,
'&action=delete&wpReason=', encodeURIComponent(veResumEsborraPagina)));
} else {
alert("".concat("Si us plau, comuniqueu a un administrador que\ns'ha d'eliminar la pàgina «", proposta.titol, "»"))
}
};
function inserix_motiu(motiu){
addOnloadHook (function(){
rao = document.getElementById('wpReason') || document.getElementById('wpComment')
alert(rao.value)
rao.value=motiu
}
)
};
function processa(proposta){
proposta = veDadesPropostes[recuperaApostrof(proposta)]
if(veUsuari == nomProponent) {
if(!confirm("Compte! Sou el proponent, esteu segur que voleu arxivar la proposta?")) return
}
nomPagina = proposta.titol;
nomProponent = proposta.dades.proponent;
dataProposta = proposta.dades.data2;
decisio = proposta.decisio;
contingutProposta = veContingut.match(RegExp("".concat("== *", prepare4regexp(nomPagina), " *==[\\n\\r\\s]+", prepare4regexp(proposta.contingut),"[\\n\\r\\s]+")));
//paginaDiscussio:
//Usuari, Plantilla, Imatge, Viquipèdia, Categoria, MediaWiki, Ajuda, Portal, Viquiprojecte
espais=/(Usuari|Plantilla|Fitxer|Mèdia|Viquipèdia|Categoria|MediaWiki|Ajuda|Portal|Viquiprojecte):(.*)/
paginaDiscussio = nomPagina.search(espais)>-1
? nomPagina.replace(espais,"$1 Discussió:$2")
: "Discussió:"+nomPagina
/*
* accions que es realitzaran
*/
//En qualsevol cas es realitzaran les dues accions següents, incloent si s'anul·la.
accions="<small> • Es retirarà la proposta de "+vePaginaPropostes
accions+="<br/> • S'arxivarà la proposta a " + vePaginaHistorial
if (decisio=="S'esborra") {
popup.style.height="490px";
popup.style.bottom="80px";
accions+="<br/> • S'esborrarà la pàgina."
}
if (decisio=="S'arxiva" || decisio=="Es conserva") {
popup.style.height="490px";
popup.style.bottom="80px";
accions+="<br/> • Es retirarà la plantilla {{esborrar}} de "
+ nomPagina
accions+="<br/> • S'afegirà el resultat de la proposta a "
+ paginaDiscussio
}
document.getElementById("accions").innerHTML=accions+"</small>"
/*
* comentari del resultat
*/
comentariResultat=""; textTotalDies = "al cap "+elidix("de", proposta.dades.ntotaldies)+" dies";
if ((decisio=="S'esborra"||decisio=="Es conserva") && (positius==0||negatius==0) &&
nuls==0){
if(positius==0) {
comentariResultat = "".concat(decisio, " per unanimitat dels ", proposta.vots.negatius,
" participants ", proposta.dades.totaldies);
} else {
comentariResultat = "".concat(decisio, " per unanimitat dels ", proposta.vots.positius,
" participants ", textTotalDies);
}
} else {
comentariResultat = "".concat(decisio, " per ", proposta.vots.positius, " vots a favor de l'esborrament, i ",
proposta.vots.negatius, " en contra ", textTotalDies);
}
if(decisio=="S'arxiva") comentariResultat += " No s'ha assolit cap consens";
if(decisio=="S'anul·la") comentariResultat = "La proposta ha estat anul·lada pels canvis "
+ "efectuats a la pàgina implicada."
/*
* Ja hem completat tot els requisits per executar les accions escaients.
*/
if(confirm("Desitgeu executar les accions descrites anteriorment?"+
"\n\nEs la vostra responsabilitat comprovar el nombre de vots"+
"\ni les dades extretes automàticament. Si seguiu amb el procés"+
"\nno serà possible aturar-lo. Desitgeu continuar?")){
retira_proposta(proposta, comentariResultat)
arxiva_proposta(proposta, comentariResultat)
if (decisio=="S'esborra" && !veProva) {
esborra_pagina(proposta, comentariResultat);
}
if (!veProva && (decisio=="Es conserva"||decisio=="S'arxiva"||decisio=="S'anul·la")) {
retira_plantilla(proposta, comentariResultat)
afegix_resultat(proposta, comentariResultat, paginaDiscussio)
}
//window.location.reload() //Esta ordre atura la resta de codi, primer prove la següent :)
window.location.href= cawiki+vePaginaPropostes //torna a carregar la pàgina de propostes...
obrePopup() //i deixar l'escrutini obert...
}
};
function carrega_escrutini(){
if (mw.config.get('wgPageName') == vePaginaPropostes && veCorregixFormat && veEditant) formatador();
if (mw.config.get('wgPageName').indexOf("Esborrar_pàgines/Propostes")>-1 &&
veHref.search(/action=history|&diff|&oldid|&submit|Discussi%C3%B3:/)==-1){
var primer="content", segon="bodyContent";
//if(veEditant) primer="toolbar"; segon="editform"; //això no cal ara
primerObj = document.getElementById(primer)
segonObj = document.getElementById(segon)
var divEscrutini = document.createElement("div");
divEscrutini.innerHTML = '<div class="vePopup" id="popup" accesskey="I" tabIndex=0 style="position:fixed; right:5px; '+
'bottom:420px; float:right; padding:6px; background-color:#FFFFE0; opacity: 100; '+
'border:1px solid orange; z-index: 1;"><a onclick="obrePopup()" '+
'shape="poly">escrutini</a>'+
'</div>';
primerObj.insertBefore(divEscrutini, segonObj);
popup=document.getElementById("popup")
}
};
addOnloadHook (carrega_escrutini)
//</nowiki></pre>
} else {
mw.log.warn( 'The script Usuari:Coet/scripts/escrutini.js has been setup incorrectly. Please review your dependencies.' );
}