var xml;
var xmlResult;
var xmlBasket;
var autoSearchObl=0;

$(document).ready(function()
{
	// ZISKANI XML SE STRUKTUROU
	$.get("SeznamOblastiXML.aspx", onGetData);
	
	// SKRYT VYSLEDKY PRI SPUSTENI
	$('#searchResult').css('visibility','visible');
  $('#searchResult').hide();
  $('#searchResultError1').hide();
  $('#searchResultError2').hide();
  $('#searchResultError3').hide();
  $('#searchResultContent').hide();
  $('#loadingResultContent').hide();
    
  // NASTAVENÍ KALENDÁŘE
 	$('#dateFrom').calendar();
	$('#dateTo').calendar();
	$('#dateFrom').click( function(){ $(this).calendar(); } );
	$('#dateTo').click( function(){ $(this).calendar(); } );
	$('#setAllDates').click( function() { clearDateForm(); return false; });
	$('#setDateNextWeek').click( function() { setDateNextWeek(); return false; });
	$('#setDateNextMonth').click( function() { setDateNextMonth(); return false; });
	$('#setDateNextMonth2').click( function() { setDateNextMonth2(); return false; });
	
	// SUBMIT TLAČÍTKO
	$('#btnZobrazit').click( submit );
  // VYHLEDEJ TLAČITKO v QUICK FORM na hlavní stránce
	$('#btnVyhledat').click( search );
	$('#btnAdvance').click( advance );
	// PRINT TLAČÍTKO
	$('#btnPrint').click( printCurrent );
	// PRINT EXPORT
	$('#btnExport').click( exportCSV );

	// CUSTOM EXPORTS
	$("#presetExportsBody a").click(function() {
	  //link_GOPAS_month_0 
		stringA = $(this).attr('id');
		
        if (stringA.indexOf("_")<0) return;
        stringA = stringA.substring(stringA.indexOf("_") + 1, stringA.length);
        
		if (stringA.indexOf("_")<0) return;
		LOC = stringA.substring(0, stringA.indexOf("_"));
		stringA = stringA.substring(stringA.indexOf("_") + 1, stringA.length);
		
		if (stringA.indexOf("_")<0) return;
		FUN = stringA.substring(0, stringA.indexOf("_"));
		OBL = stringA.substring(stringA.indexOf("_") + 1, stringA.length);
		
		locations = 0; // Locations
		if (LOC.toLowerCase() == "gopas") locations=7;
	  if (LOC.toLowerCase() == "praha") locations+=1;
		if (LOC.toLowerCase() == "brno") locations+=2;
		if (LOC.toLowerCase() == "blava") locations+=4;
		
		// Vypocitat
		switch (FUN.toLowerCase())
		{
		    case 'month2':
		        dFrom=getTodayPlusOne();
		        dTo=getTodayMonthPlusTwo();
		        break;
		    case 'month': 
		        dFrom=getTodayPlusOne();
		        dTo=getTodayMonthPlusOne();
		        break;
		    default:
		        dFrom='';
		        dTo='';
		        break;
        }
		oblasti = vratVsechnyOblasti(OBL); // Oblasti - zjistit vsechny podoblasti dane oblasti [0 == všechny oblasti]
		window.location.href = "SeznamOblastiTERMS.aspx?type=csv&from="+dFrom+"&to="+dTo+"&loc="+locations+"&obl="+oblasti;
	});
	
	popUpCal.regional['cs'] = { clearText: cal_delete, closeText: cal_close, prevText: cal_prev, nextText: cal_next, currentText: cal_now, dayNames: cal_dayNames, monthNames: cal_monNames, dateFormat: 'DMY/'};
	popUpCal.setDefaults(popUpCal.regional['cs']);
});

function vratVsechnyOblasti(OBL)
{
    var mojePole=OBL;
    if (OBL!=0)
    {
        
        if ($("#div_"+OBL).length == 1)
        {
            $("#div_"+OBL+" > div/div/input").each(function () {
                stringA = $(this).attr('id');
                if (stringA.indexOf("_")<0) return;
	            myId = stringA.substring(stringA.indexOf("_") + 1, stringA.length);
	            mojePole += (","+myId);
            });
        };
    } else 
    {
        // Vratit vsechny oblasti
        mojePole = ""; var first = true;
	    $("#mainOblasti input[id^=chb_]").each(function(i)
	    {
       	    stringA = $(this).attr('id');
	        myId = stringA.substring(stringA.indexOf("_") + 1, stringA.length)
	        if (myId == 0) return;
	        if (first) mojePole += myId;
	        else mojePole += (","+myId);
	        first = false;
        });
    }
    return mojePole;
}

