// common js functions



// default path for eHealth ads.. not for SPU 247
var artpath = "/patient/conditions";

// preload pro icon
var proIcon= new Image(); 
proIcon.src="/int/images/ico_pro_over.gif"; 

// goes to Relax the back store locator by state
function jumpToRTB(){
	var val = $F('stateSel');
	if (val!=''){
	window.open('http://www.relaxtheback.com/locator/'+val);	
	} else {
		alert ('Please select a state.');	
		
	}
	return false;
} 

function clearText(thefield){
if (thefield.defaultValue==thefield.value)
thefield.value = ""
} 



function toggleVis(el){
	$(el).toggle();
	
}




function setFontSize(size){
	switch (size){
		
		
		
		case 2:
		var mainContentCol_fontSize = '1.12em';
		var subNavCol_fontSize = '1.12em';
		
		break;
		
		case 3:
		var mainContentCol_fontSize = '1.23em';
		var subNavCol_fontSize =  '1.23em';
		
		break;
		
		case 1:
		default:
		
		var mainContentCol_fontSize = '1em';
		var subNavCol_fontSize =  '1em';
		
		break;
		
		
	}
	
	if ($('mainContentCol')){
		$('mainContentCol').setStyle({
			fontSize: mainContentCol_fontSize
		});
	}
	
	if ($('subNavCol')){
		$('subNavCol').setStyle({
			fontSize: subNavCol_fontSize
		});
	}
	
	createCookie('fontMode', size, 10);
	
}

/*
// sets the css font size to the cookie
Event.observe(window, 'load', function() {
  setFontSize(Number(readCookie('fontMode')));
});
*/

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}


function selectTextArea(id){
	$(id).select();	
}



function get_RTB_ad(text,url){
	var rtbNum = (Math.round((Math.random()*19)+1));
	var rtbImg = "http://spineuniverse.com/ads/relax/"+rtbNum+".gif";
	var openTable = '<table width="120" height="220" cellspacing="0" cellpadding="0" border="0" ';
	openTable += 'style="background-image: url('+rtbImg+')" >';
	openTable += '<td valign="top" width="120">';
	openTable += '<a href="'+url+'" class="rtbstuff">';
	openTable += text;
	openTable += '</a></td></tr></table>';
	document.write(openTable);
}

function show_RTB(url, b, c){
	
	var rtbNum = (Math.round((Math.random()*10)+1));
	var rtbImg = "http://spineuniverse.com/ads/relax/160/rtb"+rtbNum+".jpg";
	var style = 'style="background-image: url('+rtbImg+')"';
	var output = '';
	output = '<div class="rtb-ad" '+style+'><a href="'+url+'" target="_blank"><span class="rtb-title">'+b+'</span>'+c+'</a></div>';
	
	document.write(output);
}
function show_RTB_flash_300(id,url) {
	var adURL = url;
	var flashOutput = '<div id="rtbFlashAd300"><p>Alternative content</p></div><script type="text/javascript">var so = new SWFObject("http://www.spineuniverse.com/flash/rtb_rotator_300.swf?storeID='+id+'&amp;clickTag='+adURL+'", "rtbFlashAd", "300", "250", "8");so.write("rtbFlashAd300");</script>';
	document.write(flashOutput);
}
function show_RTB_flash_160(id,url) {
	var adURL = url;
	var flashOutput = '<div id="rtbFlashAd160"><p>Alternative content</p></div><script type="text/javascript">var so = new SWFObject("http://www.spineuniverse.com/flash/rtb_rotator_160.swf?storeID='+id+'&amp;clickTag='+adURL+'", "rtbFlashAd", "160", "600", "8");so.write("rtbFlashAd160");</script>';
	document.write(flashOutput);
}
function show_RTB_flash_728(id,url) {
	var adURL = url;
	var flashOutput = '<div id="rtbFlashAd728"><p>Alternative content</p></div><script type="text/javascript">var so = new SWFObject("http://www.spineuniverse.com/flash/rtb_rotator_728.swf?storeID='+id+'&amp;clickTag='+adURL+'", "rtbFlashAd", "728", "90", "8");so.write("rtbFlashAd728");</script>';
	document.write(flashOutput);
}



