window.onload = resetTextSize;

String.prototype.trim = function () {
  return this.replace(/^\s*(\S*(\s+\S+)*)\s*$/, "$1");
};

function resetTextSize() {
	document.getElementById("Wrapper").style.fontSize = "12px";	
}

function showObject( obj ) {

	if ( document.getElementById(obj) )
		document.getElementById(obj).style.display="block";

	if(obj == 'TermsOfUse'){
		var elements = document.documentElement.getElementsByTagName('select');
     
       		 for (var i=0; i<elements.length; i++) {
        		    elements[i].style.visibility = 'hidden';
     			   }
	}
}

function showNotFinished(link) {
	document.getElementById('NotFinishedLink').href = link;
	showObject('NotFinished');
}

function recipients(){
	num = document.getElementById("numOfRec").value;
    if(num == 10){
		document.getElementById('dropdown15').style.display="none";
		document.getElementById('dropdown20').style.display="none";
	} else if(num == 15){
		document.getElementById('dropdown15').style.display="block";
		document.getElementById('dropdown20').style.display="none";
	} else if(num == 20){
		document.getElementById('dropdown15').style.display="block";
		document.getElementById('dropdown20').style.display="block";
	}
}

function hideObject( obj ) {
	if ( document.getElementById(obj) ){
		document.getElementById(obj).style.display="none";
		
	}

	if(obj == 'TermsOfUse'){
		var elements = document.documentElement.getElementsByTagName('select');
     
       		 for (var i=0; i<elements.length; i++) {
        		    elements[i].style.visibility = 'visible';
     			   }
	}
}

function goPromo (dir) {
	hideObject("Pimg" +currentPromo);
	currentPromo += dir;
	currentPromo = currentPromo % (PromoNum);
	currentPromo = (currentPromo<0) ? currentPromo+PromoNum:currentPromo ;
	document.getElementById("Promo").className = "promo" + currentPromo;
	document.getElementById("Pimg" +currentPromo).style.display = "inline";
	document.getElementById("promoNum").innerText = (currentPromo+1);
	 
}

function toggleSurvey(){
	obj = document.getElementById("Istate");
	if (obj.className == "plus") {
		hideObject("ColText");
		hideObject("SurveyClosed");
		showObject("SurveyOpen");
		obj.className = "minus";
	}
	else {
		showObject("ColText");
		showObject("SurveyClosed");
		hideObject("SurveyOpen");
		obj.className = "plus";
	}
}

function goToTab(tab, obj) {
	if (currentTab != tab) {
		document.getElementById("T" + currentTab).className = "";
		obj.className = "active";
		hideObject("Tab" + currentTab);
		showObject("Tab" + tab);
		currentTab = tab;
	}
}

function togglePress(obj) {
	pobj = obj.parentNode;	
	(pobj.className == "")? pobj.className="open": pobj.className = "";	
}

function toggleCity(obj, cobj) {
	if (obj.className == "state") {
		obj.className="state stateOpen";
		$('#newsContent'+cobj).show();
		$('#close'+cobj).show();
		$('#view'+cobj).hide();
	}
	else {
		obj.className = "state";	
		$('#newsContent'+cobj).hide();
		$('#close'+cobj).hide();
		$('#view'+cobj).show();
	}
}

function viewSlideshow(obj) {
	$('#newsContent'+obj).show();
	$('#close'+obj).show();
	$('#view'+obj).hide();
	$('#state'+obj).addClass('stateOpen');


	//document.getElementById(obj).style.display = "show";
}

function closeSlideshow(obj) {
	$('#newsContent'+obj).hide();
	$('#close'+obj).hide();
	$('#view'+obj).show();
	$('#state'+obj).removeClass('stateOpen');


//	document.getElementById(obj).style.display = "none";
}

function toggleAnswer(obj, cobj, scobj) {
	if (document.getElementById(obj).className == "sOpen") {
		document.getElementById(obj).className="sClose";
		document.getElementById(scobj).className="sClose";
		document.getElementById(cobj).style.display = "none";
	}
	else {		
		showObject(cobj);
		document.getElementById(obj).className = "sOpen";
		document.getElementById(scobj).className="sOpen";
	}
	
}

