// JavaScript Document
/*
var test = document.getElementById('test');
var regal = document.getElementById('regal');
var pol = regal.getElementsByTagName('div');
*/
function mw_kosikAdd(id,what){
    if(id.length>5){
         var idSplit = id.split('zbozi');
         var id = idSplit[1];
    }
    
     if(window.XMLHttpRequest){
          mw_xmlhttp = new XMLHttpRequest();
     }
     else if(window.ActiveXObject){
          mw_xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
     }
     
     if(mw_xmlhttp){
          //var url = what=='add' ? './scripts/eshop.php?id='+id+'&sub=add' : './scripts/eshop.php?id='+id+'&sub=del';
		  var url = './scripts/eshop.php';
		  var sub = what=='add' ? 'add' : 'del';
          //alert(url);
          var kos = document.getElementById("kosik");
          mw_xmlhttp.open("POST", url, true);
          mw_xmlhttp.setRequestHeader( 'Content-Type', 'application/x-www-form-urlencoded; charset=iso-8859-2');
          mw_xmlhttp.onreadystatechange = function(){
               //if(xmlhttp.readyState == 1 || xmlhttp.readyState == 2 || xmlhttp.readyState == 3){ preloader(obj); }
               if(mw_xmlhttp.readyState == 4 && mw_xmlhttp.status == 200){
                    kos.innerHTML = mw_xmlhttp.responseText;
               }
          }
          mw_xmlhttp.send('sub='+sub+'&id='+id);
     }
}

function cancelDef(e){
     var e = e || window.event;
	if(e.preventDefault) {
		e.preventDefault();
	} else {
		e.returnValue = false;
	}
}

function findObj(Fobj){
     var curWidth = Fobj.offsetWidth;
     var curHeight = Fobj.offsetHeight;
	var curleft = curtop = 0;
	if (Fobj.offsetParent) {
		do {
			curleft += Fobj.offsetLeft;
			curtop += Fobj.offsetTop;
		} while (Fobj = Fobj.offsetParent);
	}
	var elmAttr = new Array();
	elmAttr['left'] = curleft;
	elmAttr['top'] = curtop;
	elmAttr['width'] = curWidth;
	elmAttr['height'] = curHeight;
	return elmAttr;
}

// nakupovani pomkoci presouvanim polozek do kosiku
function mw_nakup(){
// tlacitko stisknuto
	function m_down(e){
     	cancelDef(e);

     	var startMove = false;
          //urceni spravneho uchopoveho elementu pro ie i ostatni
          var startEv = e.srcElement || e.target;
          var startMove = false;
          if(startEv.className=='eshop_nazev'){ startMove=true; }

          if(startMove){
            var kosik = document.getElementById('kosik');
     	    var pozKosik = findObj(kosik);

            var e = e || window.event;
            
     		if(e.target){ this.objId = e.target.parentNode.id; }
     		else{ this.objId = e.srcElement.parentNode.id; }
     		this.objMain = document.getElementById(this.objId);
     		obj = this.objMain;
            obj.className = 'polozka catch';

            obj.startx = e.clientX;
     		obj.starty = e.clientY;
            obj.ID = this.objId;

     		if(!obj.style.left){ obj.style.left = '0px'; }
     		if(!obj.style.top){ obj.style.top = '0px'; }

     		obj.left = parseInt(obj.style.left, 10);
     		obj.top = parseInt(obj.style.top, 10);

     		obj.ondragdrop = function(poziceX, poziceY){
     			obj.style.left = (obj.left+poziceX)+'px';
     			obj.style.top = (obj.top+poziceY)+'px';
     		}

     		volaniUdalosti('', 'mousemove', m_move);
          	volaniUdalosti(obj, "mouseup", m_up);
          	/*
          	var kos = document.getElementById('kosik');
          	kos.onmouseover = function(e){ alert('maslo'); }
          	*/
          }
	}
// pohyb elementu
	function m_move(e){
          cancelDef(e);
          var e = e || window.event;

	    obj.ondragdrop(e.clientX-obj.startx, e.clientY-obj.starty);

        var kosik = document.getElementById('kosik');
	    var pozKosik = findObj(kosik);
	    //kosik.innerHTML = e.clientX+'-'+(pozKosik["left"]+pozKosik["width"])+' '+e.screenY+'-'+(pozKosik["top"]+pozKosik["height"]);
	    //alert(pozKosik["left"]+' '+pozKosik["top"]);
          /// je nad kosikem ??
          var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
          var xPoz = e.clientX;
          var yPoz = e.clientY+scrollTop;
          
          if( xPoz > pozKosik["left"] && xPoz < (pozKosik["left"]+pozKosik["width"]) && yPoz > pozKosik["top"] && yPoz < (pozKosik["top"]+pozKosik["height"]) )
          {
               kosik.className = 'in'
          }
          else{ kosik.className = ''; }

	}
// tlacitko mysi je nahore - odhlaseni udalosti
	function m_up(e){
         var kosik = document.getElementById('kosik');
	    var pozKosik = findObj(kosik);
          // je nad kosikem ? vytvareni session
          var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
          var xPoz = e.clientX;
          var yPoz = e.clientY+scrollTop;
          if( xPoz > pozKosik["left"] && xPoz < (pozKosik["left"]+pozKosik["width"]) && yPoz > pozKosik["top"] && yPoz < (pozKosik["top"]+pozKosik["height"]) )
          {
               mw_kosikAdd(obj.ID,'add');
          }
          kosik.className = '';

	    obj.style.left = obj.left;
	    obj.style.top = obj.top;
	    obj.className = 'polozka';
	    odvolaniUdalosti('', 'mousemove', m_move);
	    odvolaniUdalosti(obj, 'mouseup', m_up);
	}
// urceni zakladnich promennych + pridani udalosti elementum
     var test = document.getElementById('test');
     var regal = document.getElementById('regal');
     var pol = regal.getElementsByTagName('div');
     for(var i=0; i<pol.length; i++){
        if(pol[i].className=='eshop_nazev'){
            zbozi = pol[i];
			//pol[i].onmousedown = function(){ m_down(window.event, this.id); }
			volaniUdalosti(zbozi, 'mousedown', m_down);
		}
     }
}

function volaniUdalosti(tarObj, typ, func){

     tarObj = tarObj ? tarObj : document;

     if (tarObj.addEventListener) { tarObj.addEventListener(typ, func, false); }
	else if (tarObj.attachEvent) { tarObj.attachEvent("on"+typ, func, false); }
}
function odvolaniUdalosti(tarObj, typ, func){

     tarObj = tarObj ? tarObj : document;

     if(tarObj.removeEventListener){ tarObj.removeEventListener(typ, func, false); }
     else if (tarObj.detachEvent){ tarObj.detachEvent("on"+typ, func, false); }
}