//Je vybrana nejaka lokace pro kurzy?
function isCheckedAnyLocation()
{
	if($('#locPra').attr('checked') || $('#locBrn').attr('checked') || $('#locBra').attr('checked')) return true;
	else return false;
}

function isCheckedAnyOblast()
{
    return ($("#mainOblasti input[id^=chb_]:checked").length > 0)?true:false;
}

function printCurrent()
{
    pom = "<html>";
    pom += "<style type='text/css'>@import url(webfind/styles/style.css);</style>";
    pom += "<style type='text/css'>@import url(webfind/styles/print.css);</style>";
    pom +="<body>"
    pom += "<div id='searchFilter'>"+$("#searchFilter").html()+"</div>";

    pom += "<div class='printOffset'><div id='searchResultContent'>"+$("#searchResultContent").html()+"</div></div>";
    pom +="</body></html>";
    
    ww = window.open("", "print", "width=420,height=600,left=0,top=0,directories=0,location=0,menubar=0,scrollbars=1,status=0,toolbar=0");
    if (ww!=null)
    {
        ww.document.open();
        ww.document.write(pom);
        ww.document.close();
        ww.print();
        ww.close();
    }    
}

function exportCSV()
{
    $('#searchResultError1').hide();
    $('#searchResultError2').hide();
    $('#searchResultError3').hide();
    $('#searchResultContent').html($('#loadingResultContent').html());
    $('#searchResultContent').show();
     
    if (!isCheckedAnyLocation()) { $('#searchResultError1').show(); $('#searchResultContent').hide(); }
    else 
        if (!isCheckedAnyOblast()) { $('#searchResultError2').show(); $('#searchResultContent').hide(); }
        else { generateQuestOnTerms('csv', onGetTerms); $('#searchResult').hide(); return; }

    $('#searchResult').show();
}

function autoSearch(from, to, loc, obl)
{
    if (obl == '') return;
    $('#locPra').attr('checked', (loc & 1) == 1);
    $('#locBrn').attr('checked', (loc & 2) == 2);
    $('#locBra').attr('checked', (loc & 4) == 4);
    
    $('#dateFrom').val(from);
    $('#dateTo').val(to);
    
    autoSearchObl = obl;
}

function search()
{
    dFrom =$('#dateFrom').val();
    dTo =$('#dateTo').val();
    
    locations = 0;
    var isLocPra = $('#locPra').attr('checked');if (isLocPra) locations += 1;
    var isLocBrn = $('#locBrn').attr('checked');if (isLocBrn) locations += 2;
    var isLocBra = $('#locBra').attr('checked');if (isLocBra) locations += 4;

    window.location.href="SeznamOblastiAJAX.aspx?from="+dFrom+"&to="+dTo+"&loc="+locations+"&obl="+$('#cbOblasti').val();
}

function advance()
{
	window.location.href="SeznamOblastiAJAX.aspx";
}

function submit()
{
    $('#searchResultError1').hide();
    $('#searchResultError2').hide();
    $('#searchResultError3').hide();
    
    $('#searchResultContent').html($('#loadingResultContent').html());
    $('#searchResultContent').show();
    
    $('#btnPrint').show();
    
    if (!isCheckedAnyLocation()) { $('#searchResultError1').show(); $('#searchResultContent').hide(); }
    else
        if (!isCheckedAnyOblast()) { $('#searchResultError2').show(); $('#searchResultContent').hide(); }
        else generateQuestOnTerms('xml', onGetTerms);

    $('#searchResult').show();
    $('#btnPrint').hide();    
}

function generateQuestOnTermsFull(typExportu, typSortu, dFrom, dTo, oblasti, locations, onGetProc)
{
    if (typExportu!="csv")
        $.get("SeznamOblastiTERMS.aspx?type="+typExportu+"&sort=" + typSortu + "&from="+dFrom+"&to="+dTo+"&obl="+oblasti, onGetProc);
    else {
        $('#searchResult').hide();
        window.location.href = "SeznamOblastiTERMS.aspx?type="+typExportu+"&sort=" + typSortu + "&from="+dFrom+"&to="+dTo+"&loc="+locations+"&obl="+oblasti;
    }
}

