aboutsummaryrefslogtreecommitdiff
path: root/modules
Commit message (Expand)AuthorAgeFilesLines
* Support SCRAM SASL mechanisms (sasl.py)Gravatar jesopo2019-02-051-15/+97
* Add ")" that should have been removed when we stopped using `enumerate` for•••github webhook hooks (github) Gravatar jesopo2019-02-041-1/+1
* Reply to statusmsg commands (e.g. '/msg +channel !ping') with the same statusmsgGravatar jesopo2019-02-042-10/+20
* Try to match against full repository name first, so that we can make specific•••rules for specific repositories (github) Gravatar jesopo2019-02-041-3/+3
* We don't need to enumerate hooks (github)Gravatar jesopo2019-02-041-2/+1
* Delete `automodes` user_channel setting when it's empty (auto_mode.py)Gravatar jesopo2019-02-041-2/+6
* `user` doesn't exist in _move(), it's `user1` (coins.py)Gravatar jesopo2019-02-021-1/+1
* `apikey` command should have a minimum argument restriction (rest_api.py)Gravatar jesopo2019-02-011-1/+1
* Actually add private_unban function def. oops. (channel_op.py)Gravatar jesopo2019-01-301-0/+1
* Add private message `unban` command (channel_op.py)Gravatar jesopo2019-01-301-0/+10
* Actually use `channel` arg in _kick_command (channel_op.py)Gravatar jesopo2019-01-301-1/+1
* Support `kick` and `ban` command in private message (channel_op.py)Gravatar jesopo2019-01-301-7/+31
* `server.get_channel` was moved to `server.channels.get` a long time ago (set.py)Gravatar jesopo2019-01-301-1/+1
* Logging takes format params as a separate arg (commands.py)Gravatar jesopo2019-01-301-2/+2
* Make sure to call the specific hook we've decided is valid (commands.py)Gravatar jesopo2019-01-301-5/+10
* check we have a `channel_arg` kwarg before parsing it as an int•••(channel_access.py) Gravatar jesopo2019-01-301-10/+11
* Break when we've found a suitable command hook (commands.py)Gravatar jesopo2019-01-301-0/+1
* Use correct arg indexes for private channelset (set.py)Gravatar jesopo2019-01-301-6/+7
* Actually remove call to `preprocess.command` to after min_args check•••(commands.py) Gravatar jesopo2019-01-301-5/+5
* Correctly check if we're in a channel command before checking if the current•••hook is valid (commands.py) Gravatar jesopo2019-01-301-6/+2
* Check min_args before we check if a user has permission (commands.py)Gravatar jesopo2019-01-301-17/+17
* We need to turn `channel_arg` in to an int (channel_access.py)Gravatar jesopo2019-01-301-1/+1
* We should be using `potential_hook` until we've decided on a valid hook•••(commands.py) Gravatar jesopo2019-01-301-4/+4
* Get all hooks when checking command hooks, not just the first (commands.py)Gravatar jesopo2019-01-301-5/+4
* Check all hooks for a command and pick the first applicable one, to allow for•••private_only and channel_only commands to share the same command string (commands.py) Gravatar jesopo2019-01-301-16/+25
* Add a private `channelset` command (set.py)Gravatar jesopo2019-01-301-0/+12
* Support a way to check user channel access in a private command•••(channel_access.py) Gravatar jesopo2019-01-302-6/+20
* Add a `permission` to !channelunset and !channelget (set.py)Gravatar jesopo2019-01-301-1/+2
* Correctly compare current time and token expire time and actually cache the•••token (spotify.py) Gravatar jesopo2019-01-291-3/+6
* Typo, `{,}` instead of `{:}` made `headers` a set (spotify.py)Gravatar jesopo2019-01-291-1/+1
* `URL_SPOTIFY` was renamed to `URL_SEARCH` (spotify.py)Gravatar jesopo2019-01-291-1/+1
* Forgot to import `time` (spotify.py)Gravatar jesopo2019-01-291-1/+1
* `post_data` is the kwarg for POST data, not `data` (spotify.py)Gravatar jesopo2019-01-291-1/+1
* `base64.b64encode(...)` takes a byte array, not a string (spotify.py)Gravatar jesopo2019-01-291-1/+1
* Forgot to import base64 (spotify.py)Gravatar jesopo2019-01-291-1/+1
* Spotify now requires access tokens to use it's API (spotify.py)Gravatar jesopo2019-01-291-3/+29
* Correct usage help for kickban/tempkickban (channel_op.py)Gravatar jesopo2019-01-291-2/+2
* Remove `haveibeenpwned.py`, it's 99% uselessGravatar jesopo2019-01-291-25/+0
* Stop processing a command when we've decided the user doesn't have permission•••(commands.py) Gravatar jesopo2019-01-291-0/+1
* We don't have an event object in `_has_channel_access` (channel_access.py)Gravatar jesopo2019-01-291-3/+2
* Seperate out access checking logic so we can call across-modules with the event•••system to check if users have specific channel access (channel_access.py) Gravatar jesopo2019-01-291-6/+15
* Don't double up command prefix in `!usage` output (commands.py)Gravatar jesopo2019-01-291-2/+1
* Actually show the command prefix we now pass to _get_usage (commands.py)Gravatar jesopo2019-01-291-0/+1
* Show command prefix in usage strings (commands.py)Gravatar jesopo2019-01-291-7/+14
* Add a `permission` to !ghwebhook so an admin user can use it without +o (github)Gravatar jesopo2019-01-292-10/+9
* Typo, 'acess' -> 'access' (channel_access.py)Gravatar jesopo2019-01-291-1/+1
* Support `*` as a channel permission, to give users all access•••(channel_access.py) Gravatar jesopo2019-01-291-3/+4
* We don't need a seperate command for `!channelset` override (set.py)Gravatar jesopo2019-01-291-10/+7
* Use new `utils.consts.PERMISSION_FORCE_SUCCESS` in `permissions.py`Gravatar jesopo2019-01-291-0/+4
* Show an error when an unknown subcommand is given to !access (channel_access.py)Gravatar jesopo2019-01-291-0/+2