Lint: timeslider (#4580)
Squashed changes from rhansen@rhansen.org: * Move code back to where it was. (It's easier to review changes when the code isn't moved. This causes some no-use-before-define warnings to reappear, but those are just warnings.) * Move eslint-disable comment to same line * Use `window.clientvars` to resolve no-global-assign * Undo changes that aren't about fixing lint errorspull/4574/head^2
parent
bca60c8b17
commit
170a230c3a
|
@ -1,3 +1,5 @@
|
||||||
|
'use strict';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This code is mostly from the old Etherpad. Please help us to comment this code.
|
* This code is mostly from the old Etherpad. Please help us to comment this code.
|
||||||
* This helps other people to understand this code better and helps them to improve it.
|
* This helps other people to understand this code better and helps them to improve it.
|
||||||
|
@ -28,12 +30,12 @@ const Cookies = require('./pad_utils').Cookies;
|
||||||
const randomString = require('./pad_utils').randomString;
|
const randomString = require('./pad_utils').randomString;
|
||||||
const hooks = require('./pluginfw/hooks');
|
const hooks = require('./pluginfw/hooks');
|
||||||
|
|
||||||
let token, padId, export_links;
|
let token, padId, exportLinks, socket, changesetLoader, BroadcastSlider;
|
||||||
|
|
||||||
function init() {
|
const init = () => {
|
||||||
$(document).ready(() => {
|
$(document).ready(() => {
|
||||||
// start the custom js
|
// start the custom js
|
||||||
if (typeof customStart === 'function') customStart();
|
if (typeof customStart === 'function') customStart(); // eslint-disable-line no-undef
|
||||||
|
|
||||||
// get the padId out of the url
|
// get the padId out of the url
|
||||||
const urlParts = document.location.pathname.split('/');
|
const urlParts = document.location.pathname.split('/');
|
||||||
|
@ -51,7 +53,7 @@ function init() {
|
||||||
|
|
||||||
const loc = document.location;
|
const loc = document.location;
|
||||||
// get the correct port
|
// get the correct port
|
||||||
const port = loc.port == '' ? (loc.protocol == 'https:' ? 443 : 80) : loc.port;
|
const port = loc.port === '' ? (loc.protocol === 'https:' ? 443 : 80) : loc.port;
|
||||||
// create the url
|
// create the url
|
||||||
const url = `${loc.protocol}//${loc.hostname}:${port}/`;
|
const url = `${loc.protocol}//${loc.hostname}:${port}/`;
|
||||||
// find out in which subfolder we are
|
// find out in which subfolder we are
|
||||||
|
@ -71,7 +73,7 @@ function init() {
|
||||||
|
|
||||||
// route the incoming messages
|
// route the incoming messages
|
||||||
socket.on('message', (message) => {
|
socket.on('message', (message) => {
|
||||||
if (message.type == 'CLIENT_VARS') {
|
if (message.type === 'CLIENT_VARS') {
|
||||||
handleClientVars(message);
|
handleClientVars(message);
|
||||||
} else if (message.accessStatus) {
|
} else if (message.accessStatus) {
|
||||||
$('body').html('<h2>You have no permission to access this pad</h2>');
|
$('body').html('<h2>You have no permission to access this pad</h2>');
|
||||||
|
@ -81,7 +83,7 @@ function init() {
|
||||||
});
|
});
|
||||||
|
|
||||||
// get all the export links
|
// get all the export links
|
||||||
export_links = $('#export > .exportlink');
|
exportLinks = $('#export > .exportlink');
|
||||||
|
|
||||||
$('button#forcereconnect').click(() => {
|
$('button#forcereconnect').click(() => {
|
||||||
window.location.reload();
|
window.location.reload();
|
||||||
|
@ -92,10 +94,10 @@ function init() {
|
||||||
|
|
||||||
hooks.aCallAll('postTimesliderInit');
|
hooks.aCallAll('postTimesliderInit');
|
||||||
});
|
});
|
||||||
}
|
};
|
||||||
|
|
||||||
// sends a message over the socket
|
// sends a message over the socket
|
||||||
function sendSocketMsg(type, data) {
|
const sendSocketMsg = (type, data) => {
|
||||||
socket.json.send({
|
socket.json.send({
|
||||||
component: 'pad', // FIXME: Remove this stupidity!
|
component: 'pad', // FIXME: Remove this stupidity!
|
||||||
type,
|
type,
|
||||||
|
@ -105,19 +107,21 @@ function sendSocketMsg(type, data) {
|
||||||
sessionID: Cookies.get('sessionID'),
|
sessionID: Cookies.get('sessionID'),
|
||||||
protocolVersion: 2,
|
protocolVersion: 2,
|
||||||
});
|
});
|
||||||
}
|
};
|
||||||
|
|
||||||
const fireWhenAllScriptsAreLoaded = [];
|
const fireWhenAllScriptsAreLoaded = [];
|
||||||
|
|
||||||
let changesetLoader;
|
const handleClientVars = (message) => {
|
||||||
function handleClientVars(message) {
|
|
||||||
// save the client Vars
|
// save the client Vars
|
||||||
clientVars = message.data;
|
window.clientVars = message.data;
|
||||||
|
|
||||||
// load all script that doesn't work without the clientVars
|
// load all script that doesn't work without the clientVars
|
||||||
BroadcastSlider = require('./broadcast_slider').loadBroadcastSliderJS(fireWhenAllScriptsAreLoaded);
|
BroadcastSlider = require('./broadcast_slider')
|
||||||
|
.loadBroadcastSliderJS(fireWhenAllScriptsAreLoaded);
|
||||||
|
|
||||||
require('./broadcast_revisions').loadBroadcastRevisionsJS();
|
require('./broadcast_revisions').loadBroadcastRevisionsJS();
|
||||||
changesetLoader = require('./broadcast').loadBroadcastJS(socket, sendSocketMsg, fireWhenAllScriptsAreLoaded, BroadcastSlider);
|
changesetLoader = require('./broadcast')
|
||||||
|
.loadBroadcastJS(socket, sendSocketMsg, fireWhenAllScriptsAreLoaded, BroadcastSlider);
|
||||||
|
|
||||||
// initialize export ui
|
// initialize export ui
|
||||||
require('./pad_impexp').padimpexp.init();
|
require('./pad_impexp').padimpexp.init();
|
||||||
|
@ -127,8 +131,8 @@ function handleClientVars(message) {
|
||||||
|
|
||||||
// change export urls when the slider moves
|
// change export urls when the slider moves
|
||||||
BroadcastSlider.onSlider((revno) => {
|
BroadcastSlider.onSlider((revno) => {
|
||||||
// export_links is a jQuery Array, so .each is allowed.
|
// exportLinks is a jQuery Array, so .each is allowed.
|
||||||
export_links.each(function () {
|
exportLinks.each(function () {
|
||||||
// Modified from regular expression to fix:
|
// Modified from regular expression to fix:
|
||||||
// https://github.com/ether/etherpad-lite/issues/4071
|
// https://github.com/ether/etherpad-lite/issues/4071
|
||||||
// Where a padId that was numeric would create the wrong export link
|
// Where a padId that was numeric would create the wrong export link
|
||||||
|
@ -156,7 +160,7 @@ function handleClientVars(message) {
|
||||||
$('#viewfontmenu').change(function () {
|
$('#viewfontmenu').change(function () {
|
||||||
$('#innerdocbody').css('font-family', $(this).val() || '');
|
$('#innerdocbody').css('font-family', $(this).val() || '');
|
||||||
});
|
});
|
||||||
}
|
};
|
||||||
|
|
||||||
exports.baseURL = '';
|
exports.baseURL = '';
|
||||||
exports.init = init;
|
exports.init = init;
|
||||||
|
|
Loading…
Reference in New Issue