Commit Graph

383 Commits

Author SHA1 Message Date
Guangcong Luo
0bebcdf028 Fix previous room demotion fix 2015-05-27 14:37:17 -04:00
Guangcong Luo
a305baabfe Improve roomdemote permissions
While demoting, global rank wasn't taken into account correctly,
which allowed players to roomdemote global moderators. This has
been fixed.
2015-05-26 21:07:47 -04:00
Guangcong Luo
42ea92bc53 Merge pull request #1893 from SolarisFox/patch-1
Implement /forceban and /forcelock
2015-05-21 22:57:02 +00:00
SolarisFox
8d0f4ab608 implement /forceban and /forcelock 2015-05-21 15:41:19 -07:00
SolarisFox
29b961ff69 Style fix: indexOf() comparisons 2015-05-18 15:55:57 -07:00
Guangcong Luo
b322cccc59 Update /report text 2015-05-15 17:26:38 -04:00
Guangcong Luo
dbfa7433ad Omit voice/confirmed from /auth 2015-05-04 04:41:02 -04:00
Guangcong Luo
ac7376efad Improve alias support
This is a very minor change, just makes the alias bugfix a bit
less brittle.
2015-05-04 04:25:09 -04:00
Rhythms
c582179431 Add room checking in /report 2015-05-03 12:24:58 -06:00
SolarisFox
2f4b511b42 refactor /help 2015-04-25 00:44:14 -07:00
SolarisFox
336cbc462a Move config/commands.js to chat-plugins 2015-04-25 00:44:07 -07:00
Guangcong Luo
f12931e9fd Move command API doc to chat-plugins/COMMANDS.md 2015-04-24 23:51:38 -05:00
Kevin Lau
2e9e863409 Send '|deinit' message when trying to hardlink to room aliases
Fixes the problem with room alias "ghost rooms".
2015-04-23 23:07:17 -07:00
Joimer
03c5aece00 Refactor the /authority command 2015-04-21 21:01:39 +02:00
Juanma Serrano
418d15f093 Implement /authority command
This command tells the user the global authority of the server in a popup.
2015-04-20 17:04:11 +02:00
Guangcong Luo
4a3ae1c7c3 Limit roomintro size
Roomintros are now limited to 200 vertical pixels, with a
scrollbar for any roomintro that doesn't fit.

An exception is given to official rooms under modchat, namely the
Help room. It is expected that other official rooms won't abuse
this exception, but we can deal with that separately if it becomes
an issue.
2015-04-17 01:21:02 -04:00
SolarisFox
6c2175eca4 Merge /mute and /hourmute 2015-04-14 16:24:13 -07:00
galbia
1527807519 Added /j as an alias for /join
We have that on IRC and im lazy
2015-04-11 15:53:58 +02:00
Juanma Serrano
c568c2544e Remove unused line
This line of code was never executed.
2015-04-08 09:50:27 +02:00
Guangcong Luo
9579eae945 Merge pull request #1726 from sirDonovan/userauth
Fix /userauth
2015-04-08 02:37:06 +00:00
sirDonovan
26e9abc842 Fix /userauth
Fix showing public auth in the private auth list
2015-04-06 19:44:56 -05:00
Guangcong Luo
ca44442a01 Fix /addplayer
This used to be done with the roomplayer permission, but that
allows players to demote other players, which is obviously
undesirable.
2015-04-06 04:15:44 -04:00
Guangcong Luo
c543c4f3d7 Merge pull request #1715 from monsanto/un-commands
Add 'unaway' and 'unrangelock' aliases
2015-04-04 06:19:11 +00:00
Guangcong Luo
c7afebdad1 Revert "Omit private rooms from .chatRooms"
This reverts commit 7925516d13
and several related commits.
2015-04-03 22:18:05 -04:00
Christopher Monsanto
5bef815389 Add 'unaway' and 'unrangelock' aliases 2015-04-03 16:27:34 -04:00
Morfent
2d4cd87d20 Allow /mee in PMs 2015-03-27 21:49:27 -03:00
Konrad Borowski
1dc3ac0250 Add some blockchallenges aliases. 2015-03-27 19:25:39 +01:00
Freigeist
058c221878 Send name updates on roompromote/-demote only to the same room 2015-03-26 00:11:55 +01:00
The Immortal
c9f7f54c29 Properly fix 8d514487e2
It stopped working as intended due to
7925516d13 omitting private rooms from
Rooms.global.chatRooms.
2015-03-25 18:56:42 +04:00
The Immortal
8d514487e2 Allow /userauth to show private rooms for yourself 2015-03-25 18:31:42 +04:00
Guangcong Luo
33dd974882 /blockpms no longer blocks challenges
It makes the interaction of /blockpms, /blockchallenges, and
/away a lot more straightforward.
2015-03-25 05:26:09 -04:00
Guangcong Luo
a379ff5fc4 Add support for new confirmed user status
'Confirmed' is a new pseudo-usergroup, halfway between autoconfirmed
and voice. It grants immunity to locks and works similarly to
autoconfirm status, except it's only granted by being globalvoice+,
roomdriver+, or manually confirmed.
2015-03-25 04:02:32 -04:00
Guangcong Luo
29696e167f Support modjoin for public rooms
Modjoin in public rooms is nearly always a mistake, but can
be useful when doing maintenance on a room or something.

