/* validateForm.js
 *  giftcard validation
 */
function PopUpGiftCard(url) {
   var a = url.split(" & ");
   url = a.join(escape(" & "));
   //alert(url);
  
   popup = window.open(url,"popup","toolbar,status,resizable,scrollbars,width=500,height=600,top=40,left=40");
   popup.focus();
   self.name = "NewWindow";

}


/* validateForm.js
 *  giftcard validation
 */

function return_parent(URL) {   
    
    var a = URL.split(" & ");
    URL = a.join(escape(" & "));
   
    window.opener.location.href = URL;   
    window.close();
}       
 
/* validateForm.js
 *  giftcard validation
 */
function validate_giftcard(form) {   
   
   if ( ! validCardNumber(form.giftCardNumber1) )
      return false
   if ( ! validCardPIN(form.giftCardPin1) )
      return false            
   return true
}//function validate_giftcard

/* validateForm.js
 *  giftcard validation
 */
function validate_redeemgiftcard(form) {   
   
   if ( ! validCardNumber(form.giftCardNumber1) )
      return false
   if ( ! validCardPIN(form.giftCardPin1) )
      return false
   if(form.giftCardNumber2.value.length != 0 || form.giftCardPin2.value.length != 0) {
       if ( ! validCardNumber(form.giftCardNumber2) )
           return false
       if ( ! validCardPIN(form.giftCardPin2) )
           return false                     
   return true
   }
   
}//function validate_redeemgiftcard

/* validateForm.js
 *  giftcard validation
 */
function validate_redeemgiftcardverify(form) { 
  
   if ( ! validCardAmount(form.giftCardAmount1, form.giftCardAmount1Value) )
      return false
   if(document.forms[0]["giftCardAmount2"] !=undefined) {
      if ( ! validCardAmount(form.giftCardAmount2, form.giftCardAmount2Value) )
      return false      
   }
   
   return true
}//function validate_redeemgiftcardverify


/* validateForm.js
 *  giftcard validation
 */
function validCardAmount(Ctrl, Ctrl2) {
        
   var message = "Please enter the correct Gift Card amount (numeric characters only).";   
   var zeroMessage = "The amount you wish to apply to your purchase is not valid.\n" + 
                     "Please re-enter an amount that is more than $0.00, up to \n" +
                     "the total balance available on your Gift Card(s)."
                     
   var limitMessage = "The amount you wish to apply to your purchase \n" + 
                     "exceeds the amount available on your Gift Card. \n" +
                     "Please re-enter the amount."   
     
   v1 = parseFloat(Ctrl.value);
   v2 = parseFloat(Ctrl2.value);   
   
   if(Ctrl.value.length == "0"){
      alert(message)
      Ctrl.focus()
      return false
   } else if(numericCheckAmount(Ctrl)== false){
      alert(message)
      Ctrl.focus()
      return false
   }
   else if(v1 <= 0)  {
      alert(zeroMessage)
      Ctrl.focus()
      return false   
   }
   else if(!(v1 <= v2))  {
      alert(limitMessage)
      Ctrl.focus()
      return false
   
   }   
   else
   return true;
} //validCardAmount


/* validateForm.js
 *  giftcard validation
 */
function validCardNumber(Ctrl) {
   
   var message = "Please supply the missing Gift Card Number and/or PIN."
   
   if (Ctrl.value.length == 0) {
      alert(message)
      Ctrl.focus()
      return false
   } else if (Ctrl.value.length != 11) {
      alert("Please enter the Gift Card number.")
      Ctrl.focus()
      return false
   } else if (numericCheckCardNumber(Ctrl)== false) {
      alert("Please enter the Gift Card number.")
      Ctrl.focus()
      return false
   } else
   return true
} //function validCardNumber

/* validateForm.js
 *  giftcard validation
 */
function validCardPIN(Ctrl) {

    var message = "Please supply the missing Gift Card Number and/or PIN."
    
   if (Ctrl.value.length == 0) {
      alert(message)
      Ctrl.focus()
      return false
   } else if (numericCheckPin(Ctrl)== false) {
      alert("Please enter the PIN.")
      Ctrl.focus()
      return false
   } else if (Ctrl.value.length != 7){
      alert("Please enter the PIN.")
      Ctrl.focus()
      return false 
   }
   else if (dashCheck(Ctrl)== false) {
      alert("Please enter the PIN.")
      Ctrl.focus()
      return false
   }
   else
   return true
} //function validGiftCardPIN


/* validateForm.js
 *  giftcard validation
 */
function dashCheck(Ctrl) {
   nr1=Ctrl.value;
   dashCheck = false; 
   for (var i=0;i<nr1.length;i++) {
          
       if (nr1.charAt(i) == '-'){
          dashCheck = true;   
       }       
   }

   return dashCheck 
}//function dashCheck

