
function check_value(elm, text)
{
	if(elm.value == ''){
		elm.value = text;
	}
}
function clear_value(elm, text)
{
	if(elm.value == text){
		elm.value = '';
	}
}

function send_form_signup(){

	errorMsg = new Array();

	sendform = 1;

	deleteLayer('layer_signup_email');
	deleteLayer('layer_signup_cell_phone');


	if((! document.getElementById("signup_email").value ) || document.getElementById("signup_email").value == 'your email address'){
		errorMsg[errorMsg.length] = new Array('signup_email','Required',300,20,20,30);
	}
	else if(checkValidation(document.getElementById("signup_email").value)){
		errorMsg[errorMsg.length] = new Array('signup_email','Invalid',300,20,20,30);
	}

	if((! document.getElementById("signup_cell_phone").value ) || document.getElementById("signup_cell_phone").value == 'your cell phone'){
		errorMsg[errorMsg.length] = new Array('signup_cell_phone','Required',300,20,20,30);
	}

	if(errorMsg.length > 1){

		for(var i=0;i<errorMsg.length;i++){
			m = errorMsg[i];
			display_message2(m[0],m[1],m[2],m[3],m[4],m[5])
		}
	
		return false;
	}
	else{
		return true;
	}

}

function send_form_friend(){

	sendform = 1;

	deleteLayer('layer_friend_email_from');
	deleteLayer('layer_friend_email_to');

	if(checkValidation(document.getElementById("friend_email_from").value)){
		display_message2('friend_email_from','Invalid',300,20,20,30);
		sendform = 0;
	}
	if(checkValidation(document.getElementById("friend_email_to").value)){
		display_message2('friend_email_to','Invalid',300,20,20,30);
		sendform = 0;
	}
	if((! document.getElementById("friend_email_to").value ) || document.getElementById("friend_email_to").value == 'your friend\'s email'){
		display_message2('friend_email_to','Required',300,20,20,30);
		sendform = 0;
	}
	if((! document.getElementById("friend_email_from").value ) || document.getElementById("friend_email_from").value == 'your email address'){
		display_message2('friend_email_from','Required',300,20,20,30);
		sendform = 0;
	}


	if(sendform){
		return true;
	}
	else{

		return false;
	}

}

function display_message2(id, msg, width, height, new_x, new_y){
	var custom_layer = 'layer_' + id;
	deleteLayer(custom_layer);
	posx = findPosX(document.getElementById(id)) + new_x;
	posy = findPosY(document.getElementById(id)) + new_y;
	makeLayer(custom_layer,'<font style="color:#7f7f7f; font-family: Arial, helvetica, sans-serif; font-size:16px;">'+msg+'</font>', posx, posy, width, height, 1, 3);
}

function display_message(id, msg, width, height, new_x, new_y){
	var custom_layer = 'layer_' + id;
	deleteLayer(custom_layer);
	posx = findPosX(document.getElementById(id)) + new_x;
	posy = findPosY(document.getElementById(id)) + new_y;
	makeLayer(custom_layer,'<font style="color:#FFFFFF; font-family: Arial, helvetica, sans-serif; font-size:16px;">'+msg+'</font>', posx, posy, width, height, 1, 3);
}

function findPosX(obj)
{
  var curleft = 0;
  if(obj.offsetParent)
      while(1)
      {
        curleft += obj.offsetLeft;
        if(!obj.offsetParent)
          break;
        obj = obj.offsetParent;
      }
  else if(obj.x)
      curleft += obj.x;
  return curleft;
}

function findPosY(obj)
{
  var curtop = 0;
  if(obj.offsetParent)
      while(1)
      {
        curtop += obj.offsetTop;
        if(!obj.offsetParent)
          break;
        obj = obj.offsetParent;
      }
  else if(obj.y)
      curtop += obj.y;
  return curtop;
}