Since the /modjoin command forces a room private, this is
only relevant for console commands, which is as intended.
2015-03-23 17:24:23 -04:00
Guangcong Luo
83ac321b46 Disallow certain characters in room titles
`,` is a delimiter used by a lot of /commands
`|` and `[` are delimiters used by the protocol
`-` has special meaning in roomids
2015-03-23 17:24:23 -04:00
Guangcong Luo
63fd864755 Fix battle rooms appearing in roomList
Fixes a bug introduced in 7925516d13
2015-03-23 17:24:22 -04:00
Ivo Julca
8089ef1ca3 Fix some battles showing up in chatroom list 2015-03-23 15:14:51 -05:00
Guangcong Luo
f614c8ed94 Rename .authenticated -> .registered
Considering what it means, .registered is a lot clearer.
2015-03-23 02:12:08 -04:00
Guangcong Luo
e29e203ea4 Demote users when locking/banning
Users with rank (i.e. voice+) are now demoted upon being
locked/banned. This is the first step in an update that will
allow users with rank to bypass rangelocks, locked prixies,
locked mobile networks during spammode, etc.
2015-03-22 02:09:11 -04:00
Guangcong Luo
7925516d13 Omit private rooms from Rooms.global.chatRooms
Rooms.global.chatRooms is a cached list of chat rooms, useful since
Rooms.rooms on Main has thousands of rooms on average, while less
than 100 of them are chat rooms.

A scan through the code reveals that private rooms are never used
(except for .isPrivate === 'voice') when we need .chatRooms, so
we can omit them to make the cache even smaller/faster.

This is a fairly minor optimization (we have fewer private rooms
than public rooms, total) and private rooms are omitted lazily
(only upon server restart) because we have to check .isPrivate
for the === 'voice' case anyway.
2015-03-22 01:58:06 -04:00
Guangcong Luo
a6e7912147 Refactor roombans
Roombans are now implemented in rooms.js, and work similarly to
the old global lock/ban code, although with a slight improvement
to unroomban.
2015-03-19 03:02:01 -04:00
Guangcong Luo
53e9c8b5b3 Accurate help for /away etc
There was some confusion pertaining to exactly how /away and related
commands work, so this commit should clarify it all.

The naming scheme is standardized so that the canonical
command names are /blockpms, /blockchallenges, /unblockpms, and
/unblockchallenges.

/help away now accurately describes how /away is different from
/blockpms.

/away and /back are refactored into their own commands for clarity.
2015-03-16 21:18:00 -04:00
Guangcong Luo
678af99bf1 Clarify /ignorepms message 2015-03-16 15:47:33 -04:00
Guangcong Luo
1b056b054f Revert "Properly implement away, idle, and back"
This reverts commit 65c6556e6b.

Unlike its name, it doesn't actually properly implement anything,
and the previous behavior was correct.
2015-03-16 15:46:25 -04:00
Guangcong Luo
d2541a520f Support roomlist filter
It is now possible for rooms in the roomlist to be visible only
to voice+. This is sort of hacked-on at the moment, but is good
enough for my purposes.
2015-03-14 19:13:17 -04:00
Morfent
1d22dd6f0c Fix /redir to global room message 2015-03-12 17:59:59 -03:00
Juanma Serrano
65c6556e6b Properly implement away, idle, and back
be5bf30259 and 3f8380a863 imply that blocking PMs should block challenges as well, but that is not the case.
Furthermore, away is widely known and used to block challenges.
This commit changes that so, when using away, idle, and back, you use both ignorepms and blockchallenges, checking for both.
2015-03-04 12:19:00 +01:00
Guangcong Luo
e55931dc61 Fix /fr user not found message 2015-03-03 22:01:37 -05:00
Guangcong Luo
98bbb8ed45 Refactor /addplayer 2015-03-03 20:07:24 -05:00
Guangcong Luo
93f9b5a8de Disallow PMing anyone who can't reply 2015-03-03 20:07:24 -05:00
Guangcong Luo
6f81899140 Fix typo in /joinbattle error 2015-03-03 04:10:27 -05:00