/* validateForm.js
 *  giftcard validation
 */
function numericCheckPin(Ctrl) {
   nr1=Ctrl.value;   
   for (var i=0;i<nr1.length;i++) {
      cmp="0123456789-";
      tst=nr1.substring(i,i+1);
       if (cmp.indexOf(tst)<0){           
          return(false);  
       }
   }
   return true 
}//function numericCheckPin

/* validateForm.js
 *  giftcard validation
 */
function numericCheckCardNumber(Ctrl) {
   nr1=Ctrl.value;   
   for (var i=0;i<nr1.length;i++) {
      cmp="0123456789";
      tst=nr1.substring(i,i+1);
       if (cmp.indexOf(tst)<0){           
          return(false);  
       }
   }
   return true 
}//function numericCheckCardNumber


/* validateForm.js
 *  giftcard validation
 */
function numericCheckAmount(Ctrl) {
   nr1=Ctrl.value;   
   for (var i=0;i<nr1.length;i++) {
      cmp="0123456789.-";
      tst=nr1.substring(i,i+1);
       if (cmp.indexOf(tst)<0){           
          return(false);  
       }
   }
   return true 
}//function numericCheckAmount

/* validateForm.js
 *  giftcard validation
 */
function trim(s) {
   var i = 0;
   var no_of_spaces = 0;
   var len=s.length;
   for (i=0;i<len;++i) {
      if(s.charAt(i) == " ") {
         no_of_spaces = no_of_spaces + 1;
      } else {
         break;
      }
   }
   if (no_of_spaces > 0) {
      s = s.substring(no_of_spaces);
   }
   no_of_spaces = 0;
   len = s.length;
   for (i=len-1;i>0;--i) {
      if(s.charAt(i) == " ") {
         no_of_spaces = no_of_spaces + 1;
      } else {
         break;
      }
   }
   if (no_of_spaces > 0) {
      s = s.substring(0, len-no_of_spaces);
   }
   return(s);
} //function trim

/* validateForm.js
 *  giftcard validation
 */
var timeoutRef;  //the interval reference
seconds = 45;  //the number of elapsed seconds
delay = 1000; //1000 milliseconds is 1 second

var isSubmitting = false;

function disableSubmitting(){
      isSubmitting = true;
      timeoutRef = setTimeout("enableSubmitting()", delay * seconds);
}

function enableSubmitting(){
      clearInterval( timeoutRef );
      isSubmitting = false;
}

function chill(){
        alert("Your request is being processed.  Please wait.");
        return false;
}


/***********************************************************************************************************/




/* validateForm.js
 *  giftcard validation
 */
