function edytorText(path,activYear,activMonth,activDay,endYear,endMonth,endDay,kraj,woj){
this.path = path;
this.parentCheckCat = document.getElementById('CheckCategories');
this.childCheckCat = document.getElementsByName('checkCat');
this.tabCheckCat = new Array();
this.year = activYear;
this.month = activMonth;
this.day = activDay;
//#######3
this.wyborYearS = activYear;
this.wyborMonthS = activMonth;
this.wyborDayS = activDay;
this.wyborYearE = endYear;
this.wyborMonthE = endMonth;
this.wyborDayE = endDay;
this.cat = 0;
this.kraj = kraj;
this.woj = woj;
//###############
this.datePoczatek=1;
this.divTextData;
this.oldYearS = activYear;
this.oldYearE = endYear;
this.oldMonthS = activMonth;
this.oldMonthE = endMonth;
this.tabMonth = new Array ('Styczeń','Luty','Marzec','Kwiecień','Maj','Czerwiec','Lipiec','Sierpień','Wrzesień','Październik','Listopad','Grudzień');
this.test = document.getElementById('test');
this.tableCalendar = document.getElementById('tableCalendar');
this.divCalendar = document.getElementById('selDay');
this.dateStart = 0;
this.tabWoj = new Object();
this.init();};