function generateQuestOnTerms(typExportu, onGetProc)
{
    dFrom =$('#dateFrom').val();
    dTo =$('#dateTo').val();
    
    var day=0; var month=0; var year=0;
    
    var dFromArray = (dFrom=="")?null:dFrom.split("/");
    if ((dFromArray!=null) && (dFromArray.length == 3))
    { 
        day  =dFromArray[0]; 
        month=dFromArray[1];
        year =dFromArray[2];
    }
    if ((dFrom!="") && ((day < 1) || (day > 31) || (month < 1) || (month > 12))) { $('#searchResultError3').show(); $('#searchResultContent').hide(); }
    else
    {
        if (dFrom!="") dFrom = day+"-"+month+"-"+year;
        
        var dToArray = (dTo=="")?null:dTo.split("/");
        if ((dToArray!=null) && (dToArray.length == 3))
        { 
            day  =dToArray[0]; 
            month=dToArray[1];
            year =dToArray[2];
        }
        if ((dTo!="") && ((day < 1) || (day > 31) || (month < 1) || (month > 12))) { $('#searchResultError3').show(); $('#searchResultContent').hide(); }
        else 
        {
            sort = $('input:radio:checked').val();
            if (dTo!="") dTo = day+"-"+month+"-"+year;
            
            // Získání seznamu oblastí oddělelných čárkou
            var oblasti = "";
            $("#mainOblasti input[id^=chb_]:checked").each(function (i){
                oblasti += (oblasti=="")?($(this).val()):(","+$(this).val());
            });
            
            locations = 0;
            var isLocPra = $('#locPra').attr('checked');if (isLocPra) locations += 1;
            var isLocBrn = $('#locBrn').attr('checked');if (isLocBrn) locations += 2;
            var isLocBra = $('#locBra').attr('checked');if (isLocBra) locations += 4;
            
            generateQuestOnTermsFull(typExportu, sort, dFrom, dTo, oblasti, locations, onGetProc);
        }
    }
}

// Zpracovani XML s terminy
function onGetTerms(_xml, _textstatus)
{
    xmlResult = _xml;       // vlastni XML
    mainData = "";          // Data pro vystup
    
    switch ($('input:radio:checked').val())
    {
        case '0': // razeni podle location
            mainData = getTermsByLocation(xmlResult);
            break;
        case '1': // razeni podle course
            mainData = getTermsByCourse(xmlResult);
            break;
        case '2': // razeni podle terms
            mainData = getTermsByTerms(xmlResult);
            break;
    }

    $('#searchResultContent').hide();
    if (mainData == "") mainData = legNoResult;
    $('#searchResultContent').html(mainData);
    hideAnotationDisplay();
    $('#searchResultContent').show("fast");
    
    // Nastaveni udalosti onClick na vsechny rozbalovatka/sbalovatka lokaci
    $("#searchResultContent > div/img").click(function(i){
		stringA = $(this).attr('id');
		myId = stringA.substring(stringA.indexOf("_") + 1, stringA.length)
		$('#locDiv_' + myId).toggle("fast",img_change(myId));
        
    });
    
    // Nastaveni udalosti onClick na vsechny vkladani kurzu do kosiku
    $("#searchResultContent a[id^=addBasket_]").click(function (i){
		stringA = $(this).attr('id');
		myId = stringA.substring(stringA.indexOf("_") + 1, stringA.length)
		$.get("SeznamOblastiKOS.aspx?id="+myId, onGetKos);
    });
    
    $('#btnPrint').show();
}

