﻿//EUCLID TECHNOLOGY//
//euclidScripts.js//
//These functions are general for the entire website//
//3/30/09//


/*////////////////////// UITLITIES /////////////////////////////////////////*/

//displays debug message
//uses variable DEBUG (if DEBUG=true, display debug)
function debug(message){
	if(DEBUG){alert('DEBUG: \n\n'+message)};
}


//returns arbitrary parameter from the URL 
//example: URL = '../memberdll.dll/list?ismemberflg=Y&DOSEARCH=N&sort=LASTNAME
//getURLValue('DOSEARCH') -> N
function getURLValue(name){
	var finalValue = '';
	var URL = window.location + '';
	
	if(URL.match(name)){
		var tempSplitter = name+'=';
		var tempArr = URL.split(tempSplitter);
		var secondHalf = '';
		secondHalf = tempArr[1];

		
		//if parameters continue
		if(secondHalf.match('&')){
			var tempArr2 = secondHalf.split('&');
			finalValue = tempArr2[0];
		}else{
			finalValue = secondHalf;
		}
	}
	return finalValue;
}

function Set_Cookie( name, value, expires, path, domain, secure ) {
	//alert('setting cookie!');
	// 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" : "" );
}


// get cookie value by cookie name
function GetCookieValue(name)
{
	var allcookies = document.cookie;
	var value = "";
	var pos = allcookies.indexOf(name+"=");
	if (pos != -1) 
	{
		var start = pos + name.length+1;
		var end = allcookies.indexOf(";", start);
		if (end == -1) 
		{
			end = allcookies.length;
		}	
		value = allcookies.substring(start, end);
		value = unescape(value);			
	}
	return value;		
}




//prints current page
function printpage() {
	window.print();  
}

//mails current page link
function mailpage()
{
	mail_str = "mailto:?subject=Send to a friend -- " + document.title;
	mail_str += "&body= This is a link to an item on the RBA Website:" + "&nbsp;&nbsp;"+ location.href;
	location.href = mail_str;
}


// Prompt user before emptying shopping cart.
// NEILTAG 5/31/07
function emptyCartConfirmation() {
	var answer = confirm("Empty your cart?")
	if (answer){
		window.location = "ResetCart";
	}
}


//writes year dropdown from current year  -> (current year + addYears)
function selectYear(addYears){

	//alert('in selectYEars()');
	var d = new Date();
	var endYear = d.getFullYear();
	var currYear = d.getFullYear();
	var endYear = parseInt(endYear + addYears);
	
	document.write('<select name="expireyear">');
	document.write('<option value="">Choose...</option>');
	for(var i=currYear;i<=endYear;i++){
		document.write('<option value="'+i+'">'+i+'</option>');
	}
} 


//writes year options from startyear to endyear (must run from within select box)
//enter "NOW" for current year
// if startYear > endYear then go in descending order
//Jacob 4/16/09
function writeYear(startYear, endYear){
	var today = new Date();
	var writeString = '<option value=""></option>';
	//set start and end year
	if(startYear == 'NOW'){
		startYear = today.getFullYear();
	}
	
	if(endYear == 'NOW'){
		endYear = today.getFullYear();
	}
	
	if(startYear > endYear){
		for(var i=startYear; i>=endYear; i--){
			var yearThing = i+'';
			yearThing = yearThing.substring(2);
			writeString += '<option value="'+yearThing+'">'+i+'</option>';
		}
	}else{
		for(var i=startYear; i<= endYear; i++){
			var yearThing = i+'';
			yearThing = yearThing.substring(2);
			writeString += '<option value="'+yearThing+'">'+i+'</option>';
		}
	}
	document.write(writeString);
}
	
	
//default view for dates (MM/DD/YYYY)
Date.prototype.defaultView=function(){
	var dd=this.getDate();
	if(dd<10)dd='0'+dd;
		var mm=this.getMonth()+1;
	if(mm<10)mm='0'+mm;
		var yyyy=this.getFullYear();
		
	return String(mm+"\/"+dd+"\/"+yyyy);
}




/*///////////////////////// LOG IN FUNCTIONALITY /////////////////////////*/

