﻿var bha_resize;
//
// Layout Event class
//
function resizeWindow(parentId, leftContentId, rightContentId, handleId, openCloseId){
    this.parent = document.getElementById(parentId);
    this.left = document.getElementById(leftContentId);
    this.right = document.getElementById(rightContentId);
    this.handle = document.getElementById(handleId);
    this.openClose = document.getElementById(openCloseId);
    this.mouse = false;
    this.offset;
    this.newMax = this.right.clientWidth;
    this.minWidth = 30;
     
    //  Functions
    this.adjustSize = function(e){
        if(this.mouse){
            if(document.body.clientWidth - e.clientX + this.offset > 298){
                this.right.style.width = (document.body.clientWidth - e.clientX) - 10 + this.offset + 'px';
                this.left.style.right = (document.body.clientWidth - e.clientX) + this.offset + 'px';
            }else{
                this.right.style.width = '300px';
                this.left.style.right = '310px';
            }
        }
    }
    this.IEadjustSize = function(e){
        if(this.mouse){
            if(window.document.body.clientWidth - e.clientX + this.offset > 298){
                this.right.style.width = (document.body.clientWidth - e.clientX) - 10 + this.offset + 'px';
                this.left.style.width = e.clientX - 20 - this.offset + 'px';
            }else{
                this.right.style.width = '300px';
                this.left.style.width = this.left.parentNode.clientWidth - 310 + 'px';
            }
        }
    }
    this.animToggle = function(){
        if(this.right.clientWidth > this.minWidth){
            document.getElementById('content_wrapper').style.display = 'none';
            document.getElementById('RadioBar1').style.display = 'none';
            dojo.anim(this.right, {width:this.minWidth}, 500);
            dojo.anim(this.left,{right:(this.minWidth + 10)},500);
            setTimeout("document.getElementById('handle_img').src = 'img/hToggleLeft.gif';",400);

        }else{
            dojo.anim(this.right, {width:this.newMax}, 500);
            dojo.anim(this.left,{right:(this.newMax + 10)},500);
            setTimeout("document.getElementById('content_wrapper').style.display = '';document.getElementById('RadioBar1').style.display = ''", 500);
            setTimeout("document.getElementById('handle_img').src = 'img/hToggleRight.gif';",400);
        }
        //setTimeout("alert('changed')",500);
        //alert("animToggle");
        setTimeout("bhajs.getObject('BHA.Web.UI.Ags.MapView', 'MapView1').$onClientSizeChangedSetTimeout();", 500);
    }
    this.IEanimToggle = function(){
        if(this.right.clientWidth > this.minWidth){
            document.getElementById('content_wrapper').style.display = 'none';
            document.getElementById('RadioBar1').style.display = 'none';
            dojo.anim(this.right, {width:this.minWidth}, 500);
            dojo.anim(this.left,{width:(window.document.body.clientWidth - this.minWidth - 30)},500);
            setTimeout("document.getElementById('handle_img').src = 'img/hToggleLeft.gif';",400);
        }else{
            dojo.anim(this.right, {width:this.newMax}, 500);
            dojo.anim(this.left,{width:(window.document.body.clientWidth - this.newMax - 30)},500);
            setTimeout("document.getElementById('content_wrapper').style.display = '';document.getElementById('RadioBar1').style.display = ''", 500);
            setTimeout("document.getElementById('handle_img').src = 'img/hToggleRight.gif';",400);
        }
        //alert("IEanimToggle");
        setTimeout("bhajs.getObject('BHA.Web.UI.Ags.MapView', 'MapView1').$onClientSizeChangedSetTimeout();", 500);
    }
    this.mouseDown = function(e){
        if(this.right.clientWidth > this.minWidth){
            this.mouse = true;
            this.offset = (document.body.clientWidth - e.clientX) - this.right.clientWidth - this.handle.clientWidth;
            if(this.offset < 0){
                this.offset = -1 * this.offset;
            }
        }
    }
    this.mouseUp = function(e){
        
        if(this.right.clientWidth > 298){
            this.newMax = this.right.clientWidth;
        }
        
        if (this.mouse){
            setTimeout("bhajs.getObject('BHA.Web.UI.Ags.MapView', 'MapView1').$onClientSizeChangedSetTimeout();", 500);
            this.handle.focus();
        }
        
        this.mouse = false;
        //alert("mouseUp");
    }
    
    //  Delegates
    var IEmouseMoveDelegate = new Function("e","bha_resize.IEadjustSize(e);");
    var closeDelegate = new Function("e","bha_resize.close(e);");
    var openDelegate = new Function("e","bha_resize.open(e);");
    var mouseDownDelegate = new Function("e","bha_resize.mouseDown(e);");
    var mouseUpDelegate = new Function("e","bha_resize.mouseUp(e);");
    var handleClickEventDelegate = new Function("e","bha_resize.handleClickEvent(e);");
    var mouseMoveDelegate = new Function("e","bha_resize.adjustSize(e);");
    var openCloseDelegate = new Function("","bha_resize.animToggle();");
    var IEopenCloseDelegate = new Function("","bha_resize.IEanimToggle();");
    
    //  Event Handlers
    // handle events
    if(this.handle.addEventListener){
        this.handle.addEventListener('mousedown',mouseDownDelegate,false);
        this.handle.addEventListener('mouseup',mouseUpDelegate,false);
    }else if(this.handle.attachEvent){
        this.handle.attachEvent('onmousedown',mouseDownDelegate);
        this.handle.attachEvent('onmouseup',mouseUpDelegate);
    }
    // parent wrapper div events
    if(this.parent.addEventListener){
        this.parent.addEventListener('mousemove',mouseMoveDelegate,false);
        this.parent.addEventListener('mouseup',mouseUpDelegate,false);
    }else if(this.parent.attachEvent){
        this.parent.attachEvent('onmousemove',IEmouseMoveDelegate);
        this.parent.attachEvent('onmouseup',mouseUpDelegate);
    }
    // open/close button events
    if(this.openClose.addEventListener){
        this.openClose.addEventListener('click',openCloseDelegate,false);
    }else if(this.openClose.attachEvent){
        this.openClose.attachEvent('onclick',IEopenCloseDelegate);
    }
   
    // document.body events
    if(document.body.addEventListener){
        document.body.addEventListener('mouseup',mouseUpDelegate,false);
    }else if(window.document.body.attachEvent){
        window.document.body.attachEvent('onmouseup',mouseUpDelegate);
    }
    // Set global
    bha_resize = this;
}

// link menu array function
var bha_linkArray = new Array();  
function addToArray(listId, listItemId, LinkId){
    var temp_array = new Array(3);
    temp_array[1] = listItemId;
    temp_array[2] = LinkId;
    bha_linkArray.push(temp_array);
}

