Benutzer:J*/vector.js: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
J* (Diskussion | Beiträge) (logger entfernt, funktioniert nämlich nicht) |
J* (Diskussion | Beiträge) (+Empfehlungsdings) Markierung: WK: interner Datei-Hotlink |
||
Zeile 56: | Zeile 56: | ||
− | /* | + | /* Empfehlungs-Dings */ |
+ | |||
+ | var gagapages = new Array ("", "File", "Projekt"); // hierhin die Namensräume, die zur Wahl stehen (Achtung! canonical namespaces!) | ||
+ | |||
+ | // Daumen neben "Versionen/Autoren" reinflanschen (noch suboptimal - sieht etwas beknackt aus) | ||
+ | function createThumb() { | ||
+ | jQuery('#p-views ul').append('<li id="ca-gaga"><a href="javascript:GaGA();" title="Seite empfehlen">' | ||
+ | + '<span><img src="http://kamelopedia.mormo.org/images/2/27/Daumen_hoch.png" /></span>' | ||
+ | + '</a></li>'); | ||
+ | } | ||
+ | |||
+ | // Aktuellen Artikel in die Liste Schreiben | ||
+ | function GaGA(){ | ||
+ | jQuery.ajaxSetup({ cache: false }); | ||
+ | jQuery.get(wgScript, { title: "Kamel:" + wgUserName + "/Empfehlung", action: "raw" }, | ||
+ | function(data){ | ||
+ | gaga = data.match(/\[\[.*\]\]/g); | ||
+ | if(wgCanonicalNamespace == "File") { | ||
+ | gaga.push("[[:" + wgPageName.replace(/_/g, ' ') + "]]"); // Bild hinzufügen | ||
+ | } else { | ||
+ | gaga.push("[[" + wgPageName.replace(/_/g, ' ') + "]]"); // Artikel hinzufügen | ||
+ | } | ||
+ | k = new Array(); | ||
+ | // doppelte Einträge entfernen + alphabetisch sortieren (Funktioniert nicht mehr richtig, dafür der andere bug jetzt weg) | ||
+ | for(var i=0; i<gaga.length; i++){ | ||
+ | for(var j=i+1; j<gaga.length; j++){ | ||
+ | if (gaga[i] == gaga[j]) j = ++i; | ||
+ | } | ||
+ | k.push(gaga[i]); | ||
+ | } | ||
+ | gaga = k.sort(); | ||
+ | // edit-Token holen | ||
+ | jQuery.get('/api.php', { action: "query", prop: "info", intoken: "edit", titles: "Kamel:" + wgUserName + "/Empfehlung", format: "xml" }, | ||
+ | function(data){ | ||
+ | edittoken = data.getElementsByTagName('page')[0].getAttribute('edittoken'); | ||
+ | // API aufrufen und gaga in die Empfehlungsliste schreiben | ||
+ | jQuery.post("/api.php", { action: "edit", title: "Kamel:" + wgUserName + "/Empfehlung", text: "* " + gaga.join("\n* "), summary: "+ [[" + wgPageName.replace(/_/g, ' ') + "]]", token: edittoken }, | ||
+ | function(data){ | ||
+ | alert(wgPageName.replace(/_/g, ' ') + ' wurde eingetragen'); | ||
+ | } | ||
+ | ); | ||
+ | }, "xml" | ||
+ | ); | ||
+ | } | ||
+ | ); | ||
+ | }; | ||
+ | |||
+ | // Das ganze starten | ||
+ | addOnloadHook(function() { | ||
+ | if(jQuery.inArray(wgCanonicalNamespace, gagapages ) != -1) { | ||
+ | createThumb(); | ||
+ | } | ||
+ | }) |
Version vom 3. Mai 2011, 16:38 Uhr
/* für's Bürokratenspiel */
function bksp ()
{
if (wgPageName.indexOf("Projekt:Bürokratenspiel") != -1 )
{
var t = wgTitle.split("/");
var e = (wgAction = "edit") ? "$ " : "";
document.title = t[t.length-1];
}
}
addOnloadHook(bksp);
/* Zusammenfassungs-Warnung */
addOnloadHook( function () {
jQuery("#wpSummary, #wpTextbox1").bind("keypress", function() {
jQuery("#wpSummary").css("background-color","#ffffff");
try {
clearInterval(summaryWarnInterval);
summaryWarnInterval = null;
}
catch (e) {}
summaryWarnState = -1;
});
jQuery("#editform").bind("submit", function (e) {
if ( e.originalEvent.explicitOriginalTarget != jQuery("#wpSave")[0] )
return true;
if (! jQuery("#wpSummary").val().replace(/^\s+/,"").replace(/\s+$/,"").replace(/\/\*.*?\*\//,"") && summaryWarnState == -1)
{
jQuery("#wpSummary").focus();
summaryWarnInterval = window.setInterval(summaryWarn,70);
return false;
}
return true;
});
});
summaryWarnState = -1;
summaryWarnInterval = null;
function summaryWarn()
{
summaryWarnState ++;
if (summaryWarnState % 2 == 0)
jQuery("#wpSummary").css("background-color","#ffff99");
else
jQuery("#wpSummary").css("background-color","#ffffff");
if (summaryWarnState > 11)
clearInterval(summaryWarnInterval);
}
/* Empfehlungs-Dings */
var gagapages = new Array ("", "File", "Projekt"); // hierhin die Namensräume, die zur Wahl stehen (Achtung! canonical namespaces!)
// Daumen neben "Versionen/Autoren" reinflanschen (noch suboptimal - sieht etwas beknackt aus)
function createThumb() {
jQuery('#p-views ul').append('<li id="ca-gaga"><a href="javascript:GaGA();" title="Seite empfehlen">'
+ '<span><img src="http://kamelopedia.mormo.org/images/2/27/Daumen_hoch.png" /></span>'
+ '</a></li>');
}
// Aktuellen Artikel in die Liste Schreiben
function GaGA(){
jQuery.ajaxSetup({ cache: false });
jQuery.get(wgScript, { title: "Kamel:" + wgUserName + "/Empfehlung", action: "raw" },
function(data){
gaga = data.match(/\[\[.*\]\]/g);
if(wgCanonicalNamespace == "File") {
gaga.push("[[:" + wgPageName.replace(/_/g, ' ') + "]]"); // Bild hinzufügen
} else {
gaga.push("[[" + wgPageName.replace(/_/g, ' ') + "]]"); // Artikel hinzufügen
}
k = new Array();
// doppelte Einträge entfernen + alphabetisch sortieren (Funktioniert nicht mehr richtig, dafür der andere bug jetzt weg)
for(var i=0; i<gaga.length; i++){
for(var j=i+1; j<gaga.length; j++){
if (gaga[i] == gaga[j]) j = ++i;
}
k.push(gaga[i]);
}
gaga = k.sort();
// edit-Token holen
jQuery.get('/api.php', { action: "query", prop: "info", intoken: "edit", titles: "Kamel:" + wgUserName + "/Empfehlung", format: "xml" },
function(data){
edittoken = data.getElementsByTagName('page')[0].getAttribute('edittoken');
// API aufrufen und gaga in die Empfehlungsliste schreiben
jQuery.post("/api.php", { action: "edit", title: "Kamel:" + wgUserName + "/Empfehlung", text: "* " + gaga.join("\n* "), summary: "+ [[" + wgPageName.replace(/_/g, ' ') + "]]", token: edittoken },
function(data){
alert(wgPageName.replace(/_/g, ' ') + ' wurde eingetragen');
}
);
}, "xml"
);
}
);
};
// Das ganze starten
addOnloadHook(function() {
if(jQuery.inArray(wgCanonicalNamespace, gagapages ) != -1) {
createThumb();
}
})