

onload = function() {
  var idTop = document.getElementById('top');

  var newdiv = document.createElement('div');
  newdiv.setAttribute('id','kalkul');
  newdiv.setAttribute('style','display:none');
  idTop.appendChild(newdiv);
  getElementsByClass('cena_1', document, '*', 1);
  getElementsByClass('cena_2', document, '*', 1);
  getElementsByClass('cena_3', document, '*', 1);
  getElementsByClass('cena_4', document, '*', 1);
}




function getElementsByClass(searchClass,node,tag,activateSkInfoMouse) {
	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|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			if (activateSkInfoMouse) {
        skInfoMouse(classElements[j]);
      }
			j++;
		}
	}
	return classElements;
}


var cenaTemp;
var kodTemp;
var nacitaj = 1;
var kurz = 30.126;
var fixPos = 0;
var aktivnaCena;

function skInfoMouse(object) {
  var kalkul = document.getElementById("kalkul");
  object = eval(object);
  object.parentNode.onmouseover = object.parentNode.onmousemove = function() {
    cenaTemp = 0;
    prepocitaj(object);
  }

  function prepocitaj(object) {
    var typ = document.getElementById('typ'); typ = typ.value;
    if (fixPos != 1) {
      aktivnaCena = object;
      var cenaDisplay = (object.innerHTML.replace(/(<([^>]+)>)/ig,""));
      cenaDisplay = cenaDisplay.replace(/\s/,"");
      cenaDisplay = parseFloat(cenaDisplay);
      if (cenaDisplay > 0 || cenaDisplay < 0) { // kontrola ceny
        kalkul.style.display = "block";
        //kalkul.style.left  = (mouseX + 15) + 'px';
        //kalkul.style.top  = (mouseY + 15) + 'px';
        kalkul.style.left  = (findPos(object.parentNode.parentNode.parentNode)[0]+425) + 'px';
        kalkul.style.top  = (findPos(object.parentNode.parentNode.parentNode)[1]) + 'px';
        object.parentNode.style.backgroundColor = "#aebf09";
        var polozkaKod = getElementsByClass('polozka_kod', object.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode)[0].innerHTML;
        if (cenaTemp != cenaDisplay || kodTemp != polozkaKod) { // prepocitaj
          var cenaZa = getElementsByClass('cenaZa', object.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode)[0].innerHTML;
          var odberClassName = 'odber' + object.className.split("_")[1];
          var odberShow = getElementsByClass(odberClassName, object.parentNode.parentNode.parentNode.parentNode.parentNode)[0].innerHTML;
          odberCislo = odberShow.replace(".","");
          odberCislo = odberCislo.replace("kg","");
          odberCislo = odberCislo.replace(/\s/,"");

          var tpt = 0;

          if (getElementsByClass('tpt', object.parentNode.parentNode)[0])
            tpt = getElementsByClass('tpt', object.parentNode.parentNode)[0].innerHTML;
          else tpt = 0;
          var jednotka = "";
          switch(polozkaKod) {
            case 'twist': jednotka = 'kg'; odberShow = odberCislo; break;
            case 'twist-1f': jednotka = 'kg'; odberShow = odberCislo; break;
            case 'b-pvc': jednotka = 'm2'; break;
            case 'b-sf': jednotka = 'm2'; break;
            default: jednotka = 'ks'; break;
          }
          if (odberCislo > 50) var zaokruhlenieSk = 10000;
          else var zaokruhlenieSk = 10;

          kalkul.innerHTML = '<div class="top">cenová kalkulácia pre<span class="pocet"> '+odberShow+' '+jednotka+'</span>:</div>';
          if (odberCislo > 1)
            kalkul.innerHTML += '= '+cenaDisplay+' * '+odberCislo/cenaZa+' <span class="silver">(cena za '+ cenaZa +' '+jednotka+' * počet)</span>';
          if (tpt == 1)
            kalkul.innerHTML  += ' + 50 <span class="silver">(cena za 1 tlačiarenský štočok)</span>'
          else if (tpt > 1)
            kalkul.innerHTML  += ' + 50*'+tpt+' <span class="silver">(cena za '+tpt+' tlačiarenské štočky)</span>'
          var finalCena = (cenaDisplay*(odberCislo/cenaZa)+50*tpt);
          kalkul.innerHTML += '<br/><span class="big">=' + zaokruhliReturn(finalCena) + ' €</span>  +DPH';
          //kalkul.innerHTML += '<span class="silver">('+ zaokruhliReturn(finalCena*kurz, 10) +' Sk)</span>';
          if (cenaZa > 1) {
            kalkul.innerHTML += '<br/>1 '+jednotka+' = ' + zaokruhliReturn(finalCena/odberCislo) + ' €  +DPH';
            //kalkul.innerHTML += '<span class="silver">('+ zaokruhliReturn(finalCena/odberCislo*kurz, zaokruhlenieSk) +' Sk)</span>';
          }

          if (typ == 'sladka_reklama') {
            kalkul.innerHTML  += '<br /><br /> + Cena tlačiarenského štočku je 50 € <span class="silver">(1506,3 Sk)</span> / 1 farbu,';
            kalkul.innerHTML  += '<br />ktorý sa po zaplatení stáva majetkom zákazníka';
            kalkul.innerHTML  += '<br /><br />Konečná cena vrátane tlačiarenských štočkov:';
            kalkul.innerHTML  += '<br /><b>1 farbou</b>: &nbsp;&nbsp;'+zaokruhliReturn(finalCena)+' + 50 &nbsp;&nbsp;&nbsp;&nbsp;= <b class="green">'+zaokruhliReturn(finalCena+50)+' €</b> +DPH';
            if (polozkaKod != 'twist-1f') kalkul.innerHTML  += '<br /><b>2 farbami</b>: '+zaokruhliReturn(finalCena)+' + 50*2 = <b class="green">'+zaokruhliReturn(finalCena+50*2)+' €</b> +DPH';
            if (polozkaKod != 'twist-1f') kalkul.innerHTML  += '<br /><b>3 farbami</b>: '+zaokruhliReturn(finalCena)+' + 50*3 = <b class="green">'+zaokruhliReturn(finalCena+50*3)+' €</b> +DPH';
          }
          
          if (typ == 'servitky') {
            kalkul.innerHTML += '<br/><br/><span class="info">v cene je zahrnutá aj samotná potlač</span>';
            kalkul.innerHTML += '<br/><span class="big">Akcia:</span> <span class="info"><b>Tlačiarenské štočky teraz zdarma</b><br />Akcia sa nevzťahuje na celoplošnú potlač</span>';
          } else if (typ == 'zapalky') {
            kalkul.innerHTML += '<br/><br/><span class="big">Akcia:</span> <span class="info"><b>Spracovanie grafického návrhu zdarma</b></span>';
          } else if (typ == 'rozetky') {
            kalkul.innerHTML += '<br/><br/><span class="info">v cene je zahrnutá aj samotná potlač</span>';
          } else if (typ == 'zapalovace' || typ == 'pera' || typ == 'golf') {
            kalkul.innerHTML += '<br/><br/><span class="info">v cene nie je zahrnutá potlač, ktorá sa kalkuluje individuálne</span>';
          } else if (typ == 'banery' && polozkaKod != "b-rollup-s" && polozkaKod != "b-rollup-85") {
            kalkul.innerHTML += '<br/><br/><span class="info">V cene je zahrnutá plnofarebná potlač CMYK</span>';
            if (!(polozkaKod == "b-plv" || polozkaKod == "b-pvc" || polozkaKod == "b-sf" )) {
              kalkul.innerHTML += '<span class="info">,<br />samotný systém a praktické púzdro</span>';
              if (odberCislo > 1) kalkul.innerHTML += '<span class="info">, pre každý systém</span>';
            } else if (polozkaKod == "b-pvc" ) {
              kalkul.innerHTML += '<span class="info">,<br /> zvar a očká po obvode</span>';
            }
          } else if (polozkaKod == "b-rollup-s") {
            kalkul.innerHTML += '<br/><br/><span class="info">V cene je zahrnuté praktické púzdro</span>';
            if (odberCislo > 1) kalkul.innerHTML += '<span class="info">, pre každý systém</span>';
            kalkul.innerHTML += '<br/><br/><span class="info">Samotné systémy bez potlače máme momentálne k dispozícii ihneď</span>';
          }
          cenaTemp = cenaDisplay;
          kodTemp = polozkaKod;
        } // end prepocitaj
      } // end kontrola ceny
    } // end fix position
  } // end onmousemove

  object.parentNode.onclick = function() {
    if (fixPos != 1) {
      fixPos = 1;
      kalkul.style.left  = findPos(object.parentNode.parentNode.parentNode)[0]+425;
      kalkul.style.top  = findPos(object.parentNode.parentNode.parentNode)[1];
    } else {
      fixPos = 0;
      kalkul.style.display = "none";
      aktivnaCena.parentNode.style.backgroundColor = "";
    prepocitaj(object);
    }
  }

  object.parentNode.onmouseout = function() {
    if (fixPos != 1) {
      kalkul.style.display = "none";
      object.parentNode.style.backgroundColor = "";
    }
  }
}


function findPos(obj) {
  var curleft = curtop = 0;
  if (obj.offsetParent) {
    do {
      curleft += obj.offsetLeft;
      curtop += obj.offsetTop;
    } while (obj = obj.offsetParent);
    return [curleft,curtop];
  }
}




function zaokruhliReturn(cislo, presnost) {
  if (!presnost) {presnost = 100000}
  cislo = Math.round(cislo*presnost)/presnost;
  return cislo;
}


var IE = document.all?true:false
if (!IE) document.captureEvents(Event.MOUSEMOVE)
document.onmousemove = getMouseXY;
var mouseX = 0
var mouseY = 0
function getMouseXY(e) {
  if (IE) {
    mouseX = event.clientX + document.body.scrollLeft
    mouseY = event.clientY + document.body.scrollTop
  } else {
    mouseX = e.pageX
    mouseY = e.pageY
  }
}












