  var rightClick = 0;

  function invertCheckBox(src)
  {
    my_form = src.parentNode.parentNode.parentNode.parentNode.parentNode;
    for (i = 0; i < my_form.getElementsByTagName("input").length; i++)
      if ((elem = my_form.getElementsByTagName("input")[i]).type == "checkbox")
        elem.checked = !elem.checked;
  }

  function hrefMouseOver(id_href, div, custom_class)
  {
    if (custom_class != '')
      custom_class = " " + custom_class;

    if (rightClick == 0)
    {
      window.status = document.getElementById(id_href).href;
      if (div.className != 'href_extra')
        div.className = 'href_hover' + custom_class;
      return true;
    }
  }

  function hrefMouseOut(id_href, div, highlight, custom_class)
  {
    if (custom_class != '')
      custom_class = " " + custom_class;

    if (rightClick == 0)
    {
      window.status = "";
      if (highlight == 2)
        div.className = 'href_extra' + custom_class;
      else if (highlight)
        div.className = 'href_hlt' + custom_class;
      else
        div.className = 'href' + custom_class;
      return true;
    }
  }

  function hrefClick(id_href, blank)
  {
    if (blank)
      window.open(document.getElementById(id_href).href);
    else
      location = document.getElementById(id_href).href;
    return false;
  }
  
  
  function radio_value( radio )
  {	
    j = 0;	
    for( i = 0; i < radio.length; i++ ) 
    {		
      j++;		
      if ( radio[i].checked ) 
        return radio[i].value;
    }
  }
  
  /*function unixtimetodate(unixtime) 
  {
		var theDate = new Date(document.unixtime2date.unixtimestamp.value * 1000);
		dateString = theDate.toGMTString();
		document.unixtime2date.output.value = dateString;
	}
	*/
  
  function checkTerms()
  {
    
    var dt_od = document.getElementById('dt_term_from');
    var dt_do = document.getElementById('dt_term_to');
    
    var dt_od_t = document.getElementById('dt_turnus_from');
    var dt_do_t = document.getElementById('dt_turnus_to');
    
    var lab = document.getElementById('info');
    var typ = document.getElementsByName('form[id_typ_product]');
    
    if (typ)
      var typ_val = radio_value(typ);
    
    
    if (typ_val == undefined)
      typ_val = 1;
      
    var odjezd = document.getElementsByName('form[day]');
    
    if (odjezd)
      var odjezd_val = radio_value(odjezd);

    
    if (!dt_od)
    {
      dt_od = dt_od_t;
      dt_do = dt_do_t;
      typ_val = 2;
    }
     
    
    if (dt_od.value)
    {
      ereg = /^([0-9]+)\.([0-9]+)\.([0-9]{4})$/;
      ereg.test(dt_od.value);
      var dt = new Date(RegExp.$3, RegExp.$2-1, RegExp.$1);
      var dt_pom = new Date(RegExp.$3, (RegExp.$2), eval(RegExp.$1));
//       var den = RegExp.$1;
//       alert (eval(den) + 1);
      var oddt = dt.getTime();
      var dodt_pom = dt_pom.getTime();
      var dt_pom1 = Date.parse(dt_pom);
      
      var den_do = dt_pom.getDate();
      den_do = den_do.toString();
      var mesic_do = dt_pom.getMonth();
      mesic_do = mesic_do.toString();
      var rok_do = dt_pom.getFullYear();
//       rok_do = rok_do.toString();
      
      if (den_do.length == 1)
        den_do = '0' + den_do;
      if (mesic_do.length == 1)
        mesic_do = '0' + mesic_do;
      
//       alert (den_do + '.' + mesic_do + '.' + rok_do);
      if (!dt_do.value)
      {
        dt_do.value = den_do + '.' + mesic_do + '.' + rok_do;
      }
    }
    
    if (dt_do.value)
    {
      ereg = /^([0-9]+)\.([0-9]+)\.([0-9]{4})$/;
      ereg.test(dt_do.value);
      var dt = new Date(RegExp.$3, RegExp.$2-1, RegExp.$1);
      
      var dodt = dt.getTime(); 
    }

    if (oddt && dodt && typ_val == 1)
    {
      var msZaDen = 24 * 60 * 60 * 1000 ;
      var dnu = ( dodt - oddt ) / msZaDen;
      dnu = Math.round(dnu);
      
      
      $('info').update('počet dnů: ' + eval(Math.abs(dnu) + 1) + ' počet nocí: ' + Math.abs(dnu));
      
      if (dnu < 0)
        lab.innerText += ' (datumy budou při uložení prohozeny)';
    }
    
    if (oddt && dodt && odjezd_val && typ_val == 2)
    {
      var pocet = 0;
      var msZaDen = 24 * 60 * 60 * 1000 ;
      var datumy_text = '';
      while (oddt <= dodt) 
      {
        datum = new Date(oddt);
//         alert(datum);
//         alert (odjezd_val);
        if (datum.getDay() == odjezd_val)
        {
          var den = datum.getDate();
          den = den.toString();
          var mesic = eval(datum.getMonth() + 1);
          mesic = mesic.toString();
          if (den.length == 1)
            den = '0' + den;
          if (mesic.length == 1)
            mesic = '0' + mesic;

          datumy_text = datumy_text + '<br />\n' + den + '.' + mesic + '.' + datum.getFullYear();
//           alert(datum.getYear());
          pocet++;
        }
//           alert (datum);
        
        oddt = eval(oddt + 86400000);
      }
      
      var dnu = ( dodt - oddt ) / msZaDen;
      dnu = Math.round(dnu);
      
//       lab.innerText = 'počet termínů: ' + pocet + datumy_text;
      $('info').update('počet termínů: ' + pocet + datumy_text);
    }
    
  }
  
  
  function RemoveNode(id) 
  {
    var element = document.getElementById(id);
    while (element.firstChild) {
      element.removeChild(element.firstChild);
    }
    
    var par = element.parentNode; 
    if (par)
      par.removeChild(element);
  }

  function setPlace(odlet, odjezd)
  {
    var transfer = document.getElementById('id_transfer');
    var place = document.getElementById('place');
    var place_label = document.getElementById('place_label');
    var parentDiv = transfer.parentNode;
// alert (places.length);
    if (transfer)
    {
      if (transfer.value == 1)
      {
        if (place)
          RemoveNode('place');
        if (place_label)
          RemoveNode('place_label');
          
        
        var newLab = document.createElement('label');
        newLab.setAttribute('id', 'place_label');
        parentDiv.appendChild(newLab);
        
        newLab.appendChild(document.createTextNode('místo odletu '));
        
        var newEl = document.createElement('select');
        newEl.setAttribute('id', 'place');
        newEl.setAttribute('name', 'form[place]');
        
        var newSel = parentDiv.appendChild(newEl);//, transfer);
        getPlaces();
//         alert(odlet);
        /*
        alert (places_from.length);
        for (key in places_from)
        {
//           alert (key);
          var opt = document.createElement('option');
            opt.setAttribute('value', key);
          
          if (key == odlet)
            opt.setAttribute('selected', 'selected');
          
          newSel.appendChild(opt);
          
          
          
          opt.appendChild(document.createTextNode(key));
          
          
        }
        */
          
        
//         place.style.display = 'block';
//         place2.style.display = 'none';
      } 
      else if(transfer.value != 3)
      {
        if (place)
          RemoveNode('place');
        
        if (place_label)
          RemoveNode('place_label');
        
        var newLab = document.createElement('label');
        newLab.setAttribute('id', 'place_label');
        parentDiv.appendChild(newLab);
        
        newLab.appendChild(document.createTextNode('místo odjezdu '));
        
        var newEl = document.createElement('input');
        newEl.setAttribute('id', 'place');
        newEl.setAttribute('name', 'form[place]');
        
//         if (odjezd.length)
        if (odjezd != undefined)
          newEl.setAttribute('value', odjezd);
        
        var newInp = parentDiv.appendChild(newEl)
      }
      else
      {
        if (place)
          RemoveNode('place');
        
        if (place_label)
          RemoveNode('place_label');
      }
      
      
    }
  }


  function setLabel(count)
  {
    var lab = document.getElementById('label_bed');
    
    if (lab)
    {
      switch (count)
      {
        case "1":
          if(document.all){
              lab.innerText = "lůžko + ";
          } else{
              lab.textContent = "lůžko + ";
          }
          break;
          
        case "2":
        case "3":
        case "4":
          if(document.all){
              lab.innerText = "lůžka + ";
          } else{
              lab.textContent = "lůžka + ";
          }
          break;
        
        default:
          if(document.all){
              lab.innerText = "lůžek + ";
          } else{
              lab.textContent = "lůžek + ";
          }
          break;
      }
    }
  }
  
  function changeSection(id_parent, id_sekce)
  {
//     alert (pole_destinace_nazev);
//     alert (pole_destinace_id[0]);
//     alert (pole_destinace[id_parent]);
      
      var stat = document.getElementById('stat');
      var lokalita = document.getElementById('lokalita');
      var parentDiv = lokalita.parentNode;
  
      if (stat && pole_destinace)
      {
        if (lokalita)
          RemoveNode('lokalita');
        if (lokalita)
        {
          /*
          alert (lokalita.getChild);
          for (i = 0; i <= lokalita['option'].length; i++)
            alert (lokalita["option"][i].value);
//           lokalita.removeNode()
  */
        }
          
        var newEl = document.createElement('select');
        newEl.setAttribute('id', 'lokalita');
        newEl.setAttribute('name', 'form[lokalita]');
        
        var newSel = parentDiv.appendChild(newEl);//, transfer);
        
        
        var opt = document.createElement('option');
          opt.setAttribute('value', '');
        
        newSel.appendChild(opt);
        opt.appendChild(document.createTextNode('---'));
        
        for (id in pole_destinace[id_parent])
        {
          var opt = document.createElement('option');
            opt.setAttribute('value', id);
          
          newSel.appendChild(opt);
          opt.appendChild(document.createTextNode(pole_destinace[id_parent][id]));
          
          if (id_sekce)
            if (id == id_sekce)
              opt.selected = true; 
              
        }
      }
  }
  
  function addButton()
  {
		var button = document.createElement("input");
		var br = document.createElement("br");
		button.type='file';
		button.name='image[]';
		var fileArea = document.getElementById('fileArea');
		fileArea.appendChild(br);
		fileArea.appendChild(button);
	}
	
	function checkThis(row,selfchk)
  {
    if (!selfchk)
    {
      var checkbx = row.childNodes[0];
      if (checkbx.type == "checkbox") {
        checkbx.checked = !checkbx.checked;
      }
    }
    else
    { 
      row.checked = !row.checked;
    }
  }

  function set_final_demand_disabled()
  {
    var chbx = document.getElementById("demand_is_final_demand");
    var sel  = document.getElementById("id_order_demand_type");
    if (chbx.type == "checkbox" && sel.options.length > 0) {
	if (is_ok_final[sel.selectedIndex] == 1)
	{
	    chbx.disabled = false;
	}
	else
	{
	    chbx.checked = false;
	    chbx.disabled = true;
	}
    }
  }
    
  function toggle_display_label(button, id)
  {
    tmp = toggle_display(id);
    if (tmp == 'block')
    {
      button.innerHTML = '&lt;-méně';
    }
    else
    {
      button.innerHTML = 'více-&gt;';
    }
  }

  function toggle_display_label2(button, id)
  {
    tmp = toggle_display(id);
    if (tmp == 'block')
    {
      button.innerHTML = '-';
    }
    else
    {
      button.innerHTML = '+';
    }
  }

  function toggle_display_label3(button, id)
  {
    tmp = toggle_display2(id);
    if (tmp == 'block')
    {
      button.innerHTML = '-';
    }
    else
    {
      button.innerHTML = '+';
    }
  }
  

  function toggle_display(id)
  {
     if (document.getElementById(id).style.display == 'none' || document.getElementById(id).style.display == '') {
       document.getElementById(id).style.display = 'block';
     } else {
       document.getElementById(id).style.display = 'none';     
     }
    return document.getElementById(id).style.display;
  }

  function toggle_display2(id)
  {
     if (document.getElementById(id).style.display == 'none') {
       document.getElementById(id).style.display = 'block';
     } else {
       document.getElementById(id).style.display = 'none';     
     }
    return document.getElementById(id).style.display;
  }

 function disableSubmits()
 {
    var inputs = document.getElementsByTagName("input");

    for (i = 0; i < inputs.length; i++)
    {
	if (inputs[i].type == "submit")
	    inputs[i].disabled = true;
    }
				     
    var parentForm = this.parentNode;
				         
    var newInput = document.createElement('input');
    newInput.setAttribute('name', this.name);
    newInput.setAttribute('value', this.value);
    newInput.setAttribute('type', 'hidden');
    parentForm.appendChild(newInput);
								     
    this.form.submit();    
  }
								         
  function setOnClicks()
  {
    var inputs = document.getElementsByTagName("input");
		           
    for (i = 0; i < inputs.length; i++)
    {
	if (inputs[i].type == "submit")
	{
//         alert (inputs[i].onclick);
	    if (inputs[i].onclick != null)
	    {
		inputs[i].onclick = inputs[i].onclick; // + disableSubmits;
		//alert (inputs[i].onclick);
	    }
	    else
		inputs[i].onclick = disableSubmits;
	}
    }
  }