function openWin(url,x, y, winname) {
var mainWin = window.open(url,winname, 'width='+x+',height='+y+',resizable=1,scrollbars=1');
}
// ad functions
function DisplayAds (position, width, height){ 
        
	var sitepage;
	var RN = new String (Math.random());
	var RNS = RN.substring (2, 11);
	var sitepage = "www.spineuniverse.com";
	sitepage=sitepage + artpath;
	
	var oaspage = sitepage + '/1' + RNS + '@' + position;
	
	if (_version < 11) {
	 document.write ('<A HREF="' + oas + 'click_nx.ads/'+ oaspage + '" TARGET="_top" ><IMG SRC="' + oas + 'adstream_nx.ads/' + oaspage + '" BORDER="0" WIDTH="' + width + '" HEIGHT="' + height + '"></a>');
	} 
	else {
	 document.write ('<SCRIPT LANGUAGE="JavaScript1.1" SRC="' + oas + 'adstream_jx.ads/' + oaspage + '">');
	 document.write ('\<\!-- --\>');
	 document.write ('\<\/SCRIPT\>');
	 document.write ('\<\!-- --\>');
	 }
}


// search functions
function validateGoogleSearch(str){
 if (str=='') {
 alert('Please enter a search term');
 return false;
 }
 return true;
}

function doSearch(type){
	document.searchForm.searchType.value = type
	if (type == "zip"){
		if (document.searchForm.searchZip.value==''){
			alert('Please enter a Zipcode');
			return false;
		}
		document.searchForm.searchKey.value = '';
	} else {
		
		if (document.searchForm.searchKey.value==''){
			alert('Please enter a Search Term');
			return false;
		}
		document.searchForm.searchZip.value = '';
	}
	document.searchForm.submit();
}

function setSearchType(type){
	document.searchForm.searchType.value = type;
}

function validateSearch(){
	/*var type=document.searchForm.searchType.value;
	if (type == "zip"){
		if (document.searchForm.searchZip.value==''){
			alert('Please enter a Zipcode');
			return false;
		}
		document.searchForm.searchKey.value = '';
		return true;
	} else {
		if (document.searchForm.searchKey.value==''){
			alert('Please enter a Search Term');
			return false;
		}
		document.searchForm.searchZip.value = '';
		return true;
	}*/
	if ($F('l')=='' && $F('k')==''){
		alert ("Please enter a search term.");
	return false;	
	} else {
		/*var type = $F('drType');
		var typeStr;
		var lStr = '';
		var kStr = '';
		switch (type){
			case '1':
			typeStr = 'doctors/';
			break;
			
			case '2':
			typeStr = 'chiropractors/';
			break;
			
			case '3':
			typeStr = 'specialists/';
			break;
			
		}
		
		//if ($F('l')!=''){
			lStr = $F('l')+"/";
		//}
		
		if ($F('k')!=''){
			kStr = $F('k')+"/";
		}
		
		document.location = "/search/"+typeStr+lStr+kStr;*/
		return true;
		
	}
	
}
// end search functions



// ---------------------------------------
// "Email this page" functions


// emailThisPage form validation
var emailPageVal = [];
emailPageVal.push('empty|ep_sendName|Please enter your name');
emailPageVal.push('email|ep_sendEmail|Your email address is invalid');
emailPageVal.push('empty|ep_recipName|Please enter the recipients name');
emailPageVal.push("email|ep_recipEmail|The recipient's email address is invalid");

var pagePath = "";

