127.0.0.1:8000 watch-together / master src / js / websocket / messages / set-user-prefs.js
master

Tree @master (Download .tar.gz)

set-user-prefs.js @masterraw · history · blame

const $ = require('jquery');
const ui = require('../../ui/common');
const api = require('../../utils/api');
const state = require('../../utils/state');

let page_reload_timeout;

module.exports = function(data) {
    if (state.prefs.ads_enabled !== data.ads_enabled) {
        if (data.ads_enabled) {
            $("#toggle_ads").text("Disable Ads").off("click").on("click", function() {
                api.post("/account/prefs/set", {
                    ads_enabled: 0
                }).then(function() {
                    ui.show_banner({
                        message: "Ads Disabled. Page will reload..."
                    });
                    clearTimeout(page_reload_timeout);
                    page_reload_timeout = setTimeout(function() {
                        location.reload();
                    }, 3000);
                }).catch(api.handle_error_message);
            });
        } else {
            $("#toggle_ads").text("Enable Ads").off("click").on("click", function() {
                api.post("/account/prefs/set", {
                    ads_enabled: 1
                }).then(function() {
                    ui.show_banner({
                        message: "Ads Enabled. Page will reload..."
                    });
                    clearTimeout(page_reload_timeout);
                    page_reload_timeout = setTimeout(function() {
                        location.reload();
                    }, 3000);
                }).catch(api.handle_error_message);
            });
        }
    }
    state.prefs = data;
}