// Copyright DOVICO Software (C)2008
var DBINIT_NO_WEB_SERVICES = "-100";
var DBINIT_SUCCESS = "0";
var DBINIT_UPGRADE_NEEDED = "1";
var DBINIT_DEMO_EXPIRED = "2";
var DBINIT_ADMIN_ACCOUNT_NEEDED = "3";



if(this.window != window.top)
{
	window.top.location = window.location;
}


function OnLoginLoaded()
{
	SetFocus('txtLogin');
	
	
	OnSelectDatabase();
}


function SetFocus(sControlID)
{
	var refControl = document.getElementById(sControlID);
	refControl.focus();
}


function OnSelectDatabase()
{
	var sbXml = new CStringBuilderXml(false);
	
	
	var sDatabase = GetSelectedDatabase();
	if (sDatabase == "") {return;}
	
	
	sbXml.AppendString("<DATABASE DATABASE=\"", sDatabase);
	sbXml.Append("\"/>");
	
	
	var xdResult = ExecuteServerAction("DataWrapperDatabaseInitialize", sbXml.ToString(), false, null, null, null, false);
	
	
	var xnlResults = xdResult.getElementsByTagName("RESULT");
	if (xnlResults.length != 0)
	{
		var xeResult = xnlResults[0];
		
		
		var iStatus = xeResult.getAttribute("STATUS");
		var iDaysLeft = xeResult.getAttribute("DAYSLEFT");
		
		
		switch (iStatus)
		{
			
			case DBINIT_SUCCESS:
			{
				
				if (iDaysLeft > 0 && iDaysLeft < 6)
				{
					var sMessage = IDS_DEMO_DAYS_LEFT.replace("{0:G}", iDaysLeft);
					alert(sMessage);
				}
				
				return true;
			}
			
			case DBINIT_UPGRADE_NEEDED:
			{
				
				if (confirm(IDS_UPGRADE_DATABASE))
				{
					
					var divUpgrade = document.getElementById("divUpgrade").style.display = "inline";
					
					
					setTimeout(new Function("UpgradeDatabase('" + sbXml.ToString() + "')"), 200);
				}
				
				break;
			}
			
			case DBINIT_DEMO_EXPIRED:
			{
				
				alert(IDS_DEMO_EXPIRED);
				
				
				document.getElementById("divDemoExpired").style.display = "inline";
				
				
				OpenRegistrationWindow();
				
				break;
			}
			
			case DBINIT_ADMIN_ACCOUNT_NEEDED:
			{
				if (confirm(IDS_CREATE_ADMIN))
				{
					
					document.getElementById("divCreateAdmin").style.display = "inline";
					
					
					OpenCreateAdminWindow()
				}
				break;
			}
			case DBINIT_NO_WEB_SERVICES:
			{
				alert("Unable to create a web services connection.");
				break;
			}
		}		
	}
	
	
	return false;
}

function OnLoginSubmit()
{
	return OnSelectDatabase();
}


function GetDatabaseDropdown()
{
	return document.getElementById("ddlDatabase");
}


function GetSelectedDatabase()
{
	var ddlDatabase = GetDatabaseDropdown();
	
	
	if (ddlDatabase.selectedIndex == -1) {return "";}
	
	return ddlDatabase.options[ddlDatabase.selectedIndex].text;
}


function UpgradeDatabase(sUpgradeXml)
{
	ExecuteServerAction("DataWrapperDatabaseUpgrade", sUpgradeXml, false, null, null, null, false);
					
	divUpgrade.style.display = "none";
}


function OpenRegistrationWindow()
{
	if (window.open("frm_register_database.aspx?DBName=" + GetSelectedDatabase(), "RegisterDatabase", "height=270,width=415,menubar=no,scrollbars=no,status=no") != null)
	{
		
		document.getElementById("divDemoExpired").style.display = "none";
	}
}


function OpenCreateAdminWindow()
{
	
	if (window.open("frm_create_admin.aspx?login=txtLogin&password=txtPassword&DBName=" + GetSelectedDatabase(), "CreateAdmin", "height=270,width=340,menubar=no,scrollbars=no,status=no"))
	{
		document.getElementById("divCreateAdmin").style.display = "none";
	}
}