edytorText.prototype = {
init : function(){
this.ustawCheckCat();
this.ustawCalendar();
for(var i=0;i<this.childCheckCat.length;i++){this.addEvent(this.childCheckCat[i],'click',this.zmienCheckedCat); }
},
ustawCheckCat : function(){
var y = 0;
this.tabCheckCat = new Array();
var tabIdCat = new Array();
for(var i=0;i<this.childCheckCat.length;i++){
    if(this.childCheckCat[i].checked){
     var objCheckedCat = new Object();
     objCheckedCat.value = this.childCheckCat[i].value;
     objCheckedCat.name = this.childCheckCat[i].nextSibling.innerHTML;
     this.tabCheckCat[y] = objCheckedCat;
     tabIdCat[y]=this.childCheckCat[i].value;
     y++;
     }
     this.cat = tabIdCat.join(',');
     }
}, 
getCheckedCat : function(el){
var checkVal = el.value;
var checkWszystkie = document.getElementById('checkCatWszystkie');
this.ustawCheckCat();
if(checkVal == 0){
for(var i=0;i<this.childCheckCat.length;i++) this.childCheckCat[i].checked = false;
checkWszystkie.checked = true;
} 
else if(checkVal>0 && checkWszystkie.checked) checkWszystkie.checked = false;
else if(this.tabCheckCat.length == 0) checkWszystkie.checked = true;
this.ustawCheckCat();
},
addEvent : function(elem,eventS,funkcja){
if(window.addEventListener) elem.addEventListener(eventS,funkcja,false);
else elem.attachEvent('on'+eventS,funkcja,false);  
},

zmienCheckedCat : function(e){
var event = (e)?e:event; 
var element;
if(event.srcElement) element = event.srcElement;
else element = this;
objEdytorText.getCheckedCat(element);
objEdytorText.zmienWynikSearchCat();
},
zmienWynikSearchCat : function(){
var wynikCat = document.getElementById('nameSearchCat');
wynikCat.innerHTML = '';
var nazwaCat = new Array();
for(var i=0;i<objEdytorText.tabCheckCat.length;i++){
nazwaCat[i]=objEdytorText.tabCheckCat[i].name;
}
wynikCat.innerHTML =nazwaCat.join(', ');

},
getYear : function(event,objectID){
var node = document.getElementById(objectID);
var valueSelect = node.options[event].value;
var contentID = objectID+'_content';
var content = document.getElementById(contentID);
node.selectedIndex = event;
content.innerHTML = node.options[event].text; 

if(this.datePoczatek == 1)
objEdytorText.wyborYearS = node.options[event].value;
else if(this.datePoczatek == 2)
objEdytorText.wyborYearE = node.options[event].value;
objEdytorText.aktualizujKalendarz();
},
getMonth : function(event,objectID){
var node = document.getElementById(objectID);
var valueSelect = node.options[event].value;
var contentID = objectID+'_content';
var content = document.getElementById(contentID);
node.selectedIndex = event;
content.innerHTML = node.options[event].text; 

if(this.datePoczatek == 1)
objEdytorText.wyborMonthS = node.options[event].value;
else if(this.datePoczatek == 2)
objEdytorText.wyborMonthE = node.options[event].value;
objEdytorText.aktualizujKalendarz();
},
ustawCalendar : function(){
var calendarTD = this.tableCalendar.getElementsByTagName('TD');
for(var i=0;i<calendarTD.length;i++){
if((calendarTD[i].innerHTML !='')) this.addEvent(calendarTD[i],'click',this.getDateCalendar);
if(this.datePoczatek == 1){
if((this.oldYearS==this.year)&&(this.oldMonthS==this.month)&&(this.wyborDayS==Number(calendarTD[i].innerHTML)))
calendarTD[i].className = 'daySelectKalendarz';}
if(this.datePoczatek == 2){
if((this.oldYearE==this.year)&&(this.oldMonthE==this.month)&&(this.wyborDayE==Number(calendarTD[i].innerHTML)))
calendarTD[i].className = 'daySelectEndKalendarz';
}}
},
getDateCalendar : function(e){
var event = (e)?e:event; 
var element;
if(event.srcElement) element = event.srcElement;
else element = this;
objEdytorText.day = Number(element.innerHTML);
objEdytorText.dodajWynikData(element);
},
aktualizujKalendarz : function(){
var ileDni;
if(this.datePoczatek == 1){
this.year = this.wyborYearS;
this.month = this.wyborMonthS;
ileDni = this.daysInMonthA(this.wyborMonthS,this.wyborYearS);
}
else if(this.datePoczatek == 2){
this.year = this.wyborYearE;
this.month = this.wyborMonthE;
ileDni = this.daysInMonthA(this.wyborMonthE,this.wyborYearE);
}
this.removeTRCalendar();
var root=document.getElementById('tableCalendar').getElementsByTagName('tbody')[0];
var contentMonth = document.getElementById('selMonth_content');
var contentYear = document.getElementById('selYear_content');
var date = new Date();
date.setYear(this.year);
date.setMonth(this.month-1);
date.setDate(1);
contentMonth.innerHTML = this.tabMonth[this.month-1];
contentYear.innerHTML = this.year;
var day = date.getDay();

var td = ((6+day)%7)+1;
var cell;
var textNode;
var row = root.insertRow(1);
var tr = 2;
for(var i=0;i<td-1;i++) cell = row.insertCell(i);
for(var i=1;i<=ileDni;i++){
  var ileTD = ((6+td)%7);
  if(ileTD == 0){ row = root.insertRow(tr); tr++;}
  cell = row.insertCell(ileTD);
  cell.className = 'dayKalendarz';
  textNode = document.createTextNode(i);
  cell.appendChild(textNode);
  td++;}
  this.ustawCalendar();
},
daysInMonthA : function(month,year) {
var m = [31,28,31,30,31,30,31,31,30,31,30,31];
if (month != 2) return m[month - 1];
if (year%4 != 0) return m[1];
if (year%100 == 0 && year%400 != 0) return m[1];
return m[1] + 1;
},
removeTRCalendar : function(){
var calendarTR = this.tableCalendar.getElementsByTagName('TR');
for(var i=1;i<calendarTR.length;i++){
var parentTR = calendarTR[i].parentNode;
parentTR.removeChild(calendarTR[i]);
}
var calendarTR = this.tableCalendar.getElementsByTagName('TR');
if(calendarTR.length>1) this.removeTRCalendar();
},
dodajWynikData : function(el){
var yer;
var mon;
if(this.datePoczatek == 1){
yer = objEdytorText.wyborYearS;
mon = objEdytorText.wyborMonthS;
}
else if(this.datePoczatek == 2){
yer = objEdytorText.wyborYearE;
mon = objEdytorText.wyborMonthE;
}
var d = objEdytorText.day;
//if((d+"").length==1) d='0'+d;
var TextD = ((d+"").length==1)?'0'+d:d;

var divDateS = document.getElementById('dataStart');
var divDateE = document.getElementById('dataEnd');
if(objEdytorText.datePoczatek==1){
objEdytorText.wyborYearS = this.year;	
objEdytorText.wyborMonthS = this.month;	
objEdytorText.wyborDayS = this.day;	
//if(objEdytorText.porownajDaty()){
objEdytorText.oldYearS = this.year;
objEdytorText.oldMonthS = this.month;
objEdytorText.resetClassStyleCalendar();
divDateS.innerHTML = '';
divDateS.innerHTML = TextD+' '+this.tabMonth[mon-1]+' '+yer;
objEdytorText.divTextData.innerHTML = TextD+' '+this.tabMonth[mon-1]+' '+yer;
el.className = 'daySelectKalendarz';
closeCalendar(); 
//} else {
//ekoAlert('Data końcowa jest mniejsza od daty początkowej','błąd',200,100,1);
//}
}  
else if(objEdytorText.datePoczatek==2){
objEdytorText.wyborYearE = this.year;	
objEdytorText.wyborMonthE = this.month;	
objEdytorText.wyborDayE = this.day;
//if(objEdytorText.porownajDaty()){
objEdytorText.oldYearE = this.year;
objEdytorText.oldMonthE = this.month;
objEdytorText.resetClassStyleCalendar();
divDateE.innerHTML = '';
divDateE.innerHTML = TextD+' '+this.tabMonth[mon-1]+' '+yer;
objEdytorText.divTextData.innerHTML = TextD+' '+this.tabMonth[mon-1]+' '+yer;
el.className = 'daySelectEndKalendarz';
closeCalendar();
//} else {
//ekoAlert('Data końcowa jest mniejsza od daty początkowej','błąd',200,100,1);
//}
}
},
resetClassStyleCalendar : function(){
var calendarTD = this.tableCalendar.getElementsByTagName('TD');
for(var i=0;i<calendarTD.length;i++) calendarTD[i].className = 'dayKalendarz';
},
porownajDaty : function(){
var dateSt = new Date();
var dateEn = new Date();
//if(objEdytorText.datePoczatek==1){
dateSt.setYear(objEdytorText.year);
dateSt.setMonth(objEdytorText.month);
dateSt.setDate(objEdytorText.day);
dateEn.setYear(objEdytorText.wyborYearE);
dateEn.setMonth(objEdytorText.wyborMonthE);
dateEn.setDate(objEdytorText.wyborDayE);
//}
/*
else if(objEdytorText.datePoczatek==2){
dateSt.setYear(objEdytorText.wyborYearS);
dateSt.setMonth(objEdytorText.wyborMonthS);
dateSt.setDate(objEdytorText.wyborDayS);
dateEn.setYear(objEdytorText.year);
dateEn.setMonth(objEdytorText.month);
dateEn.setDate(objEdytorText.day);
}
*/
if(dateEn<dateSt) return false;
else return true;
},

getWoj : function(event,objectID){
var node = document.getElementById(objectID);
var valueSelect = node.options[event].value;
var contentID = objectID+'_content';
var content = document.getElementById(contentID);
node.selectedIndex = event;
content.innerHTML = node.options[event].text; 
this.woj = node.options[event].value;
var kraj = document.getElementById('kraj');
var woj = document.getElementById('woj');
var titleWoj = woj.previousSibling;
titleWoj.innerHTML = 'Województwo: ';
var checkKraj = document.getElementsByName('checkKraj');
checkKraj[0].checked = false;
checkKraj[1].checked = false;
var txtWoj = node.options[event].text;
kraj.innerHTML = 'Polska';
woj.innerHTML = txtWoj;
this.kraj = 15;
},
getCheckKraj : function(el){
var checkKraj = document.getElementsByName('checkKraj');
var kraj = document.getElementById('kraj');
var woj = document.getElementById('woj');
var titleWoj = woj.previousSibling;


var contentWoj = document.getElementById('selWoj_content');
contentWoj.innerHTML = "WYBIERZ WOJEWÓDZTWO";

titleWoj.innerHTML = '';
woj.innerHTML = '';

if(el.value==15){
checkKraj[0].checked = true;
checkKraj[1].checked = false;
this.kraj = 15;
this.woj = 0;
kraj.innerHTML = 'Polska ';
}
else if(el.value==16){
checkKraj[0].checked = false;
checkKraj[1].checked = true;
this.kraj = 16;
this.woj = 0;
kraj.innerHTML = 'Świat ';
}
},
/*
getWoj : function(indexWoj){
this.woj = indexWoj;
var kraj = document.getElementById('kraj');
var woj = document.getElementById('woj');
var titleWoj = woj.previousSibling;
titleWoj.innerHTML = 'Województwo: ';
var checkKraj = document.getElementsByName('checkKraj');
checkKraj[0].checked = false;
checkKraj[1].checked = false;
var txtWoj = this.tabWoj[indexWoj];
kraj.innerHTML = 'Polska';
woj.innerHTML = txtWoj;

this.kraj = 15;
this.woj = indexWoj;


//alert(this.tabWoj[indexWoj]);
},

getCheckKraj : function(el){
var checkKraj = document.getElementsByName('checkKraj');
var kraj = document.getElementById('kraj');
var woj = document.getElementById('woj');
var titleWoj = woj.previousSibling;

titleWoj.innerHTML = '';
woj.innerHTML = '';

if(el.value==15){
checkKraj[0].checked = true;
checkKraj[1].checked = false;
this.kraj = 15;
this.woj = 0;
kraj.innerHTML = 'Polska ';
}
else if(el.value==16){
checkKraj[0].checked = false;
checkKraj[1].checked = true;
this.kraj = 16;
this.woj = 0;
kraj.innerHTML = 'Świat ';
}
},
*/
wyslijDane : function(){

if(objEdytorText.porownajDaty()){
var loc = '';
loc = path+'0/'+this.cat+'/'+this.wyborYearS+','+this.wyborMonthS+','+this.wyborDayS+'/'+this.wyborYearE+','+this.wyborMonthE+','+this.wyborDayE+'/'+this.kraj+','+this.woj+'/';


//alert(loc);

window.location = loc;
} else {
ekoAlert('Data końcowa jest mniejsza od daty początkowej','błąd',200,100,1);
}
}
};

