var BOOKMARK_URL = "bookmarkit.php";

var XMLHttpRequestObject = new Array();

function OnBookmarkIt(id)
{
	if (XMLHttpRequestObject == null)
	{
		XMLHttpRequestObject = new Array();
	}

	var requestObject = GetXMLHttpRequest();
	if (requestObject)
	{
		XMLHttpRequestObject[id] = new Object();
		XMLHttpRequestObject[id].requestObject = requestObject;
		
		requestObject.onreadystatechange = new Function ("OnBookmarkItProcess('" + id + "')");
		
		var params = "action=add&id=" + id; // + (document.cookie.length > 0 ? 'true' : 'false');

		var url = BOOKMARK_URL + "?" + params;
		requestObject.open("POST", url, true);
		requestObject.setRequestHeader( "Content-Type" , "application/x-www-form-urlencoded; charset=UTF-8" );
		requestObject.send("");
	}
}

function OnBookmarkItProcess(id)
{
	if (XMLHttpRequestObject[id] != null &&
		XMLHttpRequestObject[id].requestObject &&
		XMLHttpRequestObject[id].requestObject.readyState == 4) 
	{
		if (XMLHttpRequestObject[id].requestObject.status == 200) 
		{
			var result = XMLHttpRequestObject[id].requestObject.responseText;
			if (result == "busy")
			{
				alert("The server is busy. Please try again later.");
				XMLHttpRequestObject[id] = null;
			}
			else
			{
				var item = new Array();
				var variables = result.split('&');
				for (var i = 0; i < variables.length; i++)
				{
					var variable = variables[i];
					item[i] = variable.split('=');
				}
				var name = "bookmark." + id;
				var divContainer = document.getElementById(name);
				if (item[0][1] != 'success')
				{
					var text = '請先登入';
				}
				else
				{
					onBookmarkCallback('bookmark_photos', id);
					divContainer.innerHTML = '<a href=\"myfavourite.php\"><img src=\"/images/add_favorited.gif\" align=\"absmiddle\" height=\"12\" width=\"12\">&nbsp;已新增到我的最愛</a>';
				}
				XMLHttpRequestObject[id] = null;
			}
		}
		else
		{
			alert('暫時不能處理你的請求');
		}
	}
}

function GetXMLHttpRequest() 
{
	var object = null;
	
	if (window.ActiveXObject) 
	{
		try
		{
			object = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(e)
		{
		}
		
		if (object == null)
		{
			try
			{
				object = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(e)
			{
			}
		}
	}
	else if (window.XMLHttpRequest) 
	{
		object = new XMLHttpRequest();
	} 
	
	if (object == null)
	{
		alert("Your browser does not support AJAX");
	}
	
	return object;
}


function isItemBookmarked(itemName, adid) {
	//alert( " Cookie being created " );
	var itemsRated = new Cookie(document, itemName, 720, '/photosharing');
	if ( itemsRated.load() ) {
		//alert( " Cookie has been found " + adid);
	} else {
		return false;
	}
	
	//alert(phonesRated[0]);
	//document.writeln('<p>' + phonesRated.toSource() + '</p>')

	//alert( " The ad list is " + phoneList );
	if (itemsRated.id)
	{
		var ad = itemsRated.id.split(',');
		var i;
		//alert( " Searching through the existing list " );
		for ( i=0; i<ad.length; i++ ) {
			if ( ad[i] == adid ) {
				return true;
			}
		}
	}
	return false;
}

function onBookmarkCallback(itemName, adid)
{
	var itemsRated = new Cookie(document, itemName, 720);
	if ( itemsRated.load() ) {
	} else {
	}

	if (itemsRated.id)
	{
		var ad = itemsRated.id.split(',');
	}
	else
	{
		var ad = new Array();
	}
	var i;

	for ( i=0; i<ad.length; i++){
		if (ad[i] == adid ){
			ad.splice(i, 1);
		}
	}

	//Put in the front of the list
	ad.unshift(adid);

	ad.splice(50, 99);

	itemsRated.id=ad.join(",");

	itemsRated.store();
}