function showEmailForm(){
	Element.show('emailPage');
}
function hideEmailForm(){
	Element.hide('emailPage');
}
function getGoodKeys(id){
	//pagePath = "/email_sent/" + title + "/" + id;
	var requestOptions = {
			method : 'post',
			parameters : "action=getGoodKeys&id=" + id,
			
			
			onComplete: displayGoodKeys
		  };
		  
	new Ajax.Request('/int/phpinc/actions_ajax.php', requestOptions);	
	
}
function displayGoodKeys(originalRequest){
	alert(originalRequest.responseText);
	eval("var response = ("+originalRequest.responseText+")");
	//alert((response.goodTags));
	$('newtags').value = (response.goodTags);
	
}

function getEmailPageForm(title,id){
	pagePath = "/email_sent/" + title + "/" + id;
	var requestOptions = {
			method : 'post',
			parameters : "action=getEmailPageForm",
			
			onComplete: displayEmailPageForm
		  };
		  
	new Ajax.Request('/int/phpinc/actions_ajax.php', requestOptions);
}
function displayEmailPageForm(originalRequest){
	//alert(originalRequest.responseText);
	eval("var response = ("+originalRequest.responseText+")");
	$('emailPage').update(response.formHTML);
	Element.show('emailPage');
}


function doFwdPageEmail(){
	
	// validation
	var fwdPageVal = [];
	fwdPageVal.push('empty|fwdp_Name|Please enter your name');
	fwdPageVal.push('email|fwdp_Email|Your email address is invalid');
	//fwdPageVal.push('empty|fwdp_RepName|Please enter the recipients name');
	fwdPageVal.push("emailMulti|fwdp_RepEmail|One of the recipient's email address is invalid");

	
	if (validate('fwd-page-form', fwdPageVal, false)){
	// send email
	// alert ('passed');
		var fromName  = encodeURI($F('fwdp_Name'));
		var fromEmail = encodeURI($F('fwdp_Email'));
		if ($('fwdp_title')){
			var subject = encodeURI($F('fwdp_title'));
		}
		//var toName    = encodeURI($F('fwdp_RepName'));
		var toEmail   = encodeURI($F('fwdp_RepEmail'));
		var message   = encodeURI($F('fwdp_Msg'));
		//var url		  = encodeURI(url);
		
		var requestOptions = {
				method : 'post',
				parameters : "action=emailPage" + 
				"&fromName=" + fromName +
				"&fromEmail=" + fromEmail +
				"&subject=" + subject +
				"&toEmail=" + toEmail +
				"&message=" + message, // +
				//"&url=" + url,
				onComplete: fwdPageSuccess
			  };
			  
		
				 
		new Ajax.Request('/int/phpinc/actions_ajax.php', requestOptions);
	
	}
	return false;
}

function fwdPageSuccess(originalRequest){
	
	
	//alert(originalRequest.responseText);
	eval("var response = ("+originalRequest.responseText+")");
	
	$('fwd-feedback').update('Your email has been sent. Thank You');
	
	$('fwd-feedback').addClassName('success');
	$('fwd-feedback').removeClassName('error');
	
	$('fwdp_Name').value = '';
	$('fwdp_Email').value = '';
	$('fwdp_RepEmail').value = '';
	$('fwdp_Msg').value = '';
	
	//$('emailPage').update(response.displayCode);
	if (pageTracker!=null){
pageTracker._trackPageview(pagePath);
	}
	//alert(pagePath);

}


function sendEmailPage(){
	if (validate('emailPageForm', emailPageVal)){
	// send email
		var fromName  = encodeURI($F('ep_sendName'));
		var fromEmail = encodeURI($F('ep_sendEmail'));
		var toName    = encodeURI($F('ep_recipName'));
		var toEmail   = encodeURI($F('ep_recipEmail'));
		var message   = encodeURI($F('ep_message'));
		//var url		  = encodeURI(url);
		
		var requestOptions = {
				method : 'post',
				parameters : "action=emailPage" + 
				"&fromName=" + fromName +
				"&fromEmail=" + fromEmail +
				"&toName=" + toName +
				"&toEmail=" + toEmail +
				"&message=" + message, // +
				//"&url=" + url,
				onComplete: sentPageSuccess
			  };
			  
		
				 
		new Ajax.Request('/int/phpinc/actions_ajax.php', requestOptions);
	
	}
	return false;
}

