function pageInitFunction() {   	
var el = document.getElementById('notificationsContainer');
if (el!=null) 
{ 	
Effect.Pulsate('notificationsContainer',{duration:8,from:0.5,pulses:5});
}

var flashMsg = document.getElementById('flashNormalWrapper');

if (flashMsg!=null) 
{ 	
Effect.Fade('flashNormalWrapper',{duration:8});
}


var activityFeedFilter = document.getElementById('activityFeedFilter');

if (activityFeedFilter != null) 
{ 	
filterActFeed(''); // ensure all activites are shown by default
}



// load the correct option in the Signup Page select menu
var statusForSignupSelect = document.getElementById('ProfileStatusForSignup');
if (statusForSignupSelect!=null) 
{ 	  	   
var valueSelected = parseInt(statusForSignupSelect.options[statusForSignupSelect.selectedIndex].value);
userTypeOptions(valueSelected); // ensure all activites are shown by default   			
}	




return true;	
}   

 function toggleVisibility(id, caller){
var el = document.getElementById(id);

/* using effects */
if ( el.style.display != 'none' ) {		

var callingElement = document.getElementById(caller);

if (callingElement!=null) 
{ 	
callingElement.src = callingElement.src.replace( "down", "up" );
}	

if (el!=null) 
{ 	
Effect.SlideUp(el,{duration:0.75});
}	

}
else {
//alert('should be showing');
var callingElement = document.getElementById(caller);

if (callingElement!=null) 
{ 	
callingElement.src = callingElement.src.replace( "up", "down" );
}	

if (el!=null) 
{
Effect.SlideDown(el,{duration:0.75});
}

}


}

function showToolTip(element,title,content) {
//	alert(element);
/* template of call
new Tip('tipEffect', 'Fade your tooltips in and out for example.', { title: 'this tooltip has a title', effect: 'appear' });
*/
new Tip(element, content, { title: title, effect: 'appear' ,className: 'senocura_pinktip'});

}



function googleTranslationCall(toTranslate,callingElement,fadeID){

// alert("google translator: "+toTranslate);

var fromLanguage = 'unknown';
var srcLanguage = '';
var tgtLanguage = '';

/* Detecting which language the source text is */

google.language.detect(toTranslate, function(result) {
if (!result.error) {

for (l in google.language.Languages) {
if (google.language.Languages[l] == result.language) {
fromLanguage = l;
break;
}
}
//	      alert("Google is "+result.confidence*100+"% confident that the source language is "+fromLanguage);


if (fromLanguage == "ENGLISH") {
srcLanguage = 'en';
tgtLanguage = 'de';

}
else if (fromLanguage == "GERMAN") {
srcLanguage = 'de';
tgtLanguage = 'en';

}
else {
//	 alert("misunderstood source language: "+fromLanguage);

/* Default translation values */
srcLanguage = 'de';
tgtLanguage = 'en';

}



/* doing the translation */	 


google.language.translate(toTranslate, srcLanguage, tgtLanguage, function(result) {
if (!result.error) {		  		
if (callingElement.innerHTML!=null) {
callingElement.innerHTML= result.translation;

}	
else { 
callingElement.data=result.translation;
//alert("no innerHTML: "+decode_utf8(result.translation));
}
Effect.Appear(fadeID,{duration:2}); 
//	return result.translation;		  					 
}
else {
alert(result.error.message); // debug only 
// return toTranslate; // don't translate, return original string
}
});

}
else {
alert(result.error.message); // debug only 

}
});

}



function showLightview(url,type,titleText,caption) {


Lightview.show({
href: url,
title: titleText,
caption: caption ,
rel: type, // not required
options: { width: 830, height: 580 }
});

}



function translateHeavyLifting(callingElement,fadeID) {

// if text is larger than 512 characters, break up into separate calls





for (var i=0; i < callingElement.childNodes.length; i++) {
Node=callingElement.childNodes[i];


if (Node.nodeType==3) {  // only do text nodes

//				alert("original text:"+Node.data);


var numberOfCalls = Math.floor((Node.data).length / 512);				


if (numberOfCalls > 0) {
//					alert("splitting, "+numberOfCalls);
// make a copy of the source node here, then create a new subtree with pieces (as divs)				
for (var j=0; j <= numberOfCalls; j++)
{
var digestableTranslation = (Node.data).substr(512*j,512);
if (digestableTranslation!=""){
//							alert(digestableTranslation);

var newElement = document.createElement('span');
newElement.innerHTML = digestableTranslation;
if (j==0) {
callingElement.replaceChild(newElement,Node);						
}
else {
callingElement.appendChild(newElement);						
}
googleTranslationCall(digestableTranslation,newElement,fadeID);							

} // if

} // for

} // if
else {

googleTranslationCall(Node.data,Node,fadeID);							
}


}
else if (Node.hasChildNodes) {
//alert(Node.nodeName);
//alert("hasChildNodes: "+Node.data);
if (Node.nodeName!="A") translateHeavyLifting(Node,fadeID); // recursive calls
}

}


}




function translateThis(caller){

Effect.Fade(caller,{duration:0.3,from:1,to:0.1});

var callingElement = document.getElementById(caller);

if (callingElement!=null) 
{


translateHeavyLifting(callingElement,callingElement.id);


}
else {
alert("No caller found: "+caller);
}


}



function setSelRange(inputEl, selStart, selEnd) { 
if (inputEl.setSelectionRange) { 
inputEl.focus(); 
inputEl.setSelectionRange(selStart, selEnd); 
} else if (inputEl.createTextRange) { 
var range = inputEl.createTextRange(); 
range.collapse(true); 
range.moveEnd('character', selEnd); 
range.moveStart('character', selStart); 
range.select(); 
}
}

function setTextAreaFocus(a_field_id) {
if ($(a_field_id)!=null) {
setSelRange($(a_field_id),0,0); // place cursor at beginning of textarea
}  
}


function setfocus(a_field_id) {
if ($(a_field_id)!=null) {
$(a_field_id).focus();
}  
}


function toggleVisibilityOfClasses(className){
var classElements = getElementsByClass(className);


var el = classElements[0];
if ( el.style.display != 'none' ) {
el.style.display = 'none';
//		alert("now invisible");
}
else {
el.style.display = 'block';
//		alert("now visible");
}

}




function getElementsByClass(searchClass,node,tag) {
var classElements = new Array();
if ( node == null )
node = document;
if ( tag == null )
tag = '*';
var els = node.getElementsByTagName(tag);
var elsLen = els.length;
var pattern = new RegExp('(^|\\\\s)'+searchClass+'(\\\\s|$)');
for (i = 0, j = 0; i < elsLen; i++) {
if ( pattern.test(els[i].className) ) {
classElements[j] = els[i];
j++;
}
}
return classElements;
}

function toggle(obj) {
var el = document.getElementById(obj);
if ( el.style.display != 'none' ) {
el.style.display = 'none';
}
else {
el.style.display = '';
}
}

