WebAndMultimedia_tabArray = new Array("websites & games", "keyword analysis", "banner creation", "usability & compliance", "positioning services") ;



imgContent_header  = "<div id=\"libContainer\">" ;
imgContent_header += "<div class=\"header\"><img src=\"nbatLibrary/images/layout/main_topLeft.png\" alt=\"\" /><div class=\"buttons\"><a href=\"javascript:closeNBATLibrary();\"><img src=\"nbatLibrary/images/layout/x.png\"></a></div>" ;
imgContent_header += "<img src=\"nbatLibrary/images/layout/main_topRight.png\" alt=\"\" /><br class=\"clear\" /></div>" ;

imgContent_middle  = "<div class=\"main\"><div class=\"right\">" ;
imgContent_middle += "<div id=\"libContainer_mainFrame\" class=\"loading\">";
imgContent_middle += "<img id=\"libContainer_mainFrame_img\" src=\"nbatLibrary/images/layout/pageLoading.gif\" alt=\"\"/>" ;
imgContent_middle += "<iframe id=\"libContainer_mainFrame_iframe\" frameborder=\"0\" scrolling=\"no\" src=\"images/spacer.gif\" height=\"400\" width=\"756\"></iframe>" ;
imgContent_middle += "</div>" ;
imgContent_middle += "</div></div>" ;

imgContent_footer  = "<div class=\"footer\">" ;
imgContent_footer += "<img src=\"nbatLibrary/images/layout/main_bottomLeft.png\" alt=\"\" /><div><span></span></div>" ;
imgContent_footer += "<img src=\"nbatLibrary/images/layout/main_bottomRight.png\" alt=\"\" /><br class=\"clear\" />" ;
imgContent_footer += "<div id=\"tabContainer\">" ;

function closeNBATLibrary() //lame
{
    document.getElementById("libContainer").style.display = "none" ;
}

function showMe()
{
    containerObj = document.getElementById("libContainer_mainFrame") ;
    containerObj.className = "" ;
}

function safeNameIt(wotName)
{
    newName = wotName ;
    newName = newName.replace("&","and")
    return newName ;
}

function loadArea(wotArea)
{
    frameObj = document.getElementById("libContainer_mainFrame_iframe") ;
    frameObj.src = "nbatLibrary/subContainer.asp?wotArea=" + wotArea ;
}

function openNBATLibrary(wotArea)
{
    popupObj = document.getElementById("libContainer") ;
    if (!popupObj)
    {
        popupContainerObj = document.getElementById("popupWindow_container") ;
        
        arrayObj = eval(wotArea + "_tabArray") ;
        theTabs  = "" ;
        frameObj = document.getElementById("libContainer_mainFrame_iframe") ;
        
        for (i=0;i<arrayObj.length;i++)
        {
            isActive = i==0 ? "_active" : "" ;
            theTabs += "<div class=\"tab" + isActive + "\"><a href=\"javascript:loadArea('" + safeNameIt(arrayObj[i]) + "');\">" + arrayObj[i] + "</a><div class=\"tabNum" + isActive + "\">" + (i+1) + "</div></div>" ;
        }
        
        firstAreaToShow = safeNameIt(arrayObj[0]) ;
        imgContent_footer += theTabs + "<br class=\"clear\" /></div></div></div>" ;
        
        
        newWindow  = imgContent_header
        newWindow += imgContent_middle
        newWindow += imgContent_footer
        
        newDiv = document.createElement("div") ;
        popupContainerObj.appendChild(newDiv) ;
        newDiv.innerHTML = newWindow ;
        
        document.location = "#mainHeader" ;
        iframeObj = document.getElementById("libContainer_mainFrame_iframe") ;
        iframeObj.src = "nbatLibrary/subContainer.asp?wotArea=" + firstAreaToShow ;
        
        //currentGrabberObj = document.getElementById("library_grabber") ;
        //addEvent(currentGrabberObj, "mousedown", grabobject, true) ;
        
        /*if ((targetLeftPos)&&(targetTopPos))
        {
            containerObj = document.getElementById("libContainer") ;
            containerObj.style.left = 0 ;
            containerObj.style.top  = 0 ;
            containerObj.style.marginLeft = 0 ;
            containerObj.style.marginTop  = 0 ;
        }
        else
        {
        positionmiddle("libContainer", 500, 500) ;
        }*/
        
        //positionmiddle("libContainer", 500, 500) ;
    }
    else
    {
        document.location = "#mainHeader" ;
        iframeObj = document.getElementById("libContainer_mainFrame_iframe") ;
        iframeObj.src = "nbatLibrary/subContainer.asp?wotArea=" + firstAreaToShow ;
        popupObj.style.display = "block" ;
        //not done this yet
        //currentWindowObj       = document.getElementById("libContainer_popupWindow") ;
        //currentLoadingFrameObj = document.getElementById("libContainer_loadingFrame") ;
        //currentWindowObj.style.display = "none" ;
        //currentLoadingFrameObj.style.display = "block" ;
    }
    
    /*setPopupFocus(targetPopup_id) ;
    currentHeaderObj = document.getElementById(targetPopup_id + "_header") ;
    currentHeaderObj.innerText = targetHeader ;
    currentContainerObj = document.getElementById(targetPopup_id + "_container") ;
    currentWindowObj    = eval("document." + targetPopup_id + "_popupWindow") ;
    currentContainerObj.style.display = "block" ;
    currentWindowObj.location = targetLocation ;*/
}