function getTermsByCourse(xmlResult)
{
    mainData = "";          // Data pro vystup
    var colSpan = 5;
    var kurz; var tableClosed = true;
    var isLocPra = $('#locPra').attr('checked');
    var isLocBrn = $('#locBrn').attr('checked');
    var isLocBra = $('#locBra').attr('checked');

    $('terminy>termin', xmlResult).each(function(i)
    {
        // Vyfiltrování zadaných poboček (učeben, lokací)
        if (($(this).attr('ucebna') == "Praha") && (!isLocPra)) return;     
        if (($(this).attr('ucebna') == "Brno") && (!isLocBrn)) return;
        if (($(this).attr('ucebna') == "Bratislava") && (!isLocBra)) return;
        
        oldKurz = kurz;
        kurz = $('kurzy>kurz[id='+$(this).attr('kurzId')+']', xmlResult);
        
        if ((typeof(oldKurz) == "undefined") || (oldKurz.attr("id") != kurz.attr("id")))
        {
            if (!tableClosed) { mainData += "</table>"; tableClosed = true; }  // uzavrit predchozi tabulku s terminama kurzu
            
            if (kurz.length==1)
            {
                _kurzName = $('nazev', kurz).text();
                _kurzAnot = $('anotace', kurz).text();
                _kurzCode = kurz.attr('kodKurzu');
                _kurzId = kurz.attr('id');
            }
            
            tableClosed = false;
            mainData += "<table id='resultTable' border='0'>";
            
            mainData += "<tr><td class='courseCode'>"+_kurzCode+"</td>";
            mainData += "<td colspan='"+(colSpan-2)+"' class='courseName'><a href='DetailKurzu.aspx?IDKurzu="+_kurzId+"'>"+_kurzName+"</a></td>";
            mainData += "<td><a href='#' id='addBasket_"+_kurzId+"' title='"+altObjednat+"'><img class='imageBasket' src='webfind/images/basket.jpg' border='0' alt='"+altObjednat+"' title='"+altObjednat+"'/></a></td></tr>";
            
            mainData += "<tr id='courseAnot_DIV"+i+"' class='resutlDivider'><td colspan='"+colSpan+"'></td></tr>";
            mainData += "<tr id='courseAnot_"+i+"'><td colspan='"+colSpan+"'>"+_kurzAnot+"</td></tr>";
            mainData += "<tr class='resutlDivider'><td colspan='"+colSpan+"'></td></tr>";
            
            mainData += "<tr class='resultTitle'>";
            mainData += "<td>"+legDatumKonani+"</td>";
            mainData += "<td>"+legDelkaKonani+"</td>";
            mainData += "<td>"+legCenaKurzu+"</td>";
            mainData += "<td>"+legCenaPrirucky+"</td>";
            mainData += "<td>"+legUcebnaKurzu+"</td>";
            mainData += "</tr>";
        }
        
        dk = $(this).attr("delkaKonani");
        if (dk==1) dk+=(" "+leg1den);
        else if ((dk<5) && (dk>0)) dk+=(" "+leg2den);
        else dk+=(" "+leg5den);
        mainData += "<tr>";
        mainData += "<td>"+$(this).attr("datumKonani")+"</td>";
        mainData += "<td>"+dk+"</td>";
        mainData += "<td>"+parseFloat($(this).attr("cena"))+" "+$(this).attr("mena")+"</td>";
        mainData += "<td>"+parseFloat($(this).attr("cenaPrirucky"))+" "+$(this).attr("mena")+"</td>";
        mainData += "<td>"+$(this).attr("ucebna")+"</td>";
        mainData += "</tr>";        
    });
    
    if (!tableClosed) mainData += "</table>";
    return mainData;
}


