MSV FM

dot.antimicrobial@66.96.161.157: ~ $
Path : /hermes/bosweb/b1536/globalimpexkk.com/js/
File Upload :
Current < : /hermes/bosweb/b1536/globalimpexkk.com/js/jquery.rd-styleswitcher.js

/*
 * Author: Evgeniy Gusarov StMechanus (Diversant)
 * Under the MIT License
 *
 * Version: 1.0.0
 *
 */


;
(function ($) {

    var settings = {
        wrapClass: 'styleswitcher',
        toggleClass: 'styleswitcher_toggle',
        titleClass: 'styleswitcher_title',
        cntClass: 'styleswitcher_cnt',
        schemeClass: 'styleswitcher_scheme',
        linkID: 'colorScheme'
    }

    var RDStyleSwitcher = function (options) {
        this.options = options;
    };

    var initStarterScheme = function () {
        var url = $.cookie("rd-scheme");
        if (url) {
            $('head').append($('<link/>', {
                'id': settings.linkID,
                'rel': 'stylesheet',
                'href': url
            }));

            $('.'+settings.schemeClass+'[data-url="'+url+'"]').addClass('active');
        }else{
            $('#'+settings.linkID+'0').addClass('active');
        }
    };
    initStarterScheme();

    RDStyleSwitcher.prototype = {
        init: function () {
            var _self = this;

            _self.createDOM();
            _self.createListeners();
        },

        createDOM: function () {
            var _self = this;

            $('body')
                .append($('<div/>', {'class': settings.wrapClass})
                    .append($('<button/>', {'class': settings.toggleClass}))
                    .append($('<h2>', {
                        'class': settings.titleClass,
                        'text': _self.options.title
                    }))
                    .append(_self.createSchemes())
            );
        },

        createSchemes: function () {
            var _self = this;
            var cnt = $('<div>', {'class': settings.cntClass});

            for (var i in _self.options.schemes) {
                cnt
                    .append($('<button/>', {
                        'id': settings.linkID + i,
                        'class': settings.schemeClass,
                        'data-url': _self.options.schemes[i].url
                    }).css({
                        'background': _self.options.schemes[i].icon.indexOf('#') == 0 ? _self.options.schemes[i].icon : 'url(' + _self.options.schemes[i].icon + ')',
                        'background-size': 'cover'
                    }))
                    .append(" ");
            }

            return cnt;
        },

        createListeners: function () {
            $('body').delegate('.' + settings.toggleClass, 'click', function () {
                var o = $('.' + settings.wrapClass);
                $(this).toggleClass('active');
                o.toggleClass('active');
            });

            $('body').delegate('.' + settings.schemeClass, 'click', function () {
                $('.' + settings.schemeClass).removeClass('active');
                $(this).addClass('active');

                var l = $('#' + settings.linkID);

                if (!l.length) {
                    $('head').append($('<link/>', {
                        'id': settings.linkID,
                        'rel': 'stylesheet'
                    }))
                }

                if ($(this).data('url')) {
                    $('#' + settings.linkID).attr('href', $(this).data('url'));
                    $.cookie("rd-scheme", $(this).data('url'), {expires: 365, path: '/'});
                } else {
                    $('#' + settings.linkID).remove();
                    $.removeCookie("rd-scheme", {path: '/'});
                }
            });
        }
    };


})(jQuery);