diff options
Diffstat (limited to '.config/BetterDiscord/plugins/EditChannels.plugin.js')
-rw-r--r-- | .config/BetterDiscord/plugins/EditChannels.plugin.js | 781 |
1 files changed, 0 insertions, 781 deletions
diff --git a/.config/BetterDiscord/plugins/EditChannels.plugin.js b/.config/BetterDiscord/plugins/EditChannels.plugin.js deleted file mode 100644 index 2f7a518..0000000 --- a/.config/BetterDiscord/plugins/EditChannels.plugin.js +++ /dev/null @@ -1,781 +0,0 @@ -/** - * @name EditChannels - * @authorId 278543574059057154 - * @invite Jx3TjNS - * @donate https://www.paypal.me/MircoWittrien - * @patreon https://www.patreon.com/MircoWittrien - * @website https://github.com/mwittrien/BetterDiscordAddons/tree/master/Plugins/EditChannels - * @source https://raw.githubusercontent.com/mwittrien/BetterDiscordAddons/master/Plugins/EditChannels/EditChannels.plugin.js - */ - -module.exports = (_ => { - const config = { - "info": { - "name": "EditChannels", - "author": "DevilBro", - "version": "4.1.8", - "description": "Allow you to rename and recolor channelnames" - }, - "changeLog": { - "fixed": { - "Works again": "Yas" - } - } - }; - return !window.BDFDB_Global || (!window.BDFDB_Global.loaded && !window.BDFDB_Global.started) ? class { - getName () {return config.info.name;} - getAuthor () {return config.info.author;} - getVersion () {return config.info.version;} - getDescription () {return config.info.description;} - - load() { - if (!window.BDFDB_Global || !Array.isArray(window.BDFDB_Global.pluginQueue)) window.BDFDB_Global = Object.assign({}, window.BDFDB_Global, {pluginQueue:[]}); - if (!window.BDFDB_Global.downloadModal) { - window.BDFDB_Global.downloadModal = true; - BdApi.showConfirmationModal("Library Missing", `The library plugin needed for ${config.info.name} is missing. Please click "Download Now" to install it.`, { - confirmText: "Download Now", - cancelText: "Cancel", - onCancel: _ => {delete window.BDFDB_Global.downloadModal;}, - onConfirm: _ => { - delete window.BDFDB_Global.downloadModal; - require("request").get("https://mwittrien.github.io/BetterDiscordAddons/Library/0BDFDB.plugin.js", (e, r, b) => { - if (!e && b && b.indexOf(`* @name BDFDB`) > -1) require("fs").writeFile(require("path").join(BdApi.Plugins.folder, "0BDFDB.plugin.js"), b, _ => {}); - else BdApi.alert("Error", "Could not download BDFDB library plugin, try again some time later."); - }); - } - }); - } - if (!window.BDFDB_Global.pluginQueue.includes(config.info.name)) window.BDFDB_Global.pluginQueue.push(config.info.name); - } - start() {this.load();} - stop() {} - } : (([Plugin, BDFDB]) => { - var changedChannels = {}, settings = {}; - - return class EditChannels extends Plugin { - onLoad() { - this.defaults = { - settings: { - changeChannelIcon: {value:true, inner:false, description:"Change color of Channel Icon"}, - changeInChatTextarea: {value:true, inner:true, description:"Chat Textarea"}, - changeInMentions: {value:true, inner:true, description:"Mentions"}, - changeInChannelList: {value:true, inner:true, description:"Channel List"}, - changeInChannelHeader: {value:true, inner:true, description:"Channel Header"}, - changeInRecentMentions: {value:true, inner:true, description:"Recent Mentions Popout"}, - changeInAutoComplete: {value:true, inner:true, description:"Autocomplete Menu"}, - changeInAuditLog: {value:true, inner:true, description:"Audit Log"}, - changeInInviteLog: {value:true, inner:true, description:"Invite Log"}, - changeInQuickSwitcher: {value:true, inner:true, description:"Quick Switcher"} - } - }; - - this.patchedModules = { - before: { - ChannelEditorContainer: "render", - ChannelAutoComplete: "render", - AutocompleteChannelResult: "render", - AuditLog: "render", - SettingsInvites: "render", - HeaderBarContainer: "render", - ChannelCategoryItem: "default", - ChannelItem: "default", - QuickSwitchChannelResult: "render", - MessageContent: "type" - }, - after: { - AutocompleteChannelResult: "render", - AuditLog: "render", - HeaderBarContainer: "render", - ChannelCategoryItem: "default", - ChannelItem: "default", - QuickSwitchChannelResult: "render", - RecentsChannelHeader: "default" - } - }; - - this.css = ` - ${BDFDB.dotCN.messagespopoutchannelname}:hover > span[style*="color"], - ${BDFDB.dotCN.recentmentionschannelname}:hover > span[style*="color"] { - text-decoration: underline; - } - `; - } - - onStart() { - let observer = new MutationObserver(_ => {this.changeAppTitle();}); - BDFDB.ObserverUtils.connect(this, document.head.querySelector("title"), {name:"appTitleObserver",instance:observer}, {childList:true}); - - if (BDFDB.LibraryModules.AutocompleteOptions && BDFDB.LibraryModules.AutocompleteOptions.AUTOCOMPLETE_OPTIONS) BDFDB.PatchUtils.patch(this, BDFDB.LibraryModules.AutocompleteOptions.AUTOCOMPLETE_OPTIONS.CHANNELS, "queryResults", {after: e => { - let channelArray = []; - for (let id in changedChannels) if (changedChannels[id] && changedChannels[id].name) { - let channel = BDFDB.LibraryModules.ChannelStore.getChannel(id); - let category = channel && channel.parent_id && BDFDB.LibraryModules.ChannelStore.getChannel(channel.parent_id); - let catData = category && changedChannels[category.id] || {}; - if (BDFDB.ChannelUtils.isTextChannel(channel) && channel.guild_id == e.methodArguments[0].guild_id) channelArray.push(Object.assign({ - lowerCaseName: changedChannels[id].name.toLowerCase(), - lowerCaseCatName: catData && catData.name && catData.name.toLowerCase(), - channel, - category, - catData - }, changedChannels[id])); - } - channelArray = BDFDB.ArrayUtils.keySort(channelArray.filter(n => e.returnValue.channels.every(channel => channel.id != n.channel.id) && (n.lowerCaseName.indexOf(e.methodArguments[1]) != -1 || (n.lowerCaseCatName && n.lowerCaseCatName.indexOf(e.methodArguments[1]) != -1))), "lowerCaseName"); - e.returnValue.channels = [].concat(e.returnValue.channels, channelArray.map(n => n.channel)).slice(0, BDFDB.DiscordConstants.MAX_AUTOCOMPLETE_RESULTS); - }}); - - this.forceUpdateAll(); - } - - onStop() { - this.forceUpdateAll(); - } - - getSettingsPanel (collapseStates = {}) { - let settingsPanel, settingsItems = []; - - for (let key in settings) if (!this.defaults.settings[key].inner) settingsItems.push(BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.SettingsSaveItem, { - type: "Switch", - plugin: this, - keys: ["settings", key], - label: this.defaults.settings[key].description, - value: settings[key] - })); - settingsItems.push(BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.SettingsPanelInner, { - title: "Change Channels in:", - first: settingsItems.length == 0, - children: Object.keys(settings).map(key => this.defaults.settings[key].inner && BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.SettingsSaveItem, { - type: "Switch", - plugin: this, - keys: ["settings", key], - label: this.defaults.settings[key].description, - value: settings[key] - })) - })); - settingsItems.push(BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.SettingsItem, { - type: "Button", - color: BDFDB.LibraryComponents.Button.Colors.RED, - label: "Reset all Channels", - onClick: _ => { - BDFDB.ModalUtils.confirm(this, "Are you sure you want to reset all channels?", _ => { - BDFDB.DataUtils.remove(this, "channels"); - this.forceUpdateAll(); - }); - }, - children: BDFDB.LanguageUtils.LanguageStrings.RESET - })); - - return settingsPanel = BDFDB.PluginUtils.createSettingsPanel(this, settingsItems); - } - - onSettingsClosed () { - if (this.SettingsUpdated) { - delete this.SettingsUpdated; - this.forceUpdateAll(); - } - } - - forceUpdateAll (instant = false) { - changedChannels = BDFDB.DataUtils.load(this, "channels"); - settings = BDFDB.DataUtils.get(this, "settings"); - - this.changeAppTitle(); - BDFDB.PatchUtils.forceAllUpdates(this); - BDFDB.ChannelUtils.rerenderAll(instant); - BDFDB.ReactUtils.forceUpdate(BDFDB.ReactUtils.findOwner(document.querySelector(BDFDB.dotCN.app), {name:"Channel", unlimited:true})); - } - - onChannelContextMenu (e) { - if (e.instance.props.channel) { - let [children, index] = BDFDB.ContextMenuUtils.findItem(e.returnvalue, {id: "devmode-copy-id", group: true}); - children.splice(index > -1 ? index : children.length, 0, BDFDB.ContextMenuUtils.createItem(BDFDB.LibraryComponents.MenuItems.MenuGroup, { - children: BDFDB.ContextMenuUtils.createItem(BDFDB.LibraryComponents.MenuItems.MenuItem, { - label: this.labels.context_localchannelsettings_text, - id: BDFDB.ContextMenuUtils.createItemId(this.name, "settings-submenu"), - children: BDFDB.ContextMenuUtils.createItem(BDFDB.LibraryComponents.MenuItems.MenuGroup, { - children: [ - BDFDB.ContextMenuUtils.createItem(BDFDB.LibraryComponents.MenuItems.MenuItem, { - label: this.labels.submenu_channelsettings_text, - id: BDFDB.ContextMenuUtils.createItemId(this.name, "settings-change"), - action: _ => { - this.openChannelSettingsModal(e.instance.props.channel); - } - }), - BDFDB.ContextMenuUtils.createItem(BDFDB.LibraryComponents.MenuItems.MenuItem, { - label: this.labels.submenu_resetsettings_text, - id: BDFDB.ContextMenuUtils.createItemId(this.name, "settings-reset"), - disabled: !changedChannels[e.instance.props.channel.id], - action: _ => { - BDFDB.DataUtils.remove(this, "channels", e.instance.props.channel.id); - this.forceUpdateAll(true); - } - }) - ] - }) - }) - })); - } - } - - processChannelEditorContainer (e) { - if (!e.instance.props.disabled && e.instance.props.channel && BDFDB.ChannelUtils.isTextChannel(e.instance.props.channel) && e.instance.props.type == BDFDB.DiscordConstants.TextareaTypes.NORMAL && settings.changeInChatTextarea) { - let data = changedChannels[e.instance.props.channel.id]; - e.instance.props.placeholder = BDFDB.LanguageUtils.LanguageStringsFormat("TEXTAREA_PLACEHOLDER", `#${data && data.name || e.instance.props.channel.name}`); - } - } - - processAutocompleteChannelResult (e) { - if (e.instance.props.channel && settings.changeInAutoComplete) { - if (!e.returnvalue) { - e.instance.props.channel = this.getChannelData(e.instance.props.channel.id); - if (e.instance.props.category) e.instance.props.category = this.getChannelData(e.instance.props.category.id); - } - else { - let channelName = BDFDB.ReactUtils.findChild(e.returnvalue, {props:[["className", BDFDB.disCN.marginleft4]]}); - if (channelName) this.changeChannelColor(channelName, e.instance.props.channel.id); - let channelIcon = BDFDB.ReactUtils.findChild(e.returnvalue, {props:[["className", BDFDB.disCN.autocompleteicon]]}); - if (channelIcon) this.changeChannelIconColor(channelIcon, e.instance.props.channel.id, {alpha: 0.6}); - if (e.instance.props.category) { - let categoryName = BDFDB.ReactUtils.findChild(e.returnvalue, {props:[["className", BDFDB.disCN.autocompletedescription]]}); - if (categoryName) this.changeChannelColor(categoryName, e.instance.props.category.id); - } - } - } - } - - processAuditLog (e) { - let channel = BDFDB.ObjectUtils.get(e.instance, "props.log.options.channel"); - if (channel && settings.changeInAuditLog) { - if (!e.returnvalue) e.instance.props.log.options.channel = this.getChannelData(channel.id); - else { - let channelName = BDFDB.ReactUtils.findChild(e.returnvalue, {props:[["children", [["#" + channel.name]]]]}); - if (channelName) this.changeChannelColor(channelName, channel.id); - } - } - } - - processSettingsInvites (e) { - if (BDFDB.ObjectUtils.is(e.instance.props.invites) && settings.changeInInviteLog) { - e.instance.props.invites = Object.assign({}, e.instance.props.invites); - for (let id in e.instance.props.invites) e.instance.props.invites[id] = new BDFDB.DiscordObjects.Invite(Object.assign({}, e.instance.props.invites[id], {channel: this.getChannelData(e.instance.props.invites[id].channel.id)})); - } - } - - processHeaderBarContainer (e) { - let channel = BDFDB.LibraryModules.ChannelStore.getChannel(e.instance.props.channelId); - if (channel && BDFDB.ChannelUtils.isTextChannel(channel) && settings.changeInChannelHeader) { - if (!e.returnvalue) { - let channelName = BDFDB.ReactUtils.findChild(e.instance, {name: "Title"}); - if (channelName) { - channelName.props.children = this.getChannelData(channel.id).name; - this.changeChannelColor(channelName, channel.id); - } - } - else { - let [children, index] = BDFDB.ReactUtils.findParent(e.instance, {name: "Icon"}); - if (index > -1) { - let icon = BDFDB.ReactUtils.createElement(children[index].props.icon, { - className: BDFDB.disCN.channelheadericon - }); - this.changeChannelIconColor(icon, channel.id, {alpha: 0.6}); - children[index] = BDFDB.ReactUtils.createElement("div", { - className: BDFDB.disCN.channelheadericonwrapper, - children: icon - }) - } - } - } - } - - processChannelCategoryItem (e) { - if (e.instance.props.channel && settings.changeInChannelList) { - if (!e.returnvalue) e.instance.props.channel = this.getChannelData(e.instance.props.channel.id); - else { - let onMouseEnter = e.returnvalue.props.onMouseEnter || ( _ => {}); - e.returnvalue.props.onMouseEnter = event => { - onMouseEnter(event); - e.instance.setState({hovered: true}); - }; - let onMouseLeave = e.returnvalue.props.onMouseLeave || ( _ => {}); - e.returnvalue.props.onMouseLeave = event => { - onMouseLeave(event); - e.instance.setState({hovered: false}); - }; - let modify = BDFDB.ObjectUtils.extract(Object.assign({}, e.instance.props, e.instance.state), "muted", "locked", "selected", "unread", "connected", "hovered"); - let categoryName = BDFDB.ReactUtils.findChild(e.returnvalue, {props:[["className", BDFDB.disCN.categoryname]]}); - if (categoryName) this.changeChannelColor(categoryName, e.instance.props.channel.id, modify); - let categoryIcon = BDFDB.ReactUtils.findChild(e.returnvalue, {props:[["className", BDFDB.disCN.categoryicon]]}); - if (categoryIcon) this.changeChannelIconColor(categoryIcon, e.instance.props.channel.id, Object.assign({alpha: 0.6}, modify)); - } - } - } - - processChannelItem (e) { - if (e.instance.props.channel && settings.changeInChannelList) { - if (!e.returnvalue) e.instance.props.channel = this.getChannelData(e.instance.props.channel.id); - else { - let onMouseEnter = e.returnvalue.props.onMouseEnter || ( _ => {}); - e.returnvalue.props.onMouseEnter = event => { - onMouseEnter(event); - e.instance.setState({hovered: true}); - }; - let onMouseLeave = e.returnvalue.props.onMouseLeave || ( _ => {}); - e.returnvalue.props.onMouseLeave = event => { - onMouseLeave(event); - e.instance.setState({hovered: false}); - }; - let modify = BDFDB.ObjectUtils.extract(Object.assign({}, e.instance.props, e.instance.state), "muted", "locked", "selected", "unread", "connected", "hovered"); - let channelName = BDFDB.ReactUtils.findChild(e.returnvalue, {props:[["className", BDFDB.disCN.channelname]]}); - if (channelName) this.changeChannelColor(channelName, e.instance.props.channel.id, modify); - let channelIcon = BDFDB.ReactUtils.findChild(e.returnvalue, {props:[["className", BDFDB.disCN.channelicon]]}); - if (channelIcon) this.changeChannelIconColor(channelIcon, e.instance.props.channel.id, Object.assign({alpha: 0.6}, modify)); - } - } - } - - processQuickSwitchChannelResult (e) { - if (e.instance.props.channel && settings.changeInQuickSwitcher) { - if (!e.returnvalue) { - e.instance.props.channel = this.getChannelData(e.instance.props.channel.id); - if (e.instance.props.category) e.instance.props.category = this.getChannelData(e.instance.props.category.id); - } - else { - let modify = BDFDB.ObjectUtils.extract(e.instance.props, "focused", "unread", "mentions"); - let channelName = BDFDB.ReactUtils.findChild(e.returnvalue, {props:[["className", BDFDB.disCN.quickswitchresultmatch]]}); - if (channelName) this.changeChannelColor(channelName, e.instance.props.channel.id, modify); - let channelIcon = BDFDB.ReactUtils.findChild(e.returnvalue, {props:[["className", BDFDB.disCN.quickswitchresulticon]]}); - if (channelIcon) this.changeChannelIconColor(channelIcon, e.instance.props.channel.id, Object.assign({alpha: 0.6}, modify)); - if (e.instance.props.category) { - let categoryName = BDFDB.ReactUtils.findChild(e.returnvalue, {props:[["className", BDFDB.disCN.quickswitchresultnote]]}); - if (categoryName) this.changeChannelColor(categoryName, e.instance.props.category.id); - } - } - } - } - - processRecentsChannelHeader (e) { - if (settings.changeInRecentMentions && BDFDB.ArrayUtils.is(e.returnvalue.props.children)) { - for (let child of e.returnvalue.props.children) if (child && child.props && child.props.channel && child.type.displayName == "ChannelName") { - child.props.channel = this.getChannelData(child.props.channel.id); - let oldType = child.type; - child.type = (...args) => { - let instance = oldType(...args); - let channelName = BDFDB.ReactUtils.findChild(instance, {props:[["className", BDFDB.disCN.recentmentionschannelname]]}); - if (channelName) this.changeChannelColor(channelName, child.props.channel.id); - return instance; - }; - child.type.displayName = oldType.displayName; - } - } - } - - processMessageContent (e) { - if (BDFDB.ArrayUtils.is(e.instance.props.content) && settings.changeInMentions) for (let ele of e.instance.props.content) { - if (BDFDB.ReactUtils.isValidElement(ele) && ele.type && ele.type.displayName == "Tooltip" && typeof ele.props.children == "function") { - let children = ele.props.children({}); - if (children && children.type.displayName == "Mention" && children.props.children && typeof children.props.children[0] == "string" && children.props.children[0][0] == "#") { - let channelName = children.props.children[0].slice(1); - let guildId = BDFDB.LibraryModules.LastGuildStore.getGuildId(); - let channels = guildId && (BDFDB.LibraryModules.GuildChannelStore.getChannels(guildId)[0] || BDFDB.LibraryModules.GuildChannelStore.getChannels(guildId).SELECTABLE); - if (Array.isArray(channels)) for (let channelObj of channels) { - if (channelName == channelObj.channel.name) { - let category = BDFDB.LibraryModules.ChannelStore.getChannel(channelObj.channel.parent_id); - if (!category || category && ele.props.text == category.name) { - if (category) { - let categoryData = changedChannels[category.id]; - if (categoryData && categoryData.name) ele.props.text = categoryData.name; - } - let name = (changedChannels[channelObj.channel.id] || {}).name; - let color = this.getChannelDataColor(channelObj.channel.id); - if (name || color) { - let renderChildren = ele.props.children; - ele.props.children = (...args) => { - let renderedChildren = renderChildren(...args); - if (name) renderedChildren.props.children[0] = "#" + name; - if (color) { - let color1_0 = BDFDB.ColorUtils.convert(BDFDB.ObjectUtils.is(color) ? color[0] : color, "RGBA"); - let color0_1 = BDFDB.ColorUtils.setAlpha(color1_0, 0.1, "RGBA"); - let color0_7 = BDFDB.ColorUtils.setAlpha(color1_0, 0.7, "RGBA"); - renderedChildren.props.style = Object.assign({}, renderedChildren.props.style, { - background: color0_1, - color: color1_0 - }); - let onMouseEnter = renderedChildren.props.onMouseEnter || ( _ => {}); - renderedChildren.props.onMouseEnter = event => { - onMouseEnter(event); - event.target.style.setProperty("background", color0_7, "important"); - event.target.style.setProperty("color", "#FFFFFF", "important"); - }; - let onMouseLeave = renderedChildren.props.onMouseLeave || ( _ => {}); - renderedChildren.props.onMouseLeave = event => { - onMouseLeave(event); - event.target.style.setProperty("background", color0_1, "important"); - event.target.style.setProperty("color", color1_0, "important"); - }; - } - return renderedChildren; - } - } - break; - } - } - } - } - } - } - } - - changeAppTitle () { - let channel = BDFDB.LibraryModules.ChannelStore.getChannel(BDFDB.LibraryModules.LastChannelStore.getChannelId()); - let title = document.head.querySelector("title"); - if (title && BDFDB.ChannelUtils.isTextChannel(channel)) BDFDB.DOMUtils.setText(title, "@" + this.getChannelData(channel.id, settings.changeAppTitle).name); - } - - changeChannelColor (child, channelId, modify) { - if (BDFDB.ReactUtils.isValidElement(child)) { - let color = this.getChannelDataColor(channelId); - if (color) { - color = modify ? this.chooseColor(color, modify) : BDFDB.ColorUtils.convert(color, "RGBA"); - let childProp = child.props.children ? "children" : "text"; - let fontGradient = BDFDB.ObjectUtils.is(color); - if (fontGradient) child.props[childProp] = BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.TextGradientElement, { - gradient: BDFDB.ColorUtils.createGradient(color), - children: child.props[childProp] - }); - else child.props[childProp] = BDFDB.ReactUtils.createElement("span", { - style: {color: color}, - children: child.props[childProp] - }); - } - } - } - - changeChannelIconColor (child, channelId, modify) { - let color = this.getChannelDataColor(channelId); - if (color && settings.changeChannelIcon) { - color = modify ? this.chooseColor(BDFDB.ObjectUtils.is(color) ? color[0] : color, modify) : BDFDB.ColorUtils.convert(BDFDB.ObjectUtils.is(color) ? color[0] : color, "RGBA"); - child.props.color = color || "currentColor"; - if (color) child.props.foreground = null; - } - } - - chooseColor (color, config) { - if (color) { - if (BDFDB.ObjectUtils.is(config)) { - if (config.mentions || config.focused || config.hovered || config.selected || config.unread || config.connected) color = BDFDB.ColorUtils.change(color, 0.5); - else if (config.muted || config.locked) color = BDFDB.ColorUtils.change(color, -0.5); - } - return BDFDB.ColorUtils.convert(color, "RGBA"); - } - return null; - } - - getChannelDataColor (channelId) { - let channel = BDFDB.LibraryModules.ChannelStore.getChannel(channelId); - if (!channel) return null; - let channelData = changedChannels[channel.id]; - if (channelData && channelData.color) return channelData.color; - let category = channel.parent_id && BDFDB.LibraryModules.ChannelStore.getChannel(channel.parent_id); - if (category) { - let categoryData = changedChannels[category.id]; - if (categoryData && categoryData.inheritColor && categoryData.color) return categoryData.color; - } - return null; - } - - getChannelData (channelId, change = true) { - let channel = BDFDB.LibraryModules.ChannelStore.getChannel(channelId); - if (!channel) return new BDFDB.DiscordObjects.Channel({}); - let data = change && changedChannels[channel.id]; - if (data) { - let nativeObject = new BDFDB.DiscordObjects.Channel(channel); - nativeObject.name = data.name || nativeObject.name; - return nativeObject; - } - return new BDFDB.DiscordObjects.Channel(channel); - } - - openChannelSettingsModal (channel) { - let data = changedChannels[channel.id] || {}; - - BDFDB.ModalUtils.open(this, { - size: "MEDIUM", - header: this.labels.modal_header_text, - subheader: channel.name, - children: [ - BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.FormComponents.FormItem, { - title: this.labels.modal_channelname_text, - className: BDFDB.disCN.marginbottom20 + " input-channelname", - children: [ - BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.TextInput, { - value: data.name, - placeholder: channel.name, - autoFocus: true - }), - BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.FormComponents.FormDivider, { - className: BDFDB.disCN.dividerdefault - }) - ] - }), - BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.FormComponents.FormItem, { - title: this.labels.modal_colorpicker1_text, - className: BDFDB.disCN.marginbottom20, - children: [ - BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.ColorSwatches, { - color: data.color, - number: 1 - }) - ] - }), - BDFDB.ReactUtils.createElement(BDFDB.LibraryComponents.SettingsItem, { - type: "Switch", - className: "input-inheritcolor", - margin: 20, - label: this.labels.modal_inheritcolor_text, - tag: BDFDB.LibraryComponents.FormComponents.FormTitle.Tags.H5, - value: channel.type == 4 && data.inheritColor, - disabled: channel.type != 4 - }) - ], - buttons: [{ - contents: BDFDB.LanguageUtils.LanguageStrings.SAVE, - color: "BRAND", - close: true, - click: modal => { - let oldData = Object.assign({}, data); - - data.name = modal.querySelector(".input-channelname " + BDFDB.dotCN.input).value.trim() || null; - - data.color = BDFDB.ColorUtils.getSwatchColor(modal, 1); - if (data.color != null && !BDFDB.ObjectUtils.is(data.color)) { - if (data.color[0] < 30 && data.color[1] < 30 && data.color[2] < 30) data.color = BDFDB.ColorUtils.change(data.color, 30); - else if (data.color[0] > 225 && data.color[1] > 225 && data.color[2] > 225) data.color = BDFDB.ColorUtils.change(data.color, -30); - } - - data.inheritColor = modal.querySelector(".input-inheritcolor " + BDFDB.dotCN.switchinner).checked; - - let changed = false; - if (Object.keys(data).every(key => data[key] == null || data[key] == false) && (changed = true)) BDFDB.DataUtils.remove(this, "channels", channel.id); - else if (!BDFDB.equals(oldData, data) && (changed = true)) BDFDB.DataUtils.save(data, this, "channels", channel.id); - if (changed) this.forceUpdateAll(true); - } - }] - }); - } - - setLabelsByLanguage () { - switch (BDFDB.LanguageUtils.getLanguage().id) { - case "hr": //croatian - return { - context_localchannelsettings_text: "Postavke lokalnih kanala", - submenu_channelsettings_text: "Promijeni postavke", - submenu_resetsettings_text: "Vraćanje kanala", - modal_header_text: "Postavke lokalnih kanala", - modal_channelname_text: "Naziv lokalnog kanala", - modal_colorpicker1_text: "Boja lokalnog kanala", - modal_inheritcolor_text: "Naslijedi boju u potkanale" - }; - case "da": //danish - return { - context_localchannelsettings_text: "Lokal kanalindstillinger", - submenu_channelsettings_text: "Skift indstillinger", - submenu_resetsettings_text: "Nulstil kanal", - modal_header_text: "Lokal kanalindstillinger", - modal_channelname_text: "Lokalt kanalnavn", - modal_colorpicker1_text: "Lokal kanalfarve", - modal_inheritcolor_text: "Arve farve til subkanaler" - }; - case "de": //german - return { - context_localchannelsettings_text: "Lokale Kanaleinstellungen", - submenu_channelsettings_text: "Einstellungen ändern", - submenu_resetsettings_text: "Kanal zurücksetzen", - modal_header_text: "Lokale Kanaleinstellungen", - modal_channelname_text: "Lokaler Kanalname", - modal_colorpicker1_text: "Lokale Kanalfarbe", - modal_inheritcolor_text: "Farbe an Unterkanäle vererben" - }; - case "es": //spanish - return { - context_localchannelsettings_text: "Ajustes local de canal", - submenu_channelsettings_text: "Cambiar ajustes", - submenu_resetsettings_text: "Restablecer canal", - modal_header_text: "Ajustes local de canal", - modal_channelname_text: "Nombre local del canal", - modal_colorpicker1_text: "Color local del canal", - modal_inheritcolor_text: "Heredar color a sub-canales" - }; - case "fr": //french - return { - context_localchannelsettings_text: "Paramètres locale du salon", - submenu_channelsettings_text: "Modifier les paramètres", - submenu_resetsettings_text: "Réinitialiser le salon", - modal_header_text: "Paramètres locale du salon", - modal_channelname_text: "Nom local du salon", - modal_colorpicker1_text: "Couleur locale du salon", - modal_inheritcolor_text: "Hériter de la couleur sur les sous-salons" - }; - case "it": //italian - return { - context_localchannelsettings_text: "Impostazioni locale canale", - submenu_channelsettings_text: "Cambia impostazioni", - submenu_resetsettings_text: "Ripristina canale", - modal_header_text: "Impostazioni locale canale", - modal_channelname_text: "Nome locale canale", - modal_colorpicker1_text: "Colore locale canale", - modal_inheritcolor_text: "Eredita colore per sub-canali" - }; - case "nl": //dutch - return { - context_localchannelsettings_text: "Lokale kanaalinstellingen", - submenu_channelsettings_text: "Verandere instellingen", - submenu_resetsettings_text: "Reset kanaal", - modal_header_text: "Lokale kanaalinstellingen", - modal_channelname_text: "Lokale kanaalnaam", - modal_colorpicker1_text: "Lokale kanaalkleur", - modal_inheritcolor_text: "Overerving van kleuren naar subkanalen" - }; - case "no": //norwegian - return { - context_localchannelsettings_text: "Lokal kanalinnstillinger", - submenu_channelsettings_text: "Endre innstillinger", - submenu_resetsettings_text: "Tilbakestill kanal", - modal_header_text: "Lokal kanalinnstillinger", - modal_channelname_text: "Lokalt kanalnavn", - modal_colorpicker1_text: "Lokal kanalfarge", - modal_inheritcolor_text: "Arve farge til underkanaler" - }; - case "pl": //polish - return { - context_localchannelsettings_text: "Lokalne ustawienia kanału", - submenu_channelsettings_text: "Zmień ustawienia", - submenu_resetsettings_text: "Resetuj ustawienia", - modal_header_text: "Lokalne ustawienia kanału", - modal_channelname_text: "Lokalna nazwa kanału", - modal_colorpicker1_text: "Lokalny kolor kanału", - modal_inheritcolor_text: "Dziedzicz kolor do podkanałów" - }; - case "pt-BR": //portuguese (brazil) - return { - context_localchannelsettings_text: "Configurações local do canal", - submenu_channelsettings_text: "Mudar configurações", - submenu_resetsettings_text: "Redefinir canal", - modal_header_text: "Configurações local do canal", - modal_channelname_text: "Nome local do canal", - modal_colorpicker1_text: "Cor local do canal", - modal_inheritcolor_text: "Herdar cor aos sub-canais" - }; - case "fi": //finnish - return { - context_localchannelsettings_text: "Paikallinen kanavan asetukset", - submenu_channelsettings_text: "Vaihda asetuksia", - submenu_resetsettings_text: "Nollaa kanava", - modal_header_text: "Paikallinen kanavan asetukset", - modal_channelname_text: "Paikallinen kanavanimi", - modal_colorpicker1_text: "Paikallinen kanavanväri", - modal_inheritcolor_text: "Hävitä väri alikanaville" - }; - case "sv": //swedish - return { - context_localchannelsettings_text: "Lokal kanalinställningar", - submenu_channelsettings_text: "Ändra inställningar", - submenu_resetsettings_text: "Återställ kanal", - modal_header_text: "Lokal kanalinställningar", - modal_channelname_text: "Lokalt kanalnamn", - modal_colorpicker1_text: "Lokal kanalfärg", - modal_inheritcolor_text: "Inherit färg till subkanaler" - }; - case "tr": //turkish - return { - context_localchannelsettings_text: "Yerel Kanal Ayarları", - submenu_channelsettings_text: "Ayarları Değiştir", - submenu_resetsettings_text: "Kanal Sıfırla", - modal_header_text: "Yerel Kanal Ayarları", - modal_channelname_text: "Yerel Kanal Adı", - modal_colorpicker1_text: "Yerel Kanal Rengi", - modal_inheritcolor_text: "Renkleri alt kanallara miras alma" - }; - case "cs": //czech - return { - context_localchannelsettings_text: "Místní nastavení kanálu", - submenu_channelsettings_text: "Změnit nastavení", - submenu_resetsettings_text: "Obnovit kanál", - modal_header_text: "Místní nastavení kanálu", - modal_channelname_text: "Místní název kanálu", - modal_colorpicker1_text: "Místní barvy kanálu", - modal_inheritcolor_text: "Zdědit barvu na subkanály" - }; - case "bg": //bulgarian - return { - context_localchannelsettings_text: "Настройки за локални канали", - submenu_channelsettings_text: "Промяна на настройките", - submenu_resetsettings_text: "Възстановяване на канал", - modal_header_text: "Настройки за локални канали", - modal_channelname_text: "Локално име на канал", - modal_colorpicker1_text: "Локален цветен канал", - modal_inheritcolor_text: "Наследи цвета до подканали" - }; - case "ru": //russian - return { - context_localchannelsettings_text: "Настройки локального канала", - submenu_channelsettings_text: "Изменить настройки", - submenu_resetsettings_text: "Сбросить канал", - modal_header_text: "Настройки локального канала", - modal_channelname_text: "Имя локального канала", - modal_colorpicker1_text: "Цвет локального канала", - modal_inheritcolor_text: "Наследовать цвет на подканалы" - }; - case "uk": //ukrainian - return { - context_localchannelsettings_text: "Налаштування локального каналу", - submenu_channelsettings_text: "Змінити налаштування", - submenu_resetsettings_text: "Скидання каналу", - modal_header_text: "Налаштування локального каналу", - modal_channelname_text: "Локальне ім'я каналу", - modal_colorpicker1_text: "Колір місцевого каналу", - modal_inheritcolor_text: "Успадковують колір до підканалів" - }; - case "ja": //japanese - return { - context_localchannelsettings_text: "ローカルチャネル設定", - submenu_channelsettings_text: "設定を変更する", - submenu_resetsettings_text: "チャネルをリセットする", - modal_header_text: "ローカルチャネル設定", - modal_channelname_text: "ローカルチャネル名", - modal_colorpicker1_text: "ローカルチャネルの色", - modal_inheritcolor_text: "サブチャンネルに色を継承" - }; - case "zh-TW": //chinese (traditional) - return { - context_localchannelsettings_text: "本地頻道設置", - submenu_channelsettings_text: "更改設置", - submenu_resetsettings_text: "重置通道", - modal_header_text: "本地頻道設置", - modal_channelname_text: "本地頻道名稱", - modal_colorpicker1_text: "本地頻道顏色", - modal_inheritcolor_text: "繼承子通道的顏色" - }; - case "ko": //korean - return { - context_localchannelsettings_text: "로컬 채널 설정", - submenu_channelsettings_text: "설정 변경", - submenu_resetsettings_text: "채널 재설정", - modal_header_text: "로컬 채널 설정", - modal_channelname_text: "로컬 채널 이름", - modal_colorpicker1_text: "지역 채널 색깔", - modal_inheritcolor_text: "하위 채널에 색상 상속" - }; - default: //default: english - return { - context_localchannelsettings_text: "Local Channelsettings", - submenu_channelsettings_text: "Change Settings", - submenu_resetsettings_text: "Reset Channel", - modal_header_text: "Local Channelsettings", - modal_channelname_text: "Local Channelname", - modal_colorpicker1_text: "Local Channelcolor", - modal_inheritcolor_text: "Inherit color to Sub-Channels" - }; - } - } - }; - })(window.BDFDB_Global.PluginUtils.buildPlugin(config)); -})();
\ No newline at end of file |