aus Wikipedia, der freien Enzyklopädie
// fügt jedem WikiLink einen entsprechenden ActionLink hinzu, ganz praktisch z.B. für zum Abarbeiten von Listen
function addActionLinks(actiontype)
{ var linkstart=false; var linkend=false;
if (actiontype == "undefined") var actiontype = prompt('Welche Action? z.B. edit, delete, watch, protect, unprotect, etc. ', DefaultAction);
for (var i=0; aNode = document.getElementsByTagName("a")[i]; i++)
{ if (linkstart == false && aNode.getAttribute("name") == "top" ) { linkstart = true; }
if (linkstart)
{ if ( (href = aNode.getAttribute("href")) )
{ if ( href.search(/returnto/) > 0 ) { linkend = true; }
if (!linkend && href != "#" && href.search(/\/wiki\//) != -1 && href.search(/Spezial/) == -1)
{ if (actiontype == "edit")
{ href = href.replace(/\/wiki\//g, "/w/index.php?title=");
href += '&action=edit';
aNode.setAttribute("href", href);
}
else
{ if (wgPageName!="Spezial:Neue_Seiten" || wgPageName=="Spezial:Neue_Seiten" && href.search(/\d+\.\d+\.\d+\.\d+/) > 0)
{ var EditNode = document.createElement('a');
href = href.replace(/\/wiki\//g, "/w/index.php?title=");
EditNode.setAttribute('href', href + '&action='+actiontype);
var EditTextNode = document.createTextNode('('+actiontype+')');
EditNode.appendChild(EditTextNode);
aNode.parentNode.insertBefore( EditNode, aNode.nextSibling );
aNode.parentNode.insertBefore( document.createTextNode(' '), aNode.nextSibling );
i++;
}
}
}
}
}
}
}