function sentPageSuccess(originalRequest){
	//alert(originalRequest.responseText);
	eval("var response = ("+originalRequest.responseText+")");
	$('emailPage').update(response.displayCode);
	if (pageTracker!=null){
pageTracker._trackPageview(pagePath);
	}
	//alert(pagePath);

}
// end email page functions


function trackClick(str){
	if (pageTracker!=null){
pageTracker._trackPageview('/'+ str);
	}
}

function trackClickAndSendEmail(email, path){
	trackClick("/"+path);
	document.location.href = 'mailto:'+email;
}

// ----------------------------------------
// print page functions
function printPage(type, id){
	if (pageTracker!=null){
pageTracker._trackPageview('/print_action/' + type + '/' + id);
	}
	window.print();
	
}

// loads page of select box, as defined by "selectID"
function gotoSelectPage(selectID){
	var page= $F(selectID);
	document.location.href = page;
	return false;
}


var locStr = String(document.location);
var qsDefault = "ciudad, estado"; //"código postal, ciudad, o estado";

if (locStr.indexOf('/espanol/') == -1){
	var qsDefault = "Zip, City, or State";
}

function iniSearch(){
var d = qsDefault; 
	if (trim($F('loc')).toLowerCase() == d.toLowerCase()){
		//
		$('loc').value = "";
	
	}

}

function restoreSearch(){
	var d = qsDefault; 
	if (trim($F('loc')) == ''){
		//
		$('loc').value = d;
	
	}

}

function validateQS(f){
	
	// Zip, City, Or State
	if(trim($F('loc')).toLowerCase() == 	qsDefault.toLowerCase()){
		alert('Please enter a location.');
		return false;
	} else {
		var qsValArr = [];
		qsValArr.push("empty|loc|Please enter a Zipcode, City or State.");
		return validate(f, qsValArr);
	}
	
}

function validateQS_spanish(f){
	
	// Zip, City, Or State
	if(trim($F('loc')).toLowerCase() == 	qsDefault.toLowerCase()){
		alert('Por favor, introduzca una ubicación.');
		return false;
	} else {
		var qsValArr = [];
		qsValArr.push("empty|loc|Por favor, introduzca un código postal, ciudad o Estado.");
		return validate(f, qsValArr);
	}
	
}

function validateAndSendLead(formID){
	//alert ('go');
	var valLeadArr = [];
	valLeadArr.push('empty|lead_name|Please enter your name.');
	valLeadArr.push('email|lead_email|Please enter a valid email address.')
	valLeadArr.push('empty|lead_phone|Please enter your phone number.');
	valLeadArr.push('empty|lead_msg|Please enter a message.');
	//alert ('go2');
	if (validate(formID, valLeadArr)){
		// make
		//alert('all good');
		var requestOptions = {
			method : 'post',
			parameters : "name=" + $F('lead_name') +
			"&email=" + $F('lead_email') +
			"&phone=" + $F('lead_phone') +
			"&key=" + $F('lead_key') +
			"&msg=" + $F('lead_msg'),
			onComplete: displayLeadEmailResponse
		 };
	
		new Ajax.Request('/int/phpinc/sendLeadGenEmail.php', requestOptions);
		
	} else {
		//alert ('fail');	
		// track failure
	}
	return false;
}