var divArt;
var xmlHttpContent;
var co;


function odbierzEkoAlert(e){
var event = (e)?e:event; 
var element;
if(event.srcElement) element = event.srcElement;
else element = this;
zamknijAlert();

if(element.id == 1){
var idParNode = divArt.parentNode.parentNode.parentNode.id;
var divPar = document.getElementById(idParNode);
usunArt(divPar.id);
}
};

function delArt(divArtW){
divArt = divArtW;
hiddenTooolTip(0,0);
ekoAlert('Czy na pewno chcesz usunąć wydarzenie','Usuwanie',200,110,2,1);
};

function dodajMailW(divArtW){
xmlHttpContent = createAjaxObject();
var idParNode = divArtW.parentNode.parentNode.parentNode.id;

//alert(divArtW.parentNode.parentNode.parentNode.id);
var divPar = document.getElementById(idParNode);
co = 2;
var plik = pathLiveSite+'ajax/ekowydarzenia/mailArt.php';
var paramsPost = "divID="+divPar.id;
processContentWydarzenia(divPar.id,plik,paramsPost)
};

function dodajMailWArt(id){
xmlHttpContent = createAjaxObject();
co = 3;
var plik = pathLiveSite+'ajax/ekowydarzenia/mailArt.php';
var paramsPost = "divID=art"+id;
processContentWydarzenia(id,plik,paramsPost)
};


