define([ 'jquery', '/api/config', '/customize/messages.js', 'board.js', '/bower_components/textpatcher/TextPatcher.js', '/bower_components/chainpad-listmap/chainpad-listmap.js', '/bower_components/chainpad-crypto/crypto.js', '/common/cryptpad-common.js', //'/common/visible.js', //'/common/notify.js', '/bower_components/file-saver/FileSaver.min.js' ], function ($, Config, Messages, Board, TextPatcher, Listmap, Crypto, Cryptpad /*, Visible, Notify*/) { // var saveAs = window.saveAs; Cryptpad.styleAlerts(); console.log("Initializing your realtime session..."); var secret = Cryptpad.getSecrets(); var module = window.APP = { Board: Board, }; /* var unnotify = function () { if (!(module.tabNotification && typeof(module.tabNotification.cancel) === 'function')) { return; } module.tabNotification.cancel(); }; var notify = function () { if (!(Visible.isSupported() && !Visible.currently())) { return; } unnotify(); module.tabNotification = Notify.tab(1000, 10); }; */ var setEditable = function (bool) { bool = bool; }; setEditable(false); var $lists = $('#lists'); $('#create-list').click(function () { Board.List.draw($lists); }); var firstUser = function () { Cryptpad.log("You are the first user to visit this board"); }; var whenReady = function () { var rt = module.rt; var proxy = rt.proxy; var first = Board.initialize(proxy); //var board = module.board = Board.create(proxy); Board.Draw($lists); if (first) { firstUser(); } }; var config = { websocketURL: Config.websocketURL, channel: secret.channel, data: {}, crypto: Crypto.createEncryptor(secret.key), }; Cryptpad.ready(function () { var rt = module.rt = Listmap.create(config); var proxy = rt.proxy; proxy .on('create', function (info) { module.realtime = info.realtime; window.location.hash = info.channel + secret.key; }) .on('ready', function () { Cryptpad.log("Ready!"); whenReady({ }); }) .on('disconnect', function () { Cryptpad.warn("Disconnected!"); }); }); });