/************************************************

	Site Name: ひまわり証券
	Description: 汎用javascript
	Version: 1.0

************************************************/


if (typeof(jQuery) == 'function') {

	// div#loginAreaの表示制御 jQuery使用(version1.3.1)
	jQuery.noConflict();

	jQuery(function(){

		jQuery("div#loginBtn a").click(function(){
			jQuery(this).blur();
			jQuery("div#slidePanel").slideDown(350),
			jQuery("div#slidePanelInner").fadeIn(1100),
			jQuery(this).addClass("open");
			return false;
		})

		jQuery("div#loginOff a").click(function(){
			jQuery("div#slidePanelInner").fadeOut("fast"),
			jQuery("div#slidePanel").slideUp("slow"),
			jQuery("div#loginBtn a").removeClass("open");
			return false;
		})
	});





	// ul#tabsの制御 jQueryUI使用(version1.6rc5)
	jQuery(function() {
		jQuery("ul#tabs").tabs({
		});
	});





	// ul#tabs2の制御 jQueryUI使用(version1.6rc5)
	jQuery(function() {
		jQuery("ul#tabs2").tabs({
		});
	});





	// ポップアップ
	function MM_openBrWindow(theURL,winName,features) { //v2.0
	  window.open(theURL,winName,features);
	}





	// 各ログインボタンのポップアップ
	jQuery(function(){

		// Hits 証券デリバティブwindow
		jQuery("a[href='https://www.kabu225.himawari-group.co.jp/']").click(function(){
			window.open('https://www.kabu225.himawari-group.co.jp/','hitsDerivative','toolbar=no,location=yes,directories=no,status=yes,menubar=no, scrollbars=yes,resizable=yes,width=1015,height=660,top=0,left=0');
			return false;
		})

		// Hits株式 window
		jQuery("a[href='https://stock.himawari-group.co.jp/webbroker3/11/pc/WEB3AccountLogin.jsp']").click(function(){
			window.open('https://stock.himawari-group.co.jp/webbroker3/11/pc/WEB3AccountLogin.jsp','hits','toolbar=no,location=yes,directories=no,status=yes,menubar=no, scrollbars=yes,resizable=yes,width=1015,height=660,top=0,left=0');
			return false;
		})

		// Hits FX window
		jQuery("a[href='https://fxtrade-web.himawari-group.co.jp/fxcwebpresen/Login.do']").click(function(){
			window.open('https://fxtrade-web.himawari-group.co.jp/fxcwebpresen/Login.do','hitsFx','toolbar=no,location=yes,directories=no,status=yes,menubar=no, scrollbars=yes,resizable=yes,width=1015,height=660,top=0,left=0');
			return false;
		})

	});
}





/************************************************

	Description: 2009/04/09 16:17 AtsumiHayashi@Gluegent sec 1stのcommon.jsの内容を移行

************************************************/
function openBankSearch(){

	window.open('/bank/search2.do','bankSearch','width=610,height=730,status=yes,scrollbars=yes');

}
function openBankSearchAll(){

	window.open('/bank/search.do','bankSearch','width=610,height=730,status=yes,scrollbars=yes');

}

/*
  APP
  二重送信防止
*/
var DisableSubmit = {
    set: function(elements) {
        var _that = this;
        for (var i = 0; i < document.forms.length; ++i) {
            if (document.forms[i].onsubmit) {
                continue;
            }
            document.forms[i].onsubmit = function() {
            	//
			    for( var j = 0 ; j < windowSubmitEventArray.length ; j ++ ){
					windowSubmitEventArray[j]();
			    }

            	// button系をdisabledにする
                _that.setDisable(this.elements);
            };
        }
    },

    setDisable: function(elements) {
        for (var i = 0; i < elements.length; i++) {
            var element = elements[i];
            if (element.type == 'submit' || element.type == 'button' || element.type == 'image') {
                Set(element);
                unSet(element);
            }
        }

        function Set(button) {
            window.setTimeout(function() { button.disabled = true; }, 1);
        }
        function unSet(button) {
            window.setTimeout(function() { button.disabled = false; }, 10000);
        }
    }
}

