var trTransfer = null;
var startPrice = {};

window.onload = function() {
  trTransfer = getElementsByClass('transfer', ge('kosik'), 'tr');
  
  startPrice = {'celkembezdph' : ge('celkembezdph').innerHTML.replace(' ', '') * 1,
                'celkemdph' : ge('celkemdph').innerHTML.replace(' ', '') * 1,
                'celkemsdph' : ge('celkemsdph').innerHTML.replace(' ', '') * 1,
                'celkemsdph2' : ge('celkemsdph2').innerHTML.replace(' ', '') * 1
                };
  
  /*if(!_l) 
    DPHUser(_lg);*/
  
  StartInit();
}



function obchodniPodminky() {
  return openIt('/cs/obchodni-podminky/?onlytext=true');
}

function zarukaPodminky() {
  return openIt('/cs/zaruka/?onlytext=true');
}

function openIt(url) {
  var w = window.open(url,
              'obchodnipodminky',
              'width=640,height=480,menubar=no,toolbar=no,location=no,directories=no,status=no,scrollbars=yes,resizable=yes,left=0,top=0'
              );
  return false;  
}


function checkKosikForm() {
  var f = ge('kosik');
  var inputs = new Array();
  inputs.push({name : 'transfer', 'title' : 'Doprava', 'personId' : 2, 'text' : 'Pro dokončení objednávky musíte zvolit dopravu.'});
  inputs.push({name : 'userSend_name', 'title' : 'Jméno'});
  inputs.push({name : 'userSend_surname', 'title' : 'Přijmení'});
  inputs.push({name : 'user_tel', 'title' : 'Telefon'});
  inputs.push({name : 'user_mail', 'title' : 'E-Mail'});
  inputs.push({name : 'userSend_street', 'title' : 'Ulice'});
  inputs.push({name : 'userSend_cp', 'title' : 'Číslo popisné'});
  inputs.push({name : 'userSend_city', 'title' : 'Město'});
  inputs.push({name : 'userSend_psc', 'title' : 'PSČ'});
  inputs.push({name : 'obchodnipodminky', 'title' : 'Obchodní podmínky', 'text' : 'Pro dokončení objednávky musíte souhlasit s obchodními podmínkami.'});

  var isError = false;
  for(var i=0;i<inputs.length;i++) {
    eval('var obj = f.'+inputs[i].name);
    
    var e = false;
    var setError = true;
    switch(obj.type) {
      case "checkbox":
        
        if(!obj.checked)
          e = true;
      break;
      
      case "text":
        if(obj.value == '')
          e = true;
      break;
      
      default:
        // DopravaTransfer, special
        if(typeof(obj) == 'object' && inputs[i].name == 'transfer') {
          for(var j=0;j<obj.length;j++) {
            // doprava je ztrhla
            if(obj[j].checked) {
              setError = false;
              
              // Pokud je to osobne musi byt i pobocka
              if(obj[j].value == inputs[i].personId && !f.office.value) {
                alert('Při osobním odběru musíte zvolit pobočku.');
                return false;
              }
              break;
            }
          }
          
          if(setError)
            e = true;
        }
    }
    
    if(e) {
      isError = true;
      
      if(inputs[i].text)
        alert(inputs[i].text);
      else {
        alert('Pro dokončení objednávky musíte vyplnit pole \''+inputs[i].title+'\'.');
        
        if(obj.focus)
          obj.focus();
      }
        
      break;
    }
    
  }
  
  if(isError)
    return false;
  
  return true;
}


function priceFormat(x) {
  var s = new String(x);
  var pointPosition = s.indexOf('.');
  
  if(pointPosition > 0) {
    var x = s.substr(0, pointPosition);
    var point = s.substr(pointPosition + 1);
  }else {
    var point = '00';
  }

  var x = x + '';
  var ns = '';
  var k=0;
  
  for(var i=x.length-1;i>=0;i--) {
    if(k % 3 == 0 && k > 0) {
     ns += ' ';
   }
   
    ns += x.substr(i,1);
    k++;
  }
  
  var r = '';
  for(var i=ns.length-1;i>=0;i--) {
    r += ns.substr(i,1);
  }
  
  return (r + '.' + point);
} 


function changeTransfer(value) {

	value.blur();
	
	var tr = value.parentNode;
	
	for(var i=0; i<5; i++) {
		if(tr.tagName == 'TR')
		  break;
		
		tr = tr.parentNode;
	}
	
	if(tr.tagName != 'TR')
	   return false;
		
	
	for(var i=0; i<trTransfer.length; i++) {
		trTransfer[i].className = 'transfer disabled';
		
		var selects = trTransfer[i].getElementsByTagName('select');
		
    for(var k=0; k<selects.length; k++) {
      selects[k].disabled = true;
      selects[k].options[0].innerHTML = '-';
    }
	}
	
	
	tr.className = 'transfer';
	var selects = tr.getElementsByTagName('select');
  for(var k=0; k<selects.length; k++) {
    selects[k].disabled = false;
    selects[k].options[0].innerHTML = 'Vyberte pobočku';
  }
	

  var priceNoVat = getElementsByClass('priceNoVat', tr, 'span')[0].innerHTML * 1;
  var priceVat = getElementsByClass('priceVat', tr, 'span')[0].innerHTML * 1;

  
  var price = startPrice.celkembezdph + priceNoVat * 1;
  ge('celkembezdph').innerHTML = priceFormat(Math.round(price * 100) / 100);
  
  var price = startPrice.celkemdph + (priceVat - priceNoVat) * 1;
  ge('celkemdph').innerHTML = priceFormat(Math.round(price * 100) / 100);
  
  var price = startPrice.celkemsdph + priceVat * 1;
  ge('celkemsdph').innerHTML = priceFormat(Math.round(price * 100) / 100);
  ge('celkemsdph2').innerHTML = priceFormat(Math.round(price * 100) / 100);
  
}
