function initializeTrees(symbolClosed, symbolOpen)
{
    $$('ul.tree li').each(function(listItem) {
    
        var subTree = listItem.getChildren().filterByTag('ul')[0];
        
        if (subTree) {
        
            var expander = new Element('a', {
                'class': 'expander',
                'href': 'javascript:void(0);',
                'events': {
                    'click': function() {
                        if (subTree.hasClass('closed')) {
                            subTree.removeClass('closed');
                            this.setHTML(symbolOpen);
                        } else {
                            subTree.addClass('closed');
                            this.setHTML(symbolClosed);
                        }
                    }
                }
            });
            
            expander.setHTML(subTree.hasClass('closed') ? symbolClosed : symbolOpen);
            expander.injectTop(listItem);
        }
    });
}

window.addEvent('domready', function() {
    initializeTrees('+', '-');
});