home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Freelog 117
/
FreelogNo117-OctobreNovembre2013.iso
/
Theme
/
8GadgetPack
/
8GadgetPackSetup.msi
/
Gadgets.7z
/
Gadgets
/
Denk-Daran.gadget
/
einstell.js
< prev
next >
Wrap
Text File
|
2013-04-18
|
35KB
|
1,135 lines
//Wenn Einstellungsdialog geschlossen wird => Einstellungen speichern
System.Gadget.onSettingsClosing = SettingsClosing;
//Einstellungen laden
function start(){
spracheladen();
//Erweiterter Farbwähler
document.getElementById("farbwae").checked = readGadgetSetting("farbwae");
//Rahmenfarbe
farbe_rahm = readGadgetSetting("farbe_rahm");
document.getElementById("farbe_rahm_div").innerHTML="";
document.getElementById("farbe_rahm_div").style.backgroundColor = farbe_rahm;
//Hintergrundfarbe
farbe_hint = readGadgetSetting("farbe_hint");
document.getElementById("farbe_hint_div").innerHTML="";
document.getElementById("farbe_hint_div").style.backgroundColor = farbe_hint;
//rahmenbreite
document.getElementById("rahmbreite").selectedIndex = readGadgetSetting("rahmbreite");
//Hintergrundeffekt
document.getElementById("effekt").selectedIndex = readGadgetSetting("effekt");
//Segment oder Ziffernblatt
uhr = readGadgetSetting("uhr");
document.getElementsByName("uhrinput")[uhr].checked = true;
//Segmentfarbe
document.getElementById("segfarb").selectedIndex = readGadgetSetting("segfarb")-1;
//segment: sekunden anzeigen
document.getElementById("sek_segment").checked = readGadgetSetting("sek_segment");
//segment: doppelte blinkgeschw.
document.getElementById("blinkgeschw").checked = readGadgetSetting("blinkgeschw");
//zifferblattfarbe
document.getElementById("ziffblfarb").selectedIndex = readGadgetSetting("ziffblfarb")-1;
//stundenzeiger
document.getElementById("hfarb").selectedIndex = readGadgetSetting("hfarb")-1;
//minutenzeiger
document.getElementById("mfarb").selectedIndex = readGadgetSetting("mfarb")-1;
//sekundenzeiger
document.getElementById("sfarb").selectedIndex = readGadgetSetting("sfarb")-1;
//sekundenzeiger
document.getElementById("sek_zeiger").checked = readGadgetSetting("sek_zeiger");
//Segment oder Zifferblatt-Div
zei(uhr);
//speed
disspeed();
//auto-update
document.getElementById("autoupdate").checked = readGadgetSetting("autoupdate");
//Aufträge
//haupt-variablen laden
auftraege = new Array();
fso = new ActiveXObject ("Scripting.FileSystemObject");
pfad_einma = System.Gadget.path + "\\daten\\auftr_einma.dat";
pfad_woech = System.Gadget.path + "\\daten\\auftr_woech.dat";
// - - - - Einmalig - - - -
//aufträge einlesen
if(fso.FileExists(pfad_einma)){
fso_dat = fso.OpenTextFile(pfad_einma, 1, false, -1);
auftraege[0] = fso_dat.ReadAll().split("\r\n");
fso_dat.close();
sumschreib(0);
}
//keine aufträge vorhanden
else{
auftraege[0] = new Array();
leerschreib(0, kei);
}
// - - - - W├╢chentlich - - - -
//aufträge einlesen
if(fso.FileExists(pfad_woech)){
fso_dat = fso.OpenTextFile(pfad_woech, 1, false, -1);
auftraege[1] = fso_dat.ReadAll().split("\r\n");
fso_dat.close();
sumschreib(1);
}
//keine aufträge vorhanden
else{
auftraege[1] = new Array();
leerschreib(1, kei);
}
//gewählten register merken
document.getElementById("regspeich").checked = readGadgetSetting("regspeich");
register = readGadgetSetting("register").split("-");
//Alle Registereinstellungen laden
if(document.getElementById("regspeich").checked == true){
registerwechs(0, register[0]);
registerwechs(1, register[1]);
registerwechs(2, register[2]);
}
//auto-update: besonderer status -> updatereiter einblenden
if(readGadgetSetting("updatestat") != 0){
//update ist bereit
if(readGadgetSetting("updatestat") == 1){
document.getElementById("updat").innerHTML="<span style=\"font-size:12pt; font-weight:bold\">"+upneust+"</span>";
document.getElementById("upsuch1").disabled = true;
}
//update abgeschlossen
else if(readGadgetSetting("updatestat") == 2){
registerwechs(0,2);
document.getElementById("updat").innerHTML="<span style=\"color:#00A300; font-size:12pt; font-weight:bold\">"+gweva1+System.Gadget.version+gweva2+"</span><br><br><a href=\"http://dahi24.da.funpic.de/denk-daran/protokoll.php\">"+detail+"</a>";
System.Gadget.Settings.write("updatestat", 0);
}
}
else if(readGadgetSetting("autoupdate") == true){
document.getElementById("updat").innerHTML="<span style=\"color:#00A300; font-size:12pt; font-weight:bold\">"+aktue1+System.Gadget.version+aktue2+"</span>";
}
}
xml_error = "";
function start_updatecheck(){
document.getElementById("updat").innerHTML="<span style=\"font-size:12pt; font-weight:bold\">"+verher+"</span>";
var xml = new XMLHttpRequest();
xml.open('GET', "http://dahi24.da.funpic.de/denk-daran/version.php");
xml.onreadystatechange = function (){
if(xml.readyState == 4){
if(xml.status == "200"){
var ergeb = xml.responseXML.selectNodes("update")[0].getElementsByTagName("version")[0].text;
updatecheck(ergeb);
}
else updatecheck("Fehler");
}
};
xml_error = "";
try{
xml.send(null);
}
catch(e){
xml_error = "<br><br>"+freprx;
}
}
function updatecheck(x){
if(x == "Fehler") document.getElementById("updat").innerHTML="<span style=\"color:red; font-size:12pt; font-weight:bold\">"+noverb+xml_error+"</span>";
else if(x != System.Gadget.version){
if(document.getElementById("autoupdate").checked == true) updatdown(1); //automatisch installieren
else{ //mauell installieren
var temp = "<h3>"+upfoun+"</h3>";
temp += "<b>"+thisv+"</b><br><span style=\"font-size:18pt\">"+System.Gadget.version+"</span><br><br>";
temp += "<b>"+aktuv+"</b><br><span style=\"font-size:18pt\">"+x+"</span><br><br>";
temp += "<button onclick=\"updatdown(1)\" style=\"width:150px\"><img src=\"img\\down.png\"><br>"+upher+"</button><br><br>";
temp += "<span style=\"font-size:8pt\"><a href=\"http://dahi24.da.funpic.de/denk-daran/protokoll.php\">"+detail+"</a></span>";
document.getElementById("updat").innerHTML=temp;
}
}
else document.getElementById("updat").innerHTML="<span style=\"color:#00A300; font-size:12pt; font-weight:bold\">"+aktue1+System.Gadget.version+aktue2+"</span>";
}
//alle register-funktionen in einer funktion, speichert außerdem die aktuelle einstellung
function registerwechs(x, y){
//x=RegisterNr, y=Registerblatt
var regsp = document.getElementById("regspeich").checked;
if(x == 0){
for (var i=0; i<4; i++){
document.getElementById("inhalt"+i).style.display="none";
}
document.getElementById("inhalt"+y).style.display="inline";
if (y == 0) {
document.getElementById("lnk1").style.fontWeight="bold";
document.getElementById("lnk2").style.fontWeight="normal";
document.getElementById("lnk3").style.fontWeight="normal";
//text k├╝rzen
setTimeout("textkuerzen("+register[1]+")", 1);
}
if (y == 1) {
document.getElementById("lnk1").style.fontWeight="normal";
document.getElementById("lnk2").style.fontWeight="bold";
document.getElementById("lnk3").style.fontWeight="normal";
}
if (y == 2) {
document.getElementById("lnk1").style.fontWeight="normal";
document.getElementById("lnk2").style.fontWeight="normal";
document.getElementById("lnk3").style.fontWeight="bold";
}
//verhindern dass "neuer eintrag" dialog wiederhergestellt wird
//außerdem wird (damit keine fehler auftreten) das hauptregister oben und die radio-buttons darunter deaktiviert
if(y == 3) {
y = 0;
document.getElementById("deakt").style.display="inline";
document.getElementById("lnks").disabled=true;
}
else{
document.getElementById("deakt").style.display="none";
setTimeout("document.getElementById(\"lnks\").disabled=false;", 1);
}
if(regsp == true) register[0] = y;
}
if(x == 1){
document.getElementById("ubersicht0").style.display="none";
document.getElementById("ubersicht1").style.display="none";
document.getElementById("ubersicht"+y).style.display="inline";
if (y == 0) {
document.getElementById("ubersich0").style.fontWeight="bold";
document.getElementById("ubersich1").style.fontWeight="normal";
}
if (y == 1) {
document.getElementById("ubersich0").style.fontWeight="normal";
document.getElementById("ubersich1").style.fontWeight="bold";
}
if(regsp == true) register[1] = y;
}
if(x == "2"){
document.getElementById("ubersicht20").style.display="none";
document.getElementById("ubersicht21").style.display="none";
document.getElementById("ubersicht22").style.display="none";
document.getElementById("ubersicht2"+y).style.display="inline";
if (y == 0) {
document.getElementById("des1").style.fontWeight="bold";
document.getElementById("zea1").style.fontWeight="normal";
document.getElementById("erw1").style.fontWeight="normal";
}
if (y == 1) {
document.getElementById("des1").style.fontWeight="normal";
document.getElementById("zea1").style.fontWeight="bold";
document.getElementById("erw1").style.fontWeight="normal";
}
if (y == 2) {
document.getElementById("des1").style.fontWeight="normal";
document.getElementById("zea1").style.fontWeight="normal";
document.getElementById("erw1").style.fontWeight="bold";
}
if(regsp == true) register[2] = y;
}
if(regsp == true) System.Gadget.Settings.write("register", register.join("-"));
}
//Werte in Eingabefelder schreiben f├╝r Bearbeitungsfunktion
function lnk(y, x) {
auftrartwechs(y);
document.getElementById("radios").disabled = true;
// - - - - Einmalig - - - -
if(y == 0){
document.b1.dat[0].value=auftraege[0][x].substring(0,2);
document.b1.dat[1].value=auftraege[0][x].substring(2,4);
document.b1.dat[2].value=auftraege[0][x].substring(4,8);
document.b1.dat[3].value=auftraege[0][x].substring(8,10);
document.b1.dat[4].value=auftraege[0][x].substring(10,12);
document.b1.dat[5].value=auftraege[0][x].substring(14);
//Pr├╝fen ob Textfeld eingeblendet wird
if(auftraege[0][x].substring(13,14) == "1") {
document.getElementById("meldtext0").checked = true;
document.getElementById("meldtextdiv0").disabled=false;
}
else {
document.getElementById("meldtext0").checked = false;
document.getElementById("meldtextdiv0").disabled=true;
}
//pr├╝fen ob nachreichfunktion eingeblendet wird
if(auftraege[0][x].substring(12,13) > 0) document.getElementById("nachreich0").checked = true;
else document.getElementById("nachreich0").checked = false;
}
// - - - - W├╢chentlich - - - -
if(y == 1){
var tg = new Array();
for(var i=0; i<7; i++){
if(auftraege[1][x].substring(i, i+1) > 0) tg[i] = true;
else tg[i] = false;
}
document.b2.gewtag[0].checked=tg[0];
document.b2.gewtag[1].checked=tg[1];
document.b2.gewtag[2].checked=tg[2];
document.b2.gewtag[3].checked=tg[3];
document.b2.gewtag[4].checked=tg[4];
document.b2.gewtag[5].checked=tg[5];
document.b2.gewtag[6].checked=tg[6];
document.b2.dat2[0].value=auftraege[1][x].substring(7,9);
document.b2.dat2[1].value=auftraege[1][x].substring(9,11);
document.b2.dat2[2].value=auftraege[1][x].substring(14);
//Pr├╝fen ob Textfeld eingeblendet wird
if(auftraege[1][x].substring(13,14) == "1") {
document.getElementById("meldtext1").checked = true;
document.getElementById("meldtextdiv1").disabled=false;
}
else {
document.getElementById("meldtext1").checked = false;
document.getElementById("meldtextdiv1").disabled=true;
}
//pr├╝fen ob nachreichfunktion eingeblendet wird
if(auftraege[1][x].substring(11,13) != "00") document.getElementById("nachreich1").checked = true;
else document.getElementById("nachreich1").checked = false;
}
document.getElementById("einloesch"+y).style.visibility="visible";
//mitteilen, dass hier ein existierender auftrag editiert wird
document.getElementById("spe"+(y+1)).onclick = new Function("speich("+y+", "+x+");");
document.getElementById("einloesch"+y).onclick = new Function("einmaloesch("+y+", "+x+");");
document.getElementById("zur"+(y+1)).onclick = new Function("zurueck("+y+", "+x+");");
}
function leerschreib(x, y){
if(x == 0){
document.getElementById("sum0").innerHTML="<table class=\"eintr\" style=\"table-layout:fixed\"><tr><th width=\"77px\">"+dtm+"</th><th width=\"50px\">"+urz+"</th><th>"+txt+"</th></tr><tr><td colspan=\"3\">"+y+"</td></tr></table>";
}
if(x == 1){
document.getElementById("sum1").innerHTML="<table class=\"eintr\" style=\"table-layout:fixed\"><tr><th width=\"77px\">"+tge+"</th><th width=\"50px\">"+urz+"</th><th>"+txt+"</th></tr><tr><td colspan=\"3\">"+y+"</td></tr></table>";
}
}
txt_stat = new Array();
//Schreibt alle auftraege in die Uebersicht
function sumschreib(x) {
end=new Array();
txt_stat[x]=new Array();
// - - - - Einmalig - - - -
if(x == 0){
for (var i=0; i<auftraege[0].length; i++){
//Meldungsmodus
var status="";
txt_stat[0][i]=auftraege[0][i].substring(13,14);
if(txt_stat[0][i] == "1") status=auftraege[0][i].substring(14);
else status="<em title=\""+aut+"\">"+eiu1+auftraege[0][i].substring(8,10)+":"+auftraege[0][i].substring(10,12)+eiu2+".</em>";
end[i]=("<tr class=\"Auftraege\" onclick=\"javascript:registerwechs(0,3); lnk(0, "+i+");\"><td>" + auftraege[0][i].substring(0,2) + "." + auftraege[0][i].substring(2,4) + "." + auftraege[0][i].substring(4,8) + "</td><td>" + auftraege[0][i].substring(8,10) + ":" + auftraege[0][i].substring(10,12) + "</td><td style=\"white-space: nowrap; text-align:left\"><span id=\"id0_"+i+"\">" + status + "</span></td></tr>");
document.getElementById("sum0").innerHTML="<table class=\"eintr\" style=\"table-layout:fixed\"><tr><th width=\"77px\">"+dtm+"</th><th width=\"50px\">"+urz+"</th><th id=\"textbr0\">"+txt+"</th></tr>"+end.join("")+"</table>";
}
}
// - - - - W├╢chentlich - - - -
if(x == 1){
var gewaehlt=0;
for (var i=0; i<auftraege[1].length; i++){
var tage = new Array();
var ztn2=auftraege[1][i].substring(0,7);
var tage_anz=0;
for (var j=0; j<=ztn2.length; j++){
if(ztn2.substring(j,(j+1)) > 0){
if(gewaehlt == 0) var tag1=tag[j];
gewaehlt++;
}
else {
if(gewaehlt == 1){
tage.push(tag1);
tage_anz++;
}
else if(gewaehlt == 2){
tage.push(tag1+","+tag[j-1]);
tage_anz=tage_anz+2;
}
else if(gewaehlt > 2){
tage.push(tag1+"-"+tag[j-1]);
tage_anz=tage_anz+2;
}
var gewaehlt=0;
}
}
if(tage.length == 0){
tage.push("-");
groess="";
}
else{
tage=String(tage).replace(/\,/g, ", ");
if(tage_anz < 4) groess="";
else if(tage_anz == 4) groess=" style=\"font-size:7pt\" ";
else if(tage_anz == 5) groess=" style=\"font-size:6pt\" title=\""+tage+"\" ";
}
//Meldungsmodus
var status="";
txt_stat[1][i]=auftraege[1][i].substring(13,14);
if(txt_stat[1][i] == "1") status=auftraege[1][i].substring(14);
else status="<em title=\""+aut+"\">"+eiu1+auftraege[1][i].substring(7,9)+":"+auftraege[1][i].substring(9, 11)+eiu2+".</em>";
end[i]=("<tr class=\"Auftraege\" onclick=\"registerwechs(0,3); lnk(1, "+i+")\"><td"+groess+">"+ tage + "</td><td>" + auftraege[1][i].substring(7,9) + ":" + auftraege[1][i].substring(9, 11) + "</td><td style=\"white-space: nowrap; text-align:left\"><span id=\"id1_"+i+"\">" + status + "</span></td></tr>");
document.getElementById("sum1").innerHTML="<table class=\"eintr\" style=\"table-layout:fixed\"><tr><th width=\"77px\">"+tge+"</th><th width=\"50px\">"+urz+"</th><th id=\"textbr1\">"+txt+"</th></tr>"+end.join("")+"</table>";
}
}
document.getElementById("loesch"+x).style.visibility="visible";
}
function textkuerzen(x){
//aktuelle breite der normalen textbreite abfragen
//-6 f├╝r den abstand zwischen zelle und span, -1 als feinkorrektur
//innerText, damit z.B. aus & nicht & wird und nicht gek├╝rzt werden kann
if(auftraege[x] != ""){
var stdtxtbr=document.getElementById("textbr"+x).offsetWidth-7;
for(var i=0; i<auftraege[x].length; i++){
if(document.getElementById("id"+x+"_"+i).offsetWidth > stdtxtbr && txt_stat[x][i] != 0){
//titel einf├╝gen
document.getElementById("id"+x+"_"+i).title=document.getElementById("id"+x+"_"+i).innerText;
//zu großen bereich gleich entfernen
if(document.getElementById("id"+x+"_"+i).innerText.length > 33){
document.getElementById("id"+x+"_"+i).innerText = document.getElementById("id"+x+"_"+i).innerText.substring(0, 33)+"...";
}
//auf die stelle genau den rest entfernen/anfangen zu k├╝rzen
if(stdtxtbr != -7){ //ist funktion zu fr├╝h gestartet worden?
var zaehl=33; // als sicherheit nur 33mal ausf├╝hren
while(document.getElementById("id"+x+"_"+i).offsetWidth > stdtxtbr && zaehl != 0) {
document.getElementById("id"+x+"_"+i).innerText = document.getElementById("id"+x+"_"+i).innerText.substring(0, document.getElementById("id"+x+"_"+i).innerText.length-4)+"...";
//es wird im endeffekt 1 buchstabe pro durchlauf weggenommen, die punkte m├╝ssen ja auch entfernt werden!!
zaehl--;
}
}
}
}
}
}
// - - - - - - - - - - Design - - - - - - - - - - -
function disspeed(){
if(document.getElementById("sek_segment").checked == true){
document.getElementById("blinkgeschw").disabled=true;
document.getElementById("dbl1").disabled=true;
}
else {
document.getElementById("blinkgeschw").disabled=false;
document.getElementById("dbl1").disabled=false;
}
}
function zei(x) {
document.getElementById("uhr_art0").style.display="none";
document.getElementById("uhr_art1").style.display="none";
document.getElementById("uhr_art"+x).style.display="inline";
uhr = x;
}
function FarbwaehlerOeffnen(x) {
if(x == "Rah") farb = farbe_rahm;
else if(x == "Hin") farb = farbe_hint;
if (document.getElementById("farbwae").checked == true) {
shell = new ActiveXObject('WScript.shell');
shell.sendKeys('%+d'); //Sendet Tastenkombi ALT+D => Erweiterter Farbwähler
}
farb = document.getElementById('Farbwaehler').ChooseColorDlg(farb); //Öffnet Farbwähler.
farb = farb.toString(16); //Zahl wird in Hex-Wert umrechnet.
// F├╝gt bei Bedarf fehlende Nullen am Anfang hinzu.
if(farb.length < 6) {
var Temp = '000000'.substring(0, 6 - farb.length);
farb = Temp.concat(farb);
}
//#ff00ff wird von der Sidebar als Transparenz interpretiert, deshalb #ff00ff vermeiden
if(farb == "ff00ff") farb = "ff00fe";
farb="#"+farb;
if(x == "Rah"){
farbe_rahm = farb;
document.getElementById("farbe_rahm_div").style.backgroundColor = farbe_rahm;
}
else if(x == "Hin"){
farbe_hint = farb;
document.getElementById("farbe_hint_div").style.backgroundColor = farbe_hint;
}
}
function standard(){
if (bestat(swa) == 6){
//Farben erweitert definieren
document.getElementById("farbwae").checked = false;
//Hintergrundfarbe
farbe_hint = "#008000";
document.getElementById("farbe_hint_div").style.backgroundColor = farbe_hint;
//Rahmenfarbe
farbe_rahm = "#FFFFFF";
document.getElementById("farbe_rahm_div").style.backgroundColor = farbe_rahm;
//Rahmendicke
document.getElementById("rahmbreite").selectedIndex = 2;
//Hintergrundeffekt
document.getElementById("effekt").selectedIndex = 2;
//Segment oder Zifferblatt
document.getElementsByName("uhrinput")[0].checked = true;
zei(0);
//segmentfarbe
document.getElementById("segfarb").selectedIndex = 1;
//zifferblattfarbe
document.getElementById("ziffblfarb").selectedIndex = 7;
//stundenzeiger
document.getElementById("hfarb").selectedIndex = 7;
//minutenzeiger
document.getElementById("mfarb").selectedIndex = 7;
//sekundenzeiger
document.getElementById("sfarb").selectedIndex = 3;
//Sekundenzeiger anzeigen
document.getElementById("sek_zeiger").checked = true;
//sekunden anzeigen
document.getElementById("sek_segment").checked = false;
//blinkgeschwindigkeit
document.getElementById("blinkgeschw").checked = false;
disspeed();
//Register Position merken
document.getElementById("regspeich").checked = true;
//auto-update
document.getElementById("autoupdate").checked = true;
}
}
// - - - - - - - - - - A U F T R Ä G E - - - - - - - - - -
function heute(){
var jetzt = new Date();
document.b1.dat[0].value = jetzt.getDate();
document.b1.dat[1].value = jetzt.getMonth()+1;
document.b1.dat[2].value = jetzt.getFullYear();
}
// - - - - - - - - Auftragart - - - - - - - -
//auftrag-editor einblenden, bzw. umschalten
function auftrartwechs(x){
document.getElementById("zeit_art0").style.display="none";
document.getElementById("zeit_art1").style.display="none";
document.getElementById("zeit_art"+x).style.display="inline";
document.getElementsByName("zeitart")[x].checked = true;
}
//pr├╝ft, ob meldtextdiv dekativiert sein muss
function pruefen(x, y){
if(y == true){
document.getElementById("meldtextdiv"+x).disabled = false;
}
else {
document.getElementById("meldtextdiv"+x).disabled = true;
}
}
// - - - - - - - - Speichern - - - - - - - -
function speich(x, y) {
var altermeld="0";
var ueberpr=0;
var jetzt = new Date();
// - - - - Einmalig - - - -
if(x == 0){
var jahr = jetzt.getFullYear().toString();
//pr├╝fen ob alternativmeldung angezeigt werden soll
if(document.getElementById("meldtext0").checked == true) altermeld="1";
//pr├╝fen ob meldung nachgereicht werden soll
if(document.getElementById("nachreich0").checked == true) var nachreich="1";
else var nachreich="0";
//fehlende eintraege
for (var i=0; i<5; i++) {
if (isNaN(document.b1.dat[i].value)) {
document.b1.dat[i].focus();
document.getElementById("stat0").style.background="red";
document.getElementById("stat0").innerHTML=unguel;
ueberpr=1;
break;
}
if (document.b1.dat[i].value == "") {
document.b1.dat[i].focus();
document.getElementById("stat0").style.background="red";
document.getElementById("stat0").innerHTML=fehlbei;
ueberpr=1;
break;
}
}
if (ueberpr == 0) {
// - - - - autokorrekturen - - - -
//fehlende nullen
if (document.b1.dat[0].value.length == 1) document.b1.dat[0].value=("0"+document.b1.dat[0].value);
if (document.b1.dat[1].value.length == 1) document.b1.dat[1].value=("0"+document.b1.dat[1].value);
if (document.b1.dat[3].value.length == 1) document.b1.dat[3].value=("0"+document.b1.dat[3].value);
if (document.b1.dat[4].value.length == 1) document.b1.dat[4].value=("0"+document.b1.dat[4].value);
//jahr interpretieren/vervollständigen
if(document.b1.dat[2].value != ""){
document.b1.dat[2].value = parseFloat(document.b1.dat[2].value);
if(eval(jahr.substring(0, (4-document.b1.dat[2].value.length))+document.b1.dat[2].value) < jahr){
if(document.b1.dat[2].value.length < 4) document.b1.dat[2].value = eval(parseFloat(jahr.substring(0, (4-document.b1.dat[2].value.length)))+1)+document.b1.dat[2].value;
}
else document.b1.dat[2].value = jahr.substring(0, (4-document.b1.dat[2].value.length))+document.b1.dat[2].value;
}
//Datum erstellen, um zu pr├╝fen, ob es korrekt ist
datum = new Array();
for (var i=0; i<5; i++){
datum[i] = document.b1.dat[i].value;
}
dat1 = new Date(datum[1]+"/"+datum[0]+"/"+datum[2]+","+datum[3]+":"+datum[4]);
//system "korrigiert" das datum automatisch, wenn es falsch ist, es macht also z.B. aus "29.02.2011" "01.03.2011".
// - - - - pr├╝fen - - - -
//tag
if (document.b1.dat[0].value > 31 || document.b1.dat[0].value <= 0) {
document.getElementById("stat0").style.background="red";
document.getElementById("stat0").innerHTML=unguel;
document.b1.dat[0].focus();
}
//monat
else if (document.b1.dat[1].value > 12 || document.b1.dat[1].value <= 0) {
document.getElementById("stat0").style.background="red";
document.getElementById("stat0").innerHTML=unguel;
document.b1.dat[1].focus();
}
//stunde
else if (document.b1.dat[3].value > 23 || document.b1.dat[3].value < 0) {
document.getElementById("stat0").style.background="red";
document.getElementById("stat0").innerHTML=unguel;
document.b1.dat[3].focus();
}
//minute
else if (document.b1.dat[4].value > 59 || document.b1.dat[4].value < 0) {
document.getElementById("stat0").style.background="red";
document.getElementById("stat0").innerHTML=unguel;
document.b1.dat[4].focus();
}
//Ung├╝ltiges Datum? (30. Feb., 31. Nov, usw.)
else if((dat1.getMonth()+1) != datum[1]){
document.getElementById("stat0").style.background="red";
document.getElementById("stat0").innerHTML=tagnoexi;
document.b1.dat[0].focus();
}
//Ist Zeit abgelaufen?
else if(dat1 < jetzt){
document.getElementById("stat0").style.background="red";
document.getElementById("stat0").innerHTML=ztabgel;
}
//fehlender text bei aktiviertem meldungstext
else if(document.b1.dat[5].value == "" && altermeld == "1") {
document.getElementById("stat0").style.background="red";
document.getElementById("stat0").innerHTML=fehlbei;
document.b1.dat[5].focus();
}
//Alles OK, speichern
else{
//Arrayeintrag zusammenstellen
var tmp = document.b1.dat[0].value + document.b1.dat[1].value + document.b1.dat[2].value + document.b1.dat[3].value + document.b1.dat[4].value + nachreich + altermeld + document.b1.dat[5].value;
//Schreibt Zeit
if (typeof(y) == "undefined"){ //neuer eintrag
auftraege[0].push(tmp);
}
else { //bearbeiten
auftraege[0][y] = tmp;
}
//Schreibt "sum"-Inhalt
sumschreib(0);
document.getElementById("stat0").innerHTML=auftrgesp;
document.getElementById("stat0").style.background="#00CC33";
setTimeout("zurueck(0, "+y+")", 500);
ztensave();
}
}
}
// - - - - W├╢chentlich - - - -
if(x == 1){
//pr├╝fen ob alternativmeldung angezeigt werden soll
if(document.getElementById("meldtext1").checked == true) altermeld="1";
//heutige kalenderwoche ermitteln
getKw = function(){
var donnerstag = function(datum){
var Do = new Date();
Do.setTime(datum.getTime() + (3-((datum.getDay()+6) % 7)) * 86400000);
return Do;
}
var Datum = new Date();
var DoDat = donnerstag(Datum);
var kwjahr = DoDat.getFullYear();
var DoKW1 = donnerstag(new Date(kwjahr,0,4));
var kw = Math.floor(1.5+(DoDat.getTime()-DoKW1.getTime())/86400000/7);
return kw;
};
//pr├╝fen ob meldung nachgereicht werden soll
if(document.getElementById("nachreich1").checked == true) var nachreich = getKw();
else var nachreich = "00";
for (var i=0; i<2; i++) {
if (isNaN(document.b2.dat2[i].value)) {
document.b2.dat2[i].focus();
document.getElementById("stat1").style.background="red";
document.getElementById("stat1").innerHTML=unguel;
ueberpr=1;
break;
}
if (document.b2.dat2[i].value == "") {
document.b2.dat2[i].focus();
document.getElementById("stat1").style.background="red";
document.getElementById("stat1").innerHTML=fehlbei;
ueberpr=1;
break;
}
}
if (ueberpr == 0) {
//fehlende nullen hinzufuegen
if (document.b2.dat2[0].value.length == 1) document.b2.dat2[0].value=("0"+document.b2.dat2[0].value);
if (document.b2.dat2[1].value.length == 1) document.b2.dat2[1].value=("0"+document.b2.dat2[1].value);
//stunde
if (document.b2.dat2[0].value > 23 || document.b2.dat2[0].value < 0) {
document.getElementById("stat1").style.background="red";
document.getElementById("stat1").innerHTML=unguel;
document.b2.dat2[0].focus();
}
//minute
else if (document.b2.dat2[1].value > 59 || document.b2.dat2[1].value < 0) {
document.getElementById("stat1").style.background="red";
document.getElementById("stat1").innerHTML=unguel;
document.b2.dat2[1].focus();
}
//fehlender text bei aktiviertem meldungstext
else if(document.b2.dat2[2].value == "" && altermeld == "1") {
document.getElementById("stat1").style.background="red";
document.getElementById("stat1").innerHTML=fehlbei;
document.b2.dat2[2].focus();
}
//Alles OK, speichern
else {
//Gewählte Tage ermitteln
var tg = new Array();
if(nachreich == "00"){
for(var i=0; i<7; i++){
if(document.b2.gewtag[i].checked == true) tg[i] = "1";
else tg[i] = "0";
}
}
else{
var WochTag = (jetzt.getDay()+6) % 7;
var jetztNr_woech = ((jetzt.getHours() < 10) ? "0" : "") + jetzt.getHours() + ((jetzt.getMinutes() < 10) ? "0" : "") + jetzt.getMinutes();
for(var i=0; i<7; i++){
if(document.b2.gewtag[i].checked == true){
if(i < WochTag || (i == WochTag && jetztNr_woech >= document.b2.dat2[0].value+document.b2.dat2[1].value)){
tg[i] = "2";
}
else tg[i] = "1";
}
else tg[i] = "0";
}
}
//Arrayeintrag zusammenstellen
var tmp = tg[0] + tg[1] + tg[2] + tg[3] + tg[4] + tg[5] + tg[6] + document.b2.dat2[0].value + document.b2.dat2[1].value + nachreich + altermeld + document.b2.dat2[2].value;
//Schreibt Zeit
if (typeof(y) == "undefined"){ //neuer eintrag
auftraege[1].push(tmp);
}
else { //bearbeiten
auftraege[1][y] = tmp;
}
//Schreibt "sum2"-Inhalt
sumschreib(1);
document.getElementById("stat1").innerHTML=auftrgesp;
document.getElementById("stat1").style.background="#00CC33";
setTimeout("zurueck(1, "+y+");", 500);
ztensave();
}
}
}
}
//Aufträge in Textdateien schreiben
function ztensave(){
//datei löschen wenn keine aufträge
if(auftraege[0] == ""){
if(fso.FileExists(pfad_einma)) fso.DeleteFile(pfad_einma, true);
}
else{
//aufträge schreiben, bzw. Datei erstellen wenn nicht vorhanden
fso_dat = fso.OpenTextFile(pfad_einma, 2, true, -1);
fso_dat.Write(auftraege[0].join("\r\n"));
fso_dat.close();
}
//datei löschen wenn keine aufträge
if(auftraege[1] == ""){
if(fso.FileExists(pfad_woech)) fso.DeleteFile(pfad_woech, true);
}
else{
//aufträge schreiben, bzw. Datei erstellen wenn nicht vorhanden
fso_dat = fso.OpenTextFile(pfad_woech, 2, true, -1);
fso_dat.Write(auftraege[1].join("\r\n"));
fso_dat.close();
}
}
function einmaloesch(x, y){
if (bestat(msd) == 6){
auftraege[x].splice(y,1);
document.getElementById("stat"+x).style.background="#00CC33";
document.getElementById("stat"+x).innerHTML=auftrgel;
if (auftraege[x] != "") sumschreib(x);
else {
leerschreib(x, kei);
document.getElementById("loesch"+x).style.visibility="hidden";
}
setTimeout("zurueck("+x+", "+y+")", 500);
ztensave();
}
}
function zurueck(x, y){
registerwechs(0,0);
registerwechs(1,x);
//--auftrag-editor f├╝r einmalig UND w├╢chentlich zur├╝cksetzen--
document.getElementById("stat0").innerHTML="";
document.getElementById("stat1").innerHTML="";
document.getElementById("stat0").style.background="none";
document.getElementById("stat1").style.background="none";
b1.reset();
b2.reset();
document.getElementById("meldtextdiv0").disabled = false;
document.getElementById("meldtextdiv1").disabled = false;
if(typeof(y) != "undefined"){
//bestehender auftrag wurde editiert, entsprechende änderungen zurücksetzen
document.getElementById("einloesch"+x).style.visibility="hidden";
document.getElementById("spe1").onclick = new Function("speich(0);");
document.getElementById("spe2").onclick = new Function("speich(1);");
document.getElementById("einloesch0").onclick = new Function();
document.getElementById("einloesch1").onclick = new Function();
document.getElementById("zur1").onclick = new Function("zurueck(0);");
document.getElementById("zur2").onclick = new Function("zurueck(1);");
}
setTimeout("document.getElementById(\"radios\").disabled=false;", 1);
//text k├╝rzen
setTimeout("textkuerzen("+x+")", 1);
}
function del(x){
if (bestat(msw) == 6){
auftraege[x] = new Array();
ztensave();
document.getElementById("loesch"+x).style.visibility="hidden";
leerschreib(x, allauftrgel);
sumtime=window.setTimeout("leerschreib("+x+", kei);", 3000);
}
}
// - - - - - - - - - - - - Einstellungen speichern - - - - - - - - - - - -
function SettingsClosing(event) {
//OK Gewaehlt
if (event.closeAction == event.Action.commit) {
//Erweiterter Farbwähler
System.Gadget.Settings.write("farbwae", document.getElementById("farbwae").checked);
//Rahmengrundfarbe
System.Gadget.Settings.write("farbe_rahm", farbe_rahm);
//Hintergrundfarbe
System.Gadget.Settings.write("farbe_hint", farbe_hint);
//rahmenbreite
System.Gadget.Settings.write("rahmbreite", document.getElementById("rahmbreite").selectedIndex);
//Hintergrundeffekt
System.Gadget.Settings.write("effekt", document.getElementById("effekt").selectedIndex);
//Segment oder Ziffernblatt
System.Gadget.Settings.write("uhr", uhr);
//register merken
System.Gadget.Settings.write("regspeich", document.getElementById("regspeich").checked);
//auto-update
System.Gadget.Settings.write("autoupdate", document.getElementById("autoupdate").checked);
//Segmentfarbe
System.Gadget.Settings.write("segfarb", document.getElementById("segfarb").selectedIndex+1);
//segment: sekunden anzeigen
System.Gadget.Settings.write("sek_segment", document.getElementById("sek_segment").checked);
//segment: doppelte blinkgeschw.
System.Gadget.Settings.write("blinkgeschw", document.getElementById("blinkgeschw").checked);
//zifferblattfarbe
System.Gadget.Settings.write("ziffblfarb", document.getElementById("ziffblfarb").selectedIndex+1);
//stundenzeiger
System.Gadget.Settings.write("hfarb", document.getElementById("hfarb").selectedIndex+1);
//minutenzeiger
System.Gadget.Settings.write("mfarb", document.getElementById("mfarb").selectedIndex+1);
//sekundenzeiger
System.Gadget.Settings.write("sfarb", document.getElementById("sfarb").selectedIndex+1);
//sekundenzeiger
System.Gadget.Settings.write("sek_zeiger", document.getElementById("sek_zeiger").checked);
}
}