//***** 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 += "
";
text += "";
//text += "";
//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(" | ";
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 += "";
for(i = 0; i <= 11; i++){
text += "";
}
text += "";
text += " | | ";
text += "Po | Út | St | Čt | Pá | So | Ne | ";
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 += "" + 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 += "";
text += " 5) ? "style='color: red'" : "")+" class='jenkysDatumTdDny " + (aktualniDatumKontrola ? "jenkysDatumTdDnyDnes" : "")+ " " + (stSvatekKontrola ? "jenkysDatumTdDnySvatek" : "")+ "'>" + den + "";
text += " | ";
if(this.typ == "normalni"){
text += "" + meziText + " | ";
text += "" + jmeniny + " | ";
}
text += " ";
text += " | ";
}
for(i = denVTydnu; i < 7; i++){
text += " | ";
}
text += " ";
text += "";
if(this.typ == 'normalni')text += svatkyAdd;
text += " | ";
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 *****
//********************************************** |