<!--
  function upperDigitKeys(event)	{ // A-Z 0-9
    var keyCode=(event.keyCode)?event.keyCode:event.which;
    
    if((keyCode>=48) && (keyCode<=57))
      return;
    if((keyCode>=65) && (keyCode<=90))
      return;
    if((keyCode>=97) && (keyCode<=122)) {
      if(event.keyCode)
        event.keyCode-=32;
      else {
        var new_event=document.createEvent("KeyEvents");
        new_event.initKeyEvent("keypress",false,true,document.defaultView,false,false,false,false,0,event.which-32);
        event.preventDefault();
        event.target.dispatchEvent(new_event);
      }
      return;
    }
    if((keyCode==8) || (keyCode==13))
      return;
    
    if(event.keyCode)
      event.returnValue=false;
    else
      event.preventDefault();
  } // End of upperDigitKeys() function

  function alphaDigitKeys(event)	{ // A-Z a-z 0-9
    var keyCode=(event.keyCode)?event.keyCode:event.which;
    
    if((keyCode>=48) && (keyCode<=57))
      return;
    if((keyCode>=65) && (keyCode<=90))
      return;
    if((keyCode>=97) && (keyCode<=122))
      return;
    if((keyCode==8) || (keyCode==10) (keyCode==13))
      return;
    
    if(event.keyCode)
      event.returnValue=false;
    else
      event.preventDefault();
  } // End of alphaDigitKeys() function

  function digitKeys(event) { // 0-9
    var keyCode=(event.keyCode)?event.keyCode:event.which;
    
    if((keyCode>=48) && (keyCode<=57))
      return;
    if((keyCode==8) || (keyCode==10) || (keyCode==13))
      return;
    
    if(event.keyCode)
      event.returnValue=false;
    else
      event.preventDefault();
  } // End of digitKeys() function

  function floatKeys(event) { // 0-9 ,
    var keyCode=(event.keyCode)?event.keyCode:event.which;
    
    if(keyCode>=48 && keyCode<=57)
      return;
    if(keyCode==46 || keyCode==44) {
      if(event.keyCode)
        event.keyCode=46;
      else {
        var new_event=document.createEvent("KeyEvents");
        new_event.initKeyEvent("keypress",false,true,document.defaultView,false,false,false,false,0,46);
        event.preventDefault();
        event.target.dispatchEvent(new_event);
      }
      return;
    }
    
    if(event.keyCode)
      event.returnValue=false;
    else
      event.preventDefault();
  } // End of floatKeys() function

  function upperKeys(event) { // A-Z
    var keyCode=(event.keyCode)?event.keyCode:event.which;
    
    if((keyCode>=65) && (keyCode<=90))
      return;
    if((keyCode>=97) && (keyCode<=122)) {
      if(event.keyCode)
        event.keyCode-=32;
      else {
        var new_event=document.createEvent("KeyEvents");
        new_event.initKeyEvent("keypress",false,true,document.defaultView,false,false,false,false,0,event.which-32);
        event.preventDefault();
        event.target.dispatchEvent(new_event);
      }
      return;
    }
    if((keyCode==8) || (keyCode==13))
      return;

    if(event.keyCode)
      event.returnValue=false;
    else
      event.preventDefault();
  } // End of upperKeys() function

  function dateKeys(event) { // 0-9 /
    var keyCode=(event.keyCode)?event.keyCode:event.which;
    
    if((keyCode>=48) && (keyCode<=57))
      return;
    if((keyCode==45) || (keyCode==46) || (keyCode==47) || (keyCode==58)) {
      if(event.keyCode)
        event.keyCode=47;
      else {
        var new_event=document.createEvent("KeyEvents");
        new_event.initKeyEvent("keypress",false,true,document.defaultView,false,false,false,false,0,47);
        event.preventDefault();
        event.target.dispatchEvent(new_event);
      }
      return;
    }
    if((keyCode==8) || (keyCode==13))
      return;
    
    if(event.keyCode)
      event.returnValue=false;
    else
      event.preventDefault();

  } // End of dateKeys() function

  function checkAlphaDigit(s) {
    var i,c;
    
    for(i=0;i<s.length;i++) {
      c=s.substring(i,i+1);
      if(!(c>='a' && c<='z') && !(c>='A' && c<='Z') && !(c>='0' && c<='9'))
        return false;
    }
    return true;
  } // End of checkAlphaDigit() function

  function validateCF(cf) {
      var validi,i,s,set1,set2,setpari,setdisp;
      if(cf=='')
        return '';
      cf=cf.toUpperCase();
      if(cf.length!=16)
        return false;
      validi="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
      for(i=0;i<16;i++) {
        if(validi.indexOf(cf.charAt(i) )==-1)
          return false;
      }
      set1="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
      set2="ABCDEFGHIJABCDEFGHIJKLMNOPQRSTUVWXYZ";
      setpari="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
      setdisp="BAKPLCQDREVOSFTGUHMINJWZYX";
      s=0;
      for(i=1;i<=13;i+=2)
        s+=setpari.indexOf(set2.charAt(set1.indexOf(cf.charAt(i))));
      for(i=0;i<=14;i+=2)
        s+=setdisp.indexOf(set2.charAt(set1.indexOf(cf.charAt(i))));
      if(s%26!=cf.charCodeAt(15)-'A'.charCodeAt(0))
        return false;
      return true;
  } // End of validateCF() function

  function checkVATNo(pi) {
    var validi="0123456789";
    
    if(pi.length!=11)
      return false;
    
    for(i=0;i<11;i++) {
      if(validi.indexOf(pi.charAt(i))==-1)
        return false;
    }
    s=0;
    for(i=0;i<=9;i+=2)
      s+=pi.charCodeAt(i)-'0'.charCodeAt(0);
    for(i=1;i<=9;i+=2) {
      c=2*(pi.charCodeAt(i)-'0'.charCodeAt(0));
      if(c>9)
        c=c-9;
      s+=c;
    }
    if((10-s%10)%10!=pi.charCodeAt(10)-'0'.charCodeAt(0))
      return false;
    return true;
  } // End of checkVATNo() function

  function myParseInt(s) {
    while((s.charAt(0)=='0') && (s.length>1))
      s=s.substring(1,s.length);
    return(parseInt(s));
  } // End of myParseInt() function

  function checkDate(s,empty) {
    if(s=="")
      return(empty==1);
    if(s.length!=10)
      return false;
    if((s.substring(2,3)!="/") || (s.substring(5,6)!="/"))
      return false;
    g=myParseInt(s.substring(0,2));
    m=myParseInt(s.substring(3,5));
    a=myParseInt(s.substring(6,10));
    if(isNaN(g) || isNaN(m) || isNaN(a))
      return(false);
    if((g<1) || (m<1) || (a<0))
      return false;
    switch(m) {
      case 1:
      case 3:
      case 5:
      case 7:
      case 8:
      case 10:
      case 12:
        if(g>31)
          return false;
        return true;
      case 4:
      case 6:
      case 9:
      case 11:
        if(g>30)
          return false;
        return true;
      case 2:
        if(a%4) {
          if(g>28)
            return false;
        }
        else {
          if(g>29)
            return false;
        }
        return true;
      default:
        return false;
    }
    return true;
  } // End of checkDate() function

  function checkEmail(s_email) {
    var i=s_email.indexOf(' ',0);
    while(i>-1) {
      s_email = s_email.substring(0,i) + 
        s_email.substring((i + 1),s_email.length);
      i = s_email.indexOf(' ',0);
    }
    if((s_email.length<6) || (s_email.indexOf('@',0)<1) ||
       (s_email.lastIndexOf('@')!=s_email.indexOf('@',0)) || (s_email.lastIndexOf('@')>(s_email.length-5)) ||
       (s_email.lastIndexOf('.')>(s_email.length-3)) || (s_email.lastIndexOf('.')<(s_email.length-7)) ||
       (s_email.indexOf('..',0)>-1) || (s_email.indexOf('@.',0)>-1) ||
       (s_email.indexOf('.@',0)>-1) || (s_email.indexOf(',',0)>-1))
      return false;
    return true;
  } // End of checkEmail() function
-->
