//-------------------------------------------------------------------------
//- Standard Page Functions
//-------------------------------------------------------------------------
function PageFunctions()
{
	var OverlayPosX = 0;
	var OverlayPosY = 0;
	
	//---------------------------------------------------------------------
	//- Scroll To Element X
	//---------------------------------------------------------------------
	this.ScrollToElement = function(theElementId)
	{
	  	var selectedPosX = 0;
	  	var selectedPosY = 0;	  
	  	
	    theElement =  document.getElementById(theElementId);
	  	while( theElement != null){
		    selectedPosX += theElement.offsetLeft;
		    selectedPosY += theElement.offsetTop;
		    theElement = theElement.offsetParent;
	  	}
	  	
	  	if(selectedPosY>20)
	  		selectedPosY = selectedPosY - 10;
	  	
	  	if(theElementId!='anchor_page_top')
			window.scrollTo(selectedPosX,selectedPosY);
		else
			window.scrollTo(0,0);
	}
	
	this.displayLoading = function(PictureSrc)
	{
		var str = '<table width="100%" height="100%" align="center">'+
				'	<tr>'+
				'		<td align="center" valign="middle">'+
				'			<img src="'+PictureSrc+'">'+
				'		</td>'+
				'	</tr>'+
				'	<tr>'+
				'		<td align="center" style="font-size:12px;color:#666666;font-weight:bold;">'+
				'			Loading ...'+
				'		</td>'+
				'	</tr>'+
				'	</table>';
		return str;
	}

	//---------------------------------------------------------------------
	//- Mailto
	//---------------------------------------------------------------------	
	this.mailto = function(s_mail1, s_mail2)
	{
		document.location='mailto:' + s_mail2 +'@' + s_mail1;
	}

	//---------------------------------------------------------------------
	//- Sleep
	//---------------------------------------------------------------------		
	this.sleep = function(ms)
	{
			var zeit=(new Date()).getTime();
			var stoppZeit=zeit+ms;
			while((new Date()).getTime()<stoppZeit){};
	} 	
	
	//----------------------------------------------------------------------
	//- Char Counter
	//----------------------------------------------------------------------
	this.displayCharacterCounter = function(s_field, s_counter, i_max_characters)
	{
		var i_missing_character = 0;
		
		if(document.getElementById(s_field))
			i_missing_character = i_max_characters - document.getElementById(s_field).value.length;
		if(document.getElementById(s_counter))
			document.getElementById(s_counter).innerHTML = i_missing_character;
	}
	
	
	//----------------------------------------------------------------------
	//-
	//----------------------------------------------------------------------
	this.displayOverhead = function(b_show)
	{		
		if(b_show == 'false')
			var overflow = 'auto';	//-- verstecken
		else
			var overflow = 'hidden'; //-- Anzeigen
			
		if(overflow == 'hidden')
		{		
			if(window.pageYOffset)
			{
				//-- Mozilla
				this.OverlayPosY = PosY = window.pageYOffset;
				this.OverlayPosX = PosX = window.pageXOffset;
				document.getElementById('toplevel_background').style.position='fixed';
				document.getElementById('toplevel_background').style.display='block';
				document.getElementById('toplevel_background').style.visibility='';
				document.getElementById('toplevel_background').style.top = 0;
				document.getElementById('toplevel_background').style.left = 0;
				document.getElementById('toplevel').style.position='fixed';
				document.getElementById('toplevel').style.display='block';
				document.getElementById('toplevel').style.visibility='';			
				document.getElementById('toplevel').style.top = 0;
				document.getElementById('toplevel').style.left = 0;					
			}
			else
			{
				//-- IE
				this.OverlayPosY = PosY = document.body.scrollTop;
				this.OverlayPosX = PosX = document.body.scrollLeft;		
				document.getElementById('body').style.overflow='hidden';
				document.getElementById('toplevel_background').style.position='absolute';
				document.getElementById('toplevel_background').style.display='block';
				document.getElementById('toplevel_background').style.visibility='';
				document.getElementById('toplevel_background').style.top = PosY;
				document.getElementById('toplevel_background').style.left = PosX;
				document.getElementById('toplevel').style.position='absolute';
				document.getElementById('toplevel').style.display='block';
				document.getElementById('toplevel').style.visibility='';			
				document.getElementById('toplevel').style.top = PosY;
				document.getElementById('toplevel').style.left = PosX;					
			}

		}
		
		if(overflow == 'auto')
		{
			window.scrollTo(this.OverlayPosX, this.OverlayPosY);
			document.getElementById('body').style.overflow='auto';
			document.getElementById('toplevel_background').style.display='none';
			document.getElementById('toplevel_background').style.visibility='hidden';		
			document.getElementById('toplevel').style.display='none';
			document.getElementById('toplevel').style.visibility='hidden';				
		}
	}		
}

var oPageFunctions = new PageFunctions();