function checkForm(Ctrl){

   var formElement= Ctrl;
   var formType = formElement.type;
   if(formType == 'textarea' || formType =='text'){
      var formElementsValue= formElement.value;
      if(formElementsValue){
         charValue = formElementsValue.search(/\</);
         charValue += formElementsValue.search(/\>/);
         charValue += formElementsValue.search(/\;/);
         charValue += formElementsValue.search(/\%/);
         charValue += formElementsValue.search(/\(/);
         charValue += formElementsValue.search(/\)/);
         charValue += formElementsValue.search(/\+/);
         charValue += formElementsValue.search(/\&/);
         charValue += formElementsValue.search(/\?/);
         charValue += formElementsValue.search("\'");
         charValue += formElementsValue.search('\"');
         charValue += formElementsValue.search(/\,/);
         charValue += formElementsValue.search(/\:/);
         charValue += formElementsValue.search(/\|/);
         charValue += formElementsValue.search(/\}/);
         charValue += formElementsValue.search(/\{/);
         charValue += formElementsValue.search(/\]/);
         charValue += formElementsValue.search(/\[/);
         charValue += formElementsValue.search(/\=/);
         charValue += formElementsValue.search(/\-/);
         charValue += formElementsValue.search(/\_/);
         charValue += formElementsValue.search(/\*/);
         charValue += formElementsValue.search(/\^/);
         charValue += formElementsValue.search(/\#/);
         charValue += formElementsValue.search(/\$/);
         charValue += formElementsValue.search(/\@/);
         charValue += formElementsValue.search(/\!/);
         charValue += formElementsValue.search(/\\/);
         charValue += formElementsValue.search(/\~/);
         charValue += formElementsValue.search(/\`/);
         charValue += formElementsValue.search("/");
                    
         if(charValue >-31){
            {return false;}
         }//end if
      }//end if
   }//end if
}//function checkForm

/* validateForm.js
 *  giftcard validation
 */
function checkForm2(Ctrl){

   var formElement= Ctrl;
   var formType = formElement.type;
   if(formType == 'textarea' || formType =='text'){
      var formElementsValue= formElement.value;
      if(formElementsValue){         
         charValue = formElementsValue.search(/\</);
         charValue += formElementsValue.search(/\>/);
         charValue += formElementsValue.search(/\;/);
         charValue += formElementsValue.search(/\%/);
         charValue += formElementsValue.search(/\(/);
         charValue += formElementsValue.search(/\)/);
         charValue += formElementsValue.search(/\+/);
         charValue += formElementsValue.search(/\&/);
         charValue += formElementsValue.search(/\?/);       
         charValue += formElementsValue.search('\"');     
         charValue += formElementsValue.search(/\:/);
         charValue += formElementsValue.search(/\|/);
         charValue += formElementsValue.search(/\}/);
         charValue += formElementsValue.search(/\{/);
         charValue += formElementsValue.search(/\]/);
         charValue += formElementsValue.search(/\[/);
         charValue += formElementsValue.search(/\=/);
         charValue += formElementsValue.search(/\_/);
         charValue += formElementsValue.search(/\*/);
         charValue += formElementsValue.search(/\^/);       
         charValue += formElementsValue.search(/\$/);
         charValue += formElementsValue.search(/\@/);
         charValue += formElementsValue.search(/\!/);
         charValue += formElementsValue.search(/\\/);
         charValue += formElementsValue.search(/\~/);
         charValue += formElementsValue.search(/\`/);
         charValue += formElementsValue.search("/");
                    
         if(charValue >-27){
            {return false;}
         }//end if
      }//end if
   }//end if
}//function checkForm2

/* validateForm.js
 *  giftcard validation
 */
function checkForm3(Ctrl){

   var formElement= Ctrl;
   var formType = formElement.type;
   if(formType == 'textarea' || formType =='text'){
      var formElementsValue= formElement.value;
      if(formElementsValue){
         charValue = formElementsValue.search(/\</);
         charValue += formElementsValue.search(/\>/);
         charValue += formElementsValue.search(/\;/);
         charValue += formElementsValue.search(/\%/);
         charValue += formElementsValue.search(/\(/);
         charValue += formElementsValue.search(/\)/);
         charValue += formElementsValue.search(/\+/);
         charValue += formElementsValue.search(/\&/);
         charValue += formElementsValue.search(/\?/);
         charValue += formElementsValue.search("\'");
         charValue += formElementsValue.search('\"');
         charValue += formElementsValue.search(/\,/);
         charValue += formElementsValue.search(/\:/);
         charValue += formElementsValue.search(/\|/);
         charValue += formElementsValue.search(/\}/);
         charValue += formElementsValue.search(/\{/);
         charValue += formElementsValue.search(/\]/);
         charValue += formElementsValue.search(/\[/);
         charValue += formElementsValue.search(/\=/);        
         charValue += formElementsValue.search(/\*/);
         charValue += formElementsValue.search(/\^/);
         charValue += formElementsValue.search(/\#/);
         charValue += formElementsValue.search(/\$/);        
         charValue += formElementsValue.search(/\!/);
         charValue += formElementsValue.search(/\\/);
         charValue += formElementsValue.search(/\~/);
         charValue += formElementsValue.search(/\`/);
         charValue += formElementsValue.search("/");
                    
         if(charValue >-28){
            {return false;}
         }//end if
      }//end if
   }//end if
}//function checkForm3

/* validateForm.js
 *  giftcard validation
 */
function next_focus(formName, elementName, elementLength, nextElement) {
   if(document.forms[formName].elements[elementName].value.length == elementLength)
      document.forms[formName].elements[nextElement].focus()
   return true
}//function next_focus

/* validateForm.js
 *  giftcard validation
 */
var isNN = (navigator.appName.indexOf("Netscape")!=-1);
if(isNN)
   document.captureEvents(Event.KEYPRESS);
   function autoTab(input,len, e) {
      var keyCode = (isNN)?e.which:e.keyCode;
      var filter = (isNN)?[0,8,9]:[0,8,9,16,17,18,37,38,39,40,46];
      if(input.value.length >= len && !containsElement(filter,keyCode)) {
         input.value = input.value.slice(0,len);
         input.form[(getIndex(input)+1)%input.form.length].focus();
   }
   function containsElement(arr, ele) {
      var found = false, index = 0;
      while(!found && index < arr.length)
         if(arr[index]==ele)
            found = true;
         else
           index++;
      return found;
   }
   function getIndex(input) {
      var index = -1, i = 0, found = false;
      while (i < input.form.length && index==-1)
         if (input.form[i] == input)index = i;
         else i++;
      return index;
   }
   return true;
}//function autoTab