function openPopUp() {
	document.getElementById('popUp').style.display = "block";
}
function closePopUp() {
	document.getElementById('popUp').style.display = "none";
}


function openAll(classN) {
	var allDiv=document.getElementsByTagName("div");
	
	for (i=0; i<allDiv.length; i++) {
		if (allDiv[i].className == classN) {
			allDiv[i].className = classN + " stateOpen";
		}
	}
}

function closeAll(classN) {
	var allDiv=document.getElementsByTagName("div");
	
	for (i=0; i<allDiv.length; i++) {
		if (allDiv[i].className.indexOf(classN) != -1 ) {			
			allDiv[i].className = classN;
		}
	}
}

function openAllCities(classN) {
	var allDiv=document.getElementsByTagName("div");
	
	for (i=0; i<allDiv.length; i++) {
		
		if (allDiv[i].className == "cityContent") {
			allDiv[i].style.display = "block";
		}
		if (allDiv[i].className == classN) {
			allDiv[i].className = classN + " stateOpen";
		}
	}
}



function closeAllCities(classN) {
	var allDiv=document.getElementsByTagName("div");
	

	for (i=0; i<allDiv.length; i++) {
		if (allDiv[i].className == "cityContent") {			
			allDiv[i].style.display = "none";
			
		}
		if (allDiv[i].className.indexOf(classN) != -1 ) {			
			allDiv[i].className = classN;
		}
	}
}

function openAllCityNewsItems(classN) {
	var allDiv=document.getElementsByTagName("div");
	
	for (i=0; i<allDiv.length; i++) {
		
		if (allDiv[i].className == "cityNewsContent") {
			allDiv[i].style.display = "block";
		}
		if (allDiv[i].className == classN) {
			allDiv[i].className = classN + " stateOpen";
		}
	}
	$('.slideshowView').hide();
	$('.slideshowClose').show();
}

function closeAllCityNewsItems(classN) {
	var allDiv=document.getElementsByTagName("div");
	

	for (i=0; i<allDiv.length; i++) {
		if (allDiv[i].className == "cityNewsContent") {			
			allDiv[i].style.display = "none";
			
		}
		if (allDiv[i].className.indexOf(classN) != -1 ) {			
			allDiv[i].className = classN;
		}
	}
	$('.slideshowView').show();
	$('.slideshowClose').hide();
}

function openAllAnswers(classN) {
	var allDiv=document.getElementsByTagName("div");
	
	for (i=0; i<allDiv.length; i++) {
		
		if (allDiv[i].className == "answers") {
			allDiv[i].style.display = "block";
		}
		if (allDiv[i].className == classN) {
			allDiv[i].className = classN + " stateOpen";
		}
	}
	
	var allLi=document.getElementsByTagName("li");
	
	for (i=0; i<allLi.length; i++) {
		
		if (allLi[i].className == "") {
			allLi[i].className = "iconOpen";
		}
	}
	
	var allSpan=document.getElementsByTagName("span");
	
	for (i=0; i<allSpan.length; i++) {
		
		if (allSpan[i].className == "sClose") {
			allSpan[i].className = "sOpen";
		}
	}
	
	var allA=document.getElementsByTagName("a");
	
	for (i=0; i<allA.length; i++) {
		
		if (allA[i].className == "sClose") {
			allA[i].className = "sOpen";
		}
	}
}

function closeAllAnswers(classN) {
	var allDiv=document.getElementsByTagName("div");


	for (i=0; i<allDiv.length; i++) {
		if (allDiv[i].className == "answers") {
			allDiv[i].style.display = "none";
			
		}
		if (allDiv[i].className.indexOf(classN) != -1 ) {			
			allDiv[i].className = classN;
		}
	}
	var allLi=document.getElementsByTagName("li");
	
	for (i=0; i<allLi.length; i++) {
		
		if (allLi[i].className == "iconOpen") {
			allLi[i].className = "";
		}
	}
	var allSpan=document.getElementsByTagName("span");
	
	for (i=0; i<allSpan.length; i++) {
		
		if (allSpan[i].className == "sOpen") {
			allSpan[i].className = "sClose";
		}
	}
	var allA=document.getElementsByTagName("a");
	
	for (i=0; i<allA.length; i++) {
		
		if (allA[i].className == "sOpen") {
			allA[i].className = "sClose";
		}
	}
}

