﻿var baseTop = 62;
var baseLeft = 64;
var needleLoaded = false;
var helpWindow = null;
var helpIFrame = null;

function stopNeedle()
{
    if (needleLoaded)
    {
        if (document.obj1) document.obj1.Stop();
    }
}

function gotoFrame(frame)
{
    if (needleLoaded)
    {
        frame = frame-0;
        if (document.obj1)
        {
            if (document.obj1)
            {
                document.obj1.GotoFrame(frame);
            }
        }
    }
}

function startNeedle()
{
    if (!needleLoaded)
    {
        if (document.obj1 != null)
        {
            needleLoaded = true;
        }
        else
        {
            setTimeout("startNeedle()",25);
        }
    }    
}

function initSpinner()
{
    setTimeout("startNeedle()",25);
}

function GetRotation(x,y)
{
    Pi = 3.14159265;
    x = x - baseLeft;
    y = y - baseTop;

    if (x==0) x = 1;

    Gradient = y/x;
    if (x < 0)
    {
        angle = 270 + (Math.atan(Gradient) * (180 / Pi));
    }
    else
    {
        angle = 90 + (Math.atan(Gradient) * (180 / Pi));
    }

    while (angle > 359)
    {
        angle = angle - 360;
    }

    gotoFrame(angle);
}

// Detect if the browser is IE or not.
// If it is not IE, we assume that the browser is NS.
var IE = document.all?true:false

// If NS -- that is, !IE -- then set up for mouse capture
if (!IE) document.captureEvents(Event.MOUSEMOVE)

// Set-up to use getMouseXY function onMouseMove
document.onmousemove = getMouseXY;

// Temporary variables to hold mouse x-y pos.s
var tempX = 0
var tempY = 0

// Main function to retrieve mouse x-y pos.s

function getMouseXY(e) {
    try
    {
      if (IE) { // grab the x-y pos.s if browser is IE
        tempX = event.clientX + document.body.scrollLeft
        tempY = event.clientY + document.body.scrollTop
      } else {  // grab the x-y pos.s if browser is NS
        tempX = e.pageX
        tempY = e.pageY
      }  
      // catch possible negative values in NS4
      if (tempX < 0){tempX = 0}
      if (tempY < 0){tempY = 0}  
      // show the position values in the form named Show
      // in the text fields named MouseX and MouseY
      GetRotation(tempX,tempY);
      return true
    }
    catch(e)
    {
        return false
    }
}

function copyToClipboard(text)
{
    text = text.replace(/<br \/>/gi,"\r\n");
    text = text.replace(/<br>/gi,"\r\n");
    text = text.replace(/<br\/>/gi,"\r\n");
    window.clipboardData.setData("Text",text);
    window.status = "'" + text + "' was copied to the clipboard";
}

function showHelp(btn,srcText)
{
	closeHelp();
	
	if (document.getElementById(srcText))
	{
	    helpDiv = document.createElement("DIV");
	    helpDiv.id = "helpDiv";
	    helpDiv.className = "help_mainDiv";
	    helpDiv.style.top = DL_GetElementTop(btn) + "px";
	    helpDiv.style.left = DL_GetElementLeft(btn) + "px";
    	
	    headDiv = document.createElement("DIV");
	    headDiv.id = "headDiv";
	    headDiv.className = "help_headDiv"
    	
	    textDiv = document.createElement("DIV");
	    textDiv.className = "help_textDiv";
	    textDiv.innerHTML = document.getElementById(srcText).value;
    	
	    closeBtn = document.createElement("INPUT");
	    closeBtn.type = "button";
	    closeBtn.className = "help_closeBtn";
	    closeBtn.onclick = closeHelp;				
    					
	    headDiv.appendChild(closeBtn);				
	    helpDiv.appendChild(headDiv);
	    helpDiv.appendChild(textDiv);
	    document.body.appendChild(helpDiv);
	    
	    if (document.all) 
	    {
	        helpIFrame = document.createElement("IFRAME");
	        helpIFrame.style.top = DL_GetElementTop(btn) + "px";
	        helpIFrame.style.left = DL_GetElementLeft(btn) + "px";
	        helpIFrame.id = "helpIFrame";
	        helpIFrame.style.height = helpDiv.offsetHeight;
	        helpIFrame.style.width = helpDiv.offsetWidth;
	        document.body.appendChild(helpIFrame);
	    }
	    
	    helpWindow = helpDiv;
	}
	else
	{
	    alert("The Source Element for this help file cannot be found.  Expecting " + srcText);
	}
}

function closeHelp()
{
	if (helpWindow)
	{
		document.body.removeChild(helpWindow);
		if (helpIFrame) document.body.removeChild(helpIFrame);
		helpWindow = null;
		helpIFrame = null;
	}
}

function DL_GetElementLeft(eElement)
{
    var nLeftPos = eElement.offsetLeft;          // initialize var to store calculations
    var eParElement = eElement.offsetParent;     // identify first offset parent element  
    while (eParElement != null)
    {                                            // move up through element hierarchy
        nLeftPos += eParElement.offsetLeft;      // appending left offset of each parent
        eParElement = eParElement.offsetParent;  // until no more offset parents exist
    }
    return nLeftPos;                             // return the number calculated
}

function DL_GetElementTop(eElement)
{
    var nTopPos = eElement.offsetTop;            // initialize var to store calculations
    var eParElement = eElement.offsetParent;     // identify first offset parent element  
    while (eParElement != null)
    {                                            // move up through element hierarchy
        nTopPos += eParElement.offsetTop;        // appending top offset of each parent
        eParElement = eParElement.offsetParent;  // until no more offset parents exist
    }
    return nTopPos;                              // return the number calculated
}

function MM_swapImgRestore() 
{ 
    var i, x, a = document.MM_sr; for (i = 0; a && i < a.length && (x = a[i]) && x.oSrc; i++) x.src = x.oSrc;
}
function MM_preloadImages() 
{
    var d = document; if (d.images) {
        if (!d.MM_p) d.MM_p = new Array();
        var i, j = d.MM_p.length, a = MM_preloadImages.arguments; for (i = 0; i < a.length; i++)
            if (a[i].indexOf("#") != 0) { d.MM_p[j] = new Image; d.MM_p[j++].src = a[i]; } 
    }
}

function MM_findObj(n, d) 
{ 
    var p, i, x; if (!d) d = document; if ((p = n.indexOf("?")) > 0 && parent.frames.length) {
        d = parent.frames[n.substring(p + 1)].document; n = n.substring(0, p);
    }
    if (!(x = d[n]) && d.all) x = d.all[n]; for (i = 0; !x && i < d.forms.length; i++) x = d.forms[i][n];
    for (i = 0; !x && d.layers && i < d.layers.length; i++) x = MM_findObj(n, d.layers[i].document);
    if (!x && d.getElementById) x = d.getElementById(n); return x;
}

function MM_swapImage() 
{ 
    var i, j = 0, x, a = MM_swapImage.arguments; document.MM_sr = new Array; for (i = 0; i < (a.length - 2); i += 3)
        if ((x = MM_findObj(a[i])) != null) { document.MM_sr[j++] = x; if (!x.oSrc) x.oSrc = x.src; x.src = a[i + 2]; }
}



