Nothing to see here... Choose a server to start changing settings.
Bender isn't in this server! To invite it, use this link: https://benderbot.co/invite

Loading...
Bender Pro Settings
Logged in as: {{ paypalInfo.name }} {{ paypalInfo.email }} Not logged into PayPal.

Plan: {{ paypalInfo.plan.description }} | ${{ paypalInfo.plan.amount }} {{ paypalInfo.plan.currency }} per {{ paypalInfo.plan.freq }} | State: {{ paypalInfo.plan.valid_until >= Date.now() ? 'Active' : 'Expired' }} | Valid until: {{ moment(paypalInfo.plan.valid_until).format('MMM Do YYYY, h:mma') }} UTC | Expired on: {{ moment(paypalInfo.plan.valid_until).format('MMM Do YYYY, h:mma') }} UTC
Subscribed since: {{ moment(paypalInfo.first_txn).format('MMM Do YYYY, h:mma') }} | Last payment: {{ moment(paypalInfo.txn_timestamp).format('MMM Do YYYY, h:mma') }}

Use Bender Pro in servers:
{{ getGuild(guildID).name }}
No servers selected.
Add selected server ({{ getGuild(selectedGuildID).name }}) Select a server at the top to add it to Bender Pro.
Plan: No subscription to Bender Pro. {{ paypalInfo.plan ? 'Renew' : 'Purchase' }} Bender Pro here.

Logout of PayPal
General Settings
Prefix: The custom prefix for commands. Default is ;. Mentioning @Bender will always trigger commands, no matter what the prefix is.
Autorole:
No eligible roles.
If the agreement system is enabled, members will receive this role after agreeing. Otherwise, it will be assigned upon joining the server.
Show "You don't have permission to use <command>" messages
Show "The <command> command is disabled" messages
Reply to commands in DM when Bender doesn't have permission to send messages
Timezone region:
     Timezone:
Select a region first!
The timezone used for formatting dates in mod logs and other commands.
Welcome messages
Variables You can use variables such as {user}, {member}, and {server} in the following messages.
More details about the variables can be found on the commands website.
Channel:
{{ chan.name }}
No eligible channels.
The channel where all of the following messages will be sent (except welcome DM.) Unset to disable all of these messages.
Edit   Preview
Welcome DM:
Message sent to a user's DM when they join the server.
Welcome message:
Message sent when someone joins the server.
Leave message:
Message sent when someone leaves the server.
Ban message:
Message sent when someone is banned from the server.
Selfroles
Mark roles as joinable, so members can use {{ gSettings.prefix || ';' }}roleme to add that role to themselves.
Role Joinable Leavable
@ {{ role.name }}
No suitable roles.
Agreement
Channel:
{{ chan.name }}
No eligible channels.
This is the channel where members should be able to type {{ gSettings.prefix || ';' }}agree here to agree to the terms. Any messages not pinned and newer than 2 weeks will be automatically purged.
Probationary Role:
No eligible roles.
Upon joining the server, members will receive this role. It should restrict them from typing in any channels except the agreement channel.
Message:
Edit   Preview
If specified, this message will be sent as a DM when a new user joins. It should contain server info, how to agree to the server rules, etc.
Wait time: minutes hours How long someone must be a member of the server to be able to use {{ gSettings.prefix || ';' }}agree. Default is 5 minutes. Settings to 0 means they do not have to wait.
Warn time: minutes hours When a user will be warned, if they have not yet agreed. Default is 1 hour. Set to 0 to disable.
Kick time: minutes hours When a user will be kicked from the server, if they have not yet agreed. Default is 2 hours. Set to 0 to disable.
Logging Settings
Channel:
{{ chan.name }}
No eligible channels.
Channel where all moderation logs are sent, and where deleted/edited message/command logging are sent if an alternate channel is not chosen.
Enable mod-logging cases Whether to save moderation logs in the database, with each one assigned a case number. Also allows the use of {{ gSettings.prefix || ';' }}reason and viewing all mod logs for a user.
Commands logged:
{{ gSettings.prefix || ';' }}ban + automatic bans
{{ gSettings.prefix || ';' }}unban
{{ gSettings.prefix || ';' }}mute + automatic mutes
{{ gSettings.prefix || ';' }}unmute + automatic unmutes
{{ gSettings.prefix || ';' }}kick + automatic kicks
{{ gSettings.prefix || ';' }}role
{{ gSettings.prefix || ';' }}purge
{{ gSettings.prefix || ';' }}warn
{{ gSettings.prefix || ';' }}clonerole
Deleted message logging:
{{ chan.name }}
Edited message logging:
{{ chan.name }}
Command logging:
{{ chan.name }}
Mute & DM Settings
Mute role:
No eligible roles.
Role that is added to members when they are muted. If you don't have one, see the help for {{ gSettings.prefix || ';' }}setup mute on the commands page.
Default mute duration: {{ {m: 'minutes', h: 'hours', d: 'days'}[gSettings.muteTimeUnits] }} The amount of time a user will be muted when a moderator uses {{ gSettings.prefix || ';' }}mute without a time, or when being automatically muted due to an automod or filter violation. Click the units to toggle them (minutes, hours, or days.)

