var __cmsController = "";
var __cmsForward = "_cms_forward_";
var __cmsForm = "_cms_form_";
var __cmsAppName = "Webサイト作成";

var _normalForwardProc = false;

var CMS_POPUP_LOADING_VIEW = "./loading.php";
var CMS_POPUP_WINDOW_NAME = "cmsWindow";
var CMS_SUB_WINDOW_NAME = "cmsSubWindow";
var CMS_HELP_WINDOW_NAME = "cmsHelpWindow";
var cms_popup_window = null;
var cms_sub_window = null;
var cms_help_window = null;

var _TYPE_OF_FUNCTION = "function";
var _TYPE_OF_UNDEFINED = "undefined";

function cms_forward(forwardName)
{
	cms_closeAllWindow();
	return cms_forward_noClose(forwardName);
}

function cms_forward_noClose(forwardName)
{
	return cms_doPost(forwardName, "_self");
}

function cms_forwardDL(forwardName)
{
	return cms_forward_noClose(forwardName);
}

function cms_newWindow(forwardName)
{
	return cms_doPost(forwardName, "_blank");
}

function cms_openWindow(forwardName)
{
	return cms_openWindowWithSize(forwardName, null, null);
}

function cms_openWindowWithSize(forwardName, width, height)
{
	cms_popup_window = cms_openPopup(CMS_POPUP_WINDOW_NAME, width, height);
	var retValue = cms_doPost(forwardName, CMS_POPUP_WINDOW_NAME);
	cms_popup_window.focus();
	return retValue;
}

function cms_openSubWindow(forwardName)
{
	cms_sub_window = cms_openPopup(CMS_SUB_WINDOW_NAME, null, null);
	var retValue = cms_doPost(forwardName, CMS_SUB_WINDOW_NAME);
	cms_sub_window.focus();
	return retValue;
}

function cms_openHelpWindow()
{
	cms_help_window = cms_openPopup(CMS_HELP_WINDOW_NAME, null, null);
	var retValue = cms_doPost("help", CMS_HELP_WINDOW_NAME);
	cms_help_window.focus();
	return retValue;
}

function cms_openPopup(windowName, width, height)
{
	var widthParam = (width != null) ? ("width=" + width + ", ") : "";
	var heightParam = (height != null) ? ("height=" + height + ", ") : "";
	
	return window.open(CMS_POPUP_LOADING_VIEW, windowName, widthParam + heightParam + "toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes");
}

function cms_closeWindow()
{
	cms_closeWindowCommon(cms_popup_window);
	cms_popup_window = null;
}

function cms_closeSubWindow()
{
	cms_closeWindowCommon(cms_sub_window);
	cms_sub_window = null;
}

function cms_closeHelpWindow()
{
	cms_closeWindowCommon(cms_help_window);
	cms_help_window = null;
}

function cms_closeWindowCommon(windowObj)
{
	if (windowObj != null)
	{
		try
		{
			windowObj.close();
		}
		catch (e)
		{
			reportError(e);
		}
	}
}

function cms_closeAllWindow()
{
	cms_closeSubWindow();
	cms_closeWindow();
	cms_closeHelpWindow();
}

function cms_closeApp(closeAll)
{
	if (typeof(adminLock_closeApp) == _TYPE_OF_FUNCTION)
	{
		adminLock_closeApp();
	}
	else
	{
		cms_closeAppProc(closeAll);
	}
}

function cms_closeAppProc(closeAll)
{
	if (closeAll) cms_closeAllWindow();
	
	cms_closeHelpWindow();
	window.close();
}

function cms_doPost(forwardName, target)
{
	_normalForwardProc = true;
	
	var cmsForm = $(__cmsForm);
	$(__cmsForward).value = forwardName;
	
	var retValue = true;
	try
	{
		cmsForm.target = target;
		cmsForm.submit();
	}
	catch (e)
	{
		retValue = false;
	}
	return retValue;
}