function changeimg(thiscat, hidden) {
    var img = thiscat.find('img');
    img.each(function(){
        if ($(this).hasClass('catimg')) {
			if (hidden == 'none')
                  $(this).attr('src', wwwroot+'/pix/k/16-arrow-right.png');
              else if (hidden)
                   $(this).attr('src', wwwroot+'/pix/k/16-arrow-up.png');
              else
                 $(this).attr('src', wwwroot+'/pix/k/16-arrow-down.png');     
            return false;
        }
    });

}

$(function(){
    $('.thiscat .thiscat').each(function(){
        var catlist = $(this).children('.catlist');
        var courselist = $(this).children().children().children('.courselist');
        if (catlist.length == 0 && courselist.length == 0)
            changeimg($(this), 'none');
        else {
            catlist.css('display', 'none');
            courselist.css('display', 'none');
            changeimg($(this), true);
        }
    });

    $('.category').filter('.name')
        .children('a').click(function(){
            var thiscat = $(this)       // A
                            .parent()   // td category name
                            .parent()   // tr
                            .parent()   // tbody
                            .parent()   // table
                            .parent();  // div.thiscat

            // Subcategories
            var catlist = thiscat.children('.catlist');
            var hidden = 'none';
            if (catlist.length != 0) {
                hidden = (catlist.css('display') == 'block');
                catlist.slideToggle("slow");
            }

            // Courses
            var courselist = thiscat.children().children().children('.courselist');
            if (courselist.length > 0) {
                hidden = (courselist.css('display') != 'none');
                if (hidden)
                    courselist.css('display','none');
                else 
                    courselist.css('display','table-row');
            }
            changeimg(thiscat, hidden);

            return false;
        });
});

