﻿function readMask(objEvent){
    return false;
}

function deleteMask(objEvent){
    var iKeyCode
       isIE = true;
    if (isIE)
    {
            iKeyCode = objEvent.keyCode;
      }
      else
      {
            iKeyCode = objEvent.which;
        }

    if(iKeyCode != 46 && iKeyCode != 16 && iKeyCode != 39 && iKeyCode != 37 && iKeyCode != 8)
         {
             return false;
         }
}

function isDigit(value){
    value = Trim(value);
    if (value.length ==0)
    {
        return false;
    }

    var num = ".0123456789";
    for (var intLoop = 0; intLoop < value.length; intLoop++)
    {
        if (num.indexOf(value.charAt(intLoop)) == -1)
        {
            return false;
        }
    }

    if (value.indexOf(".")!=value.lastIndexOf("."))
    {
        return false;
    }
    return true;
}

function Trim(str){
    var ichar, icount;
    var strValue = str;
    ichar = strValue.length - 1;
    icount = -1;
    while (strValue.charAt(ichar)==' ' && ichar > icount)
    {
        --ichar;
    }

    if (ichar!=(strValue.length-1))
    {
        strValue = strValue.slice(0,ichar+1);
    }
    ichar = 0;
    icount = strValue.length - 1;
    while (strValue.charAt(ichar)==' ' && ichar < icount)
    {
        ++ichar;
    }
    if (ichar!=0)
    {
        strValue = strValue.slice(ichar,strValue.length);
    }
    return strValue;
}
function isLetterOrDigit(inStr){
        var UPPERCASE_CHAR = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
        var LOWERCASE_CHAR = "abcdefghijklmnopqrstuvwxyz";
        var DIGIT_CHAR = "0123456789";	
	if(inStr == ''){
	      return false;
	}
	for(var cnt=0;cnt < inStr.length; cnt++){
	      var oneChar = inStr.charAt(cnt);
	      if (UPPERCASE_CHAR.indexOf(oneChar) == -1
	          && LOWERCASE_CHAR.indexOf(oneChar) == -1
	          && DIGIT_CHAR.indexOf(oneChar) == -1){
	             return false;   
	      }    
	}
	return true;
}

function checkEmail(emailText){
	var emailLen =  emailText.length;
	if(emailLen < 5){
	      return false;
	}
	var myCharAtPos  = emailText.indexOf("@");
	var myCharDotPos = emailText.lastIndexOf(".");
	if (myCharAtPos  == -1 || myCharAtPos == 0 || myCharDotPos == -1){
	      return false;
	}
	if (myCharDotPos == (emailLen - 1) || myCharAtPos > myCharDotPos || myCharDotPos == (myCharAtPos + 1)){
	      return false;
	}      
	return true;
}

function checkTel(fieldValue){
	var TEL_CHAR = "1234567890!@#$%^&*()-_,";
	for(var i = 0; i < fieldValue.length; i++){
	      var oneChar = fieldValue.charAt(i);
	      if (TEL_CHAR.indexOf(oneChar) == -1){
	            return false;
	      }
	}
	return true;
}
function form_all(myForm,myObjName){
    if(typeof(myForm.elements[myObjName]) != "object"){
        return null;
    }

        return myForm.elements[myObjName];
}
function isAllNotCheck(myform){
	var isNotChecked = true;
	if (myform == null){
		return isNotChecked;
	}
	for (var n = 0; ; n++){
		var checkbox = form_all(myform, "row_" + n);
		if (checkbox == null){
			break;
		}
		if(checkbox.checked){
            		isNotChecked = false;
            		break;
        	} 
	}
	return isNotChecked;
}
function setupAction(param){
  var myForm = document.forms[0];
  myForm.action = myForm.action + param;
  myForm.submit();
}

function openWin(param,width,height){
  var url = document.forms[0].action + param;
  window.open(url,"subWin","width="+width+",height="+height+",scrollbars=yes,resizable=yes");
}

function setupOpener(fields,values){
  var fieldArr = fields.split(",");
  var valueArr = values.split(",");
  var openerForm = window.opener.document.forms[0];
  for(var i = 0;i < fieldArr.length;i++){
    openerForm.elements[fieldArr[i]].value = valueArr[i];
  }
  window.close();
}

function openWinForCompany(target,width,height){
  var value = document.getElementsByName(target);
  var url = "./LookUpCompany.do?method=query&target="+target+"&value="+value[0].value;
  window.open(url,"subWin","width="+width+",height="+height+",scrollbars=yes");
}
function openWinForCountry(target,width,height){
  var url = "../RPT/LookUpCountry.do?method=main&target="+target;
  window.open(url,"subWin","width="+width+",height="+height+",scrollbars=yes");
}
function setupOpenerForCurrency(fields,values,disableField){
  var openerForm = window.opener.document.forms[0];
  openerForm.elements[fields].value = values;
  window.close();
}

