

/*******************************************
Client Script
********************************************/


//
// Pull Down Navigation. Source: http://javascript-array.com/scripts/jquery_simple_drop_down_menu/
//

var timeout         = 500;
var closetimer		= 0;
var ddmenuitem      = 0;

function jsddm_open()
{	jsddm_canceltimer();
	jsddm_close();
	ddmenuitem = $(this).find('ul').eq(0).css('visibility', 'visible');}

function jsddm_close()
{	if(ddmenuitem) ddmenuitem.css('visibility', 'hidden');}

function jsddm_timer()
{	closetimer = window.setTimeout(jsddm_close, timeout);}

function jsddm_canceltimer()
{	if(closetimer)
	{	window.clearTimeout(closetimer);
		closetimer = null;}}

$(document).ready(function()
{	
    $('#jsddm > li').bind('mouseover', jsddm_open);
	$('#jsddm > li').bind('mouseout',  jsddm_timer);});

document.onclick = jsddm_close;

//
// Client Scripts
//

function popUp(URL, w, h) 
{
    day = new Date();
    id = day.getTime();
    eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=0,width=" + w + ",height=" + h + "');");
}

function openAnniversary()
{
    var newWin = window.open('Anniversary.html','Window1', 'menubar=no,width=450,height=300,toolbar=no');
}

function openBirmingham()
{
    var newWin = window.open('Birmingham.html','Window1', 'menubar=no,width=450,height=300,toolbar=no');
}

function openCharlotte() {
    var newWin = window.open('Charlotte.html', 'Window1', 'menubar=no,width=450,height=300,toolbar=no');
}
function getE(id)
{
    return document.getElementById(id);
}



/*
You Tube Preview
*/

function YouTubePreview_Launch(o, ResourceUrl)
{
    // get x/y of object that triggered preview
    
    var Container = document.getElementById("YouTubePreview");
    
    if (Container)
    {
        Container.style.display = "block";
        Container.style.top = getY(o) + "px";
        Container.style.left = getX(o) + "px";
    }
    
    var so = new SWFObject(ResourceUrl, "YouTubeVideoContainer", "425", "350", "7");
    so.addParam("wmode", "transparent");
    so.write("YouTubeVideoContainer");
}

function YouTube_ClosePreview()
{
    var Container = document.getElementById("YouTubePreview");
    if (Container)
    {
        Container.style.display = "none";
    }
    
    var so = new SWFObject(null, "YouTubeVideoContainer", "425", "350", "7");
    so.write("YouTubeVideoContainer");
}

function ImagePreview_Launch(o, ResourceUrl)
{
    // get x/y of object that triggered preview
    var Container = document.getElementById("ImagePreview");
    
    if (Container)
    {
        Container.style.display = "block";
        Container.style.top = getY(o) + "px";
        Container.style.left = getX(o) + "px";
        
        var img = new Image() 
        img.src = ResourceUrl;
        img.onLoad = ImagePreview_SetDimentions(Container, img);
        Container.appendChild(img);
    }
}

function ImagePreview_SetDimentions(o, img)
{
    o.style.width = img.width;
    o.style.height = img.height;
}

function ImagePreview_ClosePreview()
{
    var Container = document.getElementById("ImagePreview");
    if (Container)
    {
        Container.style.display = "none";
        
        if (Container.childNodes.length > 0)
            Container.removeChild(Container.childNodes[0]);
    }
}

/*
Add Comment
*/

function AddComment_Launch(CommentContainerId, BlogPostId)
{
    // get x/y of object that triggered preview
    var o = getE(CommentContainerId);
    var Container = getE("BlogAddComment");
    var h_BlogPostId = getE("AddComment_BlogPostId");
    
    if (Container)
    {
        Container.style.display = "block";
        Container.style.top = getY(o) + "px";
        Container.style.left = getX(o) + "px";
        
        if (h_BlogPostId)
            h_BlogPostId.value = BlogPostId;
    }
}

function BlogAddComment_Close()
{
    var Container = document.getElementById("BlogAddComment");
    if (Container)
    {
        Container.style.display = "none";
    }
}

function BlogViewComment(ContainerId)
{
    var o = getE(ContainerId);
    
    if (o)
    {
        if (o.style.display == "block")
            o.style.display = "none";
        else
            o.style.display = "block";
    }
}

/*
Image Preview
*/

// JScript File
var ActivePreview = "";