function getTermsByLocation(xmlResult)
{
    mainData = "";          // Data pro vystup
    var colSpan = 4;
    var kurz;
    var pobocka;
    var tableClosed = true;
    var divClosed = true;
    var isLocPra = $('#locPra').attr('checked');
    var isLocBrn = $('#locBrn').attr('checked');
    var isLocBra = $('#locBra').attr('checked');

    $('terminy>termin', xmlResult).each(function(i)
    {
        // Vyfiltrování zadaných poboček (učeben, lokací)
        if (($(this).attr('ucebna') == "Praha") && (!isLocPra)) return;     
        if (($(this).attr('ucebna') == "Brno") && (!isLocBrn)) return;
        if (($(this).attr('ucebna') == "Bratislava") && (!isLocBra)) return;    

        oldKurz = kurz; oldPobocka=pobocka;
        kurz = $('kurzy>kurz[id='+$(this).attr('kurzId')+']', xmlResult);
        pobocka = $(this).attr("ucebna");
        
        if ((typeof(oldKurz) == "undefined") || (typeof(oldPobocka) == "undefined") || (oldKurz.attr("id") != kurz.attr("id")) || (oldPobocka != pobocka))
        {
            if (!tableClosed) { mainData += "</table>"; tableClosed = true; }  // uzavrit predchozi tabulku s terminama kurzu
            if ((!divClosed) && (pobocka != oldPobocka)) { mainData += "</div>"; divClosed = true; }  // uzavrit div s pobockami
            
            if (kurz.length==1)
            {
                _kurzName = $('nazev', kurz).text();
                _kurzAnot = $('anotace', kurz).text();
                _kurzCode = kurz.attr('kodKurzu');
                _kurzId = kurz.attr('id');
            }
            
            if ((divClosed) && ( pobocka != oldPobocka))
            {
                divClosed = false;
                mainData += ("<div class='localityTitle'><img id='img_" + pobocka + "' src='webfind/images/tree_minus.gif' alt='"+altImage1+"' title='"+altImage1+"' class='itemImagePobocka' />&nbsp;"+pobocka + "</div><div class='localityDiv' id='locDiv_"+pobocka+"'>");
            }
            
            tableClosed = false;
            mainData += "<table id='resultTableLoc' border='0'>";
            mainData += "<tr><td class='courseCode'>"+_kurzCode+"</td>";
            mainData += "<td colspan='"+(colSpan-2)+"' class='courseName'><a href='DetailKurzu.aspx?IDKurzu="+_kurzId+"'>"+_kurzName+"</a></td>";
            mainData += "<td><a href='#' id='addBasket_"+_kurzId+"' title='"+altObjednat+"'><img class='imageBasket' src='webfind/images/basket.jpg' border='0' alt='"+altObjednat+"' title='"+altObjednat+"'/></a></td></tr>";
            mainData += "<tr id='courseAnot_DIV"+i+"' class='resutlDivider'><td colspan='"+colSpan+"'></td></tr>";
            mainData += "<tr id='courseAnot_"+i+"'><td colspan='"+colSpan+"'>"+_kurzAnot+"</td></tr>";
            mainData += "<tr class='resutlDivider'><td colspan='"+colSpan+"'></td></tr>";
            
            mainData += "<tr class='resultTitle'>";
            mainData += "<td>"+legDatumKonani+"</td>";
            mainData += "<td>"+legDelkaKonani+"</td>";
            mainData += "<td>"+legCenaKurzu+"</td>";
            mainData += "<td>"+legCenaPrirucky+"</td>";
            mainData += "</tr>";
        }
        
        dk = $(this).attr("delkaKonani");
        if (dk==1) dk+=(" "+leg1den);
        else if ((dk<5) && (dk>0)) dk+=(" "+leg2den);
        else dk+=(" "+leg5den);
        mainData += "<tr>";
        mainData += "<td>"+$(this).attr("datumKonani")+"</td>";
        mainData += "<td>"+dk+"</td>";
        mainData += "<td>"+parseFloat($(this).attr("cena"))+" "+$(this).attr("mena")+"</td>";
        mainData += "<td>"+parseFloat($(this).attr("cenaPrirucky"))+" "+$(this).attr("mena")+"</td>";
        mainData += "</tr>";        
    });
    if (!tableClosed) mainData += "</table>";
    if (!divClosed) mainData += "</div>";
    
    return mainData;
}

function getTermsByTerms(xmlResult)
{
    mainData = "";          // Data pro vystup
    var colSpan = 7;
    
    var kurz;
    var tableClosed = true;
    var isLocPra = $('#locPra').attr('checked');
    var isLocBrn = $('#locBrn').attr('checked');
    var isLocBra = $('#locBra').attr('checked');

    $('terminy>termin', xmlResult).each(function(i)
    {
        // Vyfiltrování zadaných poboček (učeben, lokací)
        if (($(this).attr('ucebna') == "Praha") && (!isLocPra)) return;     
        if (($(this).attr('ucebna') == "Brno") && (!isLocBrn)) return;
        if (($(this).attr('ucebna') == "Bratislava") && (!isLocBra)) return;
        
        kurz = $('kurzy>kurz[id='+$(this).attr('kurzId')+']', xmlResult);
        if (kurz.length==1)
        {
            _kurzName = $('nazev', kurz).text();
            _kurzAnot = $('anotace', kurz).text();
            _kurzCode = kurz.attr('kodKurzu');
            _kurzId = kurz.attr('id');
        }
            
        if (tableClosed)
        {
            tableClosed = false;
            mainData += "<table id='resultTable' border='0'>";
            mainData += "<tr class='resultTitle'>";
            mainData += "<td>"+legDatumKonani+"</td>";
            mainData += "<td>"+legDelkaKonani+"</td>";
            mainData += "<td>"+legKodKurzu+"</td>";
            mainData += "<td>"+legCenaKurzu+"</td>";
            mainData += "<td>"+legCenaPrirucky+"</td>";
            mainData += "<td>"+legUcebnaKurzu+"</td>";
            mainData += "<td></td>";
            mainData += "</tr>";
        }
        
        dk = $(this).attr("delkaKonani");
        if (dk==1) dk+=(" "+leg1den);
        else if ((dk<5) && (dk>0)) dk+=(" "+leg2den);
        else dk+=(" "+leg5den);
        mainData += "<tr>";
        mainData += "<td>"+$(this).attr("datumKonani")+"</td>";
        mainData += "<td>"+dk+"</td>";
        mainData += "<td><a href='DetailKurzu.aspx?IDKurzu="+_kurzId+"' title='"+ _kurzName +"'>"+_kurzCode+"</a></td>";
        mainData += "<td>"+parseFloat($(this).attr("cena"))+" "+$(this).attr("mena")+"</td>";
        mainData += "<td>"+parseFloat($(this).attr("cenaPrirucky"))+" "+$(this).attr("mena")+"</td>";
        mainData += "<td>"+$(this).attr("ucebna")+"</td>";
        mainData += "<td><a href='#' id='addBasket_"+_kurzId+"' title='"+altObjednat+"'><img class='imageBasket' src='webfind/images/basket.jpg' border='0' alt='"+altObjednat+"' title='"+altObjednat+"' /></a></td>";
        mainData += "</tr>";
    });
    
    if (!tableClosed) mainData += "</table>";
    return mainData;
}

