
function checkForm(){
	var frm=eval('document.eCardForm');
	var bFormOk=true;
	var htmlMake = "<p>"

	if(!(validComplete(frm.card.value))){
		htmlMake += " Please select a card<br />"
		bFormOk=false;
	}

	if(!(validComplete(frm.name.value))){
		htmlMake += " Please enter your name<br />"
		bFormOk=false;
	}
	if(!(validEmail(frm.email.value))){
		htmlMake += " Please enter a valid e-mail address<br />"
		bFormOk=false;
	}
	if(!(validComplete(frm.friends_name.value))){
		htmlMake += " Please enter a friend's name<br />"; 
		bFormOk=false;
	}
	if(!(validEmail(frm.friends_email.value))){
		htmlMake += " Please enter a valid friends e-mail address<br />" 
		bFormOk=false;
	}
	if(!(validComplete(frm.your_message.value))){
		htmlMake += " Please enter a message"; 
		bFormOk=false;
	}
	if (!bFormOk){
		htmlMake +=  "</p><a href=\"javascript:removeBox('e_card_error');\"><img src=\"/images/ask_judge_close.gif\" alt=\"\" border=\"0\" id=\"error_message_close\" /></a>";
		document.getElementById('e_card_error_message').innerHTML = htmlMake
		var contentObject = document.getElementById('e_card_error');
		contentStyle            = contentObject.style;		
		//launchLightboxerror('e_card_error');
		contentStyle.visibility = 'hidden'; // while processing to avoid jumps
		contentStyle.position   = 'absolute';
		contentStyle.zIndex     = '999';
		contentStyle.display    = 'block';
		// Get the width and height of the content object
		var contentWidth        = contentObject.clientWidth   ? contentObject.clientWidth   : contentObject.offsetWidth;
		var contentHeight       = contentObject.clientHeight  ? contentObject.clientHeight  : contentObject.offsetHeight;
		var visibleHeight       = document.documentElement.clientHeight && visibleHeight < document.documentElement.clientHeight ?
								document.documentElement.clientHeight : visibleHeight;

		var contentText = document.getElementById('e_card_error_message');
		contentStyleText            = contentText.style;		
		// Center the content inside of the visible page area
		var marginTop           = visibleHeight >= contentHeight ?
								Math.round((visibleHeight - contentHeight) / 2) : 20;
		
		contentStyleText.top        = (marginTop + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop)) + 'px';
		
		// Re-adjust the lightbox height if the content element
		// has strecthed the page beyond it's original size
		var documentHeight      = getPageHeight();

		// Show the content after all the preparations are complete
		contentStyle.visibility = 'visible';  

	}
	return bFormOk;
}

function checkAskForm(){
	var frm=eval('document.askForm');
	var nameFormOk=true;
	var subjectFormOk=true;
	var messageFormOk=true;
	var agreeFormOk=true;
	var bFormOk=true;
	var htmlMake = "<p>"
	if ( Get_Cookie( 'admit' ) == 'no'){
		htmlMake = "<p> We're sorry but you do not meet the requirements necessary to participate in this site. <br /></p>";
		document.getElementById('ask_the_judge_required').innerHTML = htmlMake;
		document.getElementById('ask_the_judge_required').style.visibility = 'visible';		
		bFormOk=false;	
	}else{
		if(!(validComplete(frm.first_name.value)) || !(validComplete(frm.last_name.value))){
			nameFormOk=false;
		}
		if(!(validComplete(frm.subject.value))){
			subjectFormOk=false;
		}
		if(!(validComplete(frm.message.value))){
			messageFormOk=false;
		}
		if (frm.agree.checked == false){
			agreeFormOk=false;
		}
		
		if(!nameFormOk || !subjectFormOk || !messageFormOk || !agreeFormOk){
			htmlMake += " You are missing required fields<br />";
			bFormOk=false;	
		}
		
		if(!(validEmail(frm.email.value))){
			htmlMake += " Please enter a valid 'E-mail' address<br />";
			bFormOk=false;
		}	
		if(!(isDate(frm.birthday.value))){
			htmlMake += " Please enter a valid 'Birthday' as MM/DD/YYYY <br />";
			bFormOk=false;
		}else if(!(checkAge(frm.birthday.value))){
			htmlMake = "<p> We're sorry but you do not meet the requirements necessary to participate in this site. <br />";
			bFormOk=false;
		}
		if (!bFormOk){
			htmlMake +=  "</p>";
			document.getElementById('ask_the_judge_required').innerHTML = htmlMake;
			document.getElementById('ask_the_judge_required').style.visibility = 'visible';
		}
	}
	return bFormOk;
}


function removeBox(contentID) {

	var contentObject   = document.getElementById(contentID);
	if( contentObject ) {
	  contentStyle          = contentObject.style;
	  contentStyle.display  = 'none';
	  contentStyle.zIndex   = '0';
	} // ! hide content?
} // ! removeLightbox()