function displayLeadEmailResponse(originalRequest){
	//alert (originalRequest.responseText);
	eval("var response = ("+originalRequest.responseText+")");
	//$('formContent').update(response.content);
	//$('formContent').update(response.content);
	//myLB.showBox();
	if (response.res == true){
		Element.hide('lead-form');
		Element.hide('lead-email-fail');
		Element.show('lead-email-success');	
		Element.hide('lead-xtra-info');
	} else {
		Element.hide('lead-form');
		Element.show('lead-email-fail');
		Element.hide('lead-email-success');	
		Element.hide('lead-xtra-info');
	}
	
	
	// 	
}
function leadGen_tryAgain(){
	Element.show('lead-form');
	Element.hide('lead-email-fail');
	Element.hide('lead-email-success');
	Element.show('lead-xtra-info');
}
function continueToFrom(url, from){
		if (pageTracker!=null){
pageTracker._trackPageview('/'+from+'/'+url);
		}
		removeAllModWindows()
		window.open(url);
	
}
function skipform(url, client){
	if (client==null){
		client = "undefined";
	}

	if (pageTracker!=null){
pageTracker._trackPageview('/leadGenSkip/'+url);
	}
	removeAllModWindows()
	window.open(url);
}
function removeAllModWindows(){
	lboxes = document.getElementsByClassName('lbox')
		lboxes.each(function(box){
				Element.hide(box)
			}
		)
		if ($('LB_overlay')){
			Element.remove('LB_overlay');
			}
			showAllAds();
			myLB = null;
}

function hideAllAds(){
	
var adsArr =  document.getElementsByClassName('ads');
	  adsArr.each(function(item) {
		  //Element.hide(item);
		  $(item).setStyle({
			  visibility: 'hidden'
			});
	});
	  
}

function showAllAds(){
	
var adsArr =  document.getElementsByClassName('ads');
	  adsArr.each(function(item) {
		  //Element.hide(item);
		  $(item).setStyle({
			  visibility: 'visible'
			});
	});
	 
}
function attachCSS(css){	
	var html = '<link href="'+css+'" media="screen" type="text/css" rel="stylesheet" />';
	new Insertion.Bottom(document.getElementsByTagName('head')[0], html);
}
function attachJS(jsFile){
	/*
	var html = '<script type="text/javascript" src="'+jsFile+'">//</script>';
	new Insertion.Bottom(document.getElementsByTagName('head')[0], html);
	*/
	
	var scriptNode = document.createElement('script');
	document.getElementsByTagName("head")[0].appendChild(scriptNode);
	scriptNode.language='javascript';
	scriptNode.src=jsFile; 
	

}
function iniModWinJS(){
	if (!window.initLB){
		attachJS('/int/js/lightbox.js');
	}	
}

function focusLeadGenField(el){
	// alert(el);
	$(el).addClassName("active");
	
}

function blurLeadGenField(el){
	$(el).removeClassName('active');
}
/*function hideSelectBoxes(){
	var selects = document.getElementsByTagName("select");
	selects.each(function(item) {
		  //Element.hide(item);
		  alert(item)
		  $(item).setStyle({
			  visibility: 'hidden'
			});
	});*/
	/*
	for(i = 0; i < selects.length; i++) {
   		 var th = (selects[i]);
		  $(th).setStyle({
			  visibility: 'hidden'
			});
	}
	
	return false;
	
}*/

