function qaimSetPictureReference(method, identifier)
{
	var imgElement = document.getElementById("qaimPictureFetch");
	imgElement.src = imgElement.src + "&method="+method+"&identifier="+identifier;
}
function qaimReadCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function qaimCreateCookie(name, value) {
	var days = 300;
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}else{
		var expires = "";
	}
	document.cookie = name+"="+value+expires+"; path=/";
}

function qaimJavaScriptMain() {
	var identifier = "";
	try {
		// Try local storage solution
		identifier = localStorage.qaimHandsetIdentifier;
		if (identifier == null || identifier == 'null') {
			var myDate = new Date();
			identifier = myDate.getTime();
			localStorage.qaimHandsetIdentifier = identifier;
		}
		qaimSetPictureReference("domstorage", identifier);
	} catch (e) {
		try {
			// Try setting cookie from javascript
			identifier = qaimReadCookie("handsetidentifier");
			if (identifier == null || identifier == 'null' || identifier == 'undefined') {
				var myDate = new Date();
				identifier = myDate.getTime();
				qaimCreateCookie("handsetidentifier", identifier);
			}
			qaimSetPictureReference("cookie", identifier);
		} catch (e2) {
			// Cookie does not work either, just use DOM tree manipulation
			// to create static img element
			qaimSetPictureReference("staticfromjs", "");
		}
	}
}
qaimJavaScriptMain();