function showPreview() {

	var contentObject = document.getElementById('e_card_preview');
	contentStyle            = contentObject.style;		
	//launchLightboxerror('e_card_error');
	contentStyle.visibility = 'hidden'; // while processing to avoid jumps
	contentStyle.position   = 'absolute';
	contentStyle.zIndex     = '999';
	contentStyle.display    = 'block';
	// Get the width and height of the content object
	var contentWidth        = contentObject.clientWidth   ? contentObject.clientWidth   : contentObject.offsetWidth;
	var contentHeight       = contentObject.clientHeight  ? contentObject.clientHeight  : contentObject.offsetHeight;
	var visibleHeight       = document.documentElement.clientHeight && visibleHeight < document.documentElement.clientHeight ?
							document.documentElement.clientHeight : visibleHeight;

	var contentText = document.getElementById('e_card_preview_area');
	contentStyleText            = contentText.style;		
	// Center the content inside of the visible page area


	// Show the content after all the preparations are complete
	contentStyle.visibility = 'visible';  
}

function showTY() {

		var contentObject = document.getElementById('e_card_ty');
		contentStyle            = contentObject.style;		
		//launchLightboxerror('e_card_error');
		contentStyle.visibility = 'hidden'; // while processing to avoid jumps
		contentStyle.position   = 'absolute';
		contentStyle.zIndex     = '999';
		contentStyle.display    = 'block';
		// Get the width and height of the content object
		var contentWidth        = contentObject.clientWidth   ? contentObject.clientWidth   : contentObject.offsetWidth;
		var contentHeight       = contentObject.clientHeight  ? contentObject.clientHeight  : contentObject.offsetHeight;
		var visibleHeight       = document.documentElement.clientHeight && visibleHeight < document.documentElement.clientHeight ?
								document.documentElement.clientHeight : visibleHeight;

		var contentText = document.getElementById('e_card_ty_message');
		contentStyleText            = contentText.style;		
		// Center the content inside of the visible page area
		var marginTop           = visibleHeight >= contentHeight ?
								Math.round((visibleHeight - contentHeight) / 2) : 20;
		
		contentStyleText.top        = (marginTop + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop)) + 'px';
		
		// Re-adjust the lightbox height if the content element
		// has strecthed the page beyond it's original size
		var documentHeight      = getPageHeight();

		// Show the content after all the preparations are complete
		contentStyle.visibility = 'visible';  
}

function validEmail(str){
	//alert('validEmail()');
	var filter=/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if(filter.test(str)){
		return true;
	}else{
		return false;
	}
}

function validComplete(str){
	//alert('validComplete()');
	if(!(str=='')){
		return true;
	}else{
		return false;
	}
}

function validInteger(str){
	//alert('validComplete)');
	numval = parseInt(str,10);
	if(isNaN(numval)){
		return false;
	}else{
		return true;
	}
}
function checkCountry(){
	var country = document.getElementById('country').value;
	if (country == "USA"){
		document.getElementById('manga_news_letterY').disabled = false;
	}
	else {
		document.getElementById('manga_news_letterY').disabled = true;
	}
}

function changeCard(id,val) {

	thisForm = document.forms.eCardForm[id];
	loadingFlag = true;
	createObject(id +'_' + val,'/images/radio_on.gif');		

	if (thisForm.value != ''){
		createObject(id +'_'+ thisForm.value +'_off','/images/radio_off.gif');
	}
	loadingFlag = false;
	
	if (val != thisForm.value) {
		changeImage(null,id + val,id +'_' + val);
		if (thisForm.value != ''){
			changeImage(null,id + thisForm.value,id +'_'+ thisForm.value +'_off');
		}
		thisForm.value = val;
	}
}

function changeTopCard(id,val) {

	thisForm = document.forms.eCardForm[id];
	loadingFlag = true;
	createObject(id +'_' + val,'/images/radio_on.gif');		

	if (thisForm.value != ''){
		createObject(id +'_'+ thisForm.value +'_off','/images/radio_off.gif');
	}
	loadingFlag = false;
	
	if (val != thisForm.value) {
		changeImage(null,id + val,id +'_' + val);
		if (thisForm.value != ''){
			changeImage(null,id + thisForm.value,id +'_'+ thisForm.value +'_off');
		}
		thisForm.value = val;
	}
}

function setCard(id,val) {

	thisForm = document.forms.eCardForm[id];
	loadingFlag = true;
	createObject(id +'_' + val,'/images/radio_on.gif');		
	loadingFlag = false;
	changeImage(null,id + val,id +'_' + val);
}

function changeImage(layer,imgName,imgObj) {

	if (isW3C) {
		document.getElementById(imgName).src = eval(imgObj+'.src');
	} else {
		document.images[imgName].src = eval(imgObj+'.src');
	}
} 
		