function closeBookmarks(){
$('bookmarks-hidden').hide();
}
function showBookmarks(){
$('bookmarks-hidden').show();
}
function bookmark(type){

	var url = encodeURIComponent(document.location);
	//var title = encodeURIComponent(document.getElementsByTagName('title')[0].innerHTML);
	var title = encodeURIComponent(document.title);
	var pathname = window.location.pathname+window.location.search;
	var gotoUrl;
	var newWin = true;
	
	
	switch (type){
	
		case 'prop':
			gotoUrl =  "http://www.propeller.com/story/submit/?url="+url;
			break;	
		case 'delicious':
			gotoUrl =  "http://del.icio.us/post?url="+url+"&title="+title;
			break;
		case 'digg':
			gotoUrl =  "http://digg.com/submit?phase=2&url="+url+"&title="+title;
			break;
		case 'yahoo':
			gotoUrl = "http://myweb2.search.yahoo.com/myresults/bookmarklet?t="+title+"&u="+url;
			break;
		case 'furl':
			gotoUrl = "http://www.furl.net/storeIt.jsp?t="+title+"&u="+url;
			break;
		case 'yahooBookmarks':
			gotoUrl = "http://bookmarks.yahoo.com/toolbar/savebm?opener=tb&u="+url+"&t="+title;
			break;
		case 'reddit':
			gotoUrl = "http://reddit.com/submit?url="+url+"&title="+title;
			break;
		case 'google':	
			gotoUrl = "http://www.google.com/bookmarks/mark?op=add&bkmk="+url+"&title="+title;
			break;
		case 'ask' :
			gotoUrl = "http://myjeeves.ask.com/mysearch/BookmarkIt?v=1.2&t=webpages&url="+url+"&title="+title;
			break;
		case 'facebook' :
			gotoUrl = "http://www.facebook.com/sharer.php?u="+url+"&t="+title;
			break;
		case 'stumbleupon' :
			gotoUrl = "http://www.stumbleupon.com/submit?url="+url+"&title="+title;
			break;
		case 'live' :	
			gotoUrl = "https://favorites.live.com/quickadd.aspx?marklet=1&mkt=en-us&url="+url+"&title="+title;
			break;
		case 'techno':
			gotoUrl = "http://www.technorati.com/faves?add="+url;
			break;
		case 'fav':
			var url   = (document.location);
			var title = (document.title);
			
			if (window.sidebar){ 
				window.sidebar.addPanel(title, url, "");
			} else if(window.opera && window.print){ 
				var elem = document.createElement('a');
				elem.setAttribute('href',url);
				elem.setAttribute('title',title);
				elem.setAttribute('rel','sidebar');
				elem.click();
			} else if(document.all){
				window.external.AddFavorite(url, title);
			}
			
			 newWin = false; 
			
			break;
			
		}
	//alert('/bookmark/'+type+''+pathname);
    if (pageTracker!=null){
pageTracker._trackPageview('/bookmark/'+type+''+pathname);
		}
    
	if (newWin){
		myWin = window.open(gotoUrl,'bookmarkWin', 'location=1,height=550,width=700,scrollbars=1,status=1,toolbar=1,resizable=1,menubar=1,directories=1');
		myWin.focus();
	}
}



// =========================================

function ss (q, a){
	
		var requestOptions = {
			method : 'post',
			parameters : "action=setAnswer"+
			    "&course=" + $F('cid') +
				"&a=" + a +
				"&q=" + q, 
			
			onComplete: setAnswerComplete
		  };
		  
	new Ajax.Request('includes/ajaxActions.php', requestOptions);
	
}

// ========================================





// this fixes an issue with the old method, ambiguous values 
// with this test document.cookie.indexOf( name + "=" );
function Get_Cookie( check_name ) {
	// first we'll split this cookie up into name/value pairs
	// note: document.cookie only returns name=value, not the other components
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false; // set boolean t/f default f
	
	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		// now we'll split apart each name=value pair
		a_temp_cookie = a_all_cookies[i].split( '=' );
		
		
		// and trim left/right whitespace while we're at it
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');
	
		// if the extracted name matches passed check_name
		if ( cookie_name == check_name )
		{
			b_cookie_found = true;
			// we need to handle case where cookie has no value but exists (no = sign, that is):
			if ( a_temp_cookie.length > 1 )
			{
				cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			}
			// note that in cases where cookie is initialized but no value, null is returned
			return cookie_value;
			break;
		}
		a_temp_cookie = null;
		cookie_name = '';
	}
	if ( !b_cookie_found )
	{
		return null;
	}
}	



function Set_Cookie( name, value, expires, path, domain, secure ) 
{
// set time, it's in milliseconds
var today = new Date();
today.setTime( today.getTime() );

/*
if the expires variable is set, make the correct 
expires time, the current script below will set 
it for x number of days, to make it for hours, 
delete * 24, for minutes, delete * 60 * 24
*/
if ( expires )
{
expires = expires * 1000 * 60 * 60 * 24;
}
var expires_date = new Date( today.getTime() + (expires) );

document.cookie = name + "=" +escape( value ) +
( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) + 
( ( path ) ? ";path=" + path : "" ) + 
( ( domain ) ? ";domain=" + domain : "" ) +
( ( secure ) ? ";secure" : "" );
}
