//***** generuje krasny kalendar ****** mesice = new Array('Leden', 'Únor', 'Březen', 'Duben', 'Květen', 'Červen', 'Červenec', 'Srpen', 'Září', 'Říjen', 'Listopad', 'Prosinec');var obj = new Array(); var celkemObj = null; var Ttermin_zvyrazni = false; function Tkalendar(onClick, nameInput, onVybrane, typ, iTime){ this.iTime = iTime; this.typ = typ; this.rok = "0000"; this.mesic = "00"; this.den = "00"; this.minute = "00"; this.hour = "00"; this.obj = "obj[" + (++celkemObj) + "]"; obj[celkemObj] = this; this.id = celkemObj; this.tisk = kalendar_tisk; this.generujMesic = kalendar_generujMesic; this.zmenaSelectu = Tkalendar_zmenaSelectu; this.vyberDatumu = Tkalendar_vyberDatumu; this.vyberTime = Tkalendar_vyberTime; this.vyberTimeText = Tkalendar_vyberTimeText; this.change = kalendar_change; this.onClick = onClick; this.onVybrane = onVybrane; this.nameInput = nameInput; this.zmenaDatumuNaAktualni = kalendar_zmenaDatumuNaAktualni; this.iTime = iTime; if(!Ttermin_zvyrazni){ Ttermin_zvyrazni = new Array(); for(f = 0; f < Ttermin_zvyrazniA.length; f+=3){ if(Ttermin_zvyrazni[Ttermin_zvyrazniA[f]] == null)Ttermin_zvyrazni[Ttermin_zvyrazniA[f]] = new Array(); Ttermin_zvyrazni[Ttermin_zvyrazniA[f]][Ttermin_zvyrazni[Ttermin_zvyrazniA[f]].length] = {typ: Ttermin_zvyrazniA[f+1],text: Ttermin_zvyrazniA[f+2]}; } } document.write("" + this.tisk() + ""); } function kalendar_zmenaDatumuNaAktualni(){ aDatum = new Date(); vytisklyKalendarO = getObject("vytisklyKalendar" + this.id); text = this.generujMesic(aDatum.getMonth(), aDatum.getFullYear()); vytisklyKalendarO.innerHTML = text; } function kalendar_change(){ if(vytisklyKalendarO = getObject("vytisklyKalendar" + this.id)){ text = this.generujMesic(); vytisklyKalendarO.innerHTML = text; } } function Tkalendar_zmenaSelectu(){ mesicO = getObject("mesic" + this.id); rokO = getObject("rok" + this.id); minuteT = 0; hourT = 0; if(minuteO = getObject("minute" + this.id)){ minuteT = minuteO.value * 1; } if(hourO = getObject("hour" + this.id)){ hourT = hourO.value * 1; } vytisklyKalendarO = getObject("vytisklyKalendar" + this.id); text = this.generujMesic(mesicO.value * 1, rokO.value * 1, minuteT, hourT); vytisklyKalendarO.innerHTML = text; if(this.iTime)this.vyberTime(); } function Tkalendar_vyberTime(){ if(nameInputO = getObject(this.nameInput)){ datumText = nameInputO.value.substr(0, 10); datumText += this.vyberTimeText(); nameInputO.value = datumText; } } function Tkalendar_vyberTimeText(){ datumText = ""; if(minuteO = getObject("minute" + this.id)){ hourO = getObject("hour" + this.id); hour = hourO.value; minute = minuteO.value; if(hour < 10)hour = "0" + hour; if(minute < 10)minute = "0" + minute; datumText = " " + hour + ":" + minute; } return datumText; } function Tkalendar_vyberDatumu(den){ mesicO = getObject("mesic" + this.id); rokO = getObject("rok" + this.id); mesic = (mesicO.value*1) + 1; if(mesic < 10)mesic = "0" + mesic; if(den < 10)den = "0" + den; rok = rokO.value*1; datumText = rok + "-" + mesic + "-" + den; datumText += this.vyberTimeText(); if(nameInputO = getObject(this.nameInput)){ nameInputO.value = datumText; } this.change(); eval(this.onVybrane); eval("defined = onChange_" + this.nameInput + "_defined;"); if(defined == 1){ eval("name = onChange_" + this.nameInput + ";"); eval(name); } } function kalendar_tisk(){ text = ''; var datum = new Date(); text += this.generujMesic(datum.getMonth(), datum.getFullYear()); return text; } function kalendar_generujMesic(mesic, rok, minute, hour){ //status = 'Generuju: ' + mesic + ' ' + rok; var datum = new Date(); var aktualniDatum = new Date(); denVal = 0; rokVal = 0; mesicVal = 0; hourVal = 0; minuteVal = 0; if(nameInputO = getObject(this.nameInput)){ temp = nameInputO.value; rokVal = temp.substr(0, 4) * 1; mesicVal = ((temp.substr(5, 2) * 1) - 1); denVal = (temp.substr(8, 2) * 1); hourVal = (temp.substr(11, 2) * 1); minuteVal = (temp.substr(14, 2) * 1) var datumPokusny = new Date(); datumPokusny.setFullYear(rokVal); datumPokusny.setDate(denVal); datumPokusny.setMonth(mesicVal); if((datumPokusny.getUTCFullYear() != rokVal) || (rokVal == 0)){ rokVal = 0; }else{ if(rok == null)rok = rokVal; } if(datumPokusny.getUTCMonth() != mesicVal){ mesicVal = 0; }else{ if(mesic == null)mesic = mesicVal; } if(datumPokusny.getUTCDate() != denVal){ denVal = 0; } } if(minute == null)minute = minuteVal; if(hour == null)hour = hourVal; if(mesic == null)mesic = aktualniDatum.getMonth(); if(rok == null)rok = aktualniDatum.getFullYear(); if(!((hour >= 0) && (hour <= 23))){ hour = 12; } if(!((minute >= 0) && (minute < 60)))minute = 30; if((minute % 5) != 0){ minute -= (minute % 5); } datum.setFullYear(rok); datum.setDate(1); datum.setMonth(mesic); denVTydnu = datum.getDay(); datum.setMonth(mesic + 1); datum.setDate(0); if(denVTydnu == 0)denVTydnu = 7; denVTydnu--; text = ""; if(this.typ == "normalni"){ width = "255px"; }else{ width = ""; } text += ""; } for(i = denVTydnu; i < 7; i++){ text += ""; } text += ""; text += ""; text += "
"; text += ""; //text += ""; text += ""; text += ""; text += ""; for(i = 0; i < denVTydnu; i++){ text += ""; } mesicUprava = (mesic * 1) + 1; svatkyAdd = ''; pocetMax = 6; jmeninyDodatek = '           '; if(mesicUprava < 10)mesicUprava = "0" + mesicUprava; for(den = 1; den <= datum.getDate(); den++){ textOl = ''; widthOl = 100; meziText = ' '; denVTydnu++; if(denVTydnu == 8){ text += ""; denVTydnu = 1; } onClick = "eval('" + this.obj + ".vyberDatumu(" + den + ");');"; denUprava = den; if(denUprava < 10)denUprava = "0" + denUprava; arrayPopisek = mesicUprava + '-' + denUprava; if(Ttermin_velikonoce[rok] != null){ velikonoceKontrola = (Ttermin_velikonoce[rok] == (rok + '-' + mesicUprava + '-' + denUprava)); if(velikonoceKontrola){ if(Ttermin_zvyrazni[arrayPopisek] == null)Ttermin_zvyrazni[arrayPopisek] = new Array(); Ttermin_zvyrazni[arrayPopisek][Ttermin_zvyrazni[arrayPopisek].length] = {typ: 1,text: "Velikonoční pondělí"}; } } svatekKontrola = ((Ttermin_zvyrazni[arrayPopisek] != null)); //(this.typ == 'normalni') && jmeniny = ''; stSvatekKontrola = false; jmeninyCele = ''; if(svatekKontrola){ for(f = 0; f < Ttermin_zvyrazni[arrayPopisek].length; f++){ if((Ttermin_zvyrazni[arrayPopisek][f].typ == 1) || (Ttermin_zvyrazni[arrayPopisek][f].typ == 2)){ stSvatekKontrola = true; svatkyAdd += "
"; //text += "
"; text += ""; text += "
"; mouseOver = "onClick=\"setTimeout('" + this.onClick + "', 1);\""; onChange = "onChange=\"eval('" + this.obj + ".zmenaSelectu();');\""; text += ""; text += ""; if(this.iTime == 1){ if(timeHourOptionO = getObject("timeHourOption")){ temp = timeHourOptionO.innerHTML.replace(" selected", ""); temp = temp.replace(""); temp = temp.replace("\"" + hour + "\"", "\"" + hour + "\" selected"); temp = temp.replace("=" + hour, "=\"" + hour + "\" selected"); text += "Čas:" + temp + ":"; } if(timeMinuteOptionO = getObject("timeMinuteOption")){ temp = timeMinuteOptionO.innerHTML.replace("selected", ""); temp = temp.replace(""); temp = temp.replace("\"" + minute + "\"", "\"" + minute + "\" selected"); temp = temp.replace("=" + minute, "=\"" + minute + "\" selected"); text += temp; } } text += ""; if(this.typ == "normalni"){ datumText = aktualniDatum.getDate() + "." + mesice[aktualniDatum.getMonth()].toLowerCase() + " " + aktualniDatum.getFullYear(); }else{ datumText = aktualniDatum.getFullYear() + "-" + (aktualniDatum.getMonth() + 1) + "-" + aktualniDatum.getDate(); } text += "[ " + datumText + " ]"; text += ""; text += ""; text += "
PoÚtStČtSoNe
" + den + "." + mesice[mesic].toLowerCase() + "" + Ttermin_zvyrazni[arrayPopisek][f].text + "
"; textOl += "- " + Ttermin_zvyrazni[arrayPopisek][f].text + "
"; widthOl = 250; }else if(Ttermin_zvyrazni[arrayPopisek][f].typ == 4){ jmeninyCele = Ttermin_zvyrazni[arrayPopisek][f].text; textOl += "" + jmeninyCele + "
"; jmeniny = jmeninyCele.substr(0, pocetMax); if((rozdilJmeniny = (pocetMax - jmeniny.length)) > 0){ jmeniny += jmeninyDodatek.substr(0, rozdilJmeniny * 6); } }else if(Ttermin_zvyrazni[arrayPopisek][f].typ == 3){ widthOl = 250; dodatek = "*"; textOl += dodatek + " " + Ttermin_zvyrazni[arrayPopisek][f].text + "
"; meziText = dodatek + meziText; } } } if(velikonoceKontrola){ Ttermin_zvyrazni[arrayPopisek].pop(); velikonoceKontrola = false; } aktualniDatumKontrola = ((den == aktualniDatum.getDate()) && (mesic == aktualniDatum.getMonth()) && (rok == aktualniDatum.getFullYear())); vybranyDatumKontrola = ((denVal == den) && (mesicVal == mesic) && (rokVal == rok)); text += "
"; text += ""; if(ol = this.ol){ re = /@nadpis@/gi; ol = ol.replace(re, den + ". " + mesice[mesic] + " " + rok); re = /@text@/gi; ol = ol.replace(re, textOl); re = /@width@/gi; ol = ol.replace(re, widthOl); }else{ ol = ''; } text += ""; if(this.typ == "normalni"){ text += ""; text += ""; } text += "
"; text += " 5) ? "style='color: red'" : "")+" class='jenkysDatumTdDny " + (aktualniDatumKontrola ? "jenkysDatumTdDnyDnes" : "")+ " " + (stSvatekKontrola ? "jenkysDatumTdDnySvatek" : "")+ "'>" + den + ""; text += "
" + meziText + "
" + jmeniny + "
"; text += "
"; if(this.typ == 'normalni')text += svatkyAdd; text += "
"; return text; } //************************************* //***** obecne funkce k ukoncovani ruznych vychytavek :) ***** function Tjenkys_aktivni(){ this.pocet = 0; this.promenne = new Array(); this.promenne["funkcePokazde"] = new Array(); this.promenne["podminka"] = new Array(); this.promenne["funkce"] = new Array(); this.promenne["obj"] = new Array(); this.promenne["hodnota"] = new Array(); this.deaktivuj = jenkys_deaktivuj; this.pridej = jenkys_pridej; if(!(document.body))alert("ttermin.js.php musi byt za tagem body"); this.oldBodyOnClick = document.body.onclick; } function jenkys_deaktivuj(){ for(i = 1; i <= this.pocet; i++){ eval("this.promenne['obj'][i]." + this.promenne["funkcePokazde"][i]); eval("podminka = (this.promenne['obj'][i]." + this.promenne["podminka"][i] + " == " + this.promenne["hodnota"][i] + ");"); if(podminka){ eval("this.promenne['obj'][i]." + this.promenne["funkce"][i]); } } if(this.oldBodyOnClick)this.oldBodyOnClick(); } function jenkysAktivni_click(){ jenkysAktivni.deaktivuj(); } function jenkys_pridej(obj, podminka, hodnota, funkce, funkcePokazde){ this.pocet++; this.promenne["podminka"][this.pocet] = podminka; this.promenne["obj"][this.pocet] = obj; this.promenne["funkce"][this.pocet] = funkce; this.promenne["funkcePokazde"][this.pocet] = funkcePokazde; this.promenne["hodnota"][this.pocet] = hodnota; } var jenkysAktivni = new Tjenkys_aktivni; document.body.onclick = jenkysAktivni_click; //************************************************************ //***** klasa na vybirani krasneho casu :) ***** function Ttime(onClick, nameInput, onVybrane, stepMinuta){ this.stepMinuta = stepMinuta; this.hodina = "00"; this.minuta = "00"; this.obj = "obj[" + (++celkemObj) + "]"; obj[celkemObj] = this; this.id = celkemObj; this.tisk = time_tisk; this.generujTime = time_generujTime; this.vyberCasu = time_vyberCasu; this.change = time_change; this.onClick = onClick; this.onVybrane = onVybrane; this.nameInput = nameInput; this.zmenaCasuNaAktualni = time_zmenaCasuNaAktualni; this.zkorigujAktualNaStep = time_zkorigujAktualNaStep; document.write("" + this.tisk() + ""); } function time_zmenaCasuNaAktualni(){ aDatum = new Date(); vytisklyTimeO = getObject("vytisklyTime" + this.id); text = this.generujTime(); vytisklyTimeO.innerHTML = text; } function time_change(){ if(vytisklyTimeO = getObject("vytisklyTime" + this.id)){ text = this.generujTime(); vytisklyTimeO.innerHTML = text; } } function time_vyberCasu(hodina, minuta){ if((hodina < 10)&&(hodina > 0))hodina = "0" + hodina; if((minuta < 10)&&(minuta > 0))minuta = "0" + minuta; datumText = hodina + ":" + minuta; if(bunkaO = getObject(this.oldValue)){ bunkaO.style.background = "white"; bunkaO.style.borderWidth = "0px"; } this.oldValue = datumText; if(nameInputO = getObject(this.nameInput)){ nameInputO.value = datumText; } this.change(); eval(this.onVybrane); } function time_tisk(){ text = ''; var datum = new Date(); text += this.generujTime(); return text; } function time_zkorigujAktualNaStep(minuta){ returnT = minuta; if(modulo = (minuta % this.stepMinuta)){ returnT = minuta - modulo; } return returnT; } function time_generujTime(){ //status = 'Generuju: ' + mesic + ' ' + rok; var datum = new Date(); var aktualniDatum = new Date(); hodinaVal = 0; minutaVal = 0; if(nameInputO = getObject(this.nameInput)){ temp = nameInputO.value; hodinaVal = temp.substr(0, 2) * 1; minutaVal = temp.substr(3, 2) * 1; if((minutaVal > 60) || (minutaVal < 0)){ minutaVal = 0; hodinaVal = 0; } if(minutaVal == 60){ minutaVal = 0; hodinaVal++; } if((hodinaVal > 24) || (hodinaVal < 0)){ hodinaVal = 0; minutaVal = 0; } if(hodinaVal == 24)hodinaVal = 0; if(minutaVal){ //alert(minutaVal); } if(minutaVal)minutaVal = this.zkorigujAktualNaStep(minutaVal); hodinaValT = hodinaVal; minutaValT = minutaVal; if((minutaVal < 10)&&(minutaVal > 0))minutaValT = "0" + minutaVal; if((hodinaVal < 10)&&(hodinaVal > 0))hodinaValT = "0" + hodinaVal; if(bunkaO = getObject(valueNew = (hodinaValT + ':' + minutaValT))){ bunkaO.style.borderWidth = "1px"; bunkaO.style.borderColor = "blue"; this.oldValue = valueNew; } } /* mouseOver = "onClick=\"setTimeout('" + this.onClick + "', 1);\""; onChange = "onChange=\"eval('" + this.obj + ".zmenaSelectu();');\""; $onClick = "eval('".this.obj.".vyberCasu(".hodina.", ".minuta.");');"; $aktualniDatumKontrola = ((hodina == aktualniDatum.getHours()) && (minuta == aktualniDatum.getMinutes())); vybranyDatumKontrola = ((hodinaVal == hodina) && (minutaVal == minuta)); $s .= ""; ".(aktualniDatumKontrola ? "jenkysDatumTdDnyDnes" : "")+ " //textTimeO = getObject("textTime"); */ text = ""; return text; } //***** konec timeu ******************************** //***** pekne zobrazovani schovanych ramecku ***** function aktivujObjektyZobrazSchovej(){ if(!(this.TzobrazSchovejSchovaneO = getObject("TzobrazSchovejSchovane" + this.id)))return; if(!(this.TzobrazSchovejO = getObject("TzobrazSchovej" + this.id)))return; if(!(this.aTzobrazSchovejO = getObject("aTzobrazSchovej" + this.id)))return; if(!(this.TzobrazSchovejImg1O = getObject("TzobrazSchovejImg1" + this.id))){ return; } if(!(this.TzobrazSchovejImg2O = getObject("TzobrazSchovejImg2" + this.id)))return; } function TzobrazSchovej(id, korekceLeft, korekceTop, korekceOnly, nastavuj_position_podle_mysi, delkaZobrazeni){ this.nastavuj_position_podle_mysi = nastavuj_position_podle_mysi; this.korekceLeft = korekceLeft; this.korekceTop = korekceTop; this.korekceOnly = korekceOnly; this.blokovane = false; this.maximum = delkaZobrazeni; this.vyska = 25; this.casovac = 0; this.aktivni = false; this.id = id; this.zobrazeno = false; this.aktivniOld = true; this.aktivujObjekty = aktivujObjektyZobrazSchovej; this.aktivujObjekty(); this.zobrazSchovejDetect = zobrazSchovejDetect; this.zobrazZobrazSchovej = zobrazZobrazSchovej; this.schovejZobrazSchovej = schovejZobrazSchovej; this.blokuj = zobrazSchovej_blokuj; this.setNewPosition = TzobrazSchovej_setNewPosition; this.odblokuj = zobrazSchovej_odblokuj; this.spustOdpocet = spustOdpocet; this.zaktivuj = zaktivuj; this.deaktivuj = deaktivuj; this.onSubmit = TzobrazSchovej_onSubmit; this.initHiddenProm = TzobrazSchovej_initHiddenProm; this.zmenHodnotyHiddenProm = TzobrazSchovej_zmenHodnotyHiddenProm; this.upravKorekce = TzobrazSchovej_upravKorekce; this.upravKorekce(); jenkysAktivni.pridej(this, "aktivni", false, "schovejZobrazSchovej();", "odblokuj();"); //this.zaktivuj(); } function TzobrazSchovej_upravKorekce(){ switch(this.korekceOnly){ case "mozzila": if(ie4){ this.korekceTop = 0; this.korekceLeft = 0; } break; } } function TzobrazSchovej_initHiddenProm(){ this.jsPromOA = new Array(); for(f = 0; f < this.javaScriptProm.length; f++){ if((pomO = getObject(this.javaScriptProm[f][0])) && (pom2O = getObject(this.javaScriptProm[f][1]))){ pomO.value = pom2O.value; } } } function TzobrazSchovej_zmenHodnotyHiddenProm(){ this.initHiddenProm(); } function TzobrazSchovej_onSubmit(){ this.zmenHodnotyHiddenProm(); //this.schovejZobrazSchovej(); } function zobrazSchovej_blokuj(){ this.blokovane = true; } function zobrazSchovej_odblokuj(){ this.blokovane = false; } function zaktivuj(){ this.blokovane = false; this.aktivujObjekty(); this.TzobrazSchovejImg1O.style.visibility = 'hidden'; this.TzobrazSchovejImg2O.style.visibility = 'hidden'; this.aktivni = true; this.aTzobrazSchovejO.style.backgroundColor = '#FCD9B2'; } function deaktivuj(){ if(this.blokovane == true)return; this.aktivujObjekty(); this.TzobrazSchovejImg1O.style.visibility = 'visible'; this.TzobrazSchovejImg1O.style.width = 1; this.TzobrazSchovejImg1O.style.height = 1; this.TzobrazSchovejImg2O.style.visibility = 'visible'; this.TzobrazSchovejImg2O.style.width = 1; this.TzobrazSchovejImg2O.style.height = 1; this.aktivni = false; if(this.zobrazeno == false)this.aTzobrazSchovejO.style.backgroundColor = ''; } var procent = 0; function spustOdpocet(){ if(this.aktivniOld != this.aktivni)this.casovac = 0; this.casovac++; if(this.aktivni == false){ if(this.casovac >= this.maximum){ this.schovejZobrazSchovej(); }else{ procent = ((this.casovac / this.maximum) * this.vyska); this.TzobrazSchovejImg1O.style.height = procent; this.TzobrazSchovejImg2O.style.height = procent; } }else{ if(this.casovac == 3){ this.zobrazZobrazSchovej(); } } this.aktivniOld = this.aktivni; //window.status = this.blokovane + ":" + this.aktivni + ":" + this.casovac; } function zobrazSchovejDetect(){ if(this.zobrazeno == false){ this.zobrazZobrazSchovej(); }else{ this.schovejZobrazSchovej(); } } function zobrazSchovejPomocna(prom){ eval(prom + ".aktivni = false;"); eval(prom + ".schovejZobrazSchovej();"); } function TzobrazSchovej_setNewPosition(){ if(!(this.nastavuj_position_podle_mysi == true))return; leftP = o3_x + this.korekceLeft; rightP = o3_y + this.korekceTop; this.TzobrazSchovejO.style.left = leftP; this.TzobrazSchovejO.style.top = rightP; //setInterval("window.status = o3_x + '|' + o3_y;", 100); } function zobrazZobrazSchovej(){ if(this.zobrazeno == true)return; eval(this.onzobraz); this.aTzobrazSchovejO.style.backgroundColor = '#FCD9B2'; text = this.TzobrazSchovejSchovaneO.innerHTML; this.setNewPosition(); /* if(ie42 == true){ //text = "

" + text; }else{ this.setNewPosition(); } */ this.TzobrazSchovejO.innerHTML = text; this.TzobrazSchovejO.style.zindex = 101; this.zobrazeno = true; this.TzobrazSchovejSchovaneO.innerHTML = ''; } function schovejZobrazSchovej(){ if(this.zobrazeno == false)return; nd(); eval(this.onschovej); this.aTzobrazSchovejO.style.backgroundColor = ''; text = this.TzobrazSchovejO.innerHTML; //if(ie42 == true)text = text.substr(8); this.TzobrazSchovejO.innerHTML = ''; this.TzobrazSchovejO.zindex = 0; this.TzobrazSchovejSchovaneO.innerHTML = text; this.aktivni = false; this.zobrazeno = false; this.zmenHodnotyHiddenProm(); } //***** konec zobrazovani ***** //**********************************************