var player = null;
var logovisibile = false;
var einsatzvisible = false;
var stickervisible = false;

function playerReadyCallback(obj) {
	player = document.getElementById(obj.id);
	player.addModelListener('STATE', 'listener');
	player.addModelListener('TIME', 'showPageItems');
};

function listener(evt) {
	if ((evt.newstate == "IDLE")&&(evt.oldstate == "PLAYING")) {
		document.getElementById('einsatz').style.visibility = 'visible';
		document.getElementById('logo').style.visibility = 'visible';
		document.getElementById('news_contact').style.visibility = 'visible';
	}
}

function showPageItems(evt) {
	if (isFinite(evt.position)) {
		if (!einsatzvisible && evt.position >= 13) {
			document.getElementById('einsatz').style.visibility = 'visible';
			einsatzvisible = true;
		}
		if (!stickervisible && evt.position >= 17) {
			var stickerobj = $("#sticker");
			stickervisible = true;
			stickerobj.css("visibility", "visible");
			stickerobj.show('puff');
		}
		if (!logovisible && evt.position >= 23) {
			document.getElementById('logo').style.visibility = 'visible';
			document.getElementById('news_contact').style.visibility = 'visible';
			player.removeEventListener(MediaEvent.JWPLAYER_MEDIA_TIME, showPageItems);
			logovisible = true;
		}
	}
};

function hide(obj){
	html_obj=document.getElementById(obj);
	html_obj.style.display='none';
}

function show(obj){
	html_obj=document.getElementById(obj);
	html_obj.style.display='block';
}

function getHtmlObj(name){
	return document.getElementById(name);
}

/**
 * Send an asynchronous request and fill an existing DOM-Object with the returned data
 * @param url The URL to be requested
 * @param divId ID of the DOM-Object to be populated
 * @return void
 */
function getAndPopulate (url,divId){
	var x = getHTTPObject();
	var useDiv = document.getElementById (divId);

	x.open ("GET", url, true);
	x.onreadystatechange = function ()
	{
		if (x.readyState == 4)
		{
			useDiv.innerHTML = x.responseText;
			if(useDiv.style.display!="block"){
				useDiv.style.display="block";
			}
		}
	} // callback

	x.send(null);
}

/**
 * Send an asynchronous request to the server and trigger a callback when sending is finished.
 * 
 * @param url The URL to be requested
 * @param callback The Javascript function to be called after the request has ended.
 * @return void
 */
function sendUrl(url, callback)
{
    var x = getHTTPObject();
    if (callback != null)
    {
        x.onreadystatechange = function()
            {
                if (x.readyState == 4)
                {
                    callback(x);
                }
            };
    }

    x.open("GET", url, true);
    x.send(null);
}

/**
 * Gets the browser's AJAX XML-Object.
 * 
 * @return XML Request Object
 */
function getHTTPObject ()
{
	var userAgent = navigator.userAgent;

        if (userAgent.indexOf("MSIE") > -1)
            return new ActiveXObject("Microsoft.XMLHTTP");

        if (userAgent.indexOf("Gecko") > -1)
        {
            return new XMLHttpRequest();
        }

        return null;
}

function sendMessage() {
	var obj = document.getElementById('messagearea');
	var form = document.getElementById('messageform');
	var indicator = document.getElementById('messageindicator');
	var message = obj.value;
	obj.value = ''; // Clear, so it will look right
	form.style.display = 'none';
	indicator.style.display = 'block';
	
	var url = encodeURI('http://www.neusite.de/sendmessage.php?message=' + message);
	sendUrl(url, messageSent);
	
	return false;
}

function messageSent(req) {
	var ack = true;
	
	if (req.status < 200 || req.status > 299) {
		ack = false;
	}
	
	var indicator = document.getElementById('messageindicator');
	var ajaximage = document.getElementById('ajaximage');
	ajaximage.style.visibility = 'hidden';
	if (ack) {
		indicator.style.background = "url('ack.jpg') center no-repeat";
	} else {
		indicator.style.background = "url('notack.jpg') center no-repeat";
	}
	
	window.setTimeout("resetMessage()", 10000);
}

function resetMessage() {
	var form = document.getElementById('messageform');
	var indicator = document.getElementById('messageindicator');
	form.style.display = 'block';
	indicator.style.display = 'none';
	indicator.style.background = "url('sending.jpg') center no-repeat";
	var ajaximage = document.getElementById('ajaximage');
	ajaximage.style.visibility = 'visible';
}