/*ragtek sidebar togglerW
 * version 1.1
 *
 */

if (Ragtek === undefined){
    var Ragtek = {};
}

!function($, window, document, _undefined)
{
    Ragtek.Sidebar = function(){
        this.__construct();
    };

    Ragtek.Sidebar.prototype =
    {
        __construct: function()
        {
            this.$sidebar = $('.sidebar');
            this.$container = $('.jumpMenuTrigger').parent();
            this.$main = $(".mainContainer");
            this.$content = $(".mainContent");
            this.$togglebutton = $('<span id="switchButton" class="switchside_r" title="toggle sidebar"></span> ')
            .appendTo(this.$container);
            var that = this;

            this.$status = $.getCookie(this.getCookieName());
            this.$togglebutton.click($.context(this, 'collapse'));
            if (this.$status == 'hidden'){
                this.hide();
            }
            console.log('sidebar init ' + this.$status);

        },
        collapse:function(){
                if (this.$status == 'show'){
                    this.hide();
                }
                else{
                    this.show();
                }
        },
        hide:function(){
                         this.$sidebar.animate({
                                    width: 'hide',
                                    opacity: 1
                                }, 1000
                            );
                            this.$togglebutton.removeClass("switchside_r").addClass("switchside_l");
                            this.$main.removeClass("mainContainer");
                            this.$content.removeClass("mainContent");
                            this.setCookie('hidden');
                            this.$status = 'hidden';
        },
        show:function(){
            this.$sidebar.animate({
                                width: 'show',
                                opacity: 1
                                }, 1000
                            );
                            this.$togglebutton.removeClass("switchside_l").addClass("switchside_r");
                            this.$main.addClass("mainContainer");
                            this.$content.addClass("mainContent");
                            this.setCookie('show');
                            this.$status = 'show';
        },
        setCookie:function(status){
            $.setCookie(this.getCookieName(), status);
        },
        getCookieName:function(){
            return 'ragtek_sidebar';
        }
    };
    XenForo.register('.sidebar', 'Ragtek.Sidebar');
}
(jQuery, this, document);
