
var SiteController = {
        
    options: {},

    init: function(options) {
        this.actions = options; 
        // allow overriding the default config
        jQuery.extend(SiteController.options, options);
        SiteController._initMenu();
        SiteController._initWeb();
        SiteController._initPortfolio();
    },
    
    _initMenu: function() {
        jQuery('div.menu a').each(function() {
            var link = jQuery(this);
            var id = link.attr('href');
            link.click(function(event) {
                event.preventDefault();
                jQuery.scrollTo(jQuery(id), { 
                    axis: 'y',
                    duration: 500,
                    easing: 'easeOutExpo'
                });
                jQuery('div.menu a').each(function() {
                    var link = jQuery(this);
                    if (link.attr('href') == id) {
                        link.parent().addClass('current');
                    } else {
                        link.parent().removeClass('current');
                    }
                });
            });
        });
    },
    
    _initWeb: function() {
        jQuery('div.submenu a').each(function() {
            var link = jQuery(this);
            var id = link.attr('href');
            link.click(function(event) {
                event.preventDefault();
                jQuery('#web-panel').scrollTo(jQuery(id), {
                    duration: 1000,
                    easing: 'easeOutExpo'
                });
                jQuery('div.submenu a').each(function() {
                    var link = jQuery(this);
                    if (link.attr('href') == id) {
                        link.parent().addClass('current');
                    } else {
                        link.parent().removeClass('current');
                    }
                });
            });
        });
    },
    
    _initPortfolio: function() {
        jQuery("a.fancybox").fancybox({
            cyclic: true,
            titlePosition: 'inside'
        });
    }
};
