/********************************************************************/
// vars
/********************************************************************/

var sExpressInstall = "pix/expressInstall.swf";
var captionDiv = "caption";
var sImgPath = "web/pix/";


/********************************************************************/
// general functions
/********************************************************************/

function bookmark(){

  if (window.sidebar)
    {
    // firefox
    window.sidebar.addPanel(Text,URL, "");
    }
  else if(window.opera && window.print)
    {
    // opera
    var elem = document.createElement('a');
    elem.setAttribute('href',URL);
    elem.setAttribute('title',Text);
    elem.setAttribute('rel','sidebar');
    elem.click();
    }
  else if(document.all)
    {
    // ie
    window.external.AddFavorite(URL,Text);
    }
}


// address flash movie for external interface in action script
function thisMovie( movieName )
{
    if ( navigator.appName.indexOf("Microsoft") != -1 )
    {
        return window[movieName];
    }
    else
    {
        return document[movieName];
    }
}


function openRecommendForm( scriptpage, webpage )
{
	var popup = window.open( scriptpage + '?page=' + webpage, 'recommendform', 'left=100, top=100, width=500, height=680, scrollbars=no, location=no, toolbar=no, status=yes' );
}


function openPrintWin( printpage )
{
	var popup = window.open( printpage, 'printwin', 'left=100, top=100, width=650, height=680, scrollbars=yes, location=no, menubar=yes, toolbar=no, status=no' );
}


/********************************************************************/
// INITIATIVBEWERBUNG
/********************************************************************/

var uploadFields = 0;

function attachUpload ()
{
	layer = document.getElementById( "file_upload_" + (uploadFields + 1) );
	layer.style.display = "block";
	uploadFields++;

	if ( uploadFields == 3 )
	{
		document.getElementById( "attachText" ).innerHTML = "Maximale Menge an Anh\u00e4ngen erreicht.";
	}

}


function checkDates ()
{
	var birthDay = document.getElementById( "f_birth_day" ).options[document.getElementById( "f_birth_day" ).selectedIndex].value;
	var birthMonth = document.getElementById( "f_birth_month" ).options[document.getElementById( "f_birth_month" ).selectedIndex].value;
	var birthYear = document.getElementById( "f_birth_year" ).options[document.getElementById( "f_birth_year" ).selectedIndex].value;
	var birthDate = birthDay + "." + birthMonth + "." + birthYear;
	var birthValid = isDate( birthDate, "Geburtstag" );

	if ( birthValid == false )
	{
		alert( datemsg );
		return false;
	}

	return true;
}


