var elem;

function popup(name) {	
	if (elem = document.getElementById(name));
	if (!elem) return;
	elem.style.display = "inline";
}
function popdown(name) {
	if (name) {
		elem = document.getElementById(name);	
	}

	if (!elem) return;
	elem.style.display = "none";
}

var sincc = 0;
var actual_topnews = 0;
var stime = new Date();
var timeout = null;
var timeout2 = null;

function moveLeft(next_element, manual, max_num) {

	if (next_element == true) {
		if (timeout2) return;

		if (actual_topnews > 0) {
			actual_topnews--;				
			stime = new Date();
			if (timeout) {
				window.clearTimeout(timeout);
				timeout = null;
			}
		} else {
			return;
		}
	}

	var jetzt = new Date();
	var diff = (jetzt.getTime() - stime.getTime())/400;
	//alert(Math.sin(diff));
	
	var elem = document.getElementById('Topnews_content');
	var newpos = (1-(Math.sin(diff - (3.1415/2))+1)/2) * 700;
	
	elem.style.left = -Math.floor(newpos + 700*actual_topnews) + "px";
	if (newpos <= 1) {
		if (!manual) {
			if (actual_topnews > 0) {
				timeout = window.setTimeout("moveLeft(true, " + manual + ", " + max_num +")", 8000);
			} else {
				timeout = window.setTimeout("moveRight(true, " + manual + ", " + max_num + ")", 8000);
			}
		}					
		timeout2 = null;
	} else {
		timeout2 = window.setTimeout("moveLeft(false, " + manual + ")", 10);
	}
}

function moveRight(next_element, manual, max_num) {

	if (next_element == true) {
		if (actual_topnews >= max_num) return;
		if (timeout2) return;
	
		actual_topnews++;
		stime = new Date();
		if (timeout) {
			window.clearTimeout(timeout);
			timeout = null;
		}				
	}

	var jetzt = new Date();
	var diff = (jetzt.getTime() - stime.getTime())/400;
	//alert(Math.sin(diff));
	
	var elem = document.getElementById('Topnews_content');
	var newpos = ((Math.sin(diff - (3.1415/2))+1)/2) * 700;
	
	elem.style.left = -Math.floor(newpos - 700 + 700*actual_topnews) + "px";
	if (newpos >= 699) {
		if (!manual) {
			if (actual_topnews < max_num) {
				timeout = window.setTimeout("moveRight(true, " + manual + ", " + max_num + ")", 8000);
			} else {
				timeout = window.setTimeout("moveLeft(true, " + manual + ", " + max_num + ")", 8000);					
			}
		}
		timeout2 = null;					
	} else {
		timeout2 = window.setTimeout("moveRight(false, " + manual + ", " + max_num + ")", 10);
	}
}



function setVisibility(name, visible) {

	var elem = document.getElementById(name);

	if (elem) {
		if (visible) {
			elem.style.display = "block";	
		} else {
			elem.style.display = "none";		
		}
	}

}




var moveTimer = null;

function _moveToPos(elem_name, to_pos, funcName) {
	var elem = document.getElementById(elem_name);
	pos = parseFloat(elem.style.left.replace('px', ''));
	
	if ((speed = Math.floor(Math.abs(pos+to_pos)/20)) <= 0) speed = 1;
	if (document.getElementById('debug'))
		document.getElementById('debug').value = pos + ": " + to_pos + " - " + (pos+to_pos);
	
	if (pos >= -to_pos) {
		elem.style.left = (pos-speed) + "px";
		if (pos <= -to_pos) {
			elem.style.left = -to_pos + "px";
			if (funcName) window[funcName](elem);
		} else moveTimer = window.setTimeout("_moveToPos('"+ elem_name + "', " + to_pos + ", '" + funcName + "')", 30);
	} else {
		elem.style.left = (pos+speed) + "px";	
		if (pos >= -to_pos) {
			elem.style.left = -to_pos + "px";
			if (funcName) window[funcName](elem);
		} else moveTimer = window.setTimeout("_moveToPos('"+ elem_name + "', " + to_pos + ", '" + funcName + "')", 30);
	}
}
function moveToPosition(elem_name, pos, funcName) {
	var elem = document.getElementById(elem_name);
	window.clearTimeout(moveTimer);
	moveTimer = window.setTimeout("_moveToPos('"+ elem_name + "', " + pos + ", '" + funcName + "')", 20);
}