function toggleFaq(obj){
	(obj.className == "faq")? obj.className="faq stateOpen": obj.className = "faq";
}

function showPreview(id, title, music, song, swfLink) {
	l = document.getElementById('pclink');
	link = l.getAttribute('href');
	l.setAttribute('href', link + id);
	
	document.getElementById('ptitle').innerHTML = '<strong>' + song + '</strong>  performed by the ' + music;
	
	var flashvars = {}; 
    var attributes = {}; 
    var params = {wmode:'transparent'}; 
	
	swfobject.embedSWF('http://www.futurestage.com/ecards/flash/' + swfLink, "flashContent", "660", "450", "8.0.0", "expressInstall.swf", flashvars, params, attributes);
	
	showObject("PreviewWin");
}


function smallerFontSize () {
	d = parseInt(document.getElementById("Wrapper").style.fontSize);
	if(isNaN(d)){
	   d = 12;
	}
	if (d > 9) {
		d -=2;
		document.getElementById("Wrapper").style.fontSize = d+ "px";
		//checkIfHomePage(d);
		//checkIfPressPage(d);
	}
	
}

function biggerFontSize () {
	d = parseInt(document.getElementById("Wrapper").style.fontSize);
	if(isNaN(d)){
	   d = 12;
	}
	if (d < 17) {
		d+=2;
		document.getElementById("Wrapper").style.fontSize = d+ "px";
		//checkIfHomePage(d);
		//checkIfPressPage(d);
	}
	
}

function checkIfHomePage(tsize) {
	if(document.getElementById("PromoBilly") != null ) {
		if ( tsize >= 17) {
			document.getElementById("PromoBillyBack").style.paddingBottom ="140px";
			document.getElementById("PromoBillyBack").style.marginBottom ="0px";
		} else if (tsize >= 15 ) {
			document.getElementById("PromoBillyBack").style.paddingBottom ="35px";
			document.getElementById("PromoBillyBack").style.marginBottom ="0px";
		} else { 
			document.getElementById("PromoBillyBack").style.paddingBottom ="32px";
		}
	}
}


function checkIfPressPage(tsize) {
	if(document.getElementById("Main") != null ) {
		if ( tsize >= 17) {
			document.getElementById("Main").style.paddingBottom ="290px";
			document.getElementById("Main").style.marginBottom ="0px";
		} else if (tsize >= 15 ) {
			document.getElementById("Main").style.paddingBottom ="220px";
			document.getElementById("Main").style.marginBottom ="0px";
		} else { 
			document.getElementById("Main").style.paddingBottom ="100px";
		}
	}
}



function sendToPrint() {
	document.printForm.submit(); 
}

function sendToPrintBillyElliot() {
	document.location.href=location.href + "?print=true";
}

function leaveFidelity_BAK() {
		var message ="You are about to leave the Fidelity FutureStage(R) web site for a web site that is unaffiliated with Fidelity FutureStage. FutureStage has not been involved in the preparation of the content supplied at the unaffiliated site and does not guarantee or assume any responsibility for its content. Fidelity FutureStage is not liable for any direct or indirect technical or system issues or consequences arising out of your access to or use of third party technologies or programs available through this site.";
		if(confirm(message)){
window.open('http://www.thruthestagedoor.com/futurestage/registration.html','new');
}else{
return false;
}

}