var aMonth = new Array( "Januar", "Februar", "Maerz", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember" );
var datemsg = "";

function isDate( dateStr, fieldName )
{
	//var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
	var datePat = /^(\d{1,2})(\.|-)(\d{1,2})(\.|-)(\d{4})$/;
	var matchArray = dateStr.match( datePat ); // is the format ok?
	var datestatus = true;

	if ( matchArray == null || matchArray[1] == null )
	{
		datemsg = fieldName + ": Bitte geben Sie Datumsangaben in folgendem Format an: TT.MM.JJJJ" + "\n";
		return false;
	}
	else
	{
		if ( matchArray[3] == null || matchArray[5] == null )
		{
			datemsg = fieldName + ": Bitte geben Sie Datumsangaben in folgendem Format an: TT.MM.JJJJ" + "\n";
			return false;
		}
	}

	day = new Number( matchArray[1] );	 // parse date into variables
	month = new Number( matchArray[3] );
	year = matchArray[5];

	if ( month < 1 || month > 12 )
	{ // check month range
		datemsg = datemsg + fieldName + ": Ein Monat muss zwischen 1 und 12 liegen." + "\n";
		datestatus = false;
	}

	if ( day < 1 || day > 31 )
	{
		datemsg = datemsg + fieldName + ": Ein Tag muss zwischen 1 und 31 liegen." + "\n";
		datestatus = false;
	}

	if ( (month == 4 || month == 6 || month == 9 || month == 11) && day == 31 )
	{
		datemsg = datemsg + fieldName + ": Der Monat " + aMonth[(month-1)] + " hat keine 31 Tage!" + "\n";
		datestatus = false;
	}

	if ( month == 2 )
	{ // check for february 29th
		var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
		if ( day > 29 || (day == 29 && !isleap) )
		{
			datemsg = datemsg + fieldName + ": Der Monat Februar hat " + year + " keine " + day + " Tage!" + "\n";
			datestatus = false;
		}
	}

	return datestatus;
}

function checkNaN ( field )
{
	if ( isNaN( field.value ) )
	{
		alert( "Bitte hier nur Zahlen eingeben!" );
		field.value = '';
		field.focus();
	}
}


/********************************************************************/
// FAQ
/********************************************************************/
var activeFaq = null;

function showFaq ( layerId )
{
	if ( document.getElementById( layerId ) )
	{
		selectedFaq = document.getElementById( layerId );
		if ( selectedFaq.style.display == "block" )
		{
			selectedFaq.style.display = "none";
			activeFaq = null;
		}
		else if ( activeFaq != selectedFaq )
		{
			if ( activeFaq != null )
			{
				activeFaq.style.display = "none";
			}
			selectedFaq.style.display = "block";
			activeFaq = selectedFaq;
		}
	}
}


/********************************************************************/
// FORMS
/********************************************************************/

function checkDocCheckLoginBox ()
{
	if ( document.getElementById('docLogin').value == "" && document.getElementById('docPw').value == "" )
	{
		alert( 'Bitte geben Sie Nutzername und Passwort an!' );
		document.getElementById('docLogin').focus();
		return false;
	}

	return true;
}

function checkServierLoginBox ()
{
	if ( document.getElementById('userLogin').value == "" && document.getElementById('userPw').value == "" )
	{
		alert( 'Bitte geben Sie Nutzername und Passwort an!' );
		document.getElementById('userLogin').focus();
		return false;
	}

	return true;
}

function checkServierLogin ()
{
	if ( document.getElementById('userLogin').value == "" && document.getElementById('userPw').value == "" )
	{
		alert( 'Bitte geben Sie Nutzername und Passwort an!' );
		document.getElementById('userLogin').focus();
		return false;
	}

	/* if ( document.getElementById('agb').checked == false )
	{
		alert( 'Sie haben nicht bestaetigt, dass Sie Angehoerige/r der Fachkreise nach § 10 HWG sind und dass Sie mit der Einbeziehung der Allgemeinen Nutzungsbedingungen einverstanden sind. Bitte markieren Sie dieses Feld falls zutreffend.' );
		document.getElementById('agb').focus();
		return false;
	} */

	return true;
}

function login2Profile ()
{
	if ( document.getElementById('loginForm') )
	{
		var form = document.getElementById('loginForm');
		if ( checkServierLogin() == true )
		{
			document.getElementById('servier_profil').value = 1;
			form.submit();
		}
	}
}

function checkDocCheckLogin ()
{
	if ( document.getElementById('docLogin').value == "" && document.getElementById('docPw').value == "" )
	{
		alert( 'Bitte geben Sie Nutzername und Passwort an!' );
		document.getElementById('docLogin').focus();
		return false;
	}

	if ( document.getElementById('agb').checked == false )
	{
		alert( 'Sie haben nicht bestaetigt, dass Sie Angeh�rige/r der Fachkreise nach § 10 HWG sind und dass Sie mit der Einbeziehung der Allgemeinen Nutzungsbedingungen einverstanden sind. Bitte markieren Sie dieses Feld falls zutreffend.' );
		document.getElementById('agb').focus();
		return false;
	}

	return true;
}

function changeSearchMethod ( selfield )
{
	if ( selfield.options[selfield.selectedIndex].value == "date" )
	{
		document.getElementById( "f_searchterm" ).style.display = "none";
		document.getElementById( "f_searchterm" ).value = "";
		document.getElementById( "f_searchdate" ).style.display = "block";
	}
	else
	{
		document.getElementById( "f_searchterm" ).style.display = "block";
		document.getElementById( "f_searchdate" ).style.display = "none";
		selmonth = document.getElementById( "f_searchmonth" );
		selmonth.selectedIndex = 0;
		selmonth.options[selmonth.selectedIndex].selected = true;

		selyear = document.getElementById( "f_searchyear" );
		selyear.selectedIndex = 0;
		selyear.options[selyear.selectedIndex].selected = true;
	}
}
