﻿function newWindow(url){
    window.open(url);
}

function formatNumber(strTemp,intLen){
	var i;
	var str=new String(strTemp);
	for(i=0;i<parseInt(intLen,10);i++)
		str="0"+str;
	return  str.substr(str.length-intLen,intLen);
}

function CreateXMLHttpRequest(){
    var xmlHttp
    if(window.ActiveXObject){
        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    else if(window.XMLHtpRequest){
        xmlHttp=new XMLHttpRequest();
    }
    return xmlHttp;
}
function checkPointLenght(val,PointLen){
	if (val.indexOf('.')==-1){
		return true;
	}
	else{
		var len = val.length - val.indexOf('.');
		if (len > PointLen+1)	{
			return false;
		}
		else{
			return true;
		}
	}
}
function IsPointNo(obj){
    val=obj.value;
    if(trim(val).length == 0)
    {
        obj.value = "";
        return true;
    }
	if (isNaN(val)){
		msgBox("003");
		obj.focus();
		obj.select();
		return false;
	}
	else if(!checkPointLenght(val,2)){
		msgBox("016");
		obj.focus();
		obj.select();
		return false;
	}
	else{
	    if (val.indexOf('.')!= -1){
			if (val.indexOf('.')==val.length-1){
				obj.value = obj.value+"00";
			}
			else if (val.indexOf('.')==val.length-2){
				obj.value = obj.value+"0";
			}
		}
		else{
		    obj.value = obj.value+".00";
		}
	    return true;
	}
}
//******************** ADD BY 赫強 2009/06/09 START ********************
function IsQuantityNum(obj)
{
    val=obj.value;
    if (trim(val).length == 0)
    {
        obj.value = "";
        return true;
    }
	if (isNaN(val))
	{
		msgBox("003");
		obj.focus();
		obj.select();
		return false;
	}
	else if(!checkPointLenght(val,1))
	{
		msgBox("057");
		obj.focus();
		obj.select();
		return false;
	}
	else
	{
	    if (val.indexOf('.')!= -1)
	    {
			if (val.indexOf('.')==val.length-1)
			{
				obj.value = obj.value+"0";
			}
		}
		else
		{
		    obj.value = obj.value+".0";
		}
	    return true;
	}
}
//******************** ADD BY 赫強 2009/06/09 END   ********************
function conf(msg){
	var con = confirm(msg);
	if(con == true){
	    return true;
	}
	else{
		return false;
	}
}

function IsBrowser(){
    var isBrowser;
    if(window.ActiveXObject){
        isBrowser = "IE";
    }else if(window.XMLHttpRequest){
        isBrowser = "FireFox";
    }
    return isBrowser;
}
function isIE(){ //ie?
   if (window.navigator.userAgent.toLowerCase().indexOf("msie")>=1)
    return true;
   else
    return false;
}
function UpperCase(str){
    return str.toUpperCase()
}
function trim(strTemp){
	var str=new String(strTemp);
	var substr=new String("");
	if(str.length==0) return "";
	try{
		while((str.charAt(0)==" ")||(str.charAt(0)=="　"))
		{
			str=str.substr(1);
		}
		while((str.charAt(str.length-1)==" ")||(str.charAt(str.length-1)=="　"))
		{
			str=str.substr(0,str.length-1);
		}
	}
	catch(err)
	{}
	return str;
}

function ShowAddSearch(onlyAddress){ 	
   if (onlyAddress == 0){
	   var objAdd=showModalDialog("SF_JISS.aspx?strUrl=SF_1000.aspx&strTitle=住所検索","","help:no;dialogHeight: 655px; dialogWidth:800px;status: No;"); 
   }
   else{
	   var objAdd=showModalDialog("SF_JISS.aspx?strUrl=SF_1000.aspx&strTitle=住所検索&which=true","","help:no;dialogHeight: 655px; dialogWidth: 800px;status: No;"); 
   }
   return objAdd;
}

function ShowPostSearch(){ 	 
   var objPos=showModalDialog("SF_JISS.aspx?strUrl=SF_POST.aspx&strTitle=郵便番号検索","","help:no;dialogHeight: 655px; dialogWidth: 800px;status: No;");      
   return objPos;
}

function msgBox(strNO){
	var str;
	switch(strNO){
		case "001":
			str="恐れ入りますが、必須項目は省略することが出来ません。";

			break;
		case "002":
			str="該当の情報が存在しないため処理が出来ません。";
			break;
		case "003":
		    str="恐れ入りますが、半角数字以外は入力出来ません。";	
			break;		
		case "004":
			str="入力いただいた利用者は既にログイン中のためご利用頂けません。";
			break;
		case "005":
		    str="恐れ入りますが、半角３桁以上を入力して下さい。";
		    break;
		case "006":
			str="入力いただいた情報は無効です。";	
			break;
		case "007":
		    str="恐れ入りますが、半角英数字以外は入力出来ません。";
		    break;
		case "008":
		    str="恐れ入りますが、入力に誤りがございます。";
		    break;
		case "009":
			str="日付は'yyyymmdd'または'yyyy/mm/dd'の形式で入力して下さい。";
			break;
		case "010":
			str = "恐れ入りますが、日付の範囲が間違っていますのでご確認ください。";
			break;
		case "011":
		    str = "恐れ入りますが、入力いただいた文字桁数ではご利用頂けません。";
		    break;
		case "012":
			str="年は西暦４桁で入力して下さい。";
			break;
		case "013":
			str="月は１桁、または２桁で入力して下さい。";
			break;
		case "014":
			str="日は１桁、または２桁で入力して下さい。";
			break;
		case "015":
			str="恐れ入りますが適切な日付を入力して下さい。";
			break;
		case "016":
		    str="恐れ入りますが、入力いただけるのは小数点第２位までです。";
		    break;
		case "017":
		    str="恐れ入りますが、単価0では登録が出来ません。"
		    break;
		case "018":
		    str="恐れ入りますが、個数0では登録が出来ません。"
		    break;
		case "019":
		    str="恐れ入りますが、数量0では登録が出来ません。"
		    break;
		case "023":
			str="誠に申し訳ございませんが、サーバーからの応答が無いため、\n現在、ご利用いただけません。";
			break;
		case "047":
			str = "恐れ入りますが、国家コードは省略することが出来ません。";
			break;
		case "048":
			str = "恐れ入りますが、該当の国家コードは存在しません。";
			break;
		case "049":
			str = "恐れ入りますが、該当の都市コードは存在しません。";
			break;
		case "050":
			str = "恐れ入りますが、該当の業種コードは存在しません。";
			break;
		case "051":
			str = "恐れ入りますが、通関区分を指定して下さい。";
			break;
		case "052":
			str = "恐れ入りますが、荷受人コードを指定して下さい。";
			break;
		case "053":
			str = "恐れ入りますが、輸入者コードを指定して下さい。";
			break;
		case "054":
			str = "恐れ入りますが、半角文字を入力して下さい。";
			break;
		case "055":
			str = "恐れ入りますが、半角英数字と「 - 」を入力して下さい。";
			break;
	    case "056":
			str ="恐れ入りますが、入力いただいた文字数は制限を超えました。";
			break;
	    case "057":
		    str="恐れ入りますが、入力いただけるのは小数点第１位までです。";
		    break;			
	}
	alert(str);
}

function OnlyInputNum(e){
    var key;
    if(IsBrowser() == "FireFox"){
	    key=e.which
	}
	else{
        key=event.keyCode
	}
	
    if((key < 48 || key > 57) && key != 0 && key != 8){
        return false;
    }
    else{
        return true;
    }
}
function OnlyInputFormatNum(e){
    var key;
    var obj;
    if(IsBrowser() == "IE")
    {
        obj=event.srcElement;
        key=event.keyCode 
    }
    else
    {
        obj=e.target;
        key=e.which 
    }  
	if(key == 13){
        if(!IsOnlyNum(obj.value)){      
            msgBox("003");
            obj.focus();
            obj.select();
            return false;
        }
        else{
            obj.value=formatNumber(obj.value,10);
            return true;
        }         
	}
}
function FormatKSNo(e){
    var key;
    var obj;
    if(IsBrowser() == "IE")
    {
        obj=event.srcElement;
        key=event.keyCode 
    }
    else
    {
        obj=e.target;
        key=e.which 
    }  
	if(key == 13){
        if(!IsOnlyNum(obj.value)){      
            msgBox("003");
            obj.focus();
            obj.select();
            return false;
        }
        else{
            obj.value=FormatKusuNo(obj.value);
            return true;
        }         
	}
}
function FormatKusuNo(str){
    if(str.length==0)
    {
        return "";
    }
    else if(str.length==1){
        return "00" +str;
    }
    else if(str.length==2){
        return "0" +str;
    }
    else if(str.length==3){
        return str;
    }
}
function OnlyInputDate(e){	
    var key;
    if(IsBrowser() == "FireFox"){
	    key=e.which
	}
	else{
        key=event.keyCode
	}
	if((key < 48 || key > 57) && key != 0 && key != 8 && key != 47){
	    return false;
	}
	else{
	    return true;
	}
}

function OnlyInputCharNumSpace(e){
    var key;
    if(IsBrowser() == "FireFox"){
	    key=e.which
	}
	else{
        key=event.keyCode
	}
	if((key < 48 || key > 57) && key != 0 && key != 8 && key!=32 && (key <65 || key > 90) && (key < 97 || key > 122)){
	    return false;
	}
	else{
	    return true;
	}
}

// <summary>
// <p><b>機能名 :</b>OnlyInputPayment</p>
// <p><b>概要説明 :数字型文字と'-'のフィルタ</b></p>
// <p><b>バージョン情報：</b>1.0.0.0</p>
// <p><b>作成者   :</b>赫強</p>
// <p><b>作成日   :</b>2009/06/02</p>
// <p><b>修正履歴 :</b></p>
// </summary>
//<return></return>
function OnlyInputPayment()
{    
    if(event.keyCode != Asc("-") && event.keyCode<Asc("0") || event.keyCode>Asc("9") && event.keyCode<Asc("A") || event.keyCode>Asc("Z") && event.keyCode<Asc("a") || event.keyCode>Asc("z"))
	{
	    event.returnValue=false;
	}
	
}

// <summary>
// <p><b>機能名 :</b>CheckPayment</p>
// <p><b>概要説明 :数字型文字と'-'のチェーく</b></p>
// <p><b>バージョン情報：</b>1.0.0.0</p>
// <p><b>作成者   :</b>赫強</p>
// <p><b>作成日   :</b>2009/06/02</p>
// <p><b>修正履歴 :</b></p>
// </summary>
//<return></return>
function CheckPaymentCode(strInputer)
{
    if(strInputer == null || strInputer == "")
    {
        return true;
    }
    var reg = /^[A-Za-z0-9-]*$/;
    return reg.test(strInputer);
}

// <summary>
// <p><b>機能名 :</b>Asc</p>
// <p><b>概要説明 :文字のACSⅡコードの返却処理</b></p>
// <p><b>バージョン情報：</b>1.0.0.0</p>
// <p><b>作成者   :</b>赫強</p>
// <p><b>作成日   :</b>2009/06/02</p>
// <p><b>修正履歴 :</b></p>
// </summary>
//<return></return>
function Asc(obj)
{
	return  obj.charCodeAt();
}

function fDataFormat(objDate){
    var strCeckDate = trim(objDate.value);
    if (strCeckDate.length == 8 && strCeckDate.indexOf("/") == -1)
    {
        strCeckDate = strCeckDate.substring(0,4) + "/" + strCeckDate.substring(4,6) + "/" + strCeckDate.substring(6,8);
    }
    var arrStr = strCeckDate.split("/");
    if (arrStr.length != 3)
    {
        msgBox("009");
		return false;
    }
    else
    {
        strCeckDate = arrStr[0];        
        for(var i = 0; i < (4 - arrStr[0].length); i++)
        {
            strCeckDate = "0" + strCeckDate;
        }
        if (1 == arrStr[1].length)
        {
            strCeckDate = strCeckDate + "/0" + arrStr[1];
        }
        else
        {
            strCeckDate = strCeckDate + "/" + arrStr[1];
        }
        
        if (1 == arrStr[2].length)
        {
            strCeckDate = strCeckDate + "/0" + arrStr[2];
        }
        else
        {
            strCeckDate = strCeckDate + "/" + arrStr[2];
        }
        objDate.value = strCeckDate;
    }
    
    
    if(lenb(strCeckDate)!=8 && lenb(strCeckDate)!=10){
	    msgBox("009");
		return false;
	}
	if(strCeckDate.length == 8){
	    try{	
		    if(isNaN(strCeckDate.substr(0,4)) || isNaN(strCeckDate.substr(4,6)) ||  isNaN(strCeckDate.substr(6,8))){
			    msgBox("015");
			    return false;
		    }
		}catch(err){
		    msgBox("015");
			return false;
		}
		strYear = strCeckDate.slice(0,4);
		strMonth = strCeckDate.slice(4,6);
		strDate = strCeckDate.slice(6,8);
		strCeckDate = strYear + '/' + strMonth + '/' + strDate;
		objDate.value = strCeckDate;
	}
	if(strCeckDate.replace("/","").replace("/","").length != 8 ){
	    msgBox("015");
		return false;
	}
	strCeckDate = objDate.value.split("/");
	bolRet = false;
	if(objDate.value == ""){
		bolRet = true;
	}
	else{		
		if(strCeckDate.length!=3){
			msgBox("009");
			return false;
		}
		else{						
			if(isNaN(strCeckDate[0]) || isNaN(strCeckDate[1]) ||  isNaN(strCeckDate[2])){
				msgBox("015");
				return false;
			}						
			if(strCeckDate[0].length != 4){
				msgBox("012");
				return false;
			}
			else{				
				if((strCeckDate[1].length < 1) || (strCeckDate[1].length > 2)){
					msgBox("013");
					return false;
				}
				else{					
					if((strCeckDate[2].length < 1) || (strCeckDate[2].length > 2)){
						msgBox("014");
						return false;
					}
					else{						
						objNewDate = new Date(strCeckDate[0], parseInt(strCeckDate[1],10)-1, strCeckDate[2]);
						if((objNewDate.getDate() != strCeckDate[2]) || (strCeckDate[1] != objNewDate.getMonth()+1)){						
							msgBox("015");
							return false;
						}
						if(1900>parseInt(strCeckDate[0],10)){
							msgBox("006");
							return false;
						}						
						bolRet = true;
					}
				}
			}
		}
	}
	return bolRet;
}
function CompareDate(objDateFrom,objDateTo){
	var strDateFrom = objDateFrom.value;
	var strDateTo = objDateTo.value;
	if(lenb(strDateFrom) != 0 && lenb(strDateTo) != 0){				
		if (strDateFrom > strDateTo){
			msgBox("010");
			objDateTo.focus();
			objDateTo.select();
			return false;
		}
	}
	return true;
}
function asc(strTemp){
	var str=new String(strTemp);
	return str.charCodeAt(0);
}
function lenb(strTemp){
	var intLength=0;
	var str=new String(strTemp);
	for(var i=0;i<str.length;i++){
		if(str.charCodeAt(i)>255){
			if(charIsKn(str.charAt(i))){
				intLength++;
			}
			else{
				intLength+=2;
			}
		}
		else{
			intLength++;
		}
	}
	return intLength;
}
function charIsKn(strTemp){
	var str=new String(strTemp);
	for(var i=0;i<str.length;i++)
		if(str.charCodeAt(i)>65439 || str.charCodeAt(i)<65382)
			return false
	return true
}
function IsNumber(strTemp){
	var strM;
	strM=parseFloat(strTemp);
	if(isNaN(strM))	{
		return false;
	}
	else{
		if(strM==strTemp){	
			return true;
		}
		else{
			return false;
		}
	}
}
function IsNumberInt(strTemp){
	var str=new String(strTemp);
	if(!IsNumber(str.toString())){
		return false;
	}
	if(str.indexOf("-",0)!=-1){
		return false;
	}
	if(str.indexOf(".",0)!=-1){
		return false;
	}
	return true;
}
function GetMContent(strFlag,strValue1,strValue2){
	var strSend;
	strSend="<Root>";
	strSend=strSend+"<Flag>" + strFlag +"</Flag>";
	strSend=strSend+"<Items>";
	strSend=strSend+"<Item>"+strValue1+"</Item>";
	strSend=strSend+"<Item>"+strValue2+"</Item>";
	strSend=strSend+"</Items>";
	strSend=strSend+"</Root>";
	var objRoot;
	try	{
	    var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	    xmlhttp.Open("POST", "ShowXmlData.aspx", false);
	    xmlhttp.Send(strSend);
	    objRoot= xmlhttp.responseXML.firstChild;
	}
	catch(err){
		msgBox("023");
		return null;
	}
	if(objRoot!=null){
		return objRoot;	
	}
	else{
		msgBox("023");
	}
	return null;
}

function GetItemValue(objRoot,strFlag,strItem){
	if(strItem=="") return "";
	var objNode;
	objNode=getItem(objRoot,strFlag);
	if(objNode==null) 
		return "";
	var nodeList;
	try{
		nodeList=objNode.selectNodes("Items/Item");
	}
	catch(err){
		return "";
	}
	var iPos;

	for(iPos=0;iPos<nodeList.length;iPos++){
		if(nodeList.item(iPos).attributes.getNamedItem("Name").text==strItem)
		{
			return nodeList.item(iPos).text;
		}
	}			
	return "";
}
function getItem(objRoot,strFlag){
	if(objRoot==null) return null;
	var Count;
	var nodeList;
	var iPos;
	try{
		nodeList=objRoot.selectNodes("//Root/Table");
		for(iPos=0;iPos<nodeList.length	;iPos++)	{
			if(nodeList.item(iPos).attributes.getNamedItem("Flag").text==strFlag){
				return nodeList.item(iPos);
			}
		}
	}
	catch(err)
	{}
	return null;	
}
function getItemCount(objRoot,strFlag){
	var objNode;
	objNode=getItem(objRoot,strFlag);

	if(objNode==null)	{
		return 0;
	}
	else{
		return objNode.selectSingleNode("Count").text;	
	}
}
function getItemArray(objRoot,strFlag,strItem){
	var aRecord = new Array();
	if(strItem=="") return aRecord;
	var objNode;
	objNode=getItem(objRoot,strFlag);
	
	if(objNode==null) 
		return aRecord;
	var nodeList;
	try	{
		nodeList=objNode.selectNodes("Items/Item");
	}
	catch(err){
		return aRecord;
	}
	var iPos;
    var i=0;
	for(iPos=0;iPos<nodeList.length;iPos++){
		if(nodeList.item(iPos).attributes.getNamedItem("Name").text==strItem){
			aRecord[i++]=nodeList.item(iPos).text;
		}
	}
	return aRecord;
}
function getItemText(objRoot,strFlag,strItem){
	var aRecord = "";
	if(strItem=="") return aRecord;
	var objNode;
	objNode=getItem(objRoot,strFlag);
	if(objNode==null) 
		return aRecord;
	var nodeList;
	try	{
		nodeList=objNode.selectNodes("Items/Item");
	}
	catch(err){
		return aRecord;
	}
	var iPos;
    var i=0;
	for(iPos=0;iPos<nodeList.length;iPos++){
		if(nodeList.item(iPos).attributes.getNamedItem("Name").text==strItem){
			return nodeList.item(iPos).text;
		}
	}
	return aRecord;
}
function setListHeight(objList,Count){
	switch(Count){
		case 1:
			objList.size=2;
			break;	
		case 2:
			objList.size=3;
			break;	
		case 3:
			objList.size=4;
			break;	
		case 4:
			objList.size=5;
			break;	
		default:
			objList.size=5;	
			break;
	}
}
function IsOnlyCharNum(str){
    var i;
	for(i=0;i-str.length<0;i++)
	{
		if(str.charCodeAt(i)<asc("0") || str.charCodeAt(i)>asc("9") 
		&& str.charCodeAt(i)<asc("A") || str.charCodeAt(i)>asc("Z") 
		&& str.charCodeAt(i)<asc("a") || str.charCodeAt(i)>asc("z"))		
		{
			return false;
		}
	}
	return true;
}
function IsOnlyNum(str){
	var i;
	if (isNaN(str)){
	    return false;
	}
	return true;
}
function IsTelNo(s){  
    //var patrn=/^([a-zA-Z0-9])([a-zA-Z0-9]|[-])+([a-zA-Z0-9])$/;
    var patrn=/^([a-zA-Z0-9]|[-])+$/;
    if (!patrn.exec(s)) return false  
    return true  
}
function CheckSpecialChar(str){
//    if(str.indexOf("'") != -1){
//	    return false;
//    }
    if(str.indexOf("*") != -1){
	    return false;
    }
    if(str.indexOf("=") != -1){
	    return false;
    }
    if(str.indexOf("!") != -1){
	    return false;
    }
    if(str.indexOf("<") != -1){
	    return false;
    }
    if(str.indexOf(">") != -1){
	    return false;
    }
//    if(str.indexOf("%") != -1){
//	    return false;
//    }
    if(str.indexOf("^") != -1){
	    return false;
    }
    return true;
}
function Hashtable(){
    this._hash= new Object();
    this.add= function(key,value){
		if(typeof(key)!="undefined"){
			if(this.contains(key)==false){
				this._hash[key]=typeof(value)=="undefined"?null:value;
				return true;
			}else{
				return false;
			}
		}else{
			return false;
		}
	}
	this.remove= function(key){delete this._hash[key];}
	this.count= function(){var i=0;for(var k in this._hash){i++;} return i;}
	this.items= function(key){return this._hash[key];}
	this.contains= function(key){ return typeof(this._hash[key])!="undefined";}
	this.clear= function(){for(var k in this._hash){delete this._hash[k];}}
}
function FormatPoint2(val){
    if (isNaN(val)){
		msgBox("003");
		return false;
	}
	if (trim(val).length == 0)
	{
	    return "";
	}
    if (val.indexOf('.')!= -1){
       if (val.indexOf('.')==val.length-1){
           val = val +"00";
       }
       else if (val.indexOf('.')==val.length-2){
           val = val +"0";
       }
    }
    else{
        val = val +".00";
    }
    return val;
}
function unFormatPoint(val){
    if (isNaN(val)){
		msgBox("003");
		return false;
	}
    return Math.floor(val);
    //floor、round、ceil
}
function CheckHalfChar(val)
{
    if(lenb(val) != val.length)
	{
	    return false;
	}
	return true;
}

function IsOnlyCharNumSpace(str){
    var i;
	for(i=0;i-str.length<0;i++)
	{
	    if (str.charCodeAt(i) == asc(" "))
	    {
	        continue;
	    }
		if(str.charCodeAt(i)<asc("0") || str.charCodeAt(i)>asc("9") 
		&& str.charCodeAt(i)<asc("A") || str.charCodeAt(i)>asc("Z") 
		&& str.charCodeAt(i)<asc("a") || str.charCodeAt(i)>asc("z"))		
		{
			return false;
		}
	}
	return true;
}
