/*
 * Please Write Common Java Script Function, Useing This System.
 *
 */



// Show Window
function ShowDialog(HTML,W,H,WindowName,K){
    var Top=(screen.availHeight-H)/2;
    var left=(screen.availWidth-W)/2;
	var Option="toolvar=no";
	Option=Option+",location=no";
	Option=Option+",directories=no";
	Option=Option+",status=no";
//	Option=Option+",status=yes";
	Option=Option+",menubar=no";
	if(K == 0) { Option=Option+",scrollbars=no"; 
	             Option=Option+",resizable=no"; }
	if(K == 1) { Option=Option+",scrollbars=yes";
	             Option=Option+",resizable=yes"; }
	if(K == 2) { Option=Option+",scrollbars=yes";
	             Option=Option+",resizable=no"; }
	Option=Option+",width="+W;
	Option=Option+",height="+H;
	Option=Option+",top="+Top;
	Option=Option+",left="+left;
	window.open(HTML,WindowName,Option);
}
// Close Window
function CloseWindow(){
    this.close();
}
// Move URL
function SetNextPage(NextUrl){
    location.href=NextUrl;
}


// Submit Form
//URL  : Action URL
function Submit(URL){
				document.main.action=URL;
				document.main.submit();
}



// Submit Form
//FN   : Form Name(Surround Single Quotation mark)
//URL  : Action URL
function SubmitFN(FN,URL){
	var FM=eval("document."+FN);
	FM.action=URL;
	FM.submit();
}
// Submit Form
//FN   : Form Name(Surround Single Quotation mark)
//URL  : Action URL
//PARA : Parameter
function SubmitFNP(FN,URL,PARA){
	var FM=eval("document."+FN);
	FM.action=URL+"?"+PARA;
	FM.submit();
}

// Check No Input
function InputCheck(name){
	var val=true;
	for (i=0 ; i<document.main.elements.length ; i++){
		if (document.main.elements[i].name==name){
			if (document.main.elements[i].value==""){
				val=false;
				break;
			}
		}
	}
	return val;
}
// Check Comma String
function ChkCamma(form){
	var ret=true;
	for (i=0 ; i<form.elements.length ; i++){
		var Str=new String(form.elements[i].value);
		if (Str.match(",")==","){
			ret=false;
			break;
		}
	}
	return ret;
}		

// Check No Select 
function SelectCheck(name){
	var ret=true;
	var cnt=0;
	for (i=0 ; i<document.main.elements.length ; i++){
		if (document.main.elements[i].name==name){
			if (document.main.elements[i].type=="checkbox"){
				if (document.main.elements[i].checked){
					cnt++;
					break;
				}
			}else if (document.main.elements[i].type=="radio"){
				if (document.main.elements[i].checked){
					cnt++;
					break;
				}
			}else if (document.main.elements[i].type=="select-one"){
				if (document.main.elements[i].selectedIndex>=0){
					cnt++;
					break;
				}
			}
		}
	}
	if (cnt==0){ret=false;}
	
	return ret;
}
// Check Date Format
function DateInputCheck(name){
	var ret=true;
	var cnt=0;
	if (ret){if (eval("document.main."+name+"Y.value")==""){ret=false;}}
	if (ret){if (eval("document.main."+name+"M.selectedIndex")==0){ret=false;}}
	if (ret){if (eval("document.main."+name+"D.selectedIndex")==0){ret=false;}}
	
	return ret;
}
function DateCheck(y,m,d){
	var ret=true;
	var tmp=new Date(y,m,d);
	if (tmp.getYear()!=y||tmp.getMonth()!=m||tmp.getDate()!=d){
		ret=false;
	}
	return ret;
}
// Check Mail Address Format
function MailCheck(name){ 
	var ret=true;
	var mail=eval("document.main."+name+".value");
	if (mail!=""){
		if(!mail.match(/^[\w-.]+@[\w-.]+.[a-z]+$/)){ret=false;}
	}
	return ret;
}
// Check String Detail
function StringCheck(name1,name2,chkFlg){ 
	var ret=true;
	
	if (name1!=""){
		var val1=eval("document.main."+name1+".value");
		if (val1!=""){ret=moji_chk(chkFlg,val1);}
		if (!ret){return ret;}
	}
	if (name2!=""){
		var val2=eval("document.main."+name2+".value");
		if (val2!=""){ret=moji_chk(chkFlg,val2);}
		if (!ret){return ret;}
	}
	return ret;
}
// Check String Length
function WidthCheck(name,min,max){ 
	var ret=true;
	if (min==0&&max==0){return ret;}
	
	if (name!=""){
		var val=eval("document.main."+name+".value");
		if (val.length<min||val.length>max){
			ret=false;
		}
	}
	return ret;
}

