﻿var EXTERNAL_LINK_OVERLAY_ID = 'external_link_overlay';
var EXTERNAL_LINK_PROMPT_BOX_ID = 'external_link_prompt_box';
var EXTERNAL_LINK_PROMPT_BOX_SHADOW_ID = 'external_link_prompt_box_shadow';
var EXTERNAL_LINK_PROMPT_MOUSE_X = 0;
var EXTERNAL_LINK_PROMPT_MOUSE_Y = 0;
var EXTERNAL_LINK_PROMPT_SHADOW_BORDER = 10;
var EXTERNAL_LINK_IN_NETWORK_SITES = new Array('worldinsurancestore.com','genworth.com','imglobal.com');
var EXTERNAL_LINK_SCROLL_TIMEOUT_ID = 0;
var EXTERNAL_LINK_SCROLL_WATCH = false;

function PromptExternalLink_Show(link)
{
    var c = document.createElement('div');
    c.setAttribute('id', EXTERNAL_LINK_OVERLAY_ID);
    c.className = 'Redirect_Prompt_Overlay';
    c.onclick = function() { PromptExternalLink_Hide(); }
    document.body.appendChild(c);
    
    c = document.createElement('div');
    c.setAttribute('id', EXTERNAL_LINK_PROMPT_BOX_ID);
    c.className = 'Redirect_Prompt_Box';
    
    var p = document.createElement('p');
    var i = document.createElement('img');
    i.setAttribute('src','/WebResources/Icons/stock/gif/48/normal/textchat_48.gif');
    i.setAttribute('alt','Info');
    var t = document.createTextNode("You are being directed to another website that is hosted by an approved partner of the World Insurance Association, Inc. Group of Companies. Do you wish to continue?");
    p.appendChild(i);
    p.appendChild(t);
    c.appendChild(p);
    
    var d = document.createElement('div');
    var a = document.createElement('a');
    a.className = 'ok';
    a.href = link;
    a.target = '_blank';
    a.title = 'This option will open a new window so you can both remain on our website, and view thew referenced page.';
    a.onclick = function() { PromptExternalLink_Hide(); }
    t = document.createTextNode("Yes (New Window)");
    a.appendChild(t);
    d.appendChild(a);
    
    a = document.createElement('a');
    a.className = 'no';
    a.href = 'javascript:void(0);';
    a.title = 'This option will close the prompt and you will not be forwarded to a new page.';
    a.onclick = function()  { PromptExternalLink_Hide(); }
    t = document.createTextNode("No (Close Prompt)");
    a.appendChild(t);
    d.appendChild(a);
    c.appendChild(d);
    document.body.appendChild(c);
    
    c = document.createElement('div');
    c.setAttribute('id', EXTERNAL_LINK_PROMPT_BOX_SHADOW_ID);
    c.className = 'Redirect_Prompt_Shadow';
    c.style.width = (PromptExternalLink_GetPromptBoxWidth() + (EXTERNAL_LINK_PROMPT_SHADOW_BORDER * 2)) + 'px';
    c.style.height = (PromptExternalLink_GetPromptBoxHeight() + (EXTERNAL_LINK_PROMPT_SHADOW_BORDER * 2)) + 'px';
    document.body.appendChild(c);

    EXTERNAL_LINK_SCROLL_WATCH = true;
    PromptExternalLink_AdjustScrollPosition()
}
function PromptExternalLink_Hide()
{
    EXTERNAL_LINK_SCROLL_WATCH = false;
    clearTimeout(EXTERNAL_LINK_SCROLL_TIMEOUT_ID);
    document.body.removeChild(document.getElementById(EXTERNAL_LINK_OVERLAY_ID));
    document.body.removeChild(document.getElementById(EXTERNAL_LINK_PROMPT_BOX_ID));
    document.body.removeChild(document.getElementById(EXTERNAL_LINK_PROMPT_BOX_SHADOW_ID));
}
function PromptExternalLink_GetTopPosition()
{
    return (PromptExternalLink_GetOverlayHeight() / 2) - ((PromptExternalLink_GetPromptBoxHeight() + (EXTERNAL_LINK_PROMPT_SHADOW_BORDER * 2)) / 2) + document.documentElement.scrollTop;
}
function PromptExternalLink_GetShadowTopPosition()
{
    return PromptExternalLink_GetTopPosition() - EXTERNAL_LINK_PROMPT_SHADOW_BORDER;
}
function PromptExternalLink_GetLeftPosition()
{
    return (PromptExternalLink_GetOverlayWidth() / 2) - ((PromptExternalLink_GetPromptBoxWidth() + (EXTERNAL_LINK_PROMPT_SHADOW_BORDER * 2)) / 2);
}
function PromptExternalLink_GetShadowLeftPosition()
{
    return PromptExternalLink_GetLeftPosition() - EXTERNAL_LINK_PROMPT_SHADOW_BORDER;
}
function PromptExternalLink_GetPromptBoxWidth()
{
    return document.getElementById(EXTERNAL_LINK_PROMPT_BOX_ID).offsetWidth;
}
function PromptExternalLink_GetPromptBoxHeight()
{
    return document.getElementById(EXTERNAL_LINK_PROMPT_BOX_ID).offsetHeight;
}
function PromptExternalLink_GetOverlayWidth()
{
    return document.getElementById(EXTERNAL_LINK_OVERLAY_ID).offsetWidth;
}
function PromptExternalLink_GetOverlayHeight()
{
    return document.getElementById(EXTERNAL_LINK_OVERLAY_ID).offsetHeight;
}
function PromptExternalLink_AdjustScrollPosition()
{
    PromptExternalLink_SetPosition(EXTERNAL_LINK_OVERLAY_ID, document.documentElement.scrollTop, 0);
    PromptExternalLink_SetPosition(EXTERNAL_LINK_PROMPT_BOX_ID, PromptExternalLink_GetTopPosition(), PromptExternalLink_GetLeftPosition());
    PromptExternalLink_SetPosition(EXTERNAL_LINK_PROMPT_BOX_SHADOW_ID, PromptExternalLink_GetShadowTopPosition(), PromptExternalLink_GetShadowLeftPosition());
    
    if(EXTERNAL_LINK_SCROLL_WATCH) { EXTERNAL_LINK_SCROLL_TIMEOUT_ID = setTimeout('PromptExternalLink_AdjustScrollPosition()',1); }
}
function PromptExternalLink_SetPosition(id, top, left)
{
    var d = document.getElementById(id);
    d.style.top = top + 'px';
    d.style.left = left + 'px';
}
function PromptExternalLink_AttachPrompt(container)
{
    var a = document.getElementById(container).getElementsByTagName('a');
    for(i = 0; i < a.length; i++)
    {
        var inList = false;
        for(s = 0; s < EXTERNAL_LINK_IN_NETWORK_SITES.length; s++)
        {
            if(a[i].href.toLowerCase().indexOf(EXTERNAL_LINK_IN_NETWORK_SITES[s].toString().toLowerCase()) >= 0)
            {
                inList = true;
                break;
            }
        }
        
        if(inList && document.attachEvent)
        {
            a[i].setAttribute('href',"javascript:PromptExternalLink_Show('" + a[i].href + "');");
            a[i].removeAttribute('target');
        }
        else if(inList) { a[i].setAttribute('onclick',"PromptExternalLink_Show('" + a[i].href + "'); return false;"); }
    }
}