diff --git a/assets/static/counter.js b/assets/static/counter.js index 96da45817..ed42d979e 100644 --- a/assets/static/counter.js +++ b/assets/static/counter.js @@ -1,76 +1,69 @@ -/* globals Favico */ // favico.js +const favico = require("favico"); -/* exported Counter */ -var Counter = (function() { +var selectors = { + counter: "#alert-count", + spinner: "#spinner" +}; - var selectors = { - counter: "#alert-count", - spinner: "#spinner" - }; +var favicon = false; - var favicon = false; +function hide() { + $(selectors.counter).hide(); + $(selectors.spinner).children().removeClass("spinner-success spinner-error"); + $(selectors.spinner).show(); +} - var setCounter = function(val) { - favicon.badge(val); - Counter.Show(); - $(selectors.counter).html(val); - // set alert count css based on the number of alerts - if (val === 0) { - $(selectors.counter).removeClass("text-warning text-danger").addClass("text-success"); - document.title = "(◕‿◕)"; - } else if (val < 10) { - $(selectors.counter).removeClass("text-success text-danger").addClass("text-warning"); - document.title = "(◕_◕)"; - } else { - $(selectors.counter).removeClass("text-success text-warning").addClass("text-danger"); - document.title = "(◕︵◕)"; - } - }; +function show() { + $(selectors.spinner).hide(); + $(selectors.counter).show(); +} - var setUnknown = function() { - favicon.badge("?"); - Counter.Show(); - $(selectors.counter).html("?"); - $(selectors.counter).removeClass("text-success text-warning text-danger"); - }; +function setCounter(val) { + favicon.badge(val); + show(); + $(selectors.counter).html(val); + // set alert count css based on the number of alerts + if (val === 0) { + $(selectors.counter).removeClass("text-warning text-danger").addClass("text-success"); + document.title = "(◕‿◕)"; + } else if (val < 10) { + $(selectors.counter).removeClass("text-success text-danger").addClass("text-warning"); + document.title = "(◕_◕)"; + } else { + $(selectors.counter).removeClass("text-success text-warning").addClass("text-danger"); + document.title = "(◕︵◕)"; + } +} - var hide = function() { - $(selectors.counter).hide(); - $(selectors.spinner).children().removeClass("spinner-success spinner-error"); - $(selectors.spinner).show(); - }; +function markUnknown() { + favicon.badge("?"); + show(); + $(selectors.counter).html("?"); + $(selectors.counter).removeClass("text-success text-warning text-danger"); +} - var show = function() { - $(selectors.spinner).hide(); - $(selectors.counter).show(); - }; +function markError() { + $(selectors.spinner).children().removeClass("spinner-success").addClass("spinner-error"); +} - var markError = function() { - $(selectors.spinner).children().removeClass("spinner-success").addClass("spinner-error"); - }; +function markSuccess() { + $(selectors.spinner).children().addClass("spinner-success"); +} - var markSuccess = function() { - $(selectors.spinner).children().addClass("spinner-success"); - }; +function init() { + favicon = new favico.Favico({ + animation: "none", + position: "up", + bgColor: "#333", + textColor: "#ff0" + }); + markUnknown(); +} - var init = function() { - favicon = new Favico({ - animation: "none", - position: "up", - bgColor: "#333", - textColor: "#ff0" - }); - Counter.Unknown(); - }; - - return { - Init: init, - Set: setCounter, - Unknown: setUnknown, - Hide: hide, - Show: show, - Error: markError, - Success: markSuccess - }; - -})(); +exports.init = init; +exports.hide = hide; +exports.show = show; +exports.setCounter = setCounter; +exports.markError = markError; +exports.markSuccess = markSuccess; +exports.markUnknown = markUnknown;