var Submitted = {
    clear : function() {
        if (document.getElementById("SUBMITTED")) {
            document.getElementById("SUBMITTED").value = "";
        }
    },

    submit : function(obj) {
        if (!document.getElementById("SUBMITTED")) {
        	var newinput = document.createElement("input");
        	newinput.type = 'hidden';
        	newinput.id = 'SUBMITTED';
        	obj.form.appendChild(newinput);
        }
    	var submittedName = obj.name;
        if(!obj.name){
        	submittedName = obj.id;
        }
        document.getElementById("SUBMITTED").name = submittedName;
        DisableSubmit.setDisable(obj.form.elements);
        if(obj.form.submit.tagName){
        	alert("テンプレートが不正です。(タグ名称にsubmitという文字が使用されています。)");
        }
        obj.form.submit();
    }
}

var windowOnloadEventArray = new Array();
var onloadFlag = false;
var windowSubmitEventArray = new Array();

var httpObj = createXMLHttpRequest();
/**
 * XMLHttpRequestを取得し戻す。
 *
 *
 * @param cbFunc
 * @return XMLHttpRequest
 */
function createXMLHttpRequest() {
	var xmlHttpObject = null;

	// IE以外
	if (window.XMLHttpRequest) {
		xmlHttpObject = new XMLHttpRequest();
	// IE用
	} else if (window.ActiveXObject) {
		try {
			xmlHttpObject = new ActiveXObject("Msxml2.XMLHTTP");
		} catch(e) {
			xmlHttpObject = new ActiveXObject("Microsoft.XMLHTTP");
		}
	} else {
		return null;
	}

	if (xmlHttpObject) {
		return xmlHttpObject;
	}
}

function xmlHttpRequestFunc() {
	if (httpObj.readyState == 4 && httpObj.status == 200) {
		//alert(httpObj.responseText);
	}
	if (httpObj.readyState == 4 && httpObj.status == 404) {
		//alert("ファイルがありません。(404)");
	}
}
function keepAlive() {
	try {
		if (httpObj) {
			httpObj.open("GET", "/common/keepalive.html", true);
			httpObj.onreadystatechange = function() {
				xmlHttpRequestFunc();
			}
			httpObj.send(null);
		}
	} catch (e) {
		//
	}
}


// onload時に実行したいファンクションを配列に追加してください｡
function addOnloadFunction(func){
  if(onloadFlag){
    alert(func);
    func();
  }else{
    windowOnloadEventArray.push(func);
  }
}

function addSubmitFunction(func) {
	windowSubmitEventArray.push(func);
}

window.onload = function() {
    initialize();
    onloadFlag = true;
    for( var i = 0 ; i < windowOnloadEventArray.length ; i ++ ){
      windowOnloadEventArray[i]();
    }
    windowOnloadEventArray = null;
}

/**
 * 初期化処理
 */
function initialize() {
    DisableSubmit.set();
    Submitted.clear();

	// keepAlive(10分毎)
	setInterval('keepAlive()', 600000);
}

/**
 * Submitボタン以外でSubmitする場合に呼ぶ事。
 *
 * obj : submitしたObject
 */
function submittedButton(obj) {
    Submitted.submit(obj);
}
/**
 * ２重送信防止ロジック
 *
 *   例) <form onsubmit="return formDisabled(this)">
 *
 * @param fr FormObject
 */