function ShowPreview(parent, id, imgUrl)
{
    if (ActivePreview == id)
        return;
    
    // reset active Preview
    ResetActivePreview();
    
    var newImage = document.createElement("img");
    newImage.id = id + "_Image";
    newImage.src = imgUrl;
    
    var PreviewContainer = document.getElementById(id);
    
    if (PreviewContainer)
    {
        var PosY = getY(parent);
        
        PreviewContainer.style.width = "auto";
        PreviewContainer.style.height = "auto";
        PreviewContainer.style.top = PosY + "px";
        PreviewContainer.style.left = getX(parent) + "px";
        PreviewContainer.style.display = "block";
        PreviewContainer.style.background = "#fff";
        
        var ImageContainer = document.getElementById(id + "_ImageContainer");
        
        if (ImageContainer)
        {
            var CurrentImage = document.getElementById(id + "_Image");
            
            if (CurrentImage)
            {
                ImageContainer.removeChild(CurrentImage);
            }
            
            ImageContainer.appendChild(newImage);
        }
    }
    
    // set active Preview
    ActivePreview = id;
}

var CheckMouseXY = null;

function InitHidePreview()
{
    CheckMouseXY = setInterval("HidePreview()", 500);
}

function HidePreview()
{
    var PreviewContainer = document.getElementById(ActivePreview);
    
    if (PreviewContainer)
    {
        // Get top
        var a_top = getY(PreviewContainer);
        // Get left
        var a_left = getX(PreviewContainer);
        // Get width
        var a_width = getWidth(PreviewContainer);
        // Get Height
        var a_height = getHeight(PreviewContainer);
        
        // draw a square that is the pop up Preview, if the mouse is outside the Preview, reset it
        
        //alert("CursorY: " + CursorY + " CursorX: " + CursorX + " Box Top: " + a_top + " Right:" + (a_left + a_width) + " Bottom:" + (a_top + a_height) + " Left: " + a_left);
        
        if ((CursorY > (a_top + a_height)) || (CursorY < a_top) || (CursorX > (a_left + a_width)) || (CursorX < a_left))
        {
            ResetActivePreview();
        }
    }
    else
    {
        ResetActivePreview();
    }
}

function ResetActivePreview()
{
    var a = document.getElementById(ActivePreview);
    
    if (a)
    {
        a.style.display = "none";
    }
    ActivePreview = null;
    
    clearInterval(CheckMouseXY);
}

// Temporary variables to hold mouse x-y pos.s
var CursorX = 0
var CursorY = 0

function getMouseXY(evt) 
{
    try {
    evt = evt || event;
    CursorX = evt.pageX || evt.clientX + ScrollLeft();
    CursorY = evt.pageY || evt.clientY + ScrollTop();
    CursorX = (CursorX<0) ? 0 : CursorX;
    CursorY = (CursorY<0) ? 0 : CursorY;
    //document.title = 'X:' + CursorX + ' Y:'+CursorY + " Scroll-Left:" + ScrollLeft() + " Scroll-Top:" + ScrollTop();
    }
    catch (ex)
    {
    }
    return true;
}

function ScrollTop()
{
    return (document.body.scrollTop > 0) ? document.body.scrollTop : document.documentElement.scrollTop;
}

function ScrollLeft()
{
    return (document.body.scrollLeft > 0) ? document.body.scrollLeft : document.documentElement.scrollLeft;
}

document.onmousemove = getMouseXY;


 function getX(obj)
{
    return (obj.offsetParent==null ? obj.offsetLeft : obj.offsetLeft + getX(obj.offsetParent));
}

function getY(obj)
{
    return (obj.offsetParent==null ? obj.offsetTop : obj.offsetTop + getY(obj.offsetParent));
}

function getWidth(obj)
{
    //alert(width.replace(/px/g, ""));
    return parseInt(obj.offsetWidth);
}

function getHeight(obj)
{
    return parseInt(obj.offsetHeight);
}



/*
BLOG Archive - Move to embedded resource
*/

function ShowBlogArchive(id)
    {
        var o = document.getElementById(id);
        if (o)
        {
            var action = "";
            
            for (var i = 0; i < o.childNodes.length; i++)
            {
                if (o.childNodes[i].tagName == "DIV")
                {
                    if (o.childNodes[i].style.display == "none")
                    {
                        o.childNodes[i].style.display = "block";
                        action = "Open";
                    }
                    else
                    {
                        o.childNodes[i].style.display = "none";
                        action = "Closed";
                    }
                }
            }
            
            o.className = action;
        }
    }
    
