// required setting
// 1.contextPath
// 2.localeLanguage
// 3.currentViewId
// 4.submittingMessage
// 5.httpPort
// 6.httpsPort

// preventing dobule submit
var navigatable = true;
function setDoubleSubmitPrevention() {
	navigatable = false;
	setTimeout("navigatable = true;", 5000);
}
function dl(action) {
	if (navigatable) {
		document.getElementById("Form").action = contextPath + action + "/" + localeLanguage + "/download.do";
		document.getElementById("Form").submit();
	} else {
		alert(submittingMessage);
	}
}
function navigate(action, command) {
	if (navigatable) {
		document.getElementById("Form").action = contextPath + action + "/" + localeLanguage + "/" + command + ".do";
		document.getElementById("Form").submit();
		setDoubleSubmitPrevention();
	} else {
		alert(submittingMessage);
	}
}
function login() {
	if (navigatable) {
		var form = document.getElementById("LoginForm");
		form.action = "https://" + document.domain + ":" + httpsPort + contextPath + "/login.do";
		form.loginId.value = document.getElementById("Form").loginId.value;
		form.password.value = document.getElementById("Form").password.value;
		form.submit();
		setDoubleSubmitPrevention();
	} else {
		alert(submittingMessage);
	}
}
function adminLogin() {
	if (navigatable) {
		var form = document.getElementById("LoginForm");
		form.action = "https://" + document.domain + ":" + httpsPort + contextPath + "/admin/login.do";
		form.loginId.value = document.getElementById("Form").loginId.value;
		form.password.value = document.getElementById("Form").password.value;
		form.submit();
		setDoubleSubmitPrevention();
	} else {
		alert(submittingMessage);
	}
}
function logout() {
	if (navigatable) {
		document.getElementById("Form").action = "https://" + document.domain + ":" + httpsPort + contextPath + "/logout.do";
		document.getElementById("Form").submit();
		setDoubleSubmitPrevention();
	} else {
		alert(submittingMessage);
	}
}
function adminLogout() {
	if (navigatable) {
		document.getElementById("Form").action = "https://" + document.domain + ":" + httpsPort + contextPath + "/admin/logout.do";
		document.getElementById("Form").submit();
		setDoubleSubmitPrevention();
	} else {
		alert(submittingMessage);
	}
}
function registerForm() {
	if (navigatable) {
		document.getElementById("Form").action = "https://" + document.domain + ":" + httpsPort + contextPath + "/user/register/input/" + localeLanguage + "/initialize.do";
		document.getElementById("Form").submit();
		setDoubleSubmitPrevention();
	} else {
		alert(submittingMessage);
	}
}
function reminderForm() {
	if (navigatable) {
		document.getElementById("Form").action = "https://" + document.domain + ":" + httpsPort + contextPath + "/reminder/home/" + localeLanguage + "/initialize.do";
		document.getElementById("Form").submit();
		setDoubleSubmitPrevention();
	} else {
		alert(submittingMessage);
	}
}
function navigateToAnchor(action, command, anchor) {
	if (navigatable) {
		document.getElementById("Form").action = contextPath + action + "/" + localeLanguage + "/" + command + ".do#" + anchor;
		document.getElementById("Form").submit();
		setDoubleSubmitPrevention();
	} else {
		alert(submittingMessage);
	}
}
function setParameter(name, value) {
	document.getElementsByName(name)[0].value = value;
//	alert(document.getElementsByName(name)[0].value);
}
function getParameter(name) {
	return document.getElementsByName(name)[0].value;
}
function changeLocale(locale) {
	setParameter('locale', locale);
	navigate("/" + currentViewId.replace(/_/g, "/") ,"changeLocale");
}
function navigateNavigatePopup(path, width, height) {
	var target = "navigate" + width + "_" + height;
	var w = window.open("",
					target,
					"width=" + width + ",height=" + height)
	w.focus();
	var originalPath = getParameter('path'); 
	setParameter('path', path);
	document.getElementById("Form").target = target;
	document.getElementById("Form").action = contextPath + "/help/navigate/popup/ja/show.do";
	document.getElementById("Form").submit();
	document.getElementById("Form").target = "_self";
	setParameter('path', originalPath);
}
function navigatePopup(action, command) {
	var target = "popup" + action.replace(/\//g, "_") + "_" + command;
	var w = window.open("", target);
	w.focus();
	document.getElementById("Form").target = target;
	document.getElementById("Form").action = contextPath + action + "/" + localeLanguage + "/" + command + ".do";
	document.getElementById("Form").submit();
	document.getElementById("Form").target = "_self";
}
function navigatePopupToAnchor(action, command, anchor) {
	var target = "popup" + action.replace(/\//g, "_") + "_" + command;
	var w = window.open("", target);
	w.focus();
	document.getElementById("Form").target = target;
	document.getElementById("Form").action = contextPath + action + "/" + localeLanguage + "/" + command + ".do#" + anchor;
	document.getElementById("Form").submit();
	document.getElementById("Form").target = "_self";
}
function setDisabled(elementName, disabled) {
	var i;
	for(i = 0; i < document.getElementsByName(elementName).length; i++) {
		document.getElementsByName(elementName)[i].disabled = disabled;
		if(document.getElementsByName(elementName)[i].checked) {
			setDisabled(document.getElementsByName(elementName)[i].value, disabled);
		}
	}
}
function changeTotal(parentName, targetName) {
	var element = document.getElementsByName(parentName)[0];
	setDisabled(targetName, element.checked);
}
function previewMaterial(action) {
	var target = "material_preview";
	var w = window.open("",
					target,
					"width=635,height=650, toolbar=no,location=no,directories=no,status=yes,menubar=yes,scrollbars=yes,resizable=yes")
	w.focus();
	document.getElementById("Form").target = target;
	navigate(action, 'preview');
	document.getElementById("Form").target = "_self";
}
function switchDisplay(actionId,divId,noneMessage,inlineMessage) {
	var flag = document.getElementById(divId).style.display;
	if (flag == "inline"){
		 document.getElementById(divId).style.display = "none";
		 document.getElementById(actionId).innerHTML = noneMessage;
	} else {
		 document.getElementById(divId).style.display = "inline";
		 document.getElementById(actionId).innerHTML = inlineMessage;
	}
}
function showMaterial(no) {
	var target = "material" + "_" + no;
	var w = window.open("",
					target,
					"width=635,height=650, toolbar=no,location=no,directories=no,status=yes,menubar=yes,scrollbars=yes,resizable=yes")
	w.focus();
	var originalNo = getParameter('no'); 
	setParameter('no', no);
	document.getElementById("Form").target = target;
	navigate('/material/' + no, 'initialize');
	document.getElementById("Form").target = "_self";
	navigatable = true;
	setParameter('no', originalNo);
}
function leftZeroPad(element) {
	var i;
	var padded = "";
	for (i = element.value.length; i < element.maxLength; i++ ) {
		padded += "0";
	}
	element.value = padded + element.value;
}
function changeParent(parentName, check) {
	if(!check){
		var element = document.getElementsByName(parentName)[0];
		element.checked=false;
	}
}
function changeSelectedItems(baseName, fromIndex, toIndex, check) {
	for(index = fromIndex; index <= toIndex; index++){
		var elementName = index + ":" + baseName;
		var element = document.getElementsByName(elementName)[0];
		element.checked=check
	}
}
function showPlagin(idno){
	pc = ('plagClose' + (idno));
	po = ('plagOpen' + (idno));
	if( document.getElementById(pc).style.display == "none" ) {
		document.getElementById(pc).style.display = "block";
		document.getElementById(po).style.display = "none";
		document.getElementById('detail').value = true;
	} else {
		document.getElementById(pc).style.display = "none";
		document.getElementById(po).style.display = "block";
		document.getElementById('detail').value = false;
	}
}
function getElementValue(id){
	return document.getElementById(id).value;
}
