var defTitle = "Veriset Applications"

function VBAlert(title,mess,icon,mods) 
{
	try
	{
   		VBMsgBox(title,mess,icon,0,0,mods);
	}	
	catch(e){
		alert(mess);
	}
}

function VBConfirm(title,mess,icon,defbut,mods) 
{
	try
	{
      	icon = (icon==0) ? 0 : 2;
      	defbut = (defbut==0) ? 0 : 1;
		
		try
		{
	      	retVal = VBMsgBox(title,mess,icon,4,1,mods);
		}
		catch(e)
		{
	      	retVal = confirm(mess);
		}
		
      	retVal = (retVal==1);
   		return retVal;
	}	
	catch(e){
		return false;
	}
}


//*************************************************************************************
// Read the required message from xmlMessages
//*************************************************************************************
function GetVBMessageXML(sMessageNode, sMessageAttr)
{
	try
	{
		var xmlMessageNode = xmlMessages.documentElement.selectSingleNode(sMessageNode);
		var sMessageValue = new String();
		var nPercentIndex = 0;
		var nOldPercentIndex = 0;
		var sBuiltString = '';
	
		if(xmlMessageNode != null)
		{
			sMessageValue = window.GetAttributeMultiLine ? GetAttributeMultiLine(xmlMessageNode, sMessageAttr) : xmlMessageNode.getAttribute(sMessageAttr);

			if(sMessageValue != null && sMessageValue != '')
			{
				var nArgs = arguments.length;
				for(var nIndexArgs = 2; nIndexArgs < nArgs; nIndexArgs++)
				{
					nPercentIndex = sMessageValue.indexOf('%', nOldPercentIndex);
					sBuiltString = sBuiltString + 
								sMessageValue.substr(nOldPercentIndex, nPercentIndex - nOldPercentIndex) + 
								arguments[nIndexArgs];
					nOldPercentIndex = nPercentIndex + 1;
	
				}
				sBuiltString = sBuiltString + 
							sMessageValue.substr(nOldPercentIndex, 
												sMessageValue.length - nOldPercentIndex);
				
			}
			else
			{
				sBuiltString = sMessageAttr;
			}
		}
		else
		{
				sBuiltString = sMessageAttr;
		}
		
		return sBuiltString;
	}	
	catch(e){
		return defTitle;
	}
}


//*************************************************************************************
// Show the required message from xmlMessages
//*************************************************************************************
function LoadVBMessageXML(sMessageNode, sMessageAttr)
{
	try
	{
		var sExecute = 'var sMessage = GetVBMessageXML(';
		var sCommaSeparation = '';
		var nArgs = arguments.length;
		
		for(var nIndexArgs = 0; nIndexArgs < nArgs; nIndexArgs++)
		{
			if(nIndexArgs < nArgs - 1)
				sCommaSeparation = ',';
			else
				sCommaSeparation = '';
			
			sExecute = sExecute + '\'' + arguments[nIndexArgs].replace("'", "\\'") + '\'' + sCommaSeparation;
		}
		sExecute = sExecute + ');';
		
		eval(sExecute);
	
		VBAlert(defTitle, sMessage ,4,0);
	}	
	catch(e){
		return defTitle;
	}
}


//*************************************************************************************
// Confirm the required message from xmlMessages
//*************************************************************************************
function ConfirmVBMessageXML(sMessageNode, sMessageAttr)
{
	try
	{
		var sExecute = 'var sMessage = GetVBMessageXML(';
		var sCommaSeparation = '';
		var nArgs = arguments.length;
		
		for(var nIndexArgs = 0; nIndexArgs < nArgs; nIndexArgs++)
		{
			if(nIndexArgs < nArgs - 1)
				sCommaSeparation = ',';
			else
				sCommaSeparation = '';
			
			sExecute = sExecute + '\'' + arguments[nIndexArgs] + '\'' + sCommaSeparation;
		}
		sExecute = sExecute + ');';
		
		eval(sExecute);
	
		return VBConfirm(defTitle, sMessage , 1, 1, 0)
	}	
	catch(e){
		return defTitle;
	}
}


