function getElementsByClass(searchClass,node,tag)
{
  var classElements = new Array();
  if (node == null)
    node = document;
  if (tag == null)
    tag = '*';
  var els = node.getElementsByTagName(tag);
  var elsLen = els.length;
  var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
  var j = 0;
  for (i = 0; i < elsLen; i++)
  {
    if (pattern.test(els[i].className))
    {
      classElements[j] = els[i];
      j++;
    }
  }
  return classElements;
}

function tisk()
{
  ver = parseInt(navigator.appVersion)
  if (ver >= 4) self.print()
}

function bookmarksite(title,url)
{
  if (window.sidebar) // firefox
	 window.sidebar.addPanel(title, url, "");
	else if(window.opera && window.print)
  { // opera
    var elem = document.createElement('a');
		elem.setAttribute('href',url);
		elem.setAttribute('title',title);
		elem.setAttribute('rel','sidebar');
		elem.click();
	}
  else if(document.all)// ie
	 window.external.AddFavorite(url, title);
}

function ShowElement(id){
	if(document.getElementById(id).style.display=='none'){
		Effect.BlindDown(id, {duration: 1.0});
		setTimeout("document.getElementById('"+id+'_link'+"').innerHTML=document.getElementById('"+id+'_link'+"').innerHTML.replace(/Zobrazit/,\"Skrýt\");",1000);
	} else {
		Effect.BlindUp(id, {duration: 1.0});
		setTimeout("document.getElementById('"+id+'_link'+"').innerHTML=document.getElementById('"+id+'_link'+"').innerHTML.replace(/Skrýt/,\"Zobrazit\");",1000);
	}
}

// vytiskne element s id elm
function printElm(elm)
{
  try
  {
    var oIframe = document.getElementById('ifrmPrint');
    var oContent = document.getElementById(elm).innerHTML;
    var oDoc = (oIframe.contentWindow || oIframe.contentDocument);
    if (oDoc.document) oDoc = oDoc.document;
    oDoc.write('<html><head><title></title>');
    oDoc.write('<link rel="stylesheet" href="./css/main.css" type="text/css" media="screen, projection, print" />' +
                '<style type="text/css" media="print">' +
                  'body { font-size: 10px; font-family: Arial; }' +    
                  'table { width: 100%; margin: 5px 0 10px; font-size: 10px; }' +
                  'table tr { border-bottom: 1px solid #000; }' +
                  'table th { background: #DDD; padding: 5px 5px; }' +
                  'table td { background: #EEE; padding: 3px 5px; }' +
                  'table tr.bright td { background: #F9F9F9; }' +
                  'table tr.dark td { background: #DDD; }' +
                  'table td.first, table th.first { width: 15px; }' +
                  'table td.label, table th.label { width: 190px; font-weight: bold; text-align: right; }' +
                  '.day { border-right: 1px solid #000; border-bottom: 1px solid #000; }' +
                  '.termin { background: #000!important; color: #FFF!important; }' +
                  '.termin_link { background: #000!important; color: #FFF;!important }' +
                '</style>' +
              '</head><body onload="this.focus(); this.print();">');
    oDoc.write(oContent + '</body></html>');
    oDoc.close();
  }
  catch(e)
  {
    self.print();
  }
}

// ovládání kalendáře
$(document).ready(function() {
  var i = 0;
  var timestamp = new Array();
  
  $('.datum_container_3').hide();

  $('.bunka_obsazenost_green').click(function () {
    i++;

    if(i >= 3)
    {
      $('.highlighted').removeClass('highlighted');
      i = 1;
      timestamp = new Array();
    }

    var date = $(this).attr('rel');
    
    var isoExp = /^\s*(\d{4})-(\d\d)-(\d\d)\s*$/, 
    datum = new Date(NaN), month, 
    parts = isoExp.exec(date); 
 
    if(parts) { 
      month = +parts[2]; 
      datum.setFullYear(parts[1], month - 1, parts[3]); 
      if(month != datum.getMonth() + 1) { 
//         datum.setTime(NaN); 
      } 
    }
    
    var rok = parts[1];
    var mesic = month;
    var den = parts[3];
    
// alert(date);
    // nastavení řetězce pro aktuálně kliknutý datum
//     var datum = new Date(date);
//     var den = datum.getDate();
//     var mesic = datum.getMonth();
//     var rok = datum.getFullYear();
//     mesic = mesic+1;
// 
//     if(den < 10)
//       den = '0'+den;
// 
//     if(mesic < 10)
//       mesic = '0'+mesic;

    var datum_string = den+'.'+mesic+'.'+rok;

    timestamp[i] = datum.getTime();

    if(i == 1)
    {
      // zvýraznění kliknutého datumu
      $(this).addClass('highlighted');
      $('[name=datum_od]').attr('value',datum_string);
      $('.datum_od').html(datum_string);
    }
    if(i == 2)
    {
      // zvýraznění kliknutého datumu
      $(this).addClass('highlighted');
      $('[name=datum_do]').attr('value',datum_string);
      $('.datum_container_3').show();
      $('.datum_od').html(datum_string);
        
      var c = 0;
      $('.bunka_obsazenost_green').each(function() {
        c++;

        var isoExp = /^\s*(\d{4})-(\d\d)-(\d\d)\s*$/, 
        date_compare = new Date(NaN), month, 
        parts = isoExp.exec($(this).attr('rel')); 
     
        if(parts) { 
          month = +parts[2]; 
          date_compare.setFullYear(parts[1], month - 1, parts[3]); 
          if(month != date_compare.getMonth() + 1) { 
    //         datum.setTime(NaN); 
          } 
        }
    
//         var date_compare = new Date($(this).attr('rel'));
        var timestamp_compare = date_compare.getTime();
        
        if(timestamp[1] > timestamp[2])
        {
          timestamp_1 = timestamp[2];
          timestamp_2 = timestamp[1];
        }
        else
        {
          timestamp_1 = timestamp[1];
          timestamp_2 = timestamp[2];
        }

        // nastavení řetězce pro PRVNÍ datum (DATUM PŘÍJEZDU)
        var datum = new Date(timestamp_1);
        datum.setTime(timestamp_1);
        var den = datum.getDate();
        var mesic = datum.getMonth();
        var rok = datum.getFullYear();
        mesic = mesic+1;

        if(den < 10)
          den = '0'+den;

        if(mesic < 10)
          mesic = '0'+mesic;

        var datum_string = den+'.'+mesic+'.'+rok;
        $('[name=datum_od]').attr('value',datum_string);
        $('.datum_od').html(datum_string);

        // nastavení řetězce pro POSELDNÍ datum (DATUM ODJEZDU)
        var datum = new Date(timestamp_2);
        datum.setTime(timestamp_2);
        var den = datum.getDate();
        var mesic = datum.getMonth();
        var rok = datum.getFullYear();
        mesic = mesic+1;

        if(den < 10)
          den = '0'+den;

        if(mesic < 10)
          mesic = '0'+mesic;

        var datum_string = den+'.'+mesic+'.'+rok;
        $('[name=datum_do]').attr('value',datum_string);
        $('.datum_do').html(datum_string);

        // zvýraznění zvoleného datumu
        if(timestamp_compare > timestamp_1 && timestamp_compare < timestamp_2)
        {
          $(this).addClass('highlighted');
        }

      });
    }
  });
});