function setupUsdAmount(field,usdField){
  var myForm = document.forms[0];
  if(field.value.toUpperCase() == "USD"){
    myForm.elements[usdField].value = "";
    myForm.elements[usdField].disabled = "true";
  }else{
    myForm.elements[usdField].disabled = "";
  }
}

function checkAllGroup(checkBox_G,name,counts){
  for(var i = 0;i < counts;i++){
    var checkBox_V = document.getElementById(name + i);
    checkBox_V.checked = checkBox_G.checked;
  }
}

function setupOpener2(fields,values){
  var fieldArr = fields.split(",");
  var valueArr = values.split("=");
  var openerForm = window.opener.document.forms[0];
  for(var i = 0;i < fieldArr.length;i++){
    openerForm.elements[fieldArr[i]].value = valueArr[i];
  }
  window.close();
}
function showMenu(){
  document.getElementById("showMenu").style.display='';
  document.getElementById("hiddenMenu").style.display='none';
}

function hiddenMenu(){
  document.getElementById("showMenu").style.display='none';
  document.getElementById("hiddenMenu").style.display='';
}

function checkDelete(fieldName,msg){
  var checkBoxs = document.forms[0].elements[fieldName];
  if(checkBoxs == null){
    alert('請勾選項目');
    return false;
  }
  var isCheck = false;
  if(checkBoxs.type == 'checkbox'){
    if(checkBoxs.checked){
      isCheck = true;
    }
  }else{
    for(var i = 0;i < checkBoxs.length;i++){
      if(checkBoxs[i].checked){
        isCheck = true;
        break;
      }
    }
  }
  if(isCheck == false){
    alert('請勾選項目');
    return false;
  }
  return window.confirm(msg);
}

function checkAllField(mainCheckBox,fieldName){
  var checkBoxs = document.forms[0].elements[fieldName];
  if(checkBoxs == null){
    return;
  }
  if(checkBoxs.type == 'checkbox'){
    checkBoxs.checked = mainCheckBox.checked;
  }else{
    for(var i = 0;i < checkBoxs.length;i++){
      checkBoxs[i].checked = mainCheckBox.checked;
    }
  }
}

function enter2TabWithoutTextarea(){
  var type = event.srcElement.type;
  if(type != 'textarea'){
    if (window.event.keyCode == 13){
      window.event.keyCode = 9;
    }
  }
}
function setSubmit(formName, methodName)	{
		var x = document.getElementsByName(formName);
		var oldAction = x[0].action;
		var newAction = oldAction +  '?method='+methodName;
		x[0].action = newAction;
		x[0].submit();
}

function setupDateField(field){
    var value = Trim(field.value);
	if(value == ''){
	  return;
	}
	if(value.indexOf('/') > 3){
	   var arr = value.split('/');
	   if(arr.length != 3){
	     return;
	   }
	   var fieldValue = '';
	   for(var i = 0;i < arr.length;i++){
	     if(isNaN(arr[i])){
		   return;
		 }
		 if(arr[i] <= 0){
		   return;
		 }
		 if(arr[i] < 10){
		   arr[i] = '0' + eval(arr[i]);
		 }
	   }
	   field.value = arr[0] + "/" + arr[1] + "/" + arr[2];
	}
  }
function enter2TabWithoutTextarea2(evt){
  evt =(evt) ? evt : ((window.event) ? event : null);
  var elem = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement: null);
  var charCode=(evt.charCode) ? evt.charCode:((evt.which) ? evt.which : evt.keyCode);
  if(elem.type != 'textarea'){
	  
    if(charCode == 13){
      if(document.uniqueID){
	evt.keyCode = 9;
      }else{
	return false;
      }
    }
  }
  return true;
}

function checkPrint(fieldName){
  var checkBoxs = document.forms[0].elements[fieldName];
  if(checkBoxs == null){
    alert('請勾選項目');
    return false;
  }
  var isCheck = false;
  if(checkBoxs.type == 'checkbox'){
    if(checkBoxs.checked){
      isCheck = true;
    }
  }else{
    for(var i = 0;i < checkBoxs.length;i++){
      if(checkBoxs[i].checked){
        isCheck = true;
        break;
      }
    }
  }
  if(isCheck == false){
    alert('請勾選項目');
    return false;
  }
  return true;
}