$(document).ready( function() {
            $("#From_Zip_Code, #To_Zip_Code").Watermark("Enter Zip Code");
            $("#Move_Date").Watermark("00 / 00 / 0000");
});

var showed = new Array();
var timers = new Array();
function bindScroll(id) {
 showed[id] = false;
 timers[id] = false;
 
 $('#'+id).bind("mouseover", function() {clearTimeout(timers[id]); if (showed[id]==true) return; o=$('#'+id).position(); $('#'+id+'Div').css('left',o.left); $('#'+id+'Div').show(); showed[id]=true;});
 $('#'+id+'Div').bind("mouseover", function() {clearTimeout(timers[id]); if (showed[id]==true) return; o=$('#'+id).position(); $('#'+id+'Div').css('left',o.left); $('#'+id+'Div').show(); showed[id]=true;});
 $('#'+id).bind("mouseout", function() {showed[id]=false; timers[id]=setTimeout("if(!"+showed[id]+")$('#"+id+"Div').hide()",50);});
 $('#'+id+'Div').bind("mouseout", function() {showed[id]=false; timers[id]=setTimeout("if(!"+showed[id]+")$('#"+id+"Div').hide()",50);});
}

var zipWin;
function zipIt(zipcode, id) {
 $('#'+id).val(zipcode);
 if (zipcode!='')
  $('#'+id).removeClass('watermark');
 $('#bigdiv').hide();
}

function openZip(id, top) {
 document.getElementById('bigdiv').style.top = top+"px";
 document.getElementById('iframer').src = "zip.php?input="+id;
 $('#bigdiv').show('fast');
}

function SaveParams() {
  if (document.getElementById('zipcode').value=='') {
   alert('No zipcode was selected.');
   return false;
  }
  else {
   document.serviceNeeded.submit();
  }
}

function contactusOK() {
 if ($('#calc').size()) {
  i = $('#calc').text().substr(0, 5).replace("x","*");
  if (document.contactus.myproduct.value!=eval(i)) {
   alert('Please write the calculation result');
   document.contactus.product.focus();
   return false;
  }
 }
 if (document.contactus.name.value == '') {
  alert('Invalid name');
  return false;
 }
 /*if (document.contactus.phone.value == '') {
  alert('Invalid phone');
  return false;
 }*/
 if (!echeck(document.contactus.email.value))
  return false;
  
 if ($('#comment').size()) {
  if (document.contactus.comment.value == '') {
   alert('Please enter a comment');
   return false;
  }
 }
 
 return true;
}

function isValidZip(zip) {
 return (zip!='' && zip.length==5);
}

function SendMail() {
 $.Watermark.HideAll();

 if (isValidZip(document.getElementById('To_Zip_Code').value))
 if (isValidZip(document.getElementById('From_Zip_Code').value))
 {
       if (document.getElementById('From_Zip_Code').value != '')
       if (document.getElementById('To_Zip_Code').value != '')
       if (document.getElementById('Move_Date').value != '')
       if (document.getElementById('size').selectedIndex != 0)
       	{
              $('#almostDone').fadeIn();
              $.Watermark.ShowAll();
              return true;
        }
        $.Watermark.ShowAll();
        alert('Error! Required fields empty!');
        return false;
  }
  
  $.Watermark.ShowAll();
	alert('Error! Bad Zipcode!');
	return false;
}

function microSend() {
        if (document.getElementById('From_Zip_Code2').value != '')
        if (document.getElementById('To_Zip_Code2').value != '')
        if (document.getElementById('Move_Date2').value != '')
        if (document.getElementById('size2').selectedIndex != 0)
       	{
       document.microsend.submit();
      return true;
	}
	alert('Error! Required fields empty!');
	return false;
}

function SendMail2() {
$.Watermark.HideAll();
        if ((($('#name1').size()) &&
             (document.getElementById('name1').value != '') &&
             (document.getElementById('name2').value != ''))
             ||
            (document.getElementById('name').value != ''))
        if (document.getElementById('email').value != '')
        if (document.getElementById('phone1').value != '')
        if (document.getElementById('phone2').value != '')
        if (document.getElementById('phone3').value != '')
        if (document.getElementById('From_Zip_Code').value != '')
        if (document.getElementById('To_Zip_Code').value != '')
        if (document.getElementById('size').value != '')
        if (document.getElementById('Move_Date').value != '')
        if (document.getElementById('size').selectedIndex != 0)
       	{
    if (echeck(document.getElementById('email').value)) {
      document.quote.submit();
      $.Watermark.ShowAll();
      return true;
    } else {
     $.Watermark.ShowAll();
     document.getElementById('email').focus();
     return false;
    }
	}
	$.Watermark.ShowAll();
	alert('Error! Required fields empty!');
	return false;
}

/**
 * DHTML phone number validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */

// Declaring required variables
var digits = "0123456789";
// non-digit characters which are allowed in phone numbers
var phoneNumberDelimiters = "()- ";
// characters which are allowed in international phone numbers
// (a leading + is OK)
var validWorldPhoneChars = phoneNumberDelimiters + "+";
// Minimum no of digits in an international phone no.
var minDigitsInIPhoneNumber = 9;

function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}
function trim(s)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not a whitespace, append to returnString.
    for (i = 0; i < s.length; i++)
    {
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (c != " ") returnString += c;
    }
    return returnString;
}
function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function checkInternationalPhone(strPhone){
var bracket=3
strPhone=trim(strPhone)
if(strPhone.indexOf("+")>1) return false
if(strPhone.indexOf("-")!=-1)bracket=bracket+1
if(strPhone.indexOf("(")!=-1 && strPhone.indexOf("(")>bracket)return false
var brchr=strPhone.indexOf("(")
if(strPhone.indexOf("(")!=-1 && strPhone.charAt(brchr+2)!=")")return false
if(strPhone.indexOf("(")==-1 && strPhone.indexOf(")")!=-1)return false
s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}

function echeck(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   alert("Invalid E-mail Address")
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Invalid E-mail Address")
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Invalid E-mail Address")
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Invalid E-mail Address")
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Invalid E-mail Address")
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Invalid E-mail Address")
		    return false
		 }

		 if (str.indexOf(" ")!=-1){
		    alert("Invalid E-mail Address")
		    return false
		 }

 		 return true
	}

