diff options
Diffstat (limited to 'theme/javascript/core/font-settings.js')
-rw-r--r-- | theme/javascript/core/font-settings.js | 103 |
1 files changed, 0 insertions, 103 deletions
diff --git a/theme/javascript/core/font-settings.js b/theme/javascript/core/font-settings.js deleted file mode 100644 index 63177ee..0000000 --- a/theme/javascript/core/font-settings.js +++ /dev/null @@ -1,103 +0,0 @@ -define([ - "jQuery", - "utils/storage" -], function($, storage) { - var fontState; - - var THEMES = { - "white": 0, - "sepia": 1, - "night": 2 - }; - - var FAMILY = { - "serif": 0, - "sans": 1 - }; - - var enlargeFontSize = function(e){ - if (fontState.size < 4){ - fontState.size++; - fontState.save(); - } - }; - - var reduceFontSize = function(e){ - if (fontState.size > 0){ - fontState.size--; - fontState.save(); - } - }; - - var changeFontFamily = function(){ - var index = $(this).data("font"); - - fontState.family = index; - fontState.save(); - }; - - var changeColorTheme = function(){ - var $book = $(".book"); - var index = $(this).data("theme"); - - if (fontState.theme !== 0) - $book.removeClass("color-theme-"+fontState.theme); - - fontState.theme = index; - if (fontState.theme !== 0) - $book.addClass("color-theme-"+fontState.theme); - - fontState.save(); - }; - - var update = function() { - var $book = $(".book"); - - $(".font-settings .font-family-list li").removeClass("active"); - $(".font-settings .font-family-list li:nth-child("+(fontState.family+1)+")").addClass("active"); - - $book[0].className = $book[0].className.replace(/\bfont-\S+/g, ''); - $book.addClass("font-size-"+fontState.size); - $book.addClass("font-family-"+fontState.family); - - if(fontState.theme !== 0) { - $book[0].className = $book[0].className.replace(/\bcolor-theme-\S+/g, ''); - $book.addClass("color-theme-"+fontState.theme); - } - }; - - var init = function(config) { - var $toggle, $bookBody, $dropdown, $book; - - //Find DOM elements. - $book = $(".book"); - $toggle = $(".book-header .toggle-font-settings"); - $dropdown = $("#font-settings-wrapper .dropdown-menu"); - $bookBody = $(".book-body"); - - // Instantiate font state object - fontState = storage.get("fontState", { - size: config.size || 2, - family: FAMILY[config.family || "sans"], - theme: THEMES[config.theme || "white"] - }); - fontState.save = function(){ - storage.set("fontState",fontState); - update(); - }; - - update(); - - //Add event listeners - $(document).on('click', "#enlarge-font-size", enlargeFontSize); - $(document).on('click', "#reduce-font-size", reduceFontSize); - - $(document).on('click', "#font-settings-wrapper .font-family-list .button", changeFontFamily); - $(document).on('click', "#font-settings-wrapper .color-theme-list .button", changeColorTheme); - }; - - return { - init: init, - update: update - } -});
\ No newline at end of file |