function addEvent(elm, evType, fn, useCapture)
{
  if(typeof fn=="string") { fn=new Function(fn); }
  if (elm.addEventListener)
  {
    elm.addEventListener(evType,fn,useCapture);
    return true;
  }
  else if (elm.attachEvent)
  {
    var r = elm.attachEvent("on"+evType,fn);
    
    return r;
  }
  else { alert("[fn addEvent]\naddEventListener AND attachEvent not supported by Object Element.\nElement type="+elm); }
}

function removeEvent(elm, evType, fn,useCapture)
{
  if(typeof fn=="string") { fn=new Function(fn); }
  if (elm.addEventListener)
  {
    elm.removeEventListener(evType,fn,useCapture)
    return true;
  }
  else if (elm.attachEvent)
  {
    var r = elm.detachEvent("on" + evType, fn);
    
    return r;
  }
  else { alert("[fn removeEvent]\nremoveEventListener AND detachEvent not supported by Object Element.\nElement type="+elm); }
}

//--------------------------------
// Draggable objects functions
//--------------------------------
var grableftoffset,grabtopoffset,grabbedobject,grabbedcontainer,grabbedobjspfid,grabbedcontainerid;
function grabobject(e)
{   
   if (window.event) {grabbedobject=event.srcElement;}
   else {grabbedobject = e.target;}
   //grabbedcontainer=grabbedobject;
   //grabbedcontainerid = grabbedobject.id.split("_grabber")[0] + "_container" ;
   
   grabbedcontainerid = "libContainer" ;
   grabbedcontainer   = document.getElementById(grabbedcontainerid) ;
   
   //alert(grabbedcontainer.id+"!="+grabbedobjectIDTODRAG);
   //if(grabbedcontainer.id != grabbedobjectIDTODRAG)
   //{
   //   try { while(grabbedcontainer.id != grabbedobjectIDTODRAG) { grabbedcontainer=grabbedcontainer.parentNode; grabbedcontainerid=grabbedcontainer.id; } }
   //   catch(e) { alert("FAILED!"); return; }
   //}
   //alert("DONE\nID="+grabbedcontainerid);
   //grabbedobjectid=grabbedobject.id.split("_")[0];
   //////for(var a=0;a<dragidlist.length;a++) { if(dragidlist[a]==grabbedobjectIDTODRAG) { grabbedobjspfid=dragspfidlist[a]; break; } }
   //alert(grabbedcontainer.style.marginTop)
   //alert(grabbedcontainer.style.marginTop)
   //get the top and left position of the src Element by bubbling up through the dom
   //alert(grabbedobject.parentNode.id)
   var containerXpos = getAbsoluteLeftPos(grabbedcontainerid);
   var containerYpos = getAbsoluteTopPos(grabbedcontainerid);
   
   getMouseXYPos(event)
   
   var toppos=parseInt(grabbedcontainer.style.top);
   var leftpos=parseInt(grabbedcontainer.style.top);
   toppos+=parseInt(grabbedcontainer.style.marginTop);
   leftpos+=parseInt(grabbedcontainer.style.marginLeft);
   
   grabbedcontainer.style.top=toppos+"px";
   grabbedcontainer.style.left=leftpos+"px";
   grabbedcontainer.style.margin="0 0 0 0";
   //alert(getypos(grabbedobjectIDTODRAG))
   grabbedcontainer.style.top=containerYpos-parseInt(grabbedcontainer.style.marginTop)+"px";
   grabbedcontainer.style.left=containerXpos-parseInt(grabbedcontainer.style.marginLeft)+"px";
   //alert("srcXpos="+srcXpos+"\nsrcYpos="+srcYpos);
   //alert(mouseX-parseInt(srcXpos)+"px")
   grabtopoffset=containerYpos - currentMousePosY;
   grableftoffset=containerXpos - currentMousePosX;
   
   //alert(currentMousePosX + "&" + currentMousePosY)
   //alert(containerXpos + "&" + containerYpos)
   //alert(grableftoffset + "&" + grabtopoffset)
   //alert("container X="+grabbedcontainer.style.left+"\ncontainer Y="+grabbedcontainer.style.top+"\nmX="+mouseX+"\nmY="+mouseY+"\ngrableftoffset="+grableftoffset+"\ngrabtopoffset="+grabtopoffset);
   //alert("container X="+containerXpos+"\ncontainer Y="+containerYpos+"\nmX="+mouseX+"\nmY="+mouseY+"\ngrableftoffset="+grableftoffset+"\ngrabtopoffset="+grabtopoffset);
   //alert("grableftoffset="+grableftoffset+"\ngrabtopoffset="+grabtopoffset);
      //grabbedcontainer.style.left=mouseX+grableftoffset+"px";
      //grabbedcontainer.style.top=mouseY+grabtopoffset+"px";
   if (window.event){grabbedobject.setCapture(false);}
   mouseevent(grabbedobject, "onmouseup", stopgrabbing);
   //mouseevent(grabbedobject, "onlosecapture", stillstopgrabbing);
   mouseevent(document, "onmousemove", moveobject);
}

