Conrad Lukawski
fca2900918
Add +T no-CTCP usermode
4 роки тому
Alex Jaspersen
0241e0c31d
Apply default user modes just before registration.
Previously, we were applying defaults before the user had completed
registration. This meant that the number of invisible users was
incremented when the user connected, and then the total was incremented
when registration was completed.
Now both counters are updated at the same time. If a user disconnects
prior to registration, +i has not yet been applied so it would not be
decremented.
4 роки тому
Shivaram Lingamneni
4d50607c79
add persistence for user modes
4 роки тому
Shivaram Lingamneni
2f9234318c
fix #1021
4 роки тому
Alex Jaspersen
d5cec62df3
Call ApplyUserModeChanges for default user modes.
This ensures that counts like the number of invisible users are updated
correctly.
4 роки тому
Alex Jaspersen
b3a7e5c996
Set default user modes when always-on clients reconnect.
Add default-user-modes configuration to conventional.yaml.
Fix comment on DefaultUserModes.
4 роки тому
Alex Jaspersen
df9bf15f00
Add support for setting user modes by default.
4 роки тому
Shivaram Lingamneni
f5fe580d22
partial implementation of #729
This propagates CS AMODE changes to the actual modes, but not the other
way around.
Also fixes #909 .
4 роки тому
Shivaram Lingamneni
d98e3581b3
disallow /SAMODE nick +o
4 роки тому
Shivaram Lingamneni
438fffab99
fix #725
4 роки тому
Shivaram Lingamneni
166dc60729
fix #753
Also add +C no-ctcp mode, since it's not conflicted
4 роки тому
Shivaram Lingamneni
bd822853bc
fix some translation warnings
4 роки тому
Shivaram Lingamneni
07865b8f63
chanserv enhancements and miscellaneous fixes
* Fix #684
* Fix #683
* Add `CHANSERV CLEAR`
* Allow mode changes from channel founders even when they aren't joined
* Operators with the chanreg capability are exempt from max-channels-per-account
* Small fixes and cleanup
4 роки тому
Shivaram Lingamneni
82c5041225
fix #649
4 роки тому
Shivaram Lingamneni
332f0d8d91
fix #644
4 роки тому
Shivaram Lingamneni
0835ad6af5
fix #514
Also ensure that people can remove their own persistent modes via CS AMODE
5 роки тому
Shivaram Lingamneni
4b88a60ba6
clean up some old getters
5 роки тому
Shivaram Lingamneni
30f6e11698
fix #400
Also fix some issues with STATUSMSG
5 роки тому
Shivaram Lingamneni
a729772f0c
fix a deadlock in CS AMODE
5 роки тому
Shivaram Lingamneni
18a8b075ea
fix #425 and #395
5 роки тому
Shivaram Lingamneni
63029e2ff5
refactor channel registration
5 роки тому
Shivaram Lingamneni
e2e07c0eee
fix #374
5 роки тому
Shivaram Lingamneni
2c7c8fbaf9
history replay enhancements
5 роки тому
Shivaram Lingamneni
ac08ce0f20
move ChannelOperator check into hasPrivs helper
5 роки тому
Shivaram Lingamneni
1383190249
refactor rehash to rely more on server.config
6 роки тому
Shivaram Lingamneni
02a4aaf583
some tweaks to account/channel unregistration
6 роки тому
Shivaram Lingamneni
d3815fbe61
review fixes and updates
6 роки тому
Shivaram Lingamneni
abbbd2c899
review fix
6 роки тому
Shivaram Lingamneni
fad2475c3f
modes refactor, #255
6 роки тому
moocow
744ad2ce0b
Stats for LUSERS logic now seperated, fixed params in LUSERS
6 роки тому
Daniel Oaks
5811226760
Only allow valid snomasks to be set
6 роки тому
Daniel Oaks
e0fa97d344
Get labeled-reply working just fine
6 роки тому
Daniel Oaks
3634d0601e
Split modes into a subpackage (this is painful, but will force us to simplify and improve the API for interacting with modes)
6 роки тому
Daniel Oaks
47d2ce351c
Centralise all command handlers in handlers.go
6 роки тому
Daniel Oaks
8bc2c0ee67
temp *badbadbad*
6 роки тому
Daniel Oaks
16a55cbba8
Add labeled-responses for MODE
6 роки тому
Daniel Oaks
275227a461
Make like every client-facing string translatable
6 роки тому
Daniel Oaks
3b3c1c733a
Support bot mode +B
6 роки тому
Shivaram Lingamneni
b1e12ca1eb
allow unprivileged users to list bans
6 роки тому
Shivaram Lingamneni
6d619bf411
fix channel mode change privilege enforcement
6 роки тому
Shivaram Lingamneni
d4cb15354f
remove registeredChannelsMutex
This moves channel registration to an eventual consistency model,
where the in-memory datastructures (Channel and ChannelManager)
are the exclusive source of truth, and updates to them get persisted
asynchronously to the DB.
6 роки тому
Shivaram Lingamneni
9b74c47b74
rename some getters
Rename getters in conformance with the "Effective Go" styleguide recommendation:
https://golang.org/doc/effective_go.html#Getters
6 роки тому
Shivaram Lingamneni
71e82a9ccf
move a check, avoiding a crash
6 роки тому
Shivaram Lingamneni
240f121e5e
bug fix: SAMODE should list other users' modes
6 роки тому
Shivaram Lingamneni
fa83ccd82b
refactor synchronization for Channel
6 роки тому
Daniel Oaks
e3a0387cf5
channel: Fix +m (moderated) and +R (registeredonly) channel modes, add note about opers overriding +m/+R
6 роки тому
Daniel Oaks
2759d8f5d3
modes: Allow 'MODE b' (used by irssi for channel sync) (thanks @dx!)
6 роки тому
Shivaram Lingamneni
333afe1062
make default channel modes configurable
6 роки тому
Daniel Oaks
f9ef97b204
modes: Add experimental, untested +R user mode to block messages from unregistered users
6 роки тому
Daniel Oaks
b633db3c9d
modes: Also allow Voice
7 роки тому