DM settings: These messages will be sent to a user that is being muted, unmuted, kicked, or banned, respectively. To see the variables available in these messages, see the commands page.
Edit   Preview
Mute DM:
None
Unmute DM:
None
Kick DM:
None
Ban DM:
None
Tags
Tags are used like simple commands; if you use Bender's prefix + the tag name, you get a response.
For example, you could make a tag "hello" with the response "world." Details about variables you can use, i.e. {args}, can be found here.
Edit   Preview
Tag Name Tag Content
{{ (gSettings.prefix || ';') + name }}
No tags added.
Add a new tag:
Tags cannot have the same name as commands.
Max number of tags reached; Cannot add more.
Mod Log
To enable/disable the case system or set which commands make cases, see the Logging Settings section.
{{ getLen(gSettings.modlog) }} case{{ getLen(gSettings.modlog) > 1 ? 's' : '' }} on record. Search case:
No mod logs yet.
Case # Type User ID Issuer ID Reason Time
{{ index+1 }} {{ data.action.replace('cmd-', '') }} {{ gSettings.tzRegion && gSettings.tz ? moment(data.timestamp).tz(`${gSettings.tzRegion}/${gSettings.tz}`).format('MMM Do YYYY, h:mma z') : moment(data.timestamp).format('MMM Do YYYY, h:mma z') }}
Aliases
Aliases are used to give commands an alternative name.
Alias Command
{{ (gSettings.prefix || ';') + name }} {{ (gSettings.prefix || ';') + command }}
No aliases added.
Add a new alias:
Choose a command...
{{ (gSettings.prefix || ';') + temp.alias_content }}
{{ groupNames[group] }}
Aliases cannot have the same name
as other commands.
Max number of aliases reached; Cannot add more.
Mutes
There {{ getLen(gSettings.mutes, ['role', 'default']) > 1 ? 'are' : 'is' }} currently {{ getLen(gSettings.mutes, ['role', 'default']) }} active mute{{ getLen(gSettings.mutes, ['role', 'default']) > 1 ? 's' : '' }}.
No active mutes currently.
User ID Issuer ID Ends at Reason
{{ gSettings.tzRegion && gSettings.tz ? moment(data.timestamp).tz(`${gSettings.tzRegion}/${gSettings.tz}`).format('MMM Do YYYY, h:mma z') : moment(data.timestamp).format('MMM Do YYYY, h:mma z') }} {{ data.reason }}
Filter
Filter is not currently enabled because automod is disabled.
The filter is used to prevent members from typing certain words/phrases in chat.
It works using standard JavaScript regex syntax. To test whether your pattern will match certain words/phrases, I recommend Regexr.


