(function(){

    function Path( node, menu ) {
        var self = {};
        function init( ) {
            self.node = node;
            self.render( self.get_path( menu ) );
            return self;
        }
        self.get_path = function( menu ) {
            var links = dojo.query( 'a.open', menu );
            return dojo.map(
                links,
                function( menu_entry ) {
                    var labelnode = dojo.query( 'span', menu_entry )[ 0 ];
		    if( dojo.attr( menu_entry, 'id' ) != 'level1_produktionen_open_active' ) {
			return {
			    href: dojo.attr( menu_entry, 'href' ),
			    label: labelnode.innerHTML,
			    seperator: ( labelnode != dojo.query( 'span', links[ 0 ] )[ 0 ] ) ? '&nbsp;>&nbsp;' : null
			}
		    }
                }
            );
        };
        self.render = function( path ) {
            dojo.map(
                dojo.map( path, self.render_entry ),
                function( entry ) {
		    if( entry ) {
			dojo.place( entry, self.node )
		    }
                }
            );
        };
        self.render_entry = function( data ) {
	    if( data ) {
		if ( data.seperator ) {
		    return dojo._toDom(
			'<li>'+data.seperator+'<a href="' + data.href + '">' + data.label + '</a></li>'
		    );
		} else {
		    return dojo._toDom(
			'<li><a href="' + data.href + '">' + data.label + '</a></li>'
		    );
		}
	    }
        };
        return init( );
    }

    dojo.addOnLoad( function( ) {
        var menu = dojo.byId( 'menuMain' );
        var path = dojo.byId( 'path' );
        if( path && menu ) {
            Path( path, menu );
        }
    } );

})();

