// ==UserScript==
// @name Forum Alarm
// @namespace coolerjungel
// @description V2.3: Spielt bei neuem Eintrag im Forum einen festlegbaren Sound ab, zeigt ein festlegbares Icon zum Anmeldestatus, drückt bei vom Browser gespeichertem Passwort den Anmelde-Button und lädt die Seite nach festlegbarer Zeit neu
// @include
www.stargate-eaw.de/*
// ==/UserScript==
var Text = new Array();
Text["de"]= new Array();
Text["en"]= new Array();
//Anpassen/Cusomize:
//Deutsch
Text["de"]["1"] = "Sound-URL"; //Sound-URL
Text["de"]["2"] = "Alarm An"; //Sound An/Aus
Text["de"]["3"] = "Online-Icon"; //Symbol für Angemeldet
Text["de"]["4"] = "Symbol An"; //Symbol An/Aus
Text["de"]["5"] = "Offline-Icon"; //Symbol für Abgemeldet
Text["de"]["6"] = "Auto-Login"; //Automatisch einloggen An/Aus
Text["de"]["7"] = "Sprache"; //Sprachwechsel
Text["de"]["8"] = "Abstand"; //Zeit bis zum neuladen
Text["de"]["9"] = "Neuladen"; //Neu Laden An/aus
Text["de"]["A"] = "Farbe"; //Farbe dieser Beschriftungen
Text["de"]["B"] = "Alles"; //Alles An/Aus
Text["de"]["C"] = "OK"; //Änderungen Speichern
//English
Text["en"]["1"] = "Soundfile"; //Soundfile
Text["en"]["2"] = "Active"; //Sound Enabled/Disabled
Text["en"]["3"] = "Online"; //Icon for Logged-in
Text["en"]["4"] = "Icon"; //Icon Enabled/Disabled
Text["en"]["5"] = "Offline"; //Icon for Logged-out
Text["en"]["6"] = "Auto-Login"; //Log-in automatically Enabled/Disabled
Text["en"]["7"] = "Language"; //Change Language
Text["en"]["8"] = "Timeout"; //Timeout until reload
Text["en"]["9"] = "Reload"; //Reload Enabled/Disabled
Text["en"]["A"] = "Color"; //Color for this Labels
Text["en"]["B"] = "All"; //All Enabled/Disabled
Text["en"]["C"] = "Apply"; //Apply Changes
//Ab hier beibelassen/No changes beyond this point:
//Quiktime-Check
if (navigator.plugins) {
var qt="No";
for (i=0; i < navigator.plugins.length; i++ ) {
if (navigator.plugins
.name.indexOf("QuickTime") >= 0) {
qt = "Yes"
};
}
if(qt == "No") {
document.getElementById("horiz-menu").innerHTML += "<font color='FF0000' >Quiktime-Plugin nicht gefunden. BITTE INSTALLIEREN</font>" ;
};
};
//Update-Check
var vers_ist = "2.3";
var jetzt = new Date();
var tag = jetzt.getDate();
var monat = jetzt.getMonth()+1;
var jahr = jetzt.getFullYear();
var heute = tag + "." + monat + "." + jahr;
if(GM_getValue("Forum_Alarm_Datum") != heute) {
GM_xmlhttpRequest({
method: 'GET',
url: '
www.stargate-eaw.de/index.php?option=com...pic&id=468&Itemid=21
<=de',
onload: function (responseDetails) {
var check = responseDetails.responseText.split("</span> Code siehe unten</strong>");
var vers_akt = check[0].split('<strong>AKTUELLE VERSION:<span style="color: red">V'));
GM_setValue("Forum_Alarm_Version", vers_akt[1]);
}
});
GM_setValue("Forum_Alarm_Datum", heute);
};
if (GM_getValue("Forum_Alarm_Version") != vers_ist) {
document.getElementById("horiz-menu").innerHTML += "<a href='
www.stargate-eaw.de/index.php?option=com...pic&id=468&Itemid=21
<=de' >Forum Alarm: Neue Version verfügbar</a> " ;
};
//get_GM's
var lang = GM_getValue("Forum_Alarm_Language");
var soundfile = GM_getValue("Forum_Alarm_Soundfile");
var alarm_stat = GM_getValue("Forum_Alarm_Alarm");
var onlinefile = GM_getValue("Forum_Alarm_Onlinefile");
var icon_stat = GM_getValue("Forum_Alarm_Icon");
var offlinefile = GM_getValue("Forum_Alarm_Offlinefile");
var autolgn_stat = GM_getValue("Forum_Alarm_Autolgn");
var reloadspace = GM_getValue("Forum_Alarm_Reloadspace");
var reload_stat = GM_getValue("Forum_Alarm_Reload");
var label_col = GM_getValue("Forum_Alarm_Label");
var all_stat = 2;
if (!lang) lang = "de";
if (!label_col) label_col = "#000000";
//task-Parameter einlesen
var loc = document.location.href.split("&");
var i = 0;
while (i < loc.length) {
if( loc.match("task=")) {
var task = "topic";
if( loc == "task=forum") {
var task = "no_topic";
};
break
};
i++;
};
if(!task) {
var task = "no_topic";
};
//----Auto-Login----//
if (document.getElementById("modlgn_username")&& document.getElementById("modlgn_passwd")) {
if (document.getElementById("modlgn_username").value && document.getElementById("modlgn_passwd").value && autolgn_stat==true) {
var inputs = new Array();
var inputs = document.getElementsByTagName("input");
for (i=0; i<inputs.length; i++) {
if (inputs.className == "button") {
inputs.click();
};
};
};
};
//---Login-Status---//
if ( icon_stat==true) {
var punkt = document.getElementById("menu");
var img = document.createElement("img");
if(!document.getElementById("modlgn_passwd")){
img.setAttribute("src", onlinefile);
}else{
img.setAttribute("src", offlinefile);
};
img.setAttribute("height", "30px");
img.setAttribute("align", "left");
punkt.insertBefore(img, document.getElementById("horiz-menu"));
};
//
MENU
//
//Tabellenfeld in HTML suchen
var all = new Array();
var all = document.getElementsByTagName("li");
for (i=0; i<all.length; i++) {
if (all
.className == "ag_li") {
var ort = all;
};
};
if(ort){
//Tabelle erstellen
//Z1:
//Z2: Sounfile | Sound
//Z3: Online | Icon
//Z4: Offline | Auto-Login
//Z5: Sprache | Reload-Space | Reload
//Z6: Farbe | + | Alles/OK
var font = document.createElement("font");
font.setAttribute("id", "ForumAlarm");
font.setAttribute("color", label_col);
ort.appendChild(font);
var table = document.createElement("table");
table.setAttribute("id", "FATable");
font.appendChild(table);
var Zeile1 = document.createElement("tr");
Zeile1.setAttribute("id", "Z1");
table.appendChild(Zeile1);
var Zeile2 = document.createElement("tr");
Zeile2.setAttribute("id", "Z2");
table.appendChild(Zeile2);
var Zeile2A = document.createElement("td");
Zeile2A.setAttribute("id", "Z2A");
Zeile2A.setAttribute("colspan", "2");
Zeile2.appendChild(Zeile2A);
Zeile2A.innerHTML = Text[lang]["1"];
var Txt_Snd = document.createElement("input");
Txt_Snd.setAttribute("id", "Txt_Snd");
Txt_Snd.setAttribute("type", "Text");
Txt_Snd.value = soundfile;
Txt_Snd.addEventListener("change",function() {
soundfile = this.value;
},false);
Zeile2A.appendChild(Txt_Snd);
var Zeile2B = document.createElement("td");
Zeile2B.setAttribute("id", "Z2B");
Zeile2.appendChild(Zeile2B);
Zeile2B.innerHTML = Text[lang]["2"];
var Box_Snd = document.createElement("input");
Box_Snd.setAttribute("id", "Box_Snd");
Box_Snd.setAttribute("type", "Checkbox");
Box_Snd.checked = alarm_stat;
Box_Snd.addEventListener("change",function() {
alarm_stat = this.checked;
all_stat = 2;
},false);
Zeile2B.appendChild(Box_Snd);
var Zeile3 = document.createElement("tr");
Zeile3.setAttribute("id", "Z3");
table.appendChild(Zeile3);
var Zeile3A = document.createElement("td");
Zeile3A.setAttribute("id", "Z3A");
Zeile3A.setAttribute("colspan", "2");
Zeile3.appendChild(Zeile3A);
Zeile3A.innerHTML = Text[lang]["3"];
var Txt_Onl = document.createElement("input");
Txt_Onl.setAttribute("id", "Txt_Onl");
Txt_Onl.setAttribute("type", "Text");
Txt_Onl.value = onlinefile;
Txt_Onl.addEventListener("change",function() {
onlinefile = this.value;
},false);
Zeile3A.appendChild(Txt_Onl);
var Zeile3B = document.createElement("td");
Zeile3B.setAttribute("id", "Z3B");
Zeile3.appendChild(Zeile3B);
Zeile3B.innerHTML = Text[lang]["4"];
var Box_Icn = document.createElement("input");
Box_Icn.setAttribute("id", "Box_Icn");
Box_Icn.setAttribute("type", "Checkbox");
Box_Icn.checked = icon_stat;
Box_Icn.addEventListener("change",function() {
alert("modded");
icon_stat = this.checked;
all_stat = 2;
},false);
Zeile3B.appendChild(Box_Icn);
var Zeile4 = document.createElement("tr");
Zeile4.setAttribute("id", "Z4");
table.appendChild(Zeile4);
var Zeile4A = document.createElement("td");
Zeile4A.setAttribute("id", "Z4A");
Zeile4A.setAttribute("colspan", "2");
Zeile4.appendChild(Zeile4A);
Zeile4A.innerHTML = Text[lang]["5"];
var Txt_Ofl = document.createElement("input");
Txt_Ofl.setAttribute("id", "Txt_Ofl");
Txt_Ofl.setAttribute("type", "Text");
Txt_Ofl.value = offlinefile;
Txt_Ofl.addEventListener("change",function() {
offlinefile = this.value;
},false);
Zeile4A.appendChild(Txt_Ofl);
var Zeile4B = document.createElement("td");
Zeile4B.setAttribute("id", "Z4B");
Zeile4.appendChild(Zeile4B);
Zeile4B.innerHTML = Text[lang]["6"];
var Box_Lgn = document.createElement("input");
Box_Lgn.setAttribute("id", "Box_Lgn");
Box_Lgn.setAttribute("type", "Checkbox");
Box_Lgn.checked = autolgn_stat;
Box_Lgn.addEventListener("change",function() {
autolgn_stat = this.checked;
all_stat = 2;
},false);
Zeile4B.appendChild(Box_Lgn);
var Zeile5 = document.createElement("tr");
Zeile5.setAttribute("id", "Z5");
table.appendChild(Zeile5);
var Zeile5A = document.createElement("td");
Zeile5A.setAttribute("id", "Z5A");
Zeile5.appendChild(Zeile5A);
Zeile5A.innerHTML = Text[lang]["7"];
var Txt_Lng = document.createElement("input");
Txt_Lng.setAttribute("id", "Txt_Lng");
Txt_Lng.setAttribute("type", "Text");
Txt_Lng.setAttribute("size", "1");
Txt_Lng.setAttribute("maxlength", "2");
Txt_Lng.value = lang;
Txt_Lng.addEventListener("change",function() {
lang = this.value;
},false);
Zeile5A.appendChild(Txt_Lng);
var Zeile5B = document.createElement("td");
Zeile5B.setAttribute("id", "Z5B");
Zeile5.appendChild(Zeile5B);
Zeile5B.innerHTML = Text[lang]["8"];
var Txt_Spc = document.createElement("input");
Txt_Spc.setAttribute("id", "Txt_Spc");
Txt_Spc.setAttribute("type", "Text");
Txt_Spc.setAttribute("size", "1");
Txt_Spc.value = reloadspace;
Txt_Spc.addEventListener("change",function() {
reloadspace = this.value;
},false);
Zeile5B.appendChild(Txt_Spc);
var Zeile5C = document.createElement("td");
Zeile5C.setAttribute("id", "Z5C");
Zeile5.appendChild(Zeile5C);
Zeile5C.innerHTML = Text[lang]["9"];
var Box_Rld = document.createElement("input");
Box_Rld.setAttribute("id", "Box_Rld");
Box_Rld.setAttribute("type", "Checkbox");
Box_Rld.checked = reload_stat;
Box_Rld.addEventListener("change",function() {
reload_stat = this.checked;
all_stat = 2;
},false);
Zeile5C.appendChild(Box_Rld);
var Zeile6 = document.createElement("tr");
Zeile5.setAttribute("id", "Z6");
table.appendChild(Zeile6);
var Zeile6A = document.createElement("td");
Zeile6A.setAttribute("id", "Z6A");
Zeile6.appendChild(Zeile6A);
var Btn_Exp = document.createElement("input");
Btn_Exp.setAttribute("id", "Btn_+");
Btn_Exp.setAttribute("type", "Button");
Btn_Exp.value = "+";
Btn_Exp.addEventListener("click",function() {
document.getElementById("Txt_Snd").setAttribute("size", "60");
document.getElementById("Txt_Onl").setAttribute("size", "60");
document.getElementById("Txt_Ofl").setAttribute("size", "60");
document.getElementById("Btn_+").setAttribute("type", "Hidden");
document.getElementById("Btn_-").setAttribute("type", "Button");
},false);
Zeile6A.appendChild(Btn_Exp);
var Btn_Red = document.createElement("input");
Btn_Red.setAttribute("id", "Btn_-");
Btn_Red.setAttribute("type", "Hidden");
Btn_Red.value = "-";
Btn_Red.addEventListener("click",function() {
document.getElementById("Txt_Snd").setAttribute("size", "10");
document.getElementById("Txt_Onl").setAttribute("size", "10");
document.getElementById("Txt_Ofl").setAttribute("size", "10");
document.getElementById("Btn_-").setAttribute("type", "Hidden");
document.getElementById("Btn_+").setAttribute("type", "Button");
},false);
Zeile6A.appendChild(Btn_Red);
var Zeile6B = document.createElement("td");
Zeile6B.setAttribute("id", "Z6B");
Zeile6.appendChild(Zeile6B);
Zeile6B.innerHTML = Text[lang]["A"];
var Txt_Col = document.createElement("input");
Txt_Col.setAttribute("id", "Txt_Col");
Txt_Col.setAttribute("type", "Text");
Txt_Col.setAttribute("maxlength", "7");
Txt_Col.setAttribute("size", "4");
Txt_Col.value = label_col;
Txt_Col.addEventListener("change",function() {
label_col = this.value;
},false);
Zeile6B.appendChild(Txt_Col);
var Zeile6C = document.createElement("td");
Zeile6C.setAttribute("id", "Z6C");
Zeile6.appendChild(Zeile6C);
var Btn_All = document.createElement("input");
Btn_All.setAttribute("id", "Btn_All");
Btn_All.setAttribute("type", "Button");
Btn_All.value = Text[lang]["B"];
Btn_All.addEventListener("click",function() {
var i = 0;
var Boxes = new Array("Snd","Icn","Lgn","Rld");
switch(all_stat) {
case 0:
while(Boxes){
document.getElementById("Box_" + Boxes).checked=true;
i++;
all_stat = 1;
};
break;
case 1:
while(Boxes){
document.getElementById("Box_"+Boxes).checked=false;
i++;
all_stat = 0;
};
break;
default:
while(Boxes){
document.getElementById("Box_"+Boxes).checked=true;
i++;
all_stat = 1;
};
break;
};
},false);
Zeile6C.appendChild(Btn_All);
var Btn_App = document.createElement("input");
Btn_App.setAttribute("id", "Btn_App");
Btn_App.setAttribute("type", "Button");
Btn_App.value = Text[lang]["C"];
Btn_App.addEventListener("click", function() {
GM_setValue("Forum_Alarm_Language", document.getElementById("Txt_Lng").value);
GM_setValue("Forum_Alarm_Soundfile", document.getElementById("Txt_Snd").value);
GM_setValue("Forum_Alarm_Alarm", document.getElementById("Box_Snd").checked);
GM_setValue("Forum_Alarm_Onlinefile", document.getElementById("Txt_Onl").value);
GM_setValue("Forum_Alarm_Icon", document.getElementById("Box_Icn").checked);
GM_setValue("Forum_Alarm_Offlinefile", document.getElementById("Txt_Ofl").value);
GM_setValue("Forum_Alarm_Autolgn", document.getElementById("Box_Lgn").checked);
GM_setValue("Forum_Alarm_Reloadspace", document.getElementById("Txt_Spc").value);
GM_setValue("Forum_Alarm_Reload", document.getElementById("Box_Rld").checked);
GM_setValue("Forum_Alarm_Label", document.getElementById("Txt_Col").value);
alert("Werte gespeichert.../Values saved...");
document.location.reload();
},false);
Zeile6C.appendChild(Btn_App);
};
//--auf Bild prüfen--//
var found;
if (alarm_stat==true) {
if (document.body.innerHTML.match('"ag_new"'))){
//Sound abspielen
var arr = soundfile.split('.'));
var typ = arr[arr.length-1];
var buffer = document.createElement('embed'));
buffer.setAttribute("title", "Sound");
buffer.setAttribute("src", soundfile);
buffer.setAttribute("autostart", "true");
buffer.setAttribute("hidden", "true");
buffer.setAttribute("width", "0");
buffer.setAttribute("height", "0");
if (typ == 'wav')) buffer.setAttribute("type", HTML_UnEncode('audio/x-wav'));
else if (typ == 'midi')) buffer.setAttribute("type", HTML_UnEncode('audio/mid'));
else if (typ == 'mp3'))buffer.setAttribute("type", HTML_UnEncode('audio/mpeg'));
else if (typ == 'wma'))buffer.setAttribute("type", HTML_UnEncode('audio/x-ms-wma'));
document.body.appendChild(buffer);
};
};
//
neu laden----//
if (reload_stat==true && task=="no_topic") {
setTimeout(function() {
document.location.reload();
} , reloadspace*1000);
};