function leaveFidelity() {
		var message ="You are about to leave the Fidelity FutureStage(R) web site for a web site that is unaffiliated with Fidelity FutureStage. FutureStage has not been involved in the preparation of the content supplied at the unaffiliated site and does not guarantee or assume any responsibility for its content. Fidelity FutureStage is not liable for any direct or indirect technical or system issues or consequences arising out of your access to or use of third party technologies or programs available through this site.";

return(confirm(message));

}



/* -------------------------------- */


function subMenuChange(obj, cobj) {
	if(cobj==1) {
		document.getElementById('subMenuOne').style.display='block';
		document.getElementById('subMenuTwo').style.display='none';
		document.getElementById('subMenuThree').style.display='none';
		document.getElementById('linkOne').className='active';
		document.getElementById('linkTwo').className='';
		document.getElementById('linkThree').className='';
	}
	if(cobj==2) {
		document.getElementById('subMenuOne').style.display='none';
		document.getElementById('subMenuTwo').style.display='block';
		document.getElementById('subMenuThree').style.display='none';
		document.getElementById('linkOne').className='';
		document.getElementById('linkTwo').className='active';
		document.getElementById('linkThree').className='';
	}
	if(cobj==3) {
		document.getElementById('subMenuOne').style.display='none';
		document.getElementById('subMenuTwo').style.display='none';
		document.getElementById('subMenuThree').style.display='block';
		document.getElementById('linkOne').className='';
		document.getElementById('linkTwo').className='';
		document.getElementById('linkThree').className='active';
	}
}
function subMenuChangeMusic(obj, cobj) {
	if(cobj==1) {
		document.getElementById('subMenuOne').style.display='block';
		document.getElementById('subMenuTwo').style.display='none';
		document.getElementById('linkOne').className='active';
		document.getElementById('linkTwo').className='';
	}
	if(cobj==2) {
		document.getElementById('subMenuOne').style.display='none';
		document.getElementById('subMenuTwo').style.display='block';
		document.getElementById('linkOne').className='';
		document.getElementById('linkTwo').className='active';
	}
}
/*
function submenuGoBackFunc(obj) {
	if(obj=='about') {
		document.getElementById('subMenuOne').style.display='block';
		document.getElementById('subMenuTwo').style.display='none';
		document.getElementById('subMenuThree').style.display='none';
		document.getElementById('linkOne').className='active';
		document.getElementById('linkTwo').className='';
		document.getElementById('linkThree').className='';
	}
	if(obj=='student_resources') {
		document.getElementById('subMenuOne').style.display='none';
		document.getElementById('subMenuTwo').style.display='block';
		document.getElementById('subMenuThree').style.display='none';
		document.getElementById('linkOne').className='';
		document.getElementById('linkTwo').className='active';
		document.getElementById('linkThree').className='';
	}
	if(obj=='teacher_resources') {
		document.getElementById('subMenuOne').style.display='none';
		document.getElementById('subMenuTwo').style.display='none';
		document.getElementById('subMenuThree').style.display='block';
		document.getElementById('linkOne').className='';
		document.getElementById('linkTwo').className='';
		document.getElementById('linkThree').className='active';
	}
}

function submenuGoBack(dobj) {
	if (dobj=='about') {
		alertTimerId = setTimeout ( "submenuGoBackFunc('about')", 50 );	
	}
	if (dobj=='student_resources') {
		alertTimerId = setTimeout ( "submenuGoBackFunc('student_resources')", 50 );	
	}
	if (dobj=='teacher_resources') {
		alertTimerId = setTimeout ( "submenuGoBackFunc('teacher_resources')", 50 );	
	}
}

function submenuClear() {
	clearTimeout ( alertTimerId );
}*/

function overlayOn(div){

	$(div).addClass("darkClass");


}
		
function overlayOff(div){
	$(div).removeClass("darkClass");

}
function deleteOn(div){

	$(div).addClass("redClass");


}
		
function deleteOff(div){
	$(div).removeClass("redClass");

}