function makeLayer(id,str,L,T,W,H,visible,zIndex) {
 if (document.getElementById) {
  if (document.getElementById(id)) {
   alert ('Layer with this ID already exists!')
   return;
  }

  var ST= 'position:absolute;text-align:left;color:#FFFFFF'
  +'; left:'+L+'px'
  +'; top:'+T+'px'
  +'; width:'+W+'px'
  +'; height:'+H+'px'
  +'; visibility:'+(null==visible || 1==visible ? 'visible':'hidden')
  +(null==zIndex  ? '' : '; z-index:'+zIndex);

  var LR= '<DIV id='+id+' style="'+ST+'">'+str+'</DIV>';

  if (document.body) {
   if (document.body.insertAdjacentHTML) document.body.insertAdjacentHTML("BeforeEnd",LR);
   else if (document.createElement && document.body.appendChild) {
    var newNode = document.createElement('div');
	newNode.innerHTML = str;
    newNode.setAttribute('id',id);
    newNode.setAttribute('style',ST);
    document.body.appendChild(newNode);
   }
  }
 }
 // OBSOLETE CODE - NETSCAPE 4
 else if (document.layers) {
  if (document.layers[id]) {
   alert ('Layer with this ID already exists!')
   return
  }
  var LR=document.layers[id]=new Layer(W)
  LR.name= id
  LR.left= L
  LR.top = T
  LR.clip.height=H
  LR.visibility=(null==visible || 1==visible ? 'show' : 'hide')
  if(null!=zIndex)  LR.zIndex=zIndex
  if(null!=bgColor) LR.bgColor=bgColor
 }
}


function deleteLayer(id) {
 if (document.getElementById && document.getElementById(id)) {
  var theNode = document.getElementById(id);
  theNode.parentNode.removeChild(theNode);
 }
 else if (document.all && document.all[id]) {
  document.all[id].innerHTML='';
  document.all[id].outerHTML='';
 }
 // OBSOLETE CODE FOR NETSCAPE 4
 else if (document.layers && document.layers[id]) {
  document.layers[id].visibility='hide';
  delete document.layers[id];
 }
}

function checkValidation(email_txt) {

     var message;

    if (stringEmpty(email_txt)) {
        message = "Error! There is no input value entered.";

    } else if (noAtSign( email_txt )) {
        message = "Error! The address \"" + email_txt + "\" does not contain an '@' character.";

    } else if (nothingBeforeAt(email_txt)) {
        message = "Error! The address \"" + email_txt;
        message += "\" must contain at least one character before the '@' character";

    } else if (noLeftBracket(email_txt)) {
        message = "Error! The address \"" + email_txt;
        message += "\" contains a right square bracket ']',\nbut no corresponding left square bracket '['.";

    } else if (noRightBracket(email_txt)) {
        message = "Error! The address \"" + email_txt;
        message += "\" contains a left square bracket '[',\nbut no corresponding right square bracket ']'.";
        alert( message);
    } else if (noValidPeriod(email_txt)) {
        message = "Error! The address \"" + email_txt + "\" must contain a period ('.') character.";

    } else if (noValidSuffix(email_txt)) {
        message = "Error! The address \"" + email_txt;
        message += "\" must contain a two, three or four character suffix.";

    }

    return (message ? 1 : 0 );
}

function checkValid (formField) {
    if ( checkValidation ( formField ) == true ) {
        alert ( 'E-Mail Address Validates OK' );
    }

    return ( false );
}

function stringEmpty (formField) {
    if ( formField.length < 1 ) {
        return ( true );
    } else {
        return ( false );
    }
}

function noAtSign (formField) {
    if (formField.indexOf ('@', 0) == -1) {
        return ( true )
    } else {
        return ( false );
    }
}

function nothingBeforeAt (formField) {
    if ( formField.indexOf ( '@', 0 ) < 1 ) {
        return ( true )
    } else {
        return ( false );
    }
}

function noLeftBracket (formField) {
    if ( formField.indexOf ( '[', 0 ) == -1 && formField.charAt (formField.length - 1) == ']') {
        return ( true )
    } else {
        return ( false );
    }
}

function noRightBracket (formField) {
    if (formField.indexOf ( '[', 0 ) > -1 && formField.charAt (formField.length - 1) != ']') {
        return ( true );
    } else {
        return ( false );
    }
}

function noValidPeriod (formField) {
    if (formField.indexOf ( '@', 0 ) > 1 && formField.charAt (formField.length - 1 ) == ']')
        return ( false );

    if (formField.indexOf ( '.', 0 ) == -1)
        return ( true );

    return ( false );
}

function noValidSuffix(formField) {
    if (formField.indexOf('@', 0) > 1 && formField.charAt(formField.length - 1) == ']') {
        return ( false );
    }

    var len = formField.length;
    var pos = formField.lastIndexOf ( '.', len - 1 ) + 1;
    if ( ( len - pos ) < 2 || ( len - pos ) > 4 ) {
        return ( true );
    } else {
        return ( false );
    }
}