/* 廃止の予感
var sw = false;
function formDisabled(fr) {
	if (sw) {
		//   TODO ここを通るのは、下記ボタン封鎖ロジック対応外の人達
		alert('処理中です。');
		return false;
	} else {
		sw = true;

		var obj = document.getElementsByTagName("input");
		for (var i=0; i<obj.length; i++) {
			var type = obj[i].getAttribute("type");
			if (type == "button" || type=="submit" || type=="reset" || type="image") {
				obj[i].disabled = true;
			}
			if (type == "text" || type=="password") {
				obj[i].readOnly = true;
			}
		}
		return true;
	}
}
*/

/**
 * Text項目をdisabledする
 *
 * @param name 項目ID
 * @param flag true:disabled / false:解除
 */
function disableText(name, flag){
	if (document.getElementById(name) != null) {
		//document.getElementById(name).disabled=flag;
		if(flag){
	    	document.getElementById(name).value="";
		}
		document.getElementById(name).readOnly=flag;
		document.getElementById(name).style.background=flag?'#eeeeee':'#ffffff';
	}
}

function disableTextByName(name, flag){
	if (document.getElementById(name) != null) {
		//document.getElementsByName(name)[0].disabled=flag;
		if(flag){
	    	document.getElementsByName(name)[0].value="";
		}
		document.getElementsByName(name)[0].readOnly=flag;
		document.getElementsByName(name)[0].style.background=flag?'#eeeeee':'#ffffff';
	}
}

function sonotaSelectText(selectName, textName){
  var selectItem = document.getElementsByName(selectName)[0];
  var flag = selectItem.options[selectItem.selectedIndex].text != "その他";
  disableTextByName(textName, flag);
}

function sonotaRadioText(radioName, textName, ch){
  var checkedValue = '';
  for( var i = 0 ; i < document.getElementsByName(radioName).length ; i ++ ){
    if(document.getElementsByName(radioName)[i].checked ){
	  checkedValue = document.getElementsByName(radioName)[i].value;
    }
  }
  disableTextByName(textName, checkedValue!=ch);
}

function addSonotaSelectText(selectName, textName){
  sonotaSelectText(selectName, textName);
  for( var i = 0 ; i < document.getElementsByName(selectName).length ; i ++ ){
	  document.getElementsByName(selectName)[i].onchange = function(){
	    sonotaSelectText(selectName,textName);
	  };
  }
}
function addSonotaRadioText(radioName, textName, ch){
  if(!ch){
    ch = '0';
  }
  sonotaRadioText(radioName, textName, ch);
  for( var i = 0 ; i < document.getElementsByName(radioName).length ; i ++ ){
	  document.getElementsByName(radioName)[i].onclick = function(){
	    sonotaRadioText(radioName,textName, ch);
	  };
  }
}

/**
 * Select項目をdisabledする
 *
 * @param name 項目ID
 * @param flag true:disabled / false:解除
 */
function disableSelect(name, flag) {
	if (document.getElementById(name) != null) {
		document.getElementById(name).disabled=flag;
		document.getElementById(name).style.background=flag?'#eeeeee':'#ffffff';
	}
}

/**
 * Checkbox項目をdisabledする
 *
 * @param name 項目ID
 * @param flag true:disabled / false:解除
 */
function disableCheckbox(name, flag) {
	if (document.getElementById(name) != null) {
		document.getElementById(name).disabled=flag;
		document.getElementById(name).style.background=flag?'#eeeeee':'#ffffff';
	}
}

/**
 * Button項目をdisabledする
 *
 * @param name 項目ID
 * @param flag true:disabled / false:解除
 */
function disableButton(name, flag){
	if (document.getElementById(name) != null) {
		document.getElementById(name).disabled=flag;
	}
}

/**
 * Raddio項目をdisabledする
 *
 * @param name 項目ID
 * @param flag true:disabled / false:解除
 */
function disableRadio(name, flag){
	if (document.getElementById(name) != null) {
		document.getElementById(name).disabled=flag;
	}
}

<!-- 閉じる -->
function winCls(){
    window.opener = window;
//    var win = window.open(location.href,"_self");
    var win = window.open("about:blank","_self");
    win.close();
}