//*************************************************************************************
// Read the required Label from xmlLabels
//*************************************************************************************
function GetLabelXML(sLabelNode, sLabelAttr)
{
	try
	{
		var xmlLabelNode = xmlLabels.selectSingleNode(sLabelNode);
		
		var sLabelValue = new String();
	
		if(xmlLabelNode != null)
		{
			sLabelValue = window.GetAttributeMultiLine ? GetAttributeMultiLine(xmlLabelNode, sLabelAttr) : xmlLabelNode.getAttribute(sLabelAttr);
			if(sLabelAttr == null || sLabelAttr == '')
			{
				sLabelValue = sLabelAttr;
			}
		}
		else
		{
			sLabelValue = sLabelAttr;
		}
		
		return sLabelValue;
	}	
	catch(e){
		return defTitle;
	}
}


function SetWaitDisplay(bOnOff)
{
	try
	{
		var oPleaseWaitMsg = document.getElementById("PleaseWaitMsg");
		if(bOnOff)
		{
			var bIsIE = (window.IsIE ? IsIE() : true);
			
			oPleaseWaitMsg.style.top = ( (bIsIE ? document.body.clientHeight : window.innerHeight) / 2) - 40;
			oPleaseWaitMsg.style.left = ((bIsIE ? document.body.clientWidth : window.innerWidth) / 2) - 100;
		}
		oPleaseWaitMsg.style.display = (bOnOff) ? "" : "none";
	}	
	catch(e){
		alert(e.description);
		return defTitle;
	}
}


function SetStyleFromParent()
{
	var DEFAULT_STYLE = "../../Include/TourStyle/Default.css";

	try
	{
		
		var oParent = window.opener;
		
		if(oParent == null)
		{
			oParent = window.parent;
			if(oParent == null || oParent == window)
			{
				oParent = window.dialogArguments;
			}
		}
		
		var oParentTourStyle = oParent.document.getElementById("TourStyle");
		
		var oTourStyle = document.getElementById("TourStyle");

		if(oParentTourStyle)
		{
			oTourStyle.href = oParentTourStyle.href;
		}
		else
		{
			oTourStyle.href = DEFAULT_STYLE;
		}
	}	
	catch(e){
		try
		{
			var oTourStyle = document.getElementById("TourStyle");
			oTourStyle.href = DEFAULT_STYLE;
		}
		catch(e2){
			return false
		}
		return false;
	}
}


function IsOldIE()
{
	try
	{
		var bIsOldIE = false;
		var sAgentString = navigator.userAgent.toLowerCase();
		var nMSIEStartPos = sAgentString.indexOf(" msie ");
		if(nMSIEStartPos != -1)
		{
			if(sAgentString.indexOf("opera") == -1)
			{
				var nIEVersionEndPos = sAgentString.indexOf(";", nMSIEStartPos + 1);
				if(nIEVersionEndPos > nMSIEStartPos)
				{
					var sFullIEVersion = sAgentString.substring(nMSIEStartPos, nIEVersionEndPos);
					var nIEVersionStartPos = sFullIEVersion.indexOf(" ", 1) + 1;
					if(nIEVersionStartPos > 0)
					{
						var fIEVersion = parseFloat(sFullIEVersion.substring(nIEVersionStartPos, sFullIEVersion.length));
						if(fIEVersion < 6.0)
						{
							bIsOldIE = true;
						}
					}
				}
			}
		}
		
		return bIsOldIE;
	}	
	catch(e){
		return false;
	}
}

function mouseX(evt) {
if (evt.pageX) return evt.pageX;
else if (evt.clientX)
   return evt.clientX + (document.documentElement.scrollLeft ?
   document.documentElement.scrollLeft :
   document.body.scrollLeft);
else return null;
}

function mouseY(evt) {
if (evt.pageY) return evt.pageY;
else if (evt.clientY)
   return evt.clientY + (document.documentElement.scrollTop ?
   document.documentElement.scrollTop :
   document.body.scrollTop);
else return null;
}
