const cheerio = require('cheerio'); const {defaultSettings} = require('../util/default.json'); const Lang = require('../util/i18n.js'); const allLangs = Lang.allLangs(); const Wiki = require('../util/wiki.js'); const {got, db, sendMsg, hasPerm} = require('./util.js'); const fieldset = { channel: '' + '', wiki: '' + '', //+ '' //+ '
' //+ 'Wiki search' //+ '
', lang: '' + '', role: '' + '', prefix: '' + '' + '
' + '' + '', inline: '' + '', save: '', delete: '' }; /** * Create a settings form * @param {import('cheerio')} $ - The response body * @param {String} header - The form header * @param {Object} settings - The current settings * @param {Boolean} settings.patreon * @param {String} settings.channel * @param {String} settings.wiki * @param {String} settings.lang * @param {String} settings.role * @param {Boolean} settings.inline * @param {String} settings.prefix * @param {Object[]} guildRoles - The guild roles * @param {String} guildRoles.id * @param {String} guildRoles.name * @param {Object[]} guildChannels - The guild channels * @param {String} guildChannels.id * @param {String} guildChannels.name * @param {Number} guildChannels.userPermissions */ function createForm($, header, settings, guildRoles, guildChannels = []) { var readonly = ( process.env.READONLY ? true : false ); if ( settings.channel && guildChannels.userPermissions === 0 && guildChannels.name === 'UNKNOWN' ) { readonly = true; } var fields = []; if ( settings.channel ) { let channel = $('
').append(fieldset.channel); channel.find('#wb-settings-channel').append( ...guildChannels.map( guildChannel => { return $(`