function moji_chk(kbn,value) {
      for (var i = 0; i < value.length; ++i) {
        var c = value.charCodeAt(i);
  
        // Deny Harf size Kana String
        if (c >= 0xff61 && c <= 0xff9f) { return false; }

        // Check Full size Kana String
        if ((kbn&1)==1) { if ( (c >= 0x30a1 && c <= 0x30f6) || (c==0x30fc)) { return false; } }
        
        // Check Full size Other String
        if ((kbn&2)==2) { if ( c > 255  &&  ( c < 0x30a1 || c > 0x30f6) && c!=0x30fc ) { return false; } }                                                       

        // Check Input Harf size Numeric
        if ((kbn&4)==4) { if ( c == 0x2d || c == 0x2e || ( c >= 0x30 && c <= 0x39 ) ) { return false; } } 

        // Check Input Harf size Other String 
        if ((kbn&8)==8) { if ( c < 256 && ( c != 0x2d && c != 0x2e && ( c < 0x30 || c > 0x39 ) ) ) { return false; } }

      }
      return true;
}
//
function isNum(value){
	ret=true;
	if (value.length==0){
		ret=false;
	}else{
		for (var i = 0; i < value.length; ++i) {
	        var c = value.charCodeAt(i);
			if ( c != 0x2d && c != 0x2e && ( c < 0x30 || c > 0x39 ) ) {
				 ret=false;
				 break; 
			}
		}
	}
	return ret;
}
//Get List or Combo Box Value
function getSelectValue(name){
	var ret="";

	var sel=eval("document.main."+name+".selectedIndex");
	ret=eval("document.main."+name+"["+sel+"].value");
	
	return ret;
}
//Get Option Button Value
function getOptionValue(name){
	var ret="";

	for (i=0 ; i<document.main.elements.length ; i++){
		if (document.main.elements[i].name==name){
			if (document.main.elements[i].checked){
				ret=document.main.elements[i].value;
				break;
			}
		}
	}
	
	return ret;
}

//Set Option Button Value
function setOptionValue(name,value){

	for (i=0 ; i<document.main.elements.length ; i++){
		if (document.main.elements[i].name==name
			&&document.main.elements[i].value==value){
			document.main.elements[i].checked=true;
			break;
		}
	}
	
}

//Get Check Button Value
function getCheckValue(name){
	var ret="";

	if (eval("document.main."+name+".checked")){
		ret=eval("document.main."+name+".value");
	}
	return ret;
}

function EqualCheck(name1,name2){
	var val1=eval("document.main."+name1+".value");
	var val2=eval("document.main."+name2+".value");
	return (val1==val2);
}

function LogoutMessage(){
	return confirm("Logout And Back To Login Window.\nAre you all right?");
}
function cookie_check() {
	return navigator.cookieEnabled;
}


function Trim(Str){
	var i=0;
	var ret="";
	var letter="";
	for (i=0;i<Str.length;i++){
		letter=Str.substr(i,1);
		if (letter!=" "&&letter!="\n"){
			ret=ret+letter;
		}
	}
	return ret;
}
//Nameのリストに値を追加
function AddSelect(Name,Key,Value){
	var S=eval("document.main."+Name);
//	var Max=S.options.length;
	var Max=0;
	for(var i=0;i<S.options.length;i++){
		if (S.options[i].value!=""){
			Max++;
		}
	}
	S.options[Max]=new Option(Value);
	S.options[Max].value=Key;
	S.options[Max+1]=new Option("                                                  ");
	S.options[Max+1].value="";
}
//Nameのリストから選択されている項目を削除
function RemoveSelect(Name){
	var S=eval("document.main."+Name);
	for(var i=S.options.length-1;i>=0;i--){
		if (S.options[i].selected>0&&S.options[i].value!=""){
			S.options[i]=null;
		}
	}
}
//指定文字列のバイト数
function getByte(text){
	var count = 0;
	for (i=0; i<text.length; i++){
		var n = escape(text.charAt(i));
		if (n.length < 4) count++; else count+=2;
	}
	return count;
}

//--- Cookie -----------------------------

function addCookie(Key,Value){
	var TimeOut = new Date();
	TimeOut.setDate(TimeOut.getDate()+7);
	TimeOut =TimeOut.toGMTString();
	
	document.cookie = Key+"="+Value+";expires="+TimeOut;
}
function deleteCookie(Key){
	if(Key){
		var TimeOut = new Date();
		TimeOut.setHours(TimeOut.getHours() - 1); 	//Set Before a Hour
		TimeOut = TimeOut.toGMTString(); 			//Change to GMT Format String
		document.cookie = Key + "=xxx" + ";expires=" + TimeOut;
	}
}
