AttachEventHandler( window, 'onload', InitializeSitemapPage );
function InitializeSitemapPage()
{
   InitializeSitemap( document.getElementById( "SitemapList" ) );
}

function InitializeSitemap( eSitemapListLevel )
{
   for ( var i=0; i<eSitemapListLevel.childNodes.length; i++ )
   {
      var eListItem = eSitemapListLevel.childNodes[ i ];
      if ( eListItem.tagName != null && eListItem.tagName == "LI" )
      {
         // Get child level, if not found, skip this item
         var eChildLevel = eListItem.getElementsByTagName( "UL" )[ 0 ];
         if ( window.event != null )
         {
            if ( eChildLevel.childNodes.length < 1 )
               continue;
         }
         else if ( eChildLevel.childNodes.length <= 1 )
            continue;

         // Set heading class
         eListItem.getElementsByTagName( "SPAN" )[ 0 ].className = "SitemapNodeWithChildren";

         // Add collapse icon
         var eCollapseIcon = document.createElement( "IMG" );
         eCollapseIcon.src = 'System/XPlorer/Images/Minus.png';
         eCollapseIcon.style.cursor = 'pointer';
         eCollapseIcon.style.position = 'absolute';
         eCollapseIcon.style.margin = '.3em 0 .3em -16px';
         eCollapseIcon.onclick = function()
         {
            // Toggle image
            if ( this.src.indexOf( 'Minus' ) >= 0 )
            {
               this.src = this.src.replace( 'Minus', 'Plus' );
               this.parentNode.getElementsByTagName( "UL" )[ 0 ].style.display = 'none';
            }
            else
            {
               this.src = this.src.replace( 'Plus', 'Minus' );
               this.parentNode.getElementsByTagName( "UL" )[ 0 ].style.display = '';
            }
         }
         eListItem.insertBefore( eCollapseIcon, eListItem.firstChild );
         
         // Init child level
         InitializeSitemap( eChildLevel );
      }
   }
}