/**
 * JS-Datei für die Bewerbungsseite
 * http://bewerbung.heiligkind.de
 *
 * Copyright Holger Schöttle © 2006
 * Alle Rechte vorbehalten / All rights reserved
 */

/**
 * Popup-Funktion
 *
 * @param String url URI zum Popup
 * @param String template Das anzuzeigende Template
 */
function popup( url, template )
{
	wnd = window.open( url + '?template=' + template, 'Popup', 'width=500,height=500,scrollbars=yes,status=yes' );
	wnd.moveTo( (screen.width / 2) - 250, (screen.height / 2) - 250 );
	wnd.focus();
}

//###################################################//
//# Funktionen für das Auslesen der RSS-Nachrichten #//
//###################################################//

// globale Variablen
var timer 			= null;
var timer2			= null;
var fade_opacity 	= 0.99;
var time_to_wait	= 10;
var info_text		= 'Zeit bis zum nächsten Check: ';

/**
* Funktion, die nach neuen Messages fragt
* und diese ggf. ausgibt
*/
function checkRSSMessages()
{
	// Timer gesetzt? Löschen!
	if ( timer != null )
		clearInterval( timer );

	if ( timer2 == null )
		timer2 = setInterval( "printTimerInfo()", 1000 );
		
	// Container für Messages abrufen
	var output = document.getElementById('message_output');

	// Container enthält Inhalt?
	if ( output.innerHTML.length > 0 ) {
		output.style.MozOpacity = 0.99;
		output.style.filter = 'Alpha(opacity=100, finishopacity=0, style=0)';
		
		timer = setInterval( "messageFadeOut()", 5000 );
		time_to_wait = 6;
		info_text	 = 'Anzeigedauer: ';
	} else {
		xajax__replaceAsync( 'Bewerbung::getRSSMessage', 'message_output', 'innerHTML' );
		timer = setInterval( "checkRSSMessages()", 10000 );
		time_to_wait = 10;
		info_text	 = 'Zeit bis zum nächsten Check: ';
	}
}

/**
* Funktion für das Ausblenden der Messages
*/
function messageFadeOut()
{
	// Timer löschen!
	clearInterval( timer );

	// Container für die Messages
	var output = document.getElementById('message_output');
	// Transparenz verringern
	fade_opacity -= 0.1;

	// Container nicht mehr sichtbar?
	if ( fade_opacity < 0.0 )
	{
		output.style.MozOpacity = 0.0;
		output.style.filter = 'Alpha(opacity=0, finishopacity=0, style=0)';
		fade_opacity 			= 0.99;
		output.innerHTML 		= '';
		checkRSSMessages();
		return;
	}
	// Transparenz verringert setzen
	output.style.MozOpacity = Math.min( parseFloat( fade_opacity ), 0.99 );
	output.style.filter = 'Alpha(opacity=' + Math.min( parseFloat( fade_opacity * 100 ), 100 ); + ', finishopacity=0, style=0)';
	timer = setInterval( "messageFadeOut()", 200 );
}

// Info über die Wartezeit
function printTimerInfo()
{
	document.getElementById('time_info').innerHTML = info_text + time_to_wait;
	time_to_wait--;
}

/**
 * Funktion für das Ein-/Ausblenden von Elementen
 *
 * @param String id ID des Elements
 */
 function showHide( id )
 {
 	var elem = document.getElementById( id );
 	
 	if ( elem.style.display == 'inline' || elem.style.display == 'block' )
 		elem.style.display = 'none';
 	else 
 		elem.style.display = 'block';
 }