function createObject(imgName,imgSrc) {
	if (loadingFlag) {
		eval(imgName + ' = new Image()');
		eval(imgName + '.src = "' + imgSrc + '"');
		return imgName;
	}
	return false;
}


function getHTTPObject(){
	if (window.ActiveXObject) 
		return new ActiveXObject("Microsoft.XMLHTTP");
	else if (window.XMLHttpRequest) 
		return new XMLHttpRequest();
	else {
		alert("Your browser does not support AJAX.");
	return null;
	}
}

function closeCall(contentID) {

  // Originally, he'd just done the line below  
  // window.location.href="legal_fun.php";

  // 2009-02-06
  document.getElementById(contentID).style.visibility = 'hidden';
  document.getElementById(contentID).style.zIndex     = '0';

  document.eCardForm.reset();

} // ! removeLightbox()

function isDate(str){
  var re = /^(\d{1,2})[\s\.\/-](\d{1,2})[\s\.\/-](\d{4})$/
  if (!re.test(str)) return false;
  var result = str.match(re);
  var m = Number(result[1]);
  var d = Number(result[2]);
  var y = Number(result[3]);

  if(m < 1 || m > 12 || y < 1900 || y > 2100) return false;
  if(m == 2){
          var days = ((y % 4) == 0) ? 29 : 28;
  }else if(m == 4 || m == 6 || m == 9 || m == 11){
          var days = 30;
  }else{
          var days = 31;
  }
  return (d >= 1 && d <= days);
}

function checkAge(str){
	
	var re = /^(\d{1,2})[\s\.\/-](\d{1,2})[\s\.\/-](\d{4})$/
	if (!re.test(str)) return false;
	var result = str.match(re);
	var m = Number(result[1]);
	var d = Number(result[2]);
	var y = Number(result[3]);	

	var age = guestAge(d, m, y);
	//passed validation

	if(age >= 13) {
		//dob = f.year.value + "-" + f.month.value + "-" + f.day.value;
		//Set_Cookie( 'admit', 'yes', 0, '/', '', '' );
	 }else{
	  //alert('Sorry, you must be 21 years of age to enter this site.'); 
		Set_Cookie( 'admit', 'no', 1, '/', '', '' );
    	return(false); 
	 }			
	
	return(true);		
}

// determine age
function guestAge(day,month,year) {
	var c = new Date(); // a new instance

	fixDate(c);

	var thisDay = c.getDate();
	var thisMonth = c.getMonth() + 1;
	var thisYear = c.getFullYear();

	var yearsold = thisYear - year; 
	var monthsold = 0;
	var daysold = 0;
	var age = '';

	if (thisMonth >= month) {
	  monthsold = thisMonth - month;
	}
	else {
	  yearsold--;
	  monthsold = thisMonth + 12 - month;
	}

	if (thisDay >= day) {
	 daysold = thisDay - day;
	}
	else {
		if (monthsold > 0) {
		  monthsold--;
		}
		else {
		  yearsold--;
		  monthsold += 11;
		}
		daysold = thisDay + 31 - day;
	}

	if (yearsold < 0) return '';

	if ((yearsold == 0) && (monthsold == 0) && (daysold == 0)) return '';

	if (yearsold > 0) {
		age = yearsold;
		if (yearsold > 1) age;
		age += ' ';
	}

	return age;
}

function fixDate(date) {
  var base = new Date(0);
  var skew = base.getTime();
  if (skew > 0) { date.setTime(date.getTime() - skew); }
}



function Set_Cookie( name, value, expires, path, domain, secure ) 
{
	// set time, it's in milliseconds
	var today = new Date();
	today.setTime( today.getTime() );
	
	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 function gets the cookie, if it exists
function Get_Cookie( name ) {

	var start = document.cookie.indexOf( name + "=" );
	var len = start + name.length + 1;
	if ( ( !start ) && ( name != document.cookie.substring( 0, name.length ) ) ){
		return null;
	}
	
	if ( start == -1 ) return null;
	
	var end = document.cookie.indexOf( ";", len );
	
	if ( end == -1 ) end = document.cookie.length;
	
	return unescape( document.cookie.substring( len, end ) );
}

// 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";
}

// this deletes the cookie when called
function checkAgeCookie() {
	if ( Get_Cookie( 'admit' ) == 'no'){
		htmlMake = "<p> We're sorry but you do not meet the requirements necessary to participate in this site. <br /></p>";
		document.getElementById('ask_the_judge_required').innerHTML = htmlMake;
		document.getElementById('ask_the_judge_required').style.visibility = 'visible';
	}
}

function server_time() 
{
	// set time, it's in milliseconds
	var today = new Date();
	today.setTime( today.getTime() );

	var expires_date = new Date( today.getTime() );
	alert(expires_date.toGMTString());
//expires = expires * 1000 * 60 * 60 * 24;
	
	//var expires_date = new Date( today.getTime() + (expires) );
	

}