function onGetData(_xml, _textstatus)
{
	xml = _xml;
	mainData = "";
	cbData = "";

	$('oblasti>oblast', _xml).each(function(i){
		_id = $(this).attr('id');
		
		mainData += "<div class='item'>";
		    mainData += "<div class='itemNavigation'>";
		        mainData += "<img id='img_" + _id + "' src='webfind/images/tree_minus.gif' alt='"+altImage1+"' title='"+altImage1+"' class='itemImage' />&nbsp;";
		        mainData += "<input id='chb_" + _id + "' type='checkbox' name='kurz_"+ _id +"' value='"+ _id +"' class='itemInput' title='"+altCheckbox+"' />";
		    mainData += "</div>";
		    mainData += "<div class='itemContent'>" + $(this).attr('nazev') + "</div>";
		    // Ulozeni oblasti do COMBOBOXU, v pripade, ze jsme na titulni stránce
		    cbData += "<option value="+_id+">"+$(this).attr('nazev');
	    mainData += "</div>";
	    mainData += "<div class='cleaner'>&nbsp;</div>";
		
		mainData += "<div id='div_" + _id + "'>";
			$('oblasti>oblast[id=' + _id + ']>oblast', _xml).each(function(i){
				_id2 = $(this).attr('id');            
				mainData += "<div class='subItem'>";
				    mainData += "<div class='itemNavigation'>";
				    	  mainData += "<img id='img_" + _id2 + "' src='webfind/images/tree_minus.gif' alt='"+altImage1+"' title='"+altImage1+"' class='subItemImage' />&nbsp;";
        				mainData += "<input id='chb_" + _id2 + "' type='checkbox' name='sub_kurz_" + $(this).attr('id') +"' value='" + $(this).attr('id') +"' class='subItemInput' title='"+altCheckbox+"' />";
				    mainData += "</div>";
            mainData += "<div class='subItemContent'>" + $(this).attr('nazev') + "</div>";
            mainData += "<div class='cleaner'>&nbsp;</div>";
            
						mainData += "<div id='div_" + _id2 + "'>";
							$('oblasti>oblast[id=' + _id + ']>oblast[id=' + _id2 + ']>oblast', _xml).each(function(i){
								_id3 = $(this).attr('id');
								mainData += "<div class='subItem'>";
								    mainData += "<div class='subItemNavigation'>";
			        					mainData += "<input id='chb_" + _id3 + "' type='checkbox' name='sub_kurz_" + $(this).attr('id') +"' value='" + $(this).attr('id') +"' class='subItemInput' title='"+altCheckbox+"' />";
								    mainData += "</div>";
			        	    mainData += "<div class='subItemContent2'>" + $(this).attr('nazev') + "</div>";
			        	    mainData += "<div class='cleaner'>&nbsp;</div>";
								mainData += "</div>";
						  });
						mainData += '</div>';
				mainData += "</div>";
			});
		mainData += '</div>';
	});

	$('#mainOblasti').html(mainData);
	$('#cbOblasti').html(cbData);
	
	//ODSTRANENI OBRAZKU S MINUSEM U TECH CO NEMAJI PODOBLASTI
	$("#mainOblasti div[id^=div_]").each(function(i){
		stringA = $(this).attr('id');
		myId = stringA.substring(stringA.indexOf("_") + 1, stringA.length)
		var x = $('#div_' + myId).html();
		if(x.toLowerCase() == '<div></div>' || x== '')
		{
			$('#img_'+myId).after("&nbsp;&nbsp;&nbsp;");
			$('#img_' + myId).remove();
		}
	});
	
  // Definovani udalosti pro sbalovani / rozbalovani v kaskade vsech
	$("#img_0").click(function(i)
	{
	    $("#mainOblasti>div>div>img").each(function(i)
	    {
		    $(this).click();
		    img_change(0);
		    
		});
	});

  // Definovani udalosti pro sbalovani / rozbalovani
	$("#mainOblasti>div>div>img").click(function(i){
		stringA = $(this).attr('id');
		myId = stringA.substring(stringA.indexOf("_") + 1, stringA.length)
		$('#div_' + myId).toggle("fast",img_change(myId));
	});
	$("#mainOblasti>div>div>div>img").click(function(i){
		stringA = $(this).attr('id');
		myId = stringA.substring(stringA.indexOf("_") + 1, stringA.length)
		$('#div_' + myId).toggle("fast",img_change(myId));
	});

	// Definovat udalosti na checkboxech pro oznaceni/odznaceni v kaskade vsech
	$("input[id=chb_0]").click(function(i){
	    var checked = $(this).attr('checked');
	    $("#mainOblasti input[id^=chb_]").each(function (){
	        if (checked == true) $(this).attr("checked", true)
            else $(this).attr("checked", false);
        });
	});
	
	$("#mainOblasti input[id^=chb_]").click(function(i)
	{
	    stringA = $(this).attr('id');
	    myId = stringA.substring(stringA.indexOf("_") + 1, stringA.length)
	    if (myId == 0) return;
	    
	    var checked = $(this).attr('checked');
      if ($("#div_"+myId).length == 1)
      {
        $("#div_"+myId+" input").each(function (){
            if (checked == true) $(this).attr("checked", true)
            else $(this).attr("checked", false);
        });
      };
	});
	
	// Autosearch
	if (autoSearchObl != 0)
	{
		chbObl = $("#mainOblasti input[id^=chb_"+autoSearchObl+"]");
    if (chbObl.length >= 1) chbObl[0].click();
    submit();
	}

}

