
function toggleWliType(type) {
	if (document.getElementById("wli_"+type+"_open").style.display=="block") {
		document.getElementById("wli_"+type+"_open").style.display="none";
		document.getElementById("wli_"+type+"_closed").style.display="block";
	} else {
                document.getElementById("wli_"+type+"_open").style.display="block";
                document.getElementById("wli_"+type+"_closed").style.display="none";
	}
	return false;
}

initfolded = null;

YAHOO.util.Event.onDOMReady((function() {

    var $D = YAHOO.util.Dom;
    var $E = YAHOO.util.Event;

    var toggle = function(e) { 
	$E.stopEvent(e);
	if (this.folded || initfolded) {
	    this.tohide.style.display = '';
	    this.tohide_col.style.width = '';
	    this.folded = null;
	    initfolded = null;
	    document.cookie='csp_nav_hide=block';
	} else {
	    this.tohide.style.display = 'none';
	    this.tohide_col.style.width = '14px';
	    this.folded = true;
	    document.cookie='csp_nav_hide=none';
	}
    }   

    var tohide = document.getElementById('navhide');
    var tohide_col = document.getElementById('page_nav_col');
    var hide_btn = document.getElementById('navhide-btn');
    $E.on(hide_btn,'click',toggle,{tohide: tohide, tohide_col: tohide_col},true);	    
    if (document.cookie.indexOf('csp_nav_hide=none') != -1) { 
	initfolded = true;
    } 

}));


YAHOO.util.Event.onDOMReady((function() { coolButtons('btn_'); })); 
YAHOO.util.Event.onDOMReady(
    (function() {

	var $ = YAHOO.util.Dom.get;
	var $U = YAHOO.util;
	var $D = YAHOO.util.Dom;
	var $E = YAHOO.util.Event;
	var $A = YAHOO.util.Anim;
	var $Easing = YAHOO.util.Easing;


	// disallow animation for: IE in quirks mode, safari under webkit version 522
	var allow_anim  = ((typeof(RENDER_HTML4) != 'undefined') && RENDER_HTML4 && YAHOO.env.ua.ie) || (!YAHOO.env.ua.ie && (!YAHOO.env.ua.webkit || YAHOO.env.ua.webkit > 522));
	
	// private functions
	var toggle = function(e) { 				
	    	   	    
	    if (e.charCode || e.keyCode) {
		var k = e.charCode ? e.charCode : e.keyCode;
		if (k != 37 && k != 39) {
		    // don't trap key event
		    return true;
		}
	    }
	    
	    // trap mouse / key event
	    $E.stopEvent(e);
	    
	    var b = $D.getFirstChildBy(this.parentNode, function(obj) { return obj.tagName == 'UL'; })
	    var li = this.parentNode;		
	    var t = li.getElementsByTagName('img')[0];	    
	    var branch = b.getAttribute('id').replace('branch_','');

	    // toggle buttons.. could be improved
	    var arrow_open = document.createElement('img');
	    arrow_open.src = "/images/icn16_arrow_down.gif";
	    arrow_open.alt = "Submenu is open. Click to close submenu."
	    
	    var arrow_closed = document.createElement('img');
	    arrow_closed.src = "/images/icn16_arrow_right.gif";
	    arrow_closed.alt = "Submenu is closed. Click to open submenu.";
	    
	    
	    // don't open if already animating or already in requested state
	    if ((k == 37 && b.className.indexOf('tree-collapsed') != -1) || (k == 39 && b.className.indexOf('tree-collapsed') == -1)) {
		return false;
	    }
	    h = $D.getStyle(b,'height');
	    if (h === 'auto'){
		h = b.offsetHeight;
	    } else {          
		h = Math.max(parseInt(h),b.offsetHeight);
	    }
	    h = parseInt(h);		
	    
	    if (b.className.indexOf('tree-collapsed') != -1 || k == 39) {
		
		// branches are not ever hidden with display:none, because that would be bad for accessibility
		// instead, the hidden branch is merely moved offscreen and visibility is set to hidden (see CSS for details) 
		// therefore, we can find the natural height of the branch without 'showing' it first
		// we need this so we know where to animate to

		// we also need to find the natural width of the branch and set the style to that number. 
		// this is a side-effect of the liquid layout and is especially problematic in Firefox
		
		if (allow_anim) {

		    document.cookie='nav_track_'+branch+'=open';		    

		    var a = new $A(b, { height: { from: 0, to: h }}, .8, $Easing.easeOutStrong);
		    a.onStart.subscribe(
			function() {
			    $D.setStyle(b.parent,'width','');
			    $D.setStyle(b,'width',$D.getStyle(b,'width'));
			    $D.setStyle(b,'overflow','hidden');
			    $D.setStyle(b,'height',0+'px');
			    $D.removeClass(b,'tree-collapsed');

			    t.src = arrow_open.src;
			    t.alt = arrow_open.alt;
			}
		    );
		    a.onComplete.subscribe(
			function() {
			    $D.setStyle(b,'height','');
			    $D.setStyle(b,'overflow','');			    
			}
		    );
		    a.animate();
		} else {
		    $D.removeClass(b,'tree-collapsed');
		    t.src = arrow_open.src;
		    t.alt = arrow_open.alt;
		}
		
	    } else {

		document.cookie='nav_track_'+branch+'=closed';
		
		if (allow_anim) {
		    var a = new $A(b, { height: { from: h, to: 0 }}, .8, $Easing.easeOutStrong);
		    a.onStart.subscribe(
			function() {
			    $D.setStyle(b,'height',h+'px');
			    $D.setStyle(b,'overflow','hidden');			    
			    t.src = arrow_closed.src;
			    t.alt = arrow_closed.alt;
			}
		    );
		    a.onComplete.subscribe(
			function() {
			    $D.setStyle(b,'width','');
			    $D.addClass(b,'tree-collapsed');
			    $D.setStyle(b,'height','');
			    $D.setStyle(b,'overflow','');
			    $D.setStyle(b.parent,'width',$D.getStyle(b.parent,'width'));
			}
		    );
		    a.animate();
		} else {
		    $D.addClass(b,'tree-collapsed');
		    t.src = arrow_closed.src;
		    t.alt = arrow_closed.alt;	
		}	
		
	    }
	    
	    // stop mouse / key event
	    $E.stopEvent(e);
	    
	};
	
	var init = function() {
	    togs = $D.getElementsByClassName('tog','a','page_nav',setAllEvents);
	    links = $D.getElementsByClassName('has_children','a','page_nav',setKeyEvents);			
	};
	var setMouseEvents = function(obj) {			
	    $E.on(obj,'click',toggle);
	};
	var setKeyEvents = function(obj) {
	    $E.on(obj,'keydown',toggle);
	};
	var setAllEvents = function(obj) {
	    setMouseEvents(obj);
	    setKeyEvents(obj);
	};		

	init();
	
    })
);



