/** Sitemap **/

    //Some common functions
	
	function expMenuByElement(itm){
	  if (!itm) {
	   // do nothing
	  }
	  else if (itm.style) {
		if (itm.style.display == "none") { itm.style.display = "block"; }
		else { itm.style.display = "none"; }
	  }
	  else { itm.visibility = "show"; }
	}
    function parse_list(){
        //Select sitemap UL
        var sitemap = document.getElementsByTagName('ul');
        for (var i = 0; i < sitemap.length; i++){
            if (sitemap[i].className == "sitemap"){
                //Get all li child elements
                var level1_children = sitemap[i].getElementsByTagName('li');
                //Dump to li_process
                li_process(level1_children,sitemap[i]);
            }
        }
    }
    function li_process(list,parent_Element){
        for(var i=0; i < list.length; i++){
            if (list[i].parentNode != parent_Element){
                continue;
            }
            //Check for child list
            var levelx_children = list[i].getElementsByTagName('ul');

            if (levelx_children.length != 0 && levelx_children[0].parentNode == list[i]){
                //Handle "childlink"
                var currentElement = list[i].firstChild;
                while (currentElement != null){
                    //Check and add widget, click
                    if (currentElement.className == "child_link"){
                        var img = document.createElement('img');
        				img.src = 'images/widgets/maximise.gif';
        				img.style.marginRight = "5px";
        				currentElement.insertAdjacentElement("afterBegin",img);
        				
        				//Add onclick
        				currentElement.onclick = function(){
        				    li = this.parentNode;
        				    ul = li.getElementsByTagName('ul');
        				    img = this.getElementsByTagName('img');
        				    expMenuByElement(ul[0]);
        				    if (ul[0].style.display == "none"){
        				        img[0].src = 'images/widgets/maximise.gif';
        				    }
        				    else{
        				        img[0].src = 'images/widgets/minimise.gif';
        				    }
        				    //return false;
        				}
        				
        				currentElement.onmouseover = function(){
			                if (document.all & !isOpera){
                                this.style.cursor = "hand";
                            }
                            else{
                                this.style.cursor = "pointer";
                            }
        				}
                    }
                    currentElement = currentElement.nextSibling;
                }
                //Hide UL
                levelx_children[0].style.display = "none";
                li_process(levelx_children[0].getElementsByTagName('li'),list[i]);
            }
            else{
                //Add a small widget icon
                var img = document.createElement('img');
				img.src = 'images/widgets/item.gif';
				img.style.marginRight = "5px";
				
				//Check for links add to link if possible
				var a = list[i].getElementsByTagName('a');
				var anchorLink = null;
				for (var ia = 0; ia < a.length; ia++){
				    if (a[ia].className == "item_link"){
				        anchorLink = a[ia];
				    }
				
				}
				if (anchorLink != null){
				    anchorLink.insertAdjacentElement("afterBegin",img);
				}
				else{
				    list[i].insertAdjacentElement("afterBegin",img);
				}
				
            }
        }
    }
    