function onGetKos(_xml2, _textstatus)
{
    xmlBasket = _xml2;
    if ($("response", _xml2).length == 1)
    if ($("response", _xml2).attr('status') == 'true') 
    {
        try { $('#btnObjednat').show(); } catch (err) { }
        try { $('#btnObjednatSimple').show(); } catch (err) { }
    }
}

function hideAnotationDisplay()
{
    if ($("#chbAnnotations").attr("checked")) displ="block";
    else displ="none";
    
    $("#searchResultContent tr[id^=courseAnot_]").each(function (i)
    {
        if (displ!='block') $(this).css("display",displ);
    });
}

function img_change(id)
{
	re = new RegExp("^.*tree_plus.gif$");
	if(re.test($('#img_'+id).attr('src')))
	{
	    $('#img_'+id).attr('src', 'webfind/images/tree_minus.gif');
	    $('#img_'+id).attr('alt', altImage1);
	    $('#img_'+id).attr('title', altImage1);
	}
	else 
	{
	    $('#img_'+id).attr('src', 'webfind/images/tree_plus.gif');
	    $('#img_'+id).attr('alt', altImage2);
	    $('#img_'+id).attr('title', altImage2);
	}
}

//nastaveni dat v checkboxech..
function setDates(){
	str = "";
	//dny
	for(var i=1; i<=31; i++)
	{
		str += "<option>" + "   " + i + "</option>";
	}
	
	$('#fromDay').html(str);
	$('#toDay').html(str);
	
	//mesice
	str="";
	for(var i=1; i<=12; i++){
		str += "<option>" + i + "</option>";
	}
	$('#fromMonth').html(str);
	$('#toMonth').html(str);
	
	//roky
	str="";
	var now = new Date();
	var year = now.getFullYear();
	
	for(var i=0; i<=1; i++){
		str += "<option>" + year++ + "</option>";
	}
	
	$('#fromYear').html(str);
	$('#toYear').html(str);
}

function clearDateForm()
{
    $('#dateFrom').val('');
    $('#dateTo').val('');
}