YAHOO.util.Event.onDOMReady(( function() {

    // repair layout tables automatically.. this is a hack!
    var forms = YAHOO.util.Dom.getElementsByClassName('form');
    for (var i=0; i<forms.length; i++) {
	if (forms[i].parentNode.tagName == 'TD') {
	    if (forms[i].parentNode.parentNode.cells.length == 2 && forms[i].parentNode.parentNode.parentNode.parentNode.parentNode.className == 'modulecontent') {
		forms[i].parentNode.parentNode.parentNode.parentNode.className = 'layout';
                forms[i].parentNode.parentNode.style.verticalAlign="top";
		forms[i].parentNode.parentNode.cells[0].className = 'contentcol';
		forms[i].parentNode.parentNode.cells[1].className = 'sidebar';
		break;
	    }
	}
    }

    // while we're at it, kill BRs that are children of the sidebar element
    var sidebar = YAHOO.util.Dom.getElementsByClassName('sidebar')[0];    
    var BR = YAHOO.util.Dom.getChildrenBy(sidebar,function(o) { return (o.tagName == 'BR'); } );
    for (var i=0; i<BR.length; i++) {
	BR[i].parentNode.removeChild(BR[i]);
    }

}));




function confirmDel(whatString) {
    if (!whatString) { whatString='entry' }
    return confirm(i18("Are you sure you want to delete this","misc")+" "+whatString+"? "+i18("This cannot be undone.","misc"));
}
function hideNavbar(arrow) {
  var nav = $('page_nav_col');
  if (nav != null) {
    var display = '';
    if (nav.style.display == "none") {
       arrow.src="/images/hidemenu.gif";
    } else {
       display="none";
       arrow.src="/images/showmenu.gif";
    }
    nav.style.display = display;
    top.frames[nextFrame()].location.href = "/utils/setSessionVar.php?var=navcontainer_display&state=" + display;
  }
}



function printPreview() {
  window.open(self.location.pathname+'?_do_print=1&version='+new Date().getTime());
}

var shouldprint = false;
function printQuick() {
  frame = frames['__hiddenframe'+nextFrame()];
  frame.location.href = self.location.pathname+'?_do_print=1&_do_print_quick=1&version='+new Date().getTime();
  shouldprint = true;
}
function printMeOnce(frame) {
  if (shouldprint) {
    frame.focus();
	  if (typeof(frame.window.print) == 'function') {
	    frame.window.print();
    } else {
      print();
    }
  }
}
function openDoc(doc_id){
  window.open('https://manager.symplicity.com/documents/'+doc_id);
}
