var max_width = screen.width - 100;
document.write('<style type="text/css">img { max-width: ' + max_width + 'px; }</style>');

var REQ = createXMLHttpRequest();
var stars = new Array();
function onImgStar(id) {
	document.getElementById('img' + id).className = 'onImgStar';
}
function onImgDel(id) {
	document.getElementById('img' + id).className = 'onImgDel';
}
function outImg(id) {
	document.getElementById('img' + id).className = 'outImg';
}
function hide_delete(id) {
	changeOpac(0, 'last_starred');
	document.getElementById('image_container' + id).style.display = 'none';
	if (REQ) {
		REQ.open('GET', 'index.php?unstar=' + id, true);
		REQ.onreadystatechange = star;
		REQ.send(null);
	}
}
function toggleStar(id) {
	var starred = document.getElementById('last_starred');
	starred.innerHTML = 'Working...';
	var query;
	if (stars[id]) {
		stars[id] = false;
		query = 'unstar=' + id;
	}
	else {
		document.getElementById('img' + id).className = 'onImgStar';
		stars[id] = true;
		query = 'star=' + id;
	}

	REQ.open('GET', 'index.php?' + query, true);
	REQ.onreadystatechange = star;
	REQ.send(null);
}

function star() {
	if (REQ.readyState == 4) {
		changeOpac(0, 'last_starred');
		var starred = document.getElementById('last_starred');
		var contents = REQ.responseText;
		starred.innerHTML = contents;
		opacity('last_starred', 0, 100, 500);
	}
}
function createXMLHttpRequest()
{
	if (window.XMLHttpRequest) { // Mozilla, Safari, ...
		return new XMLHttpRequest();
	}
	else if (window.ActiveXObject) { // IE
		return new ActiveXObject("Microsoft.XMLHTTP");
	}
	else {
		return false;
	}
}

function opacity(id, opacStart, opacEnd, millisec) {
	//speed for each frame
	var speed = Math.round(millisec / 100);
	var timer = 0;
	
	//determine the direction for the blending, if start and end are the same nothing happens
	if(opacStart > opacEnd) {
		for (i = opacStart; i >= opacEnd; i--) {
			setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
			timer++;
		}
	}
	else if (opacStart < opacEnd) {
		for (i = opacStart; i <= opacEnd; i++) {
			setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
			timer++;
		}
	}
}

function changeOpac(opacity, id) {
	var object = document.getElementById(id).style;
	object.opacity = (opacity / 100);
	object.MozOpacity = (opacity / 100);
	object.KhtmlOpacity = (opacity / 100);
	object.filter = "alpha(opacity=" + opacity + ")";
}

function updateUsername() {
	changeOpac(0, 'last_starred');
	var el = document.getElementById('user_name');

	REQ.open('GET', 'index.php?user_name=' + escape(el.value), true);
	REQ.onreadystatechange = changeUsername;
	REQ.send(null);
	el.focus();

	return false;
}

function changeUsername() {
	if (REQ.readyState == 4) {
		var container = document.getElementById('last_starred');
		var star_ip = document.getElementById('star_ip');
		var contents = REQ.responseText;
		if (contents != '0') {
			container.innerHTML = 'Username Updated!';
			star_ip.innerHTML = contents;
		}
		else {
			container.innerHTML = 'Username must be 3 or more characters!';
		}

		opacity('last_starred', 0, 100, 500);
	}
}