Actions:
 >>
Message:
This message will be shown whenever a user violates the filter and a message is removed.

Ignore members by
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.

Add a role:
No eligible roles.

Edit   Preview
# Pattern
{{ index+1 }}
No filter patterns added.
Add a new pattern:
Max number of items reached (20); Cannot add more.
Name Filter
Automatically bans any members with names that match the patterns you add below. Uses JavaScript regex syntax.
To test whether your patter will match certain words/phrases, I recommend Regexr.


Ignore members by
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.

Add a role:
No eligible roles.
Show welcome messages (i.e. Joe 🎸#7070 joined the server and Joe 🎸#7070 was banned) for users that violate the name filter

Edit   Preview
# Pattern
{{ index+1 }}
No name filter patterns added.
Add a new pattern:
Max number of items reached (20); Cannot add more.
Name History
There {{ getLen(gSettings.nicknames) > 1 ? 'are' : 'is' }} currently {{ getLen(gSettings.nicknames) }} member{{ getLen(gSettings.nicknames) > 1 ? 's' : '' }} with name changes recorded.
No members with name changes recorded.
User Nicknames Usernames
{{ item }}
{{ item }}
N/A
Giveaways
There {{ getLen(gSettings.giveaways) > 1 ? 'are' : 'is' }} {{ getLen(gSettings.giveaways) }} active giveaway{{ getLen(gSettings.giveaways) > 1 ? 's' : '' }}.
No active giveaways.
ID Created by Prize In channel Num. of winners
{{ id }} {{ data.prize }} {{ data.winners || 1 }}
Disabled Commands & Groups
{{ groupNames[group] }}
{{ (gSettings.prefix || ';')+command }}
Automod
Ignore members by
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.

Add a role:
No eligible roles.

Allow invites: When a user posts an invite to another Discord server, i.e. https://discord.gg/99xaeGn, the message {{ gSettings.automod.allow_invites ? 'will not' : 'will'}} be removed and an automod violation {{ gSettings.automod.allow_invites ? 'will not' : 'will'}} be issued.
Ignore invites from members by
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.

Add a role:
No eligible roles.

Allow selfbots: When someone uses a command on their selfbot and it is detected, the message {{ gSettings.automod.selfbots ? 'will not' : 'will'}} be removed and an automod violation {{ gSettings.automod.selfbots ? 'will not' : 'will'}} be issued.
Ignore selfbots used by members by
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.

Add a role:
No eligible roles.

Maximum number of mentions:
Mentioning more than users will lead to an automod violation. No automod violations will be issued for mentioning too many users.
Mentioning more than users will result in an automatic ban. No bans will be issued for mentioning too many users.
Set either of the above settings to 0 to disable them.
Ignore too many mentions from members by
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.

Add a role:
No eligible roles.

Spam threshold: messages/ {{ gSettings.automod.spamTimeUnits === 'ms' ? 'milliseconds' : gSettings.automod.spamTimeUnits === 'm' ? 'minutes' : 'seconds' }} When a user spams (sends {{ gSettings.automod.spamCount }} messages in {{ gSettings.automod.spamTime }} {{ gSettings.automod.spamTimeUnits === 'ms' ? 'milliseconds' : gSettings.automod.spamTimeUnits === 'm' ? 'minutes' : 'seconds' }}), an automod violation will be issued. Set the number of messages to 0 to disable. Click the units to toggle them (milliseconds, seconds, or minutes.) Spam protection is disabled.
Ignore spam from members by
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.

Add a role:
No eligible roles.

Mute threshold: violations/ {{ gSettings.automod.muteTimeUnits === 's' ? 'seconds' : gSettings.automod.muteTimeUnits === 'h' ? 'hours' : 'minutes' }} When a user receives {{ gSettings.automod.muteViolations }} automod violations in {{ gSettings.automod.muteTime }} {{ gSettings.automod.muteTimeUnits === 's' ? 'seconds' : gSettings.automod.muteTimeUnits === 'h' ? 'hours' : 'minutes' }}, they will be muted. Click the units to toggle them (seconds, minutes, or hours.)

Server invite whitelist:
Server ID: {{ thing }}Code: https://discord.gg/{{ thing }}
No servers/invite codes are whitelisted.
Invite code:
Server ID:
Whitelist a server so that users can post invites to it even though posting invites is not allowed. If you use the server ID, all invite codes to that server will be allowed as long as only one invite is sent in the message. If you whitelist a specific invite code, it will always be allowed.
Permissions
Edit permissions for command group:
{{ groupNames[group] }} Group is disabled.
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.
Add a role:
No eligible roles.
{{ (gSettings.prefix || ';')+command }} Command is disabled.
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.
Add a role:
No eligible roles.
Inherit from group Default: {{ defaultPerms[command] ? discordPermissionNames[defaultPerms[command]] : 'open to everyone' }}
Select a group to start editing permissions.
Special permissions

External guild info: Specifies who can use {{ gSettings.prefix || ';'}}info to see information about other servers.
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.

Add a role:
No eligible roles.
Default: {{ discordPermissionNames.MANAGE_MESSAGES }}


Use tags: Specifies who can use tags created by {{ gSettings.prefix || ';'}}tag.
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.

Add a role:
No eligible roles.
Default: open to everyone


Tag list: Specifies who can use {{ gSettings.prefix || ';'}}tag list to see all of the server's tags.
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.

Add a role:
No eligible roles.
Default: open to everyone
Channel Permissions
Edit permissions for channel:
{{ chan.name }}
No eligible channels.
For command group:
{{ groupNames[group] }} Group is disabled.
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.
Add a role:
No eligible roles.
{{ (gSettings.prefix || ';')+command }} Command is disabled.
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.
Add a role:
No eligible roles.
Inherit from group Default: {{ defaultPerms[command] ? discordPermissionNames[defaultPerms[command]] : 'open to everyone' }}
Select a group to start editing channel permissions.
Special permissions

External guild info: Specifies who can use {{ gSettings.prefix || ';'}}info to see information about other servers.
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.

Add a role:
No eligible roles.
Default: {{ discordPermissionNames.MANAGE_MESSAGES }}


Use tags: Specifies who can use tags created by {{ gSettings.prefix || ';'}}tag.
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.

Add a role:
No eligible roles.
Default: open to everyone


Tag list: Specifies who can use {{ gSettings.prefix || ';'}}tag list to see all of the server's tags.
:
No eligible roles.
@ {{ getRole(roleID).name }}
No roles selected.

Add a role:
No eligible roles.
Default: open to everyone
Select a channel to start editing permissions.
Blacklist
Blacklisting a channel prevents any commands from being used there. Blacklisting a user or role prevents that user or anyone with that role from using any commands. The blacklist does not affect anyone with administrator permissions.
Current blacklist:
Channel: #{{ getChannel(thing).name }} Role: @{{ getRole(thing).name }} User: 
No items on the blacklist.
Note that deleted channels and roles will also show up as a User here.
Add user/channel/role by ID:
Add role:
No eligible roles.

Add channel:
{{ chan.name }}
No eligible channels.
Temporary Roles
A list of temporary role assignments done using {{ gSettings.prefix || ';' }}role.

@ {{ getRole(roleID).name }}
User ID Assigned at Issuer ID Expires at
{{ gSettings.tzRegion && gSettings.tz ? moment(data.startTime).tz(`${gSettings.tzRegion}/${gSettings.tz}`).format('MMM Do YYYY, h:mma z') : moment(data.startTime).format('MMM Do YYYY, h:mma z') }} {{ gSettings.tzRegion && gSettings.tz ? moment(data.timestamp).tz(`${gSettings.tzRegion}/${gSettings.tz}`).format('MMM Do YYYY, h:mma z') : moment(data.timestamp).format('MMM Do YYYY, h:mma z') }}