var ie=document.all;
var nn6=document.getElementById&&!document.all;

var isdrag=false;
var x,y;
var dobj;
var http_request = false;
var requestAfter;
var requestText;

this.request = function(url, parameters){
	http_request = false;
	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		 http_request = new XMLHttpRequest();
		 if (http_request.overrideMimeType) {
				http_request.overrideMimeType('text/xml');
		 }
	} else if (window.ActiveXObject) { // IE
			http_request = new ActiveXObject("Microsoft.XMLHTTP");
	}
	if (!http_request) {
		 //alert('Cannot create XMLHTTP instance');
		 return false;
	}
	http_request.onreadystatechange = requestDone;
	http_request.open('GET', url + parameters, true);
	http_request.send(null);
};
this.requestDone = function(){
	if (http_request.readyState == 4) {
		if (http_request.status == 200) {
				requestText = http_request.responseText;
				eval(requestAfter);
				/*
				*/				
		 } else {
				//alert('There was a problem with the request.');
		 }
	}
}

this.favorite = function(userId,itemId){
	var url="addToFavorites.asp"
	var parameters = "?userId="+userId+"&itemId="+itemId;
	requestAfter = "favoriteDone()";
	request(url, parameters);
};
this.favoriteDone = function(){
	var arr = eval(requestText);
	var obj = document.getElementById("favorite" + arr[1]);
	obj.innerHTML = "<span class=\"favorite\">added to favorites " + arr[0] + " times</span>";
};

this.drag = function(){
	var obj = document.getElementById("position");
	var tx, ty, x, y;
	if(obj){
		obj.onmousedown = function(e){
			isdrag = true;
			tx = parseInt(this.style.left+0);
			ty = parseInt(this.style.top+0);
			x = nn6 ? e.clientX : event.clientX;
			y = nn6 ? e.clientY : event.clientY;
			return false;			
		};		
		document.onmousemove = function(e){
			if (isdrag){
				obj.style.left = nn6 ? (tx + e.clientX - x) + "px": (tx + event.clientX - x) + "px";
				obj.style.top  = nn6 ? (ty + e.clientY - y) + "px" : (ty + event.clientY - y) + "px";
				document.getElementById("userX").value = fixValues(obj.style.left);
				document.getElementById("userY").value = fixValues(obj.style.top);		
				return false;
			};
		};
		document.onmouseup = function(){
			isdrag = false;
		};
	};
};
this.fixValues = function(str){
	return str.replace("px", "");
};

this.init = function(){
	drag();
};

window.onload = init;
