pad_userlist: Don't rely on global pad variable

This commit is contained in:
Richard Hansen 2021-08-13 23:44:02 -04:00
parent bf6ab3bba8
commit e99eb6366c

View file

@ -369,18 +369,13 @@ const paduserlist = (() => {
}); });
// color picker // color picker
$('#myswatchbox').click(showColorPicker); $('#myswatchbox').click(() => self.showColorPicker());
$('#mycolorpicker .pickerswatchouter').click(function () { $('#mycolorpicker .pickerswatchouter').click(function () {
$('#mycolorpicker .pickerswatchouter').removeClass('picked'); $('#mycolorpicker .pickerswatchouter').removeClass('picked');
$(this).addClass('picked'); $(this).addClass('picked');
}); });
$('#mycolorpickersave').click(() => { $('#mycolorpickersave').click(() => self.closeColorPicker(true));
closeColorPicker(true); $('#mycolorpickercancel').click(() => self.closeColorPicker(false));
});
$('#mycolorpickercancel').click(() => {
closeColorPicker(false);
});
//
}, },
usersOnline: () => { usersOnline: () => {
// Returns an object of users who are currently online on this pad // Returns an object of users who are currently online on this pad
@ -541,67 +536,67 @@ const paduserlist = (() => {
$('#myswatch').css({'background-color': myUserInfo.colorId}); $('#myswatch').css({'background-color': myUserInfo.colorId});
$('li[data-key=showusers] > a').css({'box-shadow': `inset 0 0 30px ${myUserInfo.colorId}`}); $('li[data-key=showusers] > a').css({'box-shadow': `inset 0 0 30px ${myUserInfo.colorId}`});
}, },
closeColorPicker: (accept) => {
if (accept) {
let newColor = $('#mycolorpickerpreview').css('background-color');
const parts = newColor.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
// parts now should be ["rgb(0, 70, 255", "0", "70", "255"]
if (parts) {
delete (parts[0]);
for (let i = 1; i <= 3; ++i) {
parts[i] = parseInt(parts[i]).toString(16);
if (parts[i].length === 1) parts[i] = `0${parts[i]}`;
}
newColor = `#${parts.join('')}`; // "0070ff"
}
myUserInfo.colorId = newColor;
pad.notifyChangeColor(newColor);
paduserlist.renderMyUserInfo();
}
colorPickerOpen = false;
$('#mycolorpicker').removeClass('popup-show');
},
showColorPicker: () => {
$.farbtastic('#colorpicker').setColor(myUserInfo.colorId);
if (!colorPickerOpen) {
const palette = pad.getColorPalette();
if (!colorPickerSetup) {
const colorsList = $('#colorpickerswatches');
for (let i = 0; i < palette.length; i++) {
const li = $('<li>', {
style: `background: ${palette[i]};`,
});
li.appendTo(colorsList);
li.bind('click', (event) => {
$('#colorpickerswatches li').removeClass('picked');
$(event.target).addClass('picked');
const newColorId = getColorPickerSwatchIndex($('#colorpickerswatches .picked'));
pad.notifyChangeColor(newColorId);
});
}
colorPickerSetup = true;
}
$('#mycolorpicker').addClass('popup-show');
colorPickerOpen = true;
$('#colorpickerswatches li').removeClass('picked');
$($('#colorpickerswatches li')[myUserInfo.colorId]).addClass('picked'); // seems weird
}
},
getColorPickerSwatchIndex: (jnode) => $('#colorpickerswatches li').index(jnode),
}; };
return self; return self;
})(); })();
const getColorPickerSwatchIndex = (jnode) => $('#colorpickerswatches li').index(jnode);
const closeColorPicker = (accept) => {
if (accept) {
let newColor = $('#mycolorpickerpreview').css('background-color');
const parts = newColor.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
// parts now should be ["rgb(0, 70, 255", "0", "70", "255"]
if (parts) {
delete (parts[0]);
for (let i = 1; i <= 3; ++i) {
parts[i] = parseInt(parts[i]).toString(16);
if (parts[i].length === 1) parts[i] = `0${parts[i]}`;
}
newColor = `#${parts.join('')}`; // "0070ff"
}
myUserInfo.colorId = newColor;
pad.notifyChangeColor(newColor);
paduserlist.renderMyUserInfo();
}
colorPickerOpen = false;
$('#mycolorpicker').removeClass('popup-show');
};
const showColorPicker = () => {
$.farbtastic('#colorpicker').setColor(myUserInfo.colorId);
if (!colorPickerOpen) {
const palette = pad.getColorPalette();
if (!colorPickerSetup) {
const colorsList = $('#colorpickerswatches');
for (let i = 0; i < palette.length; i++) {
const li = $('<li>', {
style: `background: ${palette[i]};`,
});
li.appendTo(colorsList);
li.bind('click', (event) => {
$('#colorpickerswatches li').removeClass('picked');
$(event.target).addClass('picked');
const newColorId = getColorPickerSwatchIndex($('#colorpickerswatches .picked'));
pad.notifyChangeColor(newColorId);
});
}
colorPickerSetup = true;
}
$('#mycolorpicker').addClass('popup-show');
colorPickerOpen = true;
$('#colorpickerswatches li').removeClass('picked');
$($('#colorpickerswatches li')[myUserInfo.colorId]).addClass('picked'); // seems weird
}
};
exports.paduserlist = paduserlist; exports.paduserlist = paduserlist;