function urlSend(form, action) {	var mailAddress = document.consumerTopUrlSendForm.elements["mailAddressProcess"].value = document.consumerTopUrlSendForm.elements["mailAddress"].value + "@" + document.consumerTopUrlSendForm.elements["domain"].value;	var rc1 = validateRequired(form);	if  (rc1 == true ) {		var rc2 = validateHankaku(form);		if  (rc2 == true ) {			var rc3 = validateEmail(form);			if (rc3 == true) {				subProc(form, action);			}		}	}}function required () {    this.aa = new Array("mailAddress", "メールアドレスのご入力をお願いします。", new Function ("varName", "this.maxbytes='90';  return this[varName];"));}function hankaku () {	this.aa = new Array("mailAddress", "メールアドレスは半角文字で入力してください。", new Function ("varName", "this.maxbytes='90';  return this[varName];"));}function email () {	this.aa = new Array("mailAddressProcess", "ご入力のメールアドレスを再度ご確認ください。", new Function ("varName", "this.maxbytes='100';  return this[varName];"));}function validateRequired(form) {                var isValid = true;                var focusField = null;                var i = 0;                var fields = new Array();                oRequired = new required();                for (x in oRequired) {                  var field = form[oRequired[x][0]];                    if (field.type == 'text' ||                        field.type == 'textarea' ||                        field.type == 'file' ||                        field.type == 'select-one' ||                        field.type == 'radio' ||                        field.type == 'password') {                        var value = '';            // get field's value            if (field.type == "select-one") {              var si = field.selectedIndex;              if (si >= 0) {                value = field.options[si].value;              }            } else {              value = field.value;            }                        if (trim(value).length == 0) {                          if (i == 0) {                              focusField = field;                          }                          fields[i++] = oRequired[x][1];                          isValid = false;                        }                    }                }                if (fields.length > 0) {                   focusField.focus();                   alert(fields.join('\n'));                }                return isValid;            }            function trim(s) {                return s.replace( /^\s*/, "" ).replace( /\s*$/, "" );            }function validateHankaku(form) {                var isValid = true;                var focusField = null;                var i = 0;                var fields = new Array();                oHankaku = new hankaku();                for (x in oHankaku) {                  var field = form[oHankaku[x][0]];                    var value = '';                    if (field.type == 'text' ||                        field.type == 'textarea' ||                        field.type == 'password') {                        // get field's value                        value = field.value;                    }                    for (var index=0; index<value.length; index++) {                        escapeChar = escape(value.charAt(index));                        if(navigator.appName.indexOf("Netscape")!=-1) {                            if(escapeChar.length>3 && escapeChar.indexOf("%")!=-1) {                                if (i == 0) {                                    focusField = field;                                }                                fields[i++] = oHankaku[x][1];                                isValid = false;                                break;                            }                        } else {                            if(escapeChar.indexOf("%uFF")!=-1 &&                               '0x'+escapeChar.substring(2, escapeChar.length) < 0xFF60) {                                if (i == 0) {                                    focusField = field;                                }                                fields[i++] = oHankaku[x][1];                                isValid = false;                                break;                            } else {                                if (value.match(/\W/g) != null && escapeChar.length == 6) {                                    if (i == 0) {                                        focusField = field;                                    }                                    fields[i++] = oHankaku[x][1];                                    isValid = false;                                    break;                                }                            }                        }                    }                }                if (fields.length > 0) {                   focusField.focus();                   alert(fields.join('\n'));                }                return isValid;          }function validateEmail(form) {                var bValid = true;                var focusField = null;                var i = 0;                var fields = new Array();                oEmail = new email();                for (x in oEmail) {                    if ((form[oEmail[x][0]].type == 'text' ||                         form[oEmail[x][0]].type == 'textarea' ||                         form[oEmail[x][0]].type == 'hidden') &&                        (form[oEmail[x][0]].value.length > 0)) {                        if (!checkEmail(form[oEmail[x][0]].value)) {                            if (i == 0) {                                focusField = form[oEmail[x][0]];                            }                            fields[i++] = oEmail[x][1];                            bValid = false;                        }                    }                }                if (fields.length > 0) {                    //focusField.focus();                    alert(fields.join('\n'));                }                return bValid;            }            /**             * Reference: Sandeep V. Tamhankar (stamhankar@hotmail.com),             * http://javascript.internet.com             */            function checkEmail(emailStr) {               if (emailStr.length == 0) {                   return true;               }               var emailPat=/^(.+)@(.+)$/;               var specialChars="\\(\\)<>@,;:\\+\\/\\\\\\\"\\.\\[\\]";               var validChars="\[^\\s" + specialChars + "\]";               var quotedUser="(\"[^\"]*\")";               var ipDomainPat=/^(\d{1,3})[.](\d{1,3})[.](\d{1,3})[.](\d{1,3})$/;               var atom=validChars + '+';               var word="(" + atom + "|" + quotedUser + ")";               var userPat=new RegExp("^" + word + "((\\.+|\\+|\\/)" + word + ")*$");               var domainPat=new RegExp("^" + atom + "(\\." + atom + ")*$");               var matchArray=emailStr.match(emailPat);               if (matchArray == null) {                   return false;               }               var user=matchArray[1];               var domain=matchArray[2];               if (user.match(userPat) == null) {                   return false;               }               var IPArray = domain.match(ipDomainPat);               if (IPArray != null) {                   for (var i = 1; i <= 4; i++) {                      if (IPArray[i] > 255) {                         return false;                      }                   }                   return true;               }               var domainArray=domain.match(domainPat);               if (domainArray == null) {                   return false;               }               var atomPat=new RegExp(atom,"g");               var domArr=domain.match(atomPat);               var len=domArr.length;               if ((domArr[domArr.length-1].length < 2) ||                   (domArr[domArr.length-1].length > 3)) {                   return false;               }               if (len < 2) {                   return false;               }               return true;            }