//checks &REDIRECTURL= parameter in header and submits login 
function submitLogin(formName){
	//check for redirectURL
	var loc = window.location+'';
	//debug(loc);
	var temp = loc.split("REDIRECTURL=");
	var redirectURL = temp[1];
	//debug('redirecURL is: '+redirectURL);
	
	if((redirectURL != '') && (redirectURL != undefined)){
		formName.REDIRECTURL.value = redirectURL;
	}
	
	//alert('submitting!');
	formName.submit();
}

function displayLinks(){
	if(GetCookieValue('customercd') == ''){
		$('menu_loggedOut').show();
		$('menu_loggedIn').hide();
	}else{
		$('menu_loggedOut').hide();
		$('menu_loggedIn').show();
	}
}


//sets "Remember Me" flag
function setRemember(){
		//alert('in setRemember');
		if(document.loggedIn.rememberMe.checked){
				Set_Cookie('rememberMe','Y',999,'/','','');
		}else{
				Set_Cookie('rememberMe','N',999,'/','','');
		}
}

//gets value of rememberMe to set checkbox
function getRemember(){
		//alert('in getRemember');
		if(GetCookieValue('rememberMe')=='Y'){
				document.loggedIn.rememberMe.checked=true;
		}else{
			document.loggedIn.rememberMe.checked=false;
		}
}
				

//to check cookie and redirect to Path if user has already logged in
function ResetLogin(Path) 
{
	document.login.CUSTOMERCD.value = GetCookieValue("customercd");
	var remembered = GetCookieValue('rememberMe');
	if ((document.login.CUSTOMERCD.value != "") && (remembered == 'Y'))
	{
		location.href = Path;
	}
	document.login.WEBUSERID.focus();
}

//handles login / logoff
function showLogin(){
	var loginCD = GetCookieValue('customercd');

	if(loginCD == ''){
		
		//alert('logged out');
		document.getElementById("loginDiv").style.display='block';
		document.getElementById("myAccountDiv").style.display='none';
	}else {
		//alert('logged in');
		document.getElementById("loginDiv").style.display='none';
		document.getElementById("myAccountDiv").style.display='block';
	}
}


// set REDIRECTURL hidden field value
function SetRedirectURL() 
{
	var RedirectStr=""
  
	if (location.search) 
	{
		RedirectStr=location.search.substring(1,255);
	}		
	document.login.REDIRECTURL.value=RedirectStr;	
}

// on the pageload check page access and redirect to the login page if necessery 
function CheckPageAccess()
{
	
	var sPath = window.location.pathname;
	var sPage = sPath.substring(sPath.lastIndexOf("/") + 1);
	var doredirect = false;
	switch (sPage)
	{
		case "mbr_locator.shtml" : 
			doredirect = true;
			sPage = "../../"+sPage;
			break;
		case "awt_mainlogin_loggedon.shtml" :
			sPage = "../../"+sPage;
			doredirect = true;
			break;
		case "company_locator1.shtml" :
			sPage = "../../"+sPage;
			doredirect = true;
			break;	
	}
	if (doredirect)
	{
		var memberid = GetCookieValue("memberid");
		var ismember = GetCookieValue("ismember");
		if ((memberid == "") || (ismember!="Y")) 
		{	
			//location.href = "awt_mainlogin1.shtml?"+sPage;
			alert("You must logon to our Member's Only site");	
			location.href="https://www.awt.org/awt_mainlogin.shtml";
		}
	}
}

//to check cookie and redirect to Path if user has already logged in
function ResetLogin(Path) 
{
	document.login.CUSTOMERCD.value = GetCookieValue("memberid");
	if (document.login.CUSTOMERCD.value != "") 
	{
		location.href = Path;
	}
	document.login.WEBUSERID.focus();
}



/*///////// NOT SURE WHAT THESE DO //////////////////////////////*/




function RunLogin() 
{
	var RedirectStr=""
  
	if (location.search) 
	{
		RedirectStr=location.search.substring(1,255);
	}		
	document.login.REDIRECTURL.value=RedirectStr;
	document.login.submit()
}


