var POINT = {

    MenuToggle : function (defaultHiddenSections) {
        
        var hiddenSections = [];
        var name = 'point_nav_hidden';
        var days = 1;        
        
        function getSelector (section_name) {            
            return '#menu_' + section_name.replace(' ', '-');
        }
        
        function getSectionName (id) {            
            return id.substring(5).replace('-', ' ');
        }
        
        function removeHiddenSection (name) {            
            var index = jQuery.inArray(name, hiddenSections);
            hiddenSections.splice(index, 1);
        }
        
        function addHiddenSection (name) {
            hiddenSections.push(name);
        }
        
        if (!COOKIE.Read(name)) {
            COOKIE.Create(name, CSVfromArray(defaultHiddenSections), days);  
        }
        hiddenSections = ArrayFromCSV(COOKIE.Read(name));
        
        if (hiddenSections) {
            
            for (var i = 0; i < hiddenSections.length; i++) {
                var selector = getSelector(hiddenSections[i]);
                $(selector).siblings().css('display', 'none');
            }
            
            var $section_titles = $('#menu .section-title');
            $section_titles.addClass('clickable');
            
            $section_titles.click(function ( )
            {
                var $siblings = $(this).siblings();
                
                hiddenSections = ArrayFromCSV(COOKIE.Read(name));
                var clickedSectionName = getSectionName(this.id);
                
                
                if ($siblings.css('display') == 'none') {
                    removeHiddenSection(clickedSectionName);
                    $siblings.slideDown();
                }
                else {                
                    addHiddenSection(clickedSectionName);                
                    $siblings.slideUp();
                }
                
                COOKIE.Create(name, CSVfromArray(hiddenSections), days);
            }); 
        }
    },


    ShortImageRow : function (maxImages, maxShort) {
        var numberOfImages = $('#img-container').children().length;
        var remainder = numberOfImages % maxImages;
        if ( remainder > 0 && remainder <= maxShort ) {
            $('#img-container').addClass('hasShortLastRow');
        }
    }
};



 $(document).ready(function ( ) {

    // CONFIGURATION ******************************************
    
    // default hidden menu sections
    // var defaultHiddenSections = [ 'Info', 'Projects', 'In Process', 'Lectures', 'Blogs', 'Press' ]
    var defaultHiddenSections = [ 'Info', 'In Process', 'Lectures', 'Blogs', 'Press' ];

    // max number of images that will appear in a full custom thickbox image row
    var maxNumberImagesInFullRow = 9;
    // max number of images that will appear in a "short" row
    var maxNumberImagesInShortRow = 4;
    
    
    // INITIALIZATION *****************************************
    
    if (POINT !== undefined) {
        
        if (defaultHiddenSections !== undefined) {
            POINT.MenuToggle(defaultHiddenSections);
        }
    
        if (maxNumberImagesInFullRow !== undefined && maxNumberImagesInShortRow !== undefined) {
            POINT.ShortImageRow(maxNumberImagesInFullRow, maxNumberImagesInShortRow);        
        }
    
    }

});
