//**** Abacus
//**** Andjelkovic Aleksandar
//**** 22.04.2008
//**** Extentending the validation object

jQuery.validator.addMethod("autonomyUrl", 
    function(value, element, params) { 
         var expr=/[|\/]/;   
         return !expr.test(value);
    });


jQuery.validator.addMethod("hasHtml", 
    function(value, element, params) { 
         var htmlFilter=/<(.|\n)+?>/;   
         return !htmlFilter.test(value);
    });
    
    
jQuery.validator.addMethod("postcode", 
    function(value, element, params) { 
         test = value        
                size = test.length
         test = test.toUpperCase(); //Change to uppercase
         while (test.slice(0,1) == " ") //Strip leading spaces
          {test = test.substr(1,size-1);size = test.length
          }
         while(test.slice(size-1,size)== " ") //Strip trailing spaces
          {test = test.substr(0,size-1);size = test.length
          }
         
         if (size < 6 || size > 8){ //Code length rule


          return this.optional(element) || false;
          }
         if (!(isNaN(test.charAt(0)))){ //leftmost character must be alpha character rule


           return this.optional(element) || false;
          }
         if (isNaN(test.charAt(size-3))){ //first character of inward code must be numeric rule


           return this.optional(element) || false;
          }
         if (!(isNaN(test.charAt(size-2)))){ //second character of inward code must be alpha rule
       
           return this.optional(element) || false;
          }
         if (!(isNaN(test.charAt(size-1)))){ //third character of inward code must be alpha rule

           return this.optional(element) || false;
          }
          //Commented out code - we do not care about the space.
//         if (!(test.charAt(size-4) == " ")){//space in position length-3 rule
//          
//           return this.optional(element) || false;
//           }
//         count1 = test.indexOf(" ");count2 = test.lastIndexOf(" ");
//         if (count1 != count2){//only one space rule
//           return this.optional(element) || false;
//          }
        return this.optional(element) || true;
    }, "Please specify the correct domain for your documents");    
    
    
   //This method should be used to validate emails!
  jQuery.validator.addMethod("validEmail", function (value, element, params) {
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;   
   if(reg.test(value) == false) 
   {      
      return this.optional(element) || false;
   }
   
   });


