/**
 * @author Pampalini
 */
/**
 * Mozgatható dolgok vezérlése
 */
function DragDrop(){
	this.counter = 0;
    this.zindex = 10;
	this.isDrag = false;
};

DragDrop.prototype.cmdCheckTarget = function(event){
    
	var target = classDragDrop.getEventTarget(event);
	
	switch(target.id) {
		case 'foto_1':
		case 'foto_2':
		case 'akcio':
		case 'nevjegy':
		
		classDragDrop.current_target = target;
		this.offset = classCore.getElementOffset(target);
			//alert(this.offset[0] + ' ' + this.offset[1])
		classDragDrop.current_target.className = 'ondrag';
		classCore.cmdAddEvent(document, 'mousemove', classDragDrop.cmdMove);
	    classCore.cmdAddEvent(document, 'mouseup', classDragDrop.cmdStopMoving);
		//event.preventDefault();
	    
	    classDragDrop.zindex++;
	    //target.style.cssText = "z-index:" + classDragDrop.zindex;// + "; cursor: url('../images/cur/move_catch.cur'), move;";
		break;
		
	}
};

DragDrop.prototype.cmdMove = function(event){
    var target = classDragDrop.current_target;
	
    //event.preventDefault();
	var posx = 0, posy = 0;
    if (event == null) 
        event = window.event;
    if (event.pageX || event.pageY) {
        posx = event.pageX;
        posy = event.pageY;
    } else if (event.clientX || event.clientY) {
        if (document.documentElement.scrollTop) {
            posx = event.clientX + document.documentElement.scrollLeft;
            posy = event.clientY + document.documentElement.scrollTop;
        } else {
            posx = event.clientX + document.documentElement.scrollLeft;
            posy = event.clientY + document.documentElement.scrollTop;
        }
    }
	
	classDragDrop.to_x = classDragDrop.pos_x ? Number(posx - classDragDrop.pos_x) : 0;
	classDragDrop.to_y = classDragDrop.pos_y ? Number(posy - classDragDrop.pos_y) : 0;
	
    classDragDrop.pos_x = posx;
    classDragDrop.pos_y = posy;
    
    this.offset = classCore.getElementOffset(target);
	
	var container_x = classCore.getElementOffset($('container'))[0];
	var container_y = classCore.getElementOffset($('container'))[1];
	
	var new_left = Number(this.offset[0] - container_x + classDragDrop.to_x);
	var new_top = Number(this.offset[1] + classDragDrop.to_y);
	
	//$('content_start_page').innerHTML = this.offset[0] + ' ' + this.offset[1] + ' | ' + new_left + ' ' + new_top + '  >>>  ' + container_x;
	
	//alert(new_left + ' ' + new_top)
	
	target.style.cssText = 'margin: ' + new_top + 'px 0 0 ' + new_left + 'px; z-index:' + classDragDrop.zindex;
};

DragDrop.prototype.cmdStopMoving = function(event){
	//$('content_start_page').innerHTML = classDragDrop.counter++;
	
	classDragDrop.pos_x = 0;
	classDragDrop.pos_y = 0;
	
	var target = classDragDrop.current_target;
	this.offset = classCore.getElementOffset(target);
		//alert(this.offset[0] + ' ' + this.offset[1])
    classCore.cmdRemoveEvent(document, 'mousemove', classDragDrop.cmdMove);
    classCore.cmdRemoveEvent(document, 'mouseup', classDragDrop.cmdStopMoving);
	
	classDragDrop.current_target.className = '';
	//event.preventDefault();
	//event.stopPropagation();
	
	//target.style.cssText = "cursor: url('../images/cur/move.cur'), move;";
	//alert('stop');
};

DragDrop.prototype.getEventTarget = function(event){
    if (!event) {
        var event = window.event;
    }
    if (event.target) {
        return event.target; //W3C
    }
    if (event.srcElement) {
        return event.srcElement; //IE
    }
};
var classDragDrop = new DragDrop();