function usunArt(divID){
xmlHttpContent = createAjaxObject();
co = 1;
var plik = pathLiveSite+'ajax/ekowydarzenia/usunArt.php';
var paramsPost = "divID="+divID;
processContentWydarzenia(divID,plik,paramsPost)
};

function processContentWydarzenia(divID,plik,paramsPost){
if (xmlHttpContent.readyState==4||xmlHttpContent.readyState==0){
     xmlHttpContent.open("POST",plik,true);
      xmlHttpContent.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      xmlHttpContent.setRequestHeader("Content-length", paramsPost.length);
      xmlHttpContent.setRequestHeader("Connection", "close");  
   xmlHttpContent.onreadystatechange = handleServerResponseWydarzenia;
   xmlHttpContent.send(paramsPost);
 }
};

function handleServerResponseWydarzenia(){
try{
   if (xmlHttpContent.readyState == 4){
    if (xmlHttpContent.status == 200){
      if(co == 1){
      var xmlResponse = xmlHttpContent.responseXML;
      var xmlDoc = xmlResponse.documentElement;
       var czyUsuniete = xmlDoc.getElementsByTagName('czyUsuniete').item(0).firstChild.data;
       var wynik = xmlDoc.getElementsByTagName('wynik').item(0).firstChild.data;
       
       if(czyUsuniete == 1){
       	var divID = xmlDoc.getElementsByTagName('divID').item(0).firstChild.data;
       	var divArt = document.getElementById(divID);
       	var divParent = divArt.parentNode;
       	divParent.removeChild(divArt);
       }
       ekoAlert(wynik,'Usuwanie',200,110,1);
      }
      
      if(co ==2){
       var xmlResponse = xmlHttpContent.responseXML;
       var xmlDoc = xmlResponse.documentElement;
       var czyDodane = xmlDoc.getElementsByTagName('czyDodane').item(0).firstChild.data;
       var wynik = xmlDoc.getElementsByTagName('wynik').item(0).firstChild.data;
       
       if(czyDodane == 1){
       	var divID = xmlDoc.getElementsByTagName('divID').item(0).firstChild.data;
       	var divArt = document.getElementById(divID);
       	var childArt = divArt.childNodes[0];
       	var iconMailW = childArt.childNodes[1];
       	var iconMail = childArt.childNodes[1].childNodes[0];
       	
      
       	iconMail.className = 'mailwActiv';
       	iconMail.onclick = "";
       	iconMail.onmousemove = "";
       	
       	
       	if(window.addEventListener) iconMail.addEventListener('mousemove',dodajToll,false);
		else iconMail.attachEvent('onmousemove',dodajToll,false);  
       	
       	}
       	ekoAlert(wynik,'Informacja',200,110,5); 
      }
      if(co ==3){
       var xmlResponse = xmlHttpContent.responseXML;
       var xmlDoc = xmlResponse.documentElement;
       var czyDodane = xmlDoc.getElementsByTagName('czyDodane').item(0).firstChild.data;
       var wynik = xmlDoc.getElementsByTagName('wynik').item(0).firstChild.data;
       
       	if(czyDodane == 1){
       	var divID = xmlDoc.getElementsByTagName('divID').item(0).firstChild.data;
       	var divArt = document.getElementById(divID);
       	var iconMail = divArt.childNodes[0];
       
       	iconMail.className = 'mailwActiv';
       	iconMail.onclick = "";
       	iconMail.onmousemove = "";
       	
       	
       	if(window.addEventListener) iconMail.addEventListener('mousemove',dodajToll,false);
		else iconMail.attachEvent('onmousemove',dodajToll,false);  
       	
       	}
       	ekoAlert(wynik,'Informacja',200,110,5); 
       
       
      }
    }
    else{
    ekoAlert('nieokreślony błąd','Informacja',200,110,1);
   }}}
  catch (e){
  ekoAlert('nieokreślony błąd','Informacja',200,110,1);
  }
};



function dodajToll(e){
var event = (e)?e:event; 
var element;
if(event.srcElement) element = event.srcElement;
else element = this;

var textMailActiv = 'To wydarzenie jest już dodane';
showTooolTip(element,event,textMailActiv);

};


