﻿var gYesFunction = null;
var gNoFunction = null;
var gCancelFunction = null;

function eaConfirm_Load() {
	var css = document.createElement("link");
	css.setAttribute("rel", "stylesheet");
	css.setAttribute("href", gAppPath + "/elexiajax/confirm.css?dt" + new Date());
	document.getElementsByTagName("head")[0].appendChild(css);

	var s = "<div id='ElexiAJAX_ConfirmBG' style='display:none'></div>";
	s += "<div id='ElexiAJAX_Confirm'>";
	s += "<div id='ElexiAJAX_Confirm_Message'></div>";
	s += "<div id='Buttons' nowrap>";
	s += "<input type='button' value='Yes' onclick='javascript:eaConfirm_Yes();' id='eaConfirm_Yes'>";
	s += "<input type='button' value='No' onclick='javascript:eaConfirm_No();' id='eaConfirm_No'>";
	s += "<input type='button' value='Cancel' onclick='javascript:eaConfirm_Cancel();' id='eaConfirm_Cancel'>";
	s += "</div></div>";
	s = s.replace(/'/g, String.fromCharCode(34));
	document.write(s);
}

function eaConfirm(message, yesFunction, noFunction, cancelFunction) {
	gYesFunction = yesFunction;
	gNoFunction = noFunction;
	gCancelFunction = cancelFunction;
	elm('ElexiAJAX_Confirm_Message').innerHTML = message;
	elm('ElexiAJAX_ConfirmBG').style.display = "block";
	elm('ElexiAJAX_ConfirmBG').style.height = document.documentElement.scrollHeight + "px";
	elm('ElexiAJAX_Confirm').style.display = "block";
	var top = document.documentElement.scrollTop;
	top += getWindowHeight() / 2;
	top -= elm('ElexiAJAX_Confirm').clientHeight / 2;
	elm('ElexiAJAX_Confirm').style.top = top + "px";
	elm('eaConfirm_Yes').focus();
	elm('eaConfirm_Cancel').style.display = "";
	if (!cancelFunction) elm('eaConfirm_Cancel').style.display = "none";

	elm('ElexiAJAX_Confirm').onkeypress = function() {
		if (event.keyCode == 27) eaConfirm_Cancel();	// [ESC]
		if (event.keyCode == 110) eaConfirm_No(); 		// n
		if (event.keyCode == 121) eaConfirm_Yes(); 		// y 
		if (event.keyCode == 99) eaConfirm_Cancel();	// c
	}
}


function eaConfirm_Yes() {
	if (!gYesFunction) return;
	gYesFunction();
	$('#ElexiAJAX_ConfirmBG').hide();
	$('#ElexiAJAX_Confirm').hide();
}
function eaConfirm_No() {
	if (!gNoFunction) return;
	gNoFunction();
	$('#ElexiAJAX_ConfirmBG').hide();
	$('#ElexiAJAX_Confirm').hide();
}
function eaConfirm_Cancel() {
	if (!gCancelFunction) return;
	gCancelFunction();
	$('#ElexiAJAX_ConfirmBG').hide();
	$('#ElexiAJAX_Confirm').hide();
}

