$(document).ready( function() {

	$(document).keydown( function(evt) {
		if (evt.keyCode == 13) {
			var element = (document.activeElement || window.getSelection().focusNode);
			if (element.tagName == "TEXTAREA") {
				return;
			}
			if (element.tagName == "INPUT") {
				if (element.type == "button") {
					return;
				}
				if (element.type == "submit") {
					return;
				}
			}
			if (element.tagName == "A") {
				return;
			}
			if (element.tagName == "BUTTON") {
				return;
			}
			evt.preventDefault();
		}
		return;
	});

	$("input.insert").click( function() {
		if (window.submitFlg) {
			return false;
		}

		var result = confirm("登録します。よろしいですか？");
		if (!result) {
			return false;
		}

		window.submitFlg = true;
		return true;
	});
	$("input.update").click( function() {
		if (window.submitFlg) {
			return false;
		}

		var result = confirm("更新します。よろしいですか？");
		if (!result) {
			return false;
		}

		window.submitFlg = true;
		return true;
	});
	$("input.delete").click( function() {
		if (window.submitFlg) {
			return false;
		}

		var result = confirm("表示内容を削除してよろしいでしょうか？");
		if (!result) {
			return false;
		}

		window.submitFlg = true;
		return true;
	});
	$("input.clear").click( function() {
		if (window.submitFlg) {
			return false;
		}

		var result = confirm("編集中の内容は破棄されます。よろしいですか？");
		if (!result) {
			return false;
		}

		window.submitFlg = true;
		return true;
	});
	$("input.purchase").click( function() {
		if (window.submitFlg) {
			return false;
		}

		var result = confirm("注文を行います。よろしいですか？");
		if (!result) {
			return false;
		}

		window.submitFlg = true;
		return true;
	});
	$("input.lock").click( function() {
		if (window.submitFlg) {
			return false;
		}
		window.submitFlg = true;
		return true;
	});
	$("a.lock").click( function() {
		if (window.submitFlg) {
			return false;
		}
		window.submitFlg = true;
		return true;
	});

	$("form").append("<input type='hidden' name='_script' value='true' />");

	if (window.setup) {
		window.setup.apply();
	}
});

function openWindow(url) {
	var child = window.open(url, "childWindow", 'width=700px, height=520px, menubar=no, toolbar=no, scrollbars=yes');
	window.onbeforeunload = function() {
		try {
			child.close();
		} catch (e) {
		}
	}

	child.focus();

}

function checkSideKeyword(keyword) {
	if(keyword == '' || keyword == null){
		alert('キーワードを入力してください');
		return false;
	}
	return true;
}

function openDialog(buttonElement, url, paramFields, returnFields, width, height, callbackFunc) {

	var realUrl = url;
	if (paramFields) {
		var paramFieldArray = paramFields.split(",");
		for (i in paramFieldArray) {
			if (i == 0) {
				realUrl = realUrl + "?";
			} else {
				realUrl = realUrl + "&";
			}

			var paramField = paramFieldArray[i];

			var $button = $(buttonElement);
			var $form = $button.parents("form");
			var $input = $form.find("input[name='" + paramField + "']");

			realUrl = realUrl + paramField + "=" + encodeURIComponent($input.get()[0].value);
		}
	}

	var returnFieldNameArray = returnFields.split(",");
	var returnFieldArray = new Array();
	for (i in returnFieldNameArray) {
		var returnFieldName = returnFieldNameArray[i];

		var $input = $("input[name='" + returnFieldName + "']");

		returnFieldArray.push($input);
	}
	window.returnFieldArray = returnFieldArray;
	window.callbackFunc = callbackFunc;

	var child = window.open(url, "childWindow", 'width=700px, height=650px, resizable=yes, menubar=no, toolbar=no, scrollbars=yes');

	window.onbeforeunload = function() {
		try {
			child.close();
		} catch (e) {
		}
	}

	child.focus();

	return false;
}

function returnOpener(returnFieldNames) {

	if (!returnFieldNames) {
		window.close();
		return;
	}

	if (window.opener.returnFieldArray) {
		var returnFieldValueArray = new Array();
		var returnFieldNameArray = returnFieldNames.split(",");
		for (i in returnFieldNameArray) {
			var returnFieldName = returnFieldNameArray[i];
			var inputs = document.getElementsByName(returnFieldName);

			returnFieldValueArray.push(inputs[0].value);
		}

		for (i in window.opener.returnFieldArray) {
			var $input = window.opener.returnFieldArray[i];
			if ($input) {
				$input.val(returnFieldValueArray[i]);
			}
		}
	}

	if (window.opener.callbackFunc) {
		window.opener.callbackFunc.apply(window.opener);
	}

	window.close();
}

