
var ts = new Date();
function countdown(sec, name){
  var e = document.getElementById(name);
  var tn = new Date();
  var tl = ((sec*1000)-(tn.getTime()-ts.getTime()))/1000;
  if (tl>0){
    var h = parseInt(tl/(60*60));
    tl = tl-(h*(60*60));
    var m = parseInt(tl/(60));
    tl = tl-(m*(60));
    var s = parseInt(tl);
    if (h<10) h="0"+h;
    if (m<10) m="0"+m;
    if (s<10) s="0"+s;
    var tstr = h+":"+m+":"+s;
    e.innerHTML = tstr;
    window.setTimeout("countdown("+sec+",'"+name+"')",500);
  }
  else{
    e.innerHTML = '-';
  }
}




// Farbwahl für Chat



var col       =  0;     // steuert Veraenderung der RGB-Werte
                        // r  = colR wird erhoeht
                        // -r =  colR wird erniedrigt
                        // analog fuer G und B
                        // w  =  alle erhoehen
                        // bl =  alle erniedrigen
var animColor =  0;     // setTimeout handler
var colR      =  0; //document.getElementById('dlpRed').value;   // speichert Dezimalwert Rot
var colG      =  0; //document.getElementById('dplGreen').value;   // speichert Dezimalwert Gruen
var colB      =  0; //document.getElementById('dplBlue').value;   // speichert Dezimalwert Blau


// minimalisierte Browserabfrage anhand bekannter Objekte
var nc      =  !!(document.captureEvents    &&  !document.getElementById);
var ie4     =  !!(document.all              &&  !document.documentElement);

// einfache div-layer referenzieren
function dRefS(num)        {return (nc? document.layers[num] : (ie4? document.all[num].style : document.getElementById(num).style))}

// speichert unterschiedlichen Zugriff auf Hintergrundfarbe
var bgC     =  nc? 'bgColor' : 'backgroundColor';

// steuert die Farbanzeige
function animCol() {
        // nur ausfuehren, wenn col nicht 0 ist
        if (col) {
                // RGB-Werte fuer die Farben veraendern, je nach "col"
                // Dies stellt verkuerzte und verschachtelte if-Abfragen dar
                colR =  (col == "r" || col == "w")? ((colR < 255)? colR +1 : colR) : ((colR > 0 && (col == "bl" || col == "-r"))? colR -1 : colR);
                colG =  (col == "g" || col == "w")? ((colG < 255)? colG +1 : colG) : ((colG > 0 && (col == "bl" || col == "-g"))? colG -1 : colG);
                colB =  (col == "b" || col == "w")? ((colB < 255)? colB +1 : colB) : ((colB > 0 && (col == "bl" || col == "-b"))? colB -1 : colB);

                // Umrechnung in Hex-Werte, falls einstellig, "0" voranstellen
                var hexR =  (colR.toString(16).length < 2)? "0" + colR.toString(16) : colR.toString(16);
                var hexG =  (colG.toString(16).length < 2)? "0" + colG.toString(16) : colG.toString(16);
                var hexB =  (colB.toString(16).length < 2)? "0" + colB.toString(16) : colB.toString(16);

                // Zugriff auf Css-Eigenschaften des Div-Layers zur Farbanzeige, dRefS liefert die Referenzierung
//                dRefS("dplDiv")[bgC] =  "#" + hexR + hexG + hexB;

                // Ausgabe an Form
                document.dpl.dplRed.value   =  colR;
                document.dpl.dplGreen.value =  colG;
                document.dpl.dplBlue.value  =  colB;
                document.dpl.dplHex.value   =  "#" + hexR + hexG + hexB;

                // Wenn Dezimalwerte insgesamt zwischen Maximal und Minimal setTimeout
                if ((colR + colG + colB < 765) && (colR + colG + colB > 0)) animColor =  setTimeout("animCol()", 10);


                document.getElementById('dplDiv').style.color = "#" + hexR + hexG + hexB;
        }
}

// kontrolliert animCol
// stoppt alten setTimeout
// setzt col auf neuen Wert
function initColAnim(setCol) {

         colR      =  Number(document.getElementById('dplRed').value);   // speichert Dezimalwert Rot
         colG      =  Number(document.getElementById('dplGreen').value);   // speichert Dezimalwert Gruen
         colB      =  Number(document.getElementById('dplBlue').value);   // speichert Dezimalwert Blau


         // Farben auf gültige Werte überprüfen
//         if ( isNaN(colR) || colR == '' ) { colR = 0; }
//         if ( isNaN(colG) || colG == '' ) { colG = 0; }
//         if ( isNaN(colB) || colB == '' ) { colB = 0; }




        if (animColor) clearTimeout(animColor);
        col =  setCol;
        if (col) animCol();
}

// Bei Klick Maximalwerte annehmen
function switchColor(col) {
        var setCol;
        switch (col) {
                case "r":
                        colR =  255;
                        break;
                case "g":
                        colG =  255;
                        break;
                case "b":
                        colB =  255;
                        break;
                case "-r":
                        colR =  0;
                        break;
                case "-g":
                        colG =  0;
                        break;
                case "-b":
                        colB =  0;
                        break;
        }
}