// 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" : "" );
}

// this deletes the cookie when called
function Delete_Cookie( name, path, domain ) {
if ( Get_Cookie( name ) ) document.cookie = name + "=" +
( ( path ) ? ";path=" + path : "") +
( ( domain ) ? ";domain=" + domain : "" ) +
";expires=Thu, 01-Jan-1970 00:00:01 GMT";
}



function isOfLegalAge(mm,dd,yyyy) {
   var d = new Date(mm + "/" + dd + "/" + yyyy);
   var t = new Date();
  
   var diffYears = t.getFullYear() - d.getFullYear();
   var diffMonths = t.getMonth() - d.getMonth();
   var diffDays = t.getDate() - d.getDate();

   diff  = new Date();
   diff.setTime(Math.abs(t.getTime() - d.getTime()));
   var timediff = Math.abs(t.getTime() - d.getTime());
   var leap = Math.floor((timediff / (1000 * 60 * 60 * 24 * 365))/4);
   if (t.getFullYear() == '2004' || t.getFullYear() == '2008' || t.getFullYear() == '2012' || t.getFullYear() == '2016' || t.getFullYear() == '2020'|| t.getFullYear() == '2024'|| t.getFullYear() == '2028' || t.getFullYear() == '2032' || t.getFullYear() == '2036'|| t.getFullYear() == '2040'|| t.getFullYear() == '2044'|| t.getFullYear() == '2048'|| t.getFullYear() == '2052'){
  		leap = leap + 1;
   }
  
  
   var daysx = Math.floor(timediff / (1000 * 60 * 60 * 24)) - leap;
   var yearsx = Math.floor(daysx/365);
   if (yearsx > 20){
   return true;
   }else{
   return false;
   }
   //return diffYears > 21 ? true : diffYears > 20 && diffMonths > -1 && diffDays > -1;
}

function validateForm(f) {
   var errormsg = "";
   var focusfield;
     
   
   if(!isOfLegalAge(f.month.options[f.month.selectedIndex].value,f.day.options[f.day.selectedIndex].value,f.year.options[f.year.selectedIndex].value)) 
   {
      errormsg += "* You must be at least 21 years of age\n";
      alert(errormsg);
   }
  
   if(errormsg != "") {
	window.location="http://www.centurycouncil.org/";
      if(focusfield) eval('f.' + focusfield + '.focus()');
      return false;
   }
   else {
	Set_Cookie( 'LegalAgeVerif', '1', '', '/', '', '' );
	if (Get_Cookie('old_ref') != null) {
		document.forms[0].action = Get_Cookie('old_ref').substr(Get_Cookie('old_ref').indexOf('/'));
		Delete_Cookie('old_ref', '/', '');
	} else {
		document.forms[0].action = homePage;
	}
      return true;
   }
}

function checkJavaScriptValidity() 

{
//If this function can be run we know js is enabled on the browser so no additional checks are needed
Set_Cookie( 'test', 'none', '', '/', '', '' );
// if Get_Cookie succeeds, cookies are enabled, since
//the cookie was successfully created.
if ( Get_Cookie( 'test' ) )
{
	// and these are the parameters for Delete_Cookie:
	// name, path, domain
	// make sure you use the same parameters in Set and Delete Cookie.
	Delete_Cookie('test', '/', '');
}
// if the Get_Cookie test fails, cookies
//are not enabled for this session.
else
{
	document.getElementById("cookieDisabled").style.visibility = 'visible';
	cookie_set = false;
	return;
}

document.getElementById("jsEnabled").style.visibility = 'visible';
document.getElementById("submitbutton").style.visibility = 'visible';

}