function moveobject()
{  //return;
    
   getMouseXYPos(event)

   //window.status="grabbedcontainer="+grabbedcontainer.id;
   //if(!grabbedcontainer) { window.status="No container to move."; stopgrabbing(); }
   if(!grabbedcontainer) { stopgrabbing(); }
   
   if (currentMousePosX+grableftoffset > 0)
   {grabbedcontainer.style.left=currentMousePosX+grableftoffset+"px";}
   else
   {grabbedcontainer.style.left = "1px" ;}
   
   
   if (currentMousePosY+grabtopoffset > 0)
   {grabbedcontainer.style.top=currentMousePosY+grabtopoffset+"px";}
   else
   {grabbedcontainer.style.top = "1px" ;}
   
}

function stopgrabbing(e)
{
   //window.clearTimeout();
   if (window.event){grabbedobject.releaseCapture();} 
   mousedetach(grabbedobject, "onmouseup", stopgrabbing);
   //mousedetach(grabbedobject, "onlosecapture", stillstopgrabbing);
   mousedetach(document, "onmousemove", moveobject);
   //alert("grabbedobjspfid="+grabbedobjspfid+"\ngrabbedcontainerid="+grabbedcontainerid)
   //this may need to figure out if it's collapsed to see whether to show or hide the burn thru div
   //blockburnthru(grabbedobjspfid,grabbedcontainerid);
   //lose the grabbed object references
   grabbedobject="";
   grabbedcontainer=""
   //window.status="grabbedcontainer="+grabbedcontainer;
}

function stillstopgrabbing(e)
{
   window.setTimeout(stopgrabbing, 200, "JavaScript");
}

function mouseevent(elm, myevent, myfunction) {addEvent(elm, myevent.replace(/on/,''), myfunction, false) }
function mousedetach(elm, myevent, myfunction) {removeEvent(elm, myevent.replace(/on/,''),myfunction,false) }

//positions an element in the middle (vertical and horizontal) of the page
function positionmiddle(obj_id, objHeight, objWidth)
{
   obj = document.getElementById(obj_id) ;
   
   middleLeftPos = parseInt(maximumMousePosX / 2) - parseInt(objWidth / 2)  ;
   middleTopPos  = parseInt(maximumMousePosY / 2) - parseInt(objHeight / 2) ;
   
   if (middleLeftPos < 0)
   {middleLeftPos = 0 ;}
   
   if (middleTopPos < 0)
   {middleTopPos = 0 ;}
   
   obj.style.left = middleLeftPos + "px" ;
   obj.style.top  = middleTopPos + "px"  ;
   
   //obj.style.left = "50%" ;
   //obj.style.top = "50%" ;
   
   objwidth=obj.offsetWidth;
   objheight=obj.offsetHeight;
   var scrolltopoffset=getscrolloffset("y");
   var scrollleftoffset=getscrolloffset("x");
   
   obj.style.marginLeft = parseInt(scrollleftoffset)-(objwidth/2)+"px";
   obj.style.marginTop  = parseInt(scrolltopoffset)-(objheight/2)+"px";
}

function getscrolloffset(xory)
{
   if(typeof xory=="undefined") { var xory="y"; }
   var x=0
   var y=0;
   if (self.pageYOffset)//NOT IE
   {
   	x = self.pageXOffset;
   	y = self.pageYOffset;
   }
   else if (document.documentElement && document.documentElement.scrollTop)//IE 6
   {
   	x = document.documentElement.scrollLeft;
   	y = document.documentElement.scrollTop;
   }
   else if (document.body)//Older IE versions
   {
   	x = document.body.scrollLeft;
   	y = document.body.scrollTop;
   }
   if (xory.toLowerCase()=="x") {return x;}
   else { return y; }
}

function popup_toggleLoadedWindow(windowObj,showOrHide)
{
    
    targetWindowID  = windowObj.name.split("_popupWindow")[0] ;
    windowFrameObj  = document.getElementById(targetWindowID + "_popupWindow") ;
    loadingFrameObj = document.getElementById(targetWindowID + "_loadingFrame") ;
    
    if (showOrHide == "show")
    {
        windowFrameObj.style.display  = "block" ;
        loadingFrameObj.style.display = "none"  ;
    }
    else
    {
        windowFrameObj.style.display  = "none"  ;
        loadingFrameObj.style.display = "block" ;
    }
}