<!--
//------------------------------------------------------------------------------
//- 製品名　　：奈良県中小企業支援センター　登録専門家サイト
//- ファイル名：com_func.js
//- 説明　　　：共通JavaScriptプログラム
//- 作成者　　：Y's STAFF 馬場
//- 著作権　　：(C) Y's STAFF ALL Rights Reserved.
//- 作成日　　：2007.03.30
//------------------------------------------------------------------------------

// 確認して閉じる					function confirm_close()
// 確認して閉じる					function top_confirm_close()
// 別窓開く							function windo(purl,wname,wsize,hsize)
// 別窓をOPEN（_blankで）			function Open_Blank(purl){
// 検索条件項目を組み立てる			function alert_and(thisform){
// CSS(高さ)を大きくする（未使用）	function Expand_CSS_Height(idname,height1,height2){
// メッセージ表示／フォーカス
// →条件を満たさなければ			function alert_noncondition(dobj,condition,msg){
// →等しくなければ					function alert_nonequal(dobj,dobj2, msg){
// →空白以外でなければ				function alert_null(dobj,msg){
// →「空白か０以外」でなければ		function alert_nullzero(dobj,msg){
// →英数字でなければ				function alert_nonalnum(dobj,msg){
// →数字でなければ					function alert_nonnum(dobj,msg){
// →全角カタカナ（＋英大字）以外の文字があれば	function alert_nonkana(dobj,msg){
// →日付形式でなければ				function alert_nondate(dobj,msg){
// →日付時刻形式でなければ			function alert_nondatetime(dobj,msg){
// →メールアドレス形式でなければ	function alert_nonmail(dobj,msg){
// →電話番号形式でなければ			function alert_nontel(dobj,msg){
// →URL形式でなければ				function alert_nonurl(dobj,msg){
// →「選択値が0以外」でなければ	function alert_nonselect(dobj,msg){
// →「ラジオボタン、チェックボックス選択済み」でなければ	function alert_noncheck(dobj,msg){
// 左空白を削除する					function ltrim(s)
// 日付形式かどうか					function check_date(dobj){
// 画像ファイルアップロードのチェック	function alert_nongfile(dobjsel, dobjcf,dobjsf, msg){
// →(JPEG形式のみ)					function alert_nonjfile(dobjsel, dobjcf,dobjsf, msg){
// →（形式はノーチェック）			function alert_nonfile(dobjsel, dobjcf,dobjsf, msg){
// 画像ファイル使用するかどうか		function use_gfile(dobjsel, dobjfile){
// 画像ファイル使用していなければメッセージ表示／フォーカスする		function alert_nonuse_gfile(dobjsel, dobjfile,msg){
// ファイルがアップロード中(cfが書かれている)であればメッセージ表示	function is_onupload(dobj_fattr1, dobj_cf, msg){
// ファイルがすでに存在する場合は項目削除はできない（メッセージ表示）	function is_ocfexist(dobj_fattr1, dobj_ocf, msg){
// 先頭が改行か（メッセージ表示し、フォーカスする←しない）	function check_onlycr(dobj,msg){
//------------------------------------------------------------------------------

// 検索条件チェック1
function alert_input1(thisform){

	var t1;
	t1 = false;
	for (i=0; i<thisform.elements["y1[]"].length; i++){
		if(thisform.elements["y1[]"][i].checked)	{t1 = true; break;}
	}

	if (!(t1) && (thisform.y2.value == '0')  && (thisform.y3.value == '0') )
	{
//		thisform.y1.focus();
		alert('検索する条件を選択してください');
		return (false);
	}
}

// 検索条件チェック2
function alert_input2(thisform){

	if (thisform.keyword.value == '')
	{
		thisform.keyword.focus();
		alert('検索するキーワードを入力してください');
		return (false);
	}
}

// 確認して閉じる
function confirm_close()
{
	if(confirm("この窓を閉じますか？")){window.close();}
}

//--ウィンドウ有無の確認 
//e4,e5,e6,n4,n6,n7,m1,o6,o7,s1用
function win_closed(winOj) { 
      var ua = navigator.userAgent
      if( !!winOj )
          if( ( ua.indexOf('Gecko')!=-1 || ua.indexOf('MSIE 4')!=-1 )
               && ua.indexOf('Win')!=-1 ) 
               return winOj.closed
          else return typeof winOj.document  != 'object'
      else return true
  }