function confirmDelete(url) {
	$('#deleteLink').attr('href',url);
	$('#Warning').toggle();
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function checkEmails (quicksend) {
  
  document.getElementById('sendButton').onclick= function() {};

  document.getElementById('quicksend').value = quicksend;
  
  emails = document.getElementsByName('email[]');
  names = document.getElementsByName('name[]');
	errors = 0;
	valid = true;
	items = 0;
	wrongEmails = false;
	emptyName = false;
	invalidName = false;
	errorMessage = 'Please address the following items:<br/>';
	
	if (document.getElementById('fname').value == ''){
		errors++;
		document.getElementById('fname').className = 'invalidEmail';
		errorMessage = errorMessage + '- First Name is empty<br />';
	} if (document.getElementById('fname').value.trim() == ''){
		errors++;
		document.getElementById('fname').className = 'invalidEmail';
		errorMessage = errorMessage + '- First Name is empty<br />';
	} else {
		document.getElementById('fname').className = '';
	}
	
	if (document.getElementById('lname').value == ''){
		errors++;
		document.getElementById('lname').className = 'invalidEmail';
		errorMessage = errorMessage + '- Last Name is empty<br />';
	} else if (document.getElementById('lname').value.trim() == ''){
		errors++;
		document.getElementById('lname').className = 'invalidEmail';
		errorMessage = errorMessage + '- Last Name is empty<br />';
	}else {
		document.getElementById('lname').className = '';
	}
	
	
	if (document.getElementById('messageText').value.length > 500){
		errors++;
		document.getElementById('messageText').className = 'invalidEmail';
		errorMessage = errorMessage + '- Message is too long<br />';
	} else {
		document.getElementById('messageText').className = '';
	}
	
	if (document.getElementById('captcha').value.length != 6){
		errors++;
		document.getElementById('captcha').className = 'invalidEmail';
		errorMessage = errorMessage + '- Word verification is not valid/empty<br />';
	} else {
		document.getElementById('captcha').className = '';
	}
	


<!--	if(document.getElementById('messageText').value.indexOf("\n") >= 1){
	<!--	errors++;
		<!--document.getElementById('messageText').className = 'invalidEmail';
		<!--errorMessage = errorMessage + '- Remove line breaks in or after message <br />';
	<!--} else {
		<!--document.getElementById('messageText').className = '';
	<!--}
	

	for (i=0;i<emails.length;i++){
		if (emails[i].value != ''){
			items++;
			if (!isEmail(emails[i].value.trim())){
				emails[i].className = 'invalidEmail'
				wrongEmails = true;
			} else {
				emails[i].className = '';
				if(names[i].value == '') {
					names[i].className = 'invalidEmail';
					emptyName = true;
				}
				
				if(names[i].value.trim() == '') {
					names[i].className = 'invalidEmail';
					emptyName = true;
				}
				else {
					names[i].className = '';
				}
				
				var myname = 'name'+i;
				if(document.getElementById(myname).value == '?') {
					names[i].className = 'invalidEmail';
					invalidName = true;
				}
				
				else {
					names[i].className = '';
				}
			}
		}
	}
	
	
	if(emails[0].value == '') {
		emails[0].className = 'invalidEmail'
		wrongEmails = true;
	} else if(emails[0].value.trim() == '') {
		emails[0].className = 'invalidEmail'
		wrongEmails = true;
	}
	
	if (items == 0 || wrongEmails){
	
		errorMessage = errorMessage + '- Highlighted email addresses are not valid<br />';
		errors++;
	}	
	
	if (emptyName) {
		errorMessage = errorMessage + '- Recipient name is empty<br />';
		errors++;
	}
	
	if (invalidName) {
		errorMessage = errorMessage + '- Recipient name is invalid<br />';
		errors++;
	}

	if(errors>0){
		valid = false;
		document.getElementById('sendButton').onclick= function onclick(event) { checkEmails(1);return false };
		document.getElementById('errorText').innerHTML = errorMessage;
		showObject('WrongEmail');

	} else {
		document.getElementById('sendForm').submit();
	}
	return false;
}

function isEmail (email) {

	valid = true;
	var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,6})+$/;
	if (!filter.test(email)) {
		valid = false;
	}

	return valid;
}