function setDateNextWeek()
{
    myDate  = new Date();
    myDate2 = new Date();
    offset = (8 - myDate.getDay());
    if (offset == 8) offset = 1;

    myDate.setDate(myDate.getDate()+ offset);
    myDate2.setDate(myDate2.getDate()+ offset + 6);
    
    $('#dateFrom').val(myDate.getUTCDate()+"/"+(myDate.getUTCMonth()+1)+"/"+myDate.getUTCFullYear());
    $('#dateTo').val(myDate2.getUTCDate()+"/"+(myDate2.getUTCMonth()+1)+"/"+myDate2.getUTCFullYear());
}

function setDateNextMonth()
{
    myDate  = new Date();
    myDate2 = new Date();

    /*
        Vypocet nasledujicho mesice tedy od prvniho v mesici k poslednimu
    */
    /*
    offset = myDate.getUTCDate() - 1;
    
    myDate.setDate(myDate.getDate() - offset);
    myDate.setMonth(myDate.getUTCMonth()+1);
    
    myDate2.setDate(myDate2.getDate() - offset-1);
    myDate2.setMonth(myDate2.getUTCMonth()+2);
    
    $('#dateFrom').val(myDate.getUTCDate()+"/"+(myDate.getUTCMonth()+1)+"/"+myDate.getUTCFullYear());
    $('#dateTo').val(myDate2.getUTCDate()+"/"+(myDate2.getUTCMonth()+1)+"/"+myDate2.getUTCFullYear());
    */
    
    myDate.setDate(myDate.getDate() + 1);
    myDate2.setDate(myDate2.getDate() + getDaysCountFromMonth(myDate2.getUTCMonth()));
    
    $('#dateFrom').val(myDate.getUTCDate()+"/"+(myDate.getUTCMonth()+1)+"/"+myDate.getUTCFullYear());
    $('#dateTo').val(myDate2.getUTCDate()+"/"+(myDate2.getUTCMonth()+1)+"/"+myDate2.getUTCFullYear());
}

function getDaysCountFromMonth(month)
{
    switch (Number(month+1)) // US notace ... mesice od 0
    {
        case 1: case 3: case 5: case 7: case 8: case 10:case 12: add = 31; break;
        case 2: add = 28; break;
        default: add=30; break;
    }
    return add;
}

function setDateNextMonth2()
{
    myDate  = new Date();
    myDate2 = new Date();

    /*offset = myDate.getUTCDate() - 1;
    
    myDate.setDate(myDate.getDate() - offset);
    myDate.setMonth(myDate.getUTCMonth()+1);
    
    myDate2.setDate(myDate2.getDate() - offset-1);
    myDate2.setMonth(myDate2.getUTCMonth()+3);
    
    $('#dateFrom').val(myDate.getUTCDate()+"/"+(myDate.getUTCMonth()+1)+"/"+myDate.getUTCFullYear());
    $('#dateTo').val(myDate2.getUTCDate()+"/"+(myDate2.getUTCMonth()+1)+"/"+myDate2.getUTCFullYear());*/

    myDate.setDate(myDate.getDate() + 1);
    myDate2.setDate(myDate2.getDate() + getDaysCountFromMonth(myDate2.getUTCMonth()) + getDaysCountFromMonth(myDate2.getUTCMonth()+1));
    
    $('#dateFrom').val(myDate.getUTCDate()+"/"+(myDate.getUTCMonth()+1)+"/"+myDate.getUTCFullYear());
    $('#dateTo').val(myDate2.getUTCDate()+"/"+(myDate2.getUTCMonth()+1)+"/"+myDate2.getUTCFullYear());
}

function getTodayPlusOne()
{
    myDate  = new Date();
    myDate.setDate(myDate.getDate() + 1);
    return myDate.getUTCDate()+"-"+(myDate.getUTCMonth()+1)+"-"+myDate.getUTCFullYear()
}

function getTodayMonthPlusOne()
{
    myDate  = new Date();
    myDate.setDate(myDate.getDate() + getDaysCountFromMonth(myDate.getUTCMonth()));
    return myDate.getUTCDate()+"-"+(myDate.getUTCMonth()+1)+"-"+myDate.getUTCFullYear();
}

function getTodayMonthPlusTwo()
{
    myDate  = new Date();
    myDate.setDate(myDate.getDate() + getDaysCountFromMonth(myDate.getUTCMonth()) + getDaysCountFromMonth(myDate.getUTCMonth()+1));
    return myDate.getUTCDate()+"-"+(myDate.getUTCMonth()+1)+"-"+myDate.getUTCFullYear();
}