// 入力項目制限チェック関数
// 空白以外でなければメッセージ表示し、フォーカスする
function alert_null(dobj,msg){
	return alert_noncondition(dobj,(ltrim(dobj.value) != ""),msg);
}

// 条件を満たさなければ、メッセージを表示し、フォーカスする
function alert_noncondition(dobj,condition,msg){
	if (!(condition)){
		alert(msg);
		dobj.focus();
		return (false);
	}
}
// 日付形式でなければメッセージ表示し、フォーカスする
function alert_nondate(dobj,msg){
	check = /^[0-9][0-9][0-9][0-9]\/[0-9][0-9]\/[0-9][0-9]$/;
	return alert_noncondition(dobj,((dobj.value).match(check)),msg);
}

// 全角カタカナ（＋英大字）でない文字があればメッセージ表示し、フォーカスする
function alert_nonkana(dobj,msg){
	var s2,i,c;
	txt = "アイウエオカキクケコサシスセソタチツテトナニヌネノ";
	txt+= "ハヒフヘホマミムメモヤユヨラリルレロワヲンァィゥェォャュョッ、。?ー：；「」 　";
	txt+= "ガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポ";
	txt+= "ＡＢＣＤＥＦＧＨＩＪＫＬＭＮＯＰＱＲＳＴＵＶＷＸＹＺ";
	txt+= "１２３４５６７８９０";
	s2 = dobj.value;
	for (i=0; i<s2.length; i++){
		c = s2.charAt(i);
		if(txt.indexOf(c,0) < 0){
			alert(msg);
			dobj.focus();
			return (false);
		}
	}
}

// メールアドレス形式でなければメッセージ表示し、フォーカスする
function alert_nonmail(dobj,msg){
	check = /^.+@.+\..+$/;
	return alert_noncondition(dobj,((dobj.value).match(check)),msg);
}

// 電話番号形式でなければメッセージ表示し、フォーカスする
function alert_nontel(dobj,msg){
	check = /^0[0-9\-]+$/;
	return alert_noncondition(dobj,((dobj.value).match(check)),msg);
}

// URL形式でなければメッセージ表示し、フォーカスする
function alert_nonurl(dobj,msg){

	var s2,c,i;
	urltxt = "abcdefghijklmnopqrstuvwxyz0123456789;/?:@&=+$,-_.!~*'()%#";
	// ?より前をチェック
	s2 = dobj.value.toLowerCase();
	if (s2.indexOf("?",0) >= 0){
		s2 = s2.substring(0, s2.indexOf("?",0));
	}
	for (i=0; i < s2.length; i++){
		c = s2.charAt(i);
		if(urltxt.indexOf(c,0) < 0){
			alert(msg + "：文字 " + c);
			dobj.focus();
			return (false);
		}
	}
	if((s2.substring(0,7) != "http://") && (s2.substring(0,8) != "https://") && (s2.substring(0,7) != "mailto:")){
		alert(msg + "：先頭がhttp://、https://で始まっていません");
		dobj.focus();
		return (false);
	}
}

// 「ラジオボタン選択済み」でなければメッセージ表示し、フォーカスする
function alert_noncheck(dobj,msg){
	var t1;
	t1 = false;
	for (i=0; i<dobj.length; i++){
		if(dobj[i].checked)	{t1 = true; break;}
	}
	if (!(t1)){	alert(msg);	dobj[0].focus();}
	return (t1);
}

// 「チェックボックス選択済み」でなければメッセージ表示し、フォーカスする
function alert_noncheckbox(dobj,msg){

	var t1;
	t1 = false;
	if(dobj.length == null) { // チェックボックスが1つの場合
		t1 = dobj.checked;
	}else{
		for (i=0; i<dobj.length; i++){
			if(dobj[i].checked)	{t1 = true; break;}
		}
	}
	if (!(t1)){	alert(msg);	dobj[0].focus();}
	return (t1);
}
// 左空白を削除する
function ltrim(s)
{
	var i,s2;
	s2 = s;
	while(s2.substring(0,1)==" " || s2.substring(0,1)=="　"){
		s2 = s2.substr(1,s2.length);
	}
	return s2;
}

