Slow mode WIP (#192):
* default delay is configurable in channel's chat rooms options.
This commit is contained in:
@ -165,8 +165,20 @@ async function vivifyConfigurationChannel (
|
||||
|
||||
const validateData: Function = async (channelConfigurationOptions: ChannelConfigurationOptions): Promise<boolean> => {
|
||||
const botConf = channelConfigurationOptions.bot
|
||||
const slowModeDefaultDelay = channelConfigurationOptions.slowMode.defaultDelay
|
||||
const errorFieldSelectors = []
|
||||
|
||||
if (
|
||||
(typeof slowModeDefaultDelay !== 'number') ||
|
||||
isNaN(slowModeDefaultDelay) ||
|
||||
slowModeDefaultDelay < 0 ||
|
||||
slowModeDefaultDelay > 1000
|
||||
) {
|
||||
const selector = '#peertube-livechat-slow-mode-default-delay'
|
||||
errorFieldSelectors.push(selector)
|
||||
await displayError(selector, await translate(LOC_INVALID_VALUE))
|
||||
}
|
||||
|
||||
// If !bot.enabled, we don't have to validate these fields:
|
||||
// The backend will ignore those values.
|
||||
if (botConf.enabled) {
|
||||
@ -220,6 +232,9 @@ async function vivifyConfigurationChannel (
|
||||
const data = new FormData(form)
|
||||
removeDisplayedErrors()
|
||||
const channelConfigurationOptions: ChannelConfigurationOptions = {
|
||||
slowMode: {
|
||||
defaultDelay: parseInt(data.get('slow_mode_default_delay')?.toString() ?? '0')
|
||||
},
|
||||
bot: {
|
||||
enabled: data.get('bot') === '1',
|
||||
nickname: data.get('bot_nickname')?.toString() ?? '',
|
||||
|
Reference in New Issue
Block a user