Commit Graph

2896 Commits

Author SHA1 Message Date
Mia
8379e3923a Validate data:image inputs for media commands
This gives explicit messages to ensure people don't try to /show it.
2021-09-23 08:31:11 -05:00
Mia
37dd21bced Chat: Allow users to pm themselves through blockpms 2021-09-22 19:22:53 -05:00
Mia
d6415445d0 Improve offine forcerenames
This mostly just sets user.trackRename when the user tries to log in for the first time. Requested by DaWoblefet.
2021-09-22 19:13:07 -05:00
Mia
c19309c1ad Moderation: Support year-locking names
Approved by Aeonic and Teclis.
2021-09-20 18:10:28 -05:00
Mia
55ced133b6 Punishments: Fix validation of ranges in sharedIpBlacklist 2021-09-20 08:42:33 -05:00
Mia
a53f5ae84a Helptickets: Add better context messages for inapname tickets 2021-09-20 08:14:29 -05:00
Mia
24e1dcbe24 Ladders: Add timestamps to challenge notifications 2021-09-19 14:13:36 -05:00
PartMan
35a917d418
/help: Trim commands (#8461)
```
[09:45:39] @PartMan: !h status
Could not find help for '/status ' - displaying help for '/status' instead
/status [note] - Sets a short note as your status, visible when users click your username.
Use /clearstatus to clear your status message.
```
2021-09-18 15:54:42 -07:00
Mia
60998a00c9 Update /help automodchat 2021-09-18 11:58:21 -05:00
Mia
d3d2bacf10 Moderation: Make /modnote [userid] log the [userid] as the target user
Staff QoL. This will make notes of /mn [userid] show up under /mlid userid (or /ml user='username', etc).
2021-09-17 12:50:05 -05:00
Mia
6a1402a83e Helptickets: Move list-only types to a singular button in notifications 2021-09-16 15:12:50 -05:00
Mia
14fda9ff8b Helptickets: Properly block nomarkshared ranges from making IP-Appeal tickets 2021-09-16 14:10:40 -05:00
Mia
a2890bc7d1 Moderation: Log offline warns to Staff 2021-09-16 09:07:17 -05:00
Mia
c32ae39df3
Spotlights: Fix typo 2021-09-16 07:44:07 -05:00
Mia
038404a554 Rooms: Retain previous setting when automodchat is set
Also fixes a bug with the activation declaration saying it activated after 0 seconds.
2021-09-15 19:40:13 -05:00
Mia
c912e3bd45 Roomsettings: Fix /modjoin sync
This fixes https://www.smogon.com/forums/threads/bug-reports-v4-read-original-post-before-posting.3663703/post-8710045. This changes /modjoin sync so that (if there's no modchat set)  instead of looking for the lowest staff group (in order to set modchat), it looks for the lowest (non reg/whitelist) group that the user can set it to instead. Previously, it looked for the lowest group with the mute permission - bot, which regular users cannot set modchat to in battles.
2021-09-15 19:19:42 -05:00
Mia
6115f6928e Helptickets: Add help for /ht note 2021-09-15 15:14:50 -05:00
Mia
b355909ef0 UNO: Improve error messages
Closes #6780.
2021-09-15 14:46:35 -05:00
Mia
866722f70d Roomlogs: Don't count certain protocol messages for Room#nthMessageHandlers
Previously, join/leave/userstats/etc would all count against the nthMessageHandlers (which is relevant for repeats), and this is most definitely incorrect behavior.
2021-09-15 12:56:39 -05:00
Mia
73696f5d71 Fix typo 2021-09-15 09:11:23 -05:00
Mia
5a0f196a43 Helptickets: Move Inappropriate Username tickets to a shared list
See WAIL. Teclis said I could do this now.
2021-09-15 09:00:10 -05:00
Kris Johnson
c2f5ccc106 Update /battlerules 2021-09-14 23:24:46 -06:00
Mia
ba916b7bf0 Ladder: Stop clearing User#mmrCache when rating updates time out
See comment as to why this behavior is now undesirable.
2021-09-14 19:31:52 -05:00
Mia
59c5c148af Helptickets: Update password reset description 2021-09-14 09:07:01 -05:00
Kris Johnson
508c527207 Fix build 2021-09-13 21:49:29 -06:00
Kris Johnson
ff13a8d8a3 Usersearch: Exclude global banned users 2021-09-13 21:47:49 -06:00
Mia
2c6c9e4125 Chat: Don't count messages blocked by hightraffic in checking slowchat 2021-09-13 12:15:43 -05:00
Mia
9d4929dd9b Usersearch: Specify what terms were added in /usnames add 2021-09-13 12:13:30 -05:00
Mia
b7bc2d7c32 Usersearch: Add help for /usnames and mention it in /help usersearch 2021-09-13 12:11:09 -05:00
Mia
9b435b2f0e Moderation: Add hints about forcelock and forcenamelock 2021-09-12 20:10:42 -05:00
Annika
260fc6c176 Trivia: Fix question order 2021-09-12 12:16:38 -07:00
Mia
6ac4309b94 Moderation: Make /warn work in PMs
Useful functionality. Plus, people were confused why it worked for other punishments and not this. If necessary, Wob also approved of this.
2021-09-11 21:09:01 -05:00
Mia
bd828bcc5b Usergroups: Allow admins to use commands in private rooms without being roomauth 2021-09-10 12:21:02 -05:00
Kris Johnson
fff385b42f /hiderank: Fix typo 2021-09-08 17:42:41 -06:00
Kris Johnson
e1e7296b2e /hiderank: Let higher rank SLs hiderank as SLs 2021-09-08 16:24:32 -06:00
PartMan
25173a4027
/details: Don't show G-Max moves in old gens (#8463) 2021-09-08 00:37:18 -06:00
Mia
39d690abe6 Chat: Prevent PMs to unregistered users
Suggested - matching behavior with locks as at the moment, a registered user can PM an unregistered user and have no idea why they aren't responding.
2021-09-07 13:25:50 -05:00
Mia
bb468391bb Spotlights: Don't sort stored spotlight arrays 2021-09-07 09:49:39 -05:00
Mia
3573361e71 Add autoconfirmed bypass to PM limitations 2021-09-06 19:21:51 -05:00
Mia
b5f1d54a96 Chat: Only allow registered users to send PMs
Per WAIL. Aeo said it was cool to implement now.
2021-09-06 19:09:27 -05:00
Kris Johnson
11bf7b38a9 Room FAQs: Allow multiline with HTML FAQs 2021-09-06 17:07:09 -06:00
Kris Johnson
8151ffca2a Room FAQs: Fix source code and repeats display 2021-09-06 17:01:23 -06:00
Annika
055a01ab89 Modlog: Minor fixes from smogtours conversion 2021-09-06 17:54:30 -04:00
Mia
a735d1fa54 Filters: Validate falsy terms
Apparently we did not do this before.
2021-09-06 14:08:20 -05:00
Mia
23fc47a471 Helptickets: Add more punishment options to Inappropriate Username tickets 2021-09-05 11:44:39 -05:00
Mia
80ffd2a7b3 Spotlights: Support sorting spotlights by most recent updates 2021-09-02 16:03:25 -05:00
AeonicX7
2e7fd45cd8
/groups: Document Section Leaders (#8448) 2021-09-02 13:59:52 -07:00
Mia
d32af4e357 Helptickets: Properly sort ticket logs 2021-09-01 16:36:54 -05:00
Mia
127c790e8d Helptickets: Properly track duration for text tickets 2021-09-01 13:13:02 -05:00
Mia
9aff753999 Modlog: Allow drivers to use /mls
Aeo said this was cool.
2021-09-01 13:02:11 -05:00
Mia
26a8094c7f Modlog: Fix user searches 2021-09-01 12:52:57 -05:00
Mia
a06b8e62d1 Spotlights: Broadcast removal of dailies to roomstaff 2021-09-01 12:18:24 -05:00
Mia
11ab3d83f8 Spotlights: Automatically refresh pages on spotlight change 2021-09-01 12:16:55 -05:00
Mia
7faacd38a7 Helptickets: Fix some grammar 2021-08-31 21:15:20 -05:00
Mia
679e8bfeb0 Modlog: Make multi-arguments use AND instea of OR 2021-08-31 10:30:28 -05:00
pacmanboss256
23b35498f6
Rename the "mystery" and "authentic" move flags (#8445)
* mystery -> allyanim
* authentic -> bypasssub
2021-08-30 23:07:50 -07:00
Mia
7811795344
Handle new TypeScript version (#8449)
Co-authored-by: Guangcong Luo <guangcongluo@gmail.com>
2021-08-30 20:11:44 -07:00
Mia
0e521deb02 Hosts: Add a way to view single-IP open proxies
Requested by DaWoblefet.
2021-08-27 22:14:31 -05:00
Mia
472f349799 Fix build 2021-08-27 22:04:20 -05:00
Mia
80f92a6954 Hosts: Log invalid IPs to US room 2021-08-25 22:38:38 -05:00
Mia
3ece2f9eef /evalsql: Fix error handling 2021-08-22 19:47:20 -05:00
Kris Johnson
c364ae6545
Chat: Ban \u3164 from usernames 2021-08-20 19:25:33 -06:00
Annika
299c883ed0 Trivia: Fix 'all' and 'random' fishes 2021-08-20 18:08:04 -07:00
Mia
8cf1035ee2
SQL: Automatically prepare statements unless told otherwise (#8439) 2021-08-18 12:51:39 -07:00
Annika
222745920a Fix CI 2021-08-16 12:03:05 -07:00
Annika
153f223e88
Trivia: Fix type error 2021-08-16 09:20:14 -07:00
Annika
d18993d3c3
Trivia: Attempt to make 'all' fishes work
I hate coding on crappy high school Chromebooks
2021-08-16 09:12:01 -07:00
Annika
62a6219395 Trivia database: Improve error checking 2021-08-15 20:07:17 -07:00
Mia
d858936d09 Chatlog: Fix all crashes, restore Chat import 2021-08-15 17:18:01 -05:00
Mia
140e023d05 Fix build 2021-08-15 16:51:15 -05:00
Mia
030b84b041 Chatlog: Fix crash 2021-08-15 16:32:39 -05:00
Mia
b0fec9f5e2 Chat: Don't setup DB until after processes are spawned 2021-08-15 16:24:25 -05:00
Mia
14d13015af Import Dex in Chat 2021-08-15 15:48:25 -05:00
Mia
c8dc1adb9c Chat: Actually spawn child processes
SQL() to be called in something instantiated directly in the file, or at the top level, or the PM will not work.
2021-08-15 15:42:58 -05:00
Mia
0a2ed42d13 SQL: Support turning SQL.Statements to JSON 2021-08-15 15:17:45 -05:00
Annika
caeb7e524e Trivia: Don't crash if SQLite is disabled
should fix #8435
2021-08-15 11:36:44 -07:00
Annika
bb1ad48290 Modlog: Fix crash when reporting slow searches 2021-08-15 11:18:20 -07:00
Annika
7213dec936 Trivia: Add generic storage interface 2021-08-14 20:35:08 -07:00
Annika
0a33b52ad4 Trivia: Use transactions and split into a directory 2021-08-14 20:35:08 -07:00
Annika
3c78f183d0 Chat: Require chat plugins recursively 2021-08-14 20:35:08 -07:00
Annika
dcb96fa7ed Trivia: Refactor to use SQLite as a storage backend 2021-08-14 20:35:08 -07:00
Annika
3288a1469e
Chat: Support accessing the chat-plugin database (#8433) 2021-08-14 18:25:50 -07:00
Mia
953da16164 Dexsearch: Remove dependence on the Chat global 2021-08-14 20:06:48 -05:00
Mia
77861ceae6
SQL: Use a QueryProcessManager subclass (#8422) 2021-08-14 17:45:51 -07:00
Leonard Craft III
903dd2c29d GitHub: Fix commit ID styling 2021-08-13 14:21:34 -05:00
Mia
8365430016 Fix build 2021-08-13 12:25:20 -05:00
Mia
882c2dda06 Github: Shorten commit messages properly 2021-08-13 12:20:52 -05:00
Mia
23e4c8f534 Chat: Properly privatize the /help of private commands
This ensures only users who can use said private commands can view the help (and it's no longer a catch-all 'lock' perm)
2021-08-13 12:17:48 -05:00
Mia
f8c4132381 Github: Add gh short alias 2021-08-13 10:56:25 -05:00
Mia
01e5fc0709 Friends: Use getExact in connection notifications 2021-08-12 23:30:58 -05:00
Annika
33ad1a0a50 Move Modlog.formatArray to Utils 2021-08-12 16:38:14 -07:00
Mia
0bb65e8a18 GitHub: Restore /git alt to /opensource 2021-08-12 15:55:48 -05:00
Mia
d8b8e44f78 Friends: Ensure MAX_FRIENDS is respected 2021-08-12 15:30:56 -05:00
Mia
67d74f2418 Usergroups: Don't allow loading global auth with no userid 2021-08-12 15:24:16 -05:00
Mia
51880db89c Punishments: Move punishments on room rename 2021-08-12 13:28:10 -05:00
Mia
a54ff93edb Fix build 2021-08-12 13:18:59 -05:00
Mia
6c7ce161c0
Add a chat plugin for reporting GitHub actions (#8414) 2021-08-12 11:12:57 -07:00
Annika
6573a1c47f /randomdoublesbattle: Display alternate formes 2021-08-12 11:03:41 -07:00
Mia
b9dd78559c Helptickets: Destroy tickets of previous names on ticketban
This fixes a bug where ticketbanning a namelocked user doesn't destroy their old ticket.
2021-08-11 22:44:10 -05:00
Mia
8083af2255 User groups: Don't delete trusted users on restart
See the comment at line 347 for details on why this bug happened.
2021-08-09 21:55:48 -05:00
Annika
4a9983fade Modlog: Fix exact note searches 2021-08-09 14:48:42 -07:00
Annika
d3ca242ff7 Modlog: Fix bug with note searches 2021-08-09 14:42:01 -07:00
Annika
599d7a677a Modlog: Convert user searches to lowercase
I don't know why we do this (since modlog-viewer handles case) but it's something that was unit-tested for in the past so I might as well implement it.
2021-08-09 14:42:01 -07:00
Mia
e9f906e5f0 Chat: Allow src attribs to use single quotes again 2021-08-09 16:09:08 -05:00
Annika
633e061067 Modlog: Remove text logging code 2021-08-09 14:06:14 -07:00
Leonard Craft III
e8f874c18a
Modlog: Fix double spaces when no moderation found (#8424) 2021-08-08 17:21:17 -07:00
Leonard Craft III
dd45c2bf4b
Chat: Disallow HTTP images (#8425) 2021-08-08 17:18:44 -07:00
Mia
4c9e9fe042
Mafia: Fix crash in /mafia kill 2021-08-08 14:26:00 -05:00
ayiadvance
d3c0b61b5d
Mafia: Allow transitions between death states (#8418) 2021-08-05 12:49:56 -07:00
Annika
9762a8fe83 Modlog: Ensure the global room uses global entries 2021-08-04 18:54:49 -07:00
Mia
8229357586 Add some useful aliases to /yearlockname 2021-08-04 15:31:42 -05:00
Mia
953fcde2fa Friends: Ensure the spectator list only includes battles with your friend as a player 2021-08-04 15:01:52 -05:00
Mia
ce15b9b416 Friends: Limit connection notifications to once every 15 minutes 2021-08-03 17:27:04 -05:00
Annika
521f7c3df6 Modlog viewer: Fix /modnotes bug
`/modnotes` should be more like `/punishlog` than `/mlid`
2021-08-02 13:25:48 -07:00
Mia
039daff902 Friends: Ensure Config.usesqlite is respected 2021-07-31 21:24:16 -05:00
Mia
5634c50661 Friends: Better handle missing processes 2021-07-31 21:04:55 -05:00
Annika
3ac44020ac Modlog viewer: Improve help 2021-07-30 20:16:33 -07:00
Annika
237884ec16 Modlog viewer: Add /modnotes command
Requested by Ayia
2021-07-30 20:16:33 -07:00
ayiadvance
c30e53f51d
Remove the word "lynch" from Mafia code (#8412) 2021-07-30 18:43:07 -07:00
Mia
7639427cff Friends: Allow locked users to toggle login notifications 2021-07-30 16:36:48 -05:00
Mia
52aeef992f Helptickets: Notify staff room immediately upon editing notes 2021-07-29 20:43:08 -05:00
Mia
c7bbfd25f9 Friends: Fix spectate list & stop requiring settings to be on 2021-07-29 10:22:01 -05:00
Mia
83e77f9c93 Friends: Write last seen data on disconnect 2021-07-28 14:08:40 -05:00
Mia
de5bc2c419 Helptickets: Restrict modlog searches 2021-07-26 13:37:02 -05:00
Mia
a461c002bc Helptickets: Fix modlog buttons 2021-07-26 13:35:50 -05:00
Mia
6c19c06c44 Chatlog: Fix /help searchlogs 2021-07-26 11:39:43 -05:00
Annika
cfb33eb53f Modlog: Allow non-globalstaff to use modlogs 2021-07-25 15:42:46 -07:00
Annika
11caaf392f Modlog: Improve support for multiple searches 2021-07-25 15:33:42 -07:00
Quinton Lee
b5130dfb57
Commands: Add feedback to /notifyuser (#8411) 2021-07-25 15:33:20 -07:00
Annika
577ef86003 Modlog: Fix punishments-only searches 2021-07-24 21:23:41 -07:00
Mia
f3856757a1
Users: default the display of friend login notifs to off 2021-07-23 22:29:06 -05:00
Annika
982c357f88 /evalsql: Fix bug 2021-07-23 15:27:10 -07:00
Annika
3a57576b30 Modlog: Improve logging of slow SQL queries 2021-07-23 14:19:09 -07:00
Annika
bcbe100c41
Modlog: Use SQLite for searches (#8004) 2021-07-23 13:47:49 -07:00
Mia
145f1c1740 Fix build 2021-07-22 23:41:29 -05:00
Mia
bdeb9c538a Support /blockchallenges friends 2021-07-22 21:18:52 -05:00
Mia
6c166115f5 Friends: Strongly type getFriends 2021-07-22 21:17:20 -05:00
Mia
4dbee18695 Friends: Fix login notifications 2021-07-22 16:50:41 -05:00
Mia
a0b1fa1cc5 /crq: Inform the client if the user is friended
Necessary for upcoming changes.
2021-07-22 14:56:27 -05:00
Mia
d5bb0945ff Moderation: Stop forcing /globalban on untrusted users
This caused issues with banning offline users, and while I was fixing it I started to question why this was necessary at all.
2021-07-22 02:22:52 -05:00
Mia
c5926158d8 Fix build 2021-07-21 21:58:38 -05:00
Mia
4fdab98c27 Chat: Simplify PM blocking code 2021-07-21 21:46:11 -05:00
Mia
e2108c8657 Fix /blockpms friends 2021-07-21 21:26:50 -05:00
Mia
285d084857 Friends: Update language in settings page 2021-07-21 20:25:42 -05:00
Mia
19af1945a2 Friends: Show public battles on the spectator list regardless of setting 2021-07-21 20:23:05 -05:00
Annika
19c6daf9f2 /evalsql: Make table scroll horizontally 2021-07-21 14:34:25 -07:00
Mia
96e4fe3af6 Friends: Fix /help and UHTML 2021-07-21 16:33:27 -05:00
Mia
879bb9dc18 /evalsql: Destroy DB after use 2021-07-21 15:06:14 -05:00
Mia
9ed2c0036f
Add a command for evaluating SQLite (#8407) 2021-07-21 13:05:02 -07:00
Mia
293c65303d /searchlog: Escape HTML in search 2021-07-21 13:59:44 -05:00
Mia
ddd8205aa0 Chat-monitor: Upload replays for BattleMonitor mutes 2021-07-21 13:28:15 -05:00
Mia
b175d8b000 Friends: Use /migrations/friends for versioning 2021-07-19 20:49:47 -05:00
Mia
c20cee8b1a Friends: Properly update spectator lists on battle end 2021-07-19 17:16:14 -05:00
Mia
48a71e82a8 Helptickets: Don't allow IP-Appeals from users who have a punishment matching their userid 2021-07-19 16:16:31 -05:00
Mia
f75f99f20a Helptickets: Remove ISP-Appeals 2021-07-19 16:16:31 -05:00
Mia
ed34cc49b1 Friends: Add a page to spectate the battles of friends 2021-07-19 02:57:08 -05:00
Mia
eb9fd0e8e9 Friends: Use getExact in displaying singular pending requests 2021-07-17 18:33:36 -05:00
Mia
1cfead5d99 Friends: Fix single notifications 2021-07-16 23:53:26 -05:00
Mia
6949344351 Friends: Fix button 2021-07-16 22:50:09 -05:00
Mia
48ef5e3758 Friends: Fix crash in hideLogins 2021-07-16 22:49:02 -05:00
Mia
20c795f8f4
Friends: Move caching to User#friends (#8404) 2021-07-16 20:33:07 -07:00
Mia
194a939cd6 Friends: Use /raw
ugh.
2021-07-16 22:23:37 -05:00
Mia
34f9e33116 Friends: Match behavior with online friend requests when only one request is pending 2021-07-16 22:22:14 -05:00
Mia
3316bf3ffb Friends: Fix 'no request pending' error 2021-07-16 21:01:39 -05:00
HoeenHero
06228119d0 Auth: Don't accidentally reduce a Section Leader's permissions 2021-07-16 17:56:47 -04:00
Annika
edf9d08a26 Fix blockpms after friends list addition 2021-07-16 17:50:10 -04:00
Mia
8e3b05b2bf Friends: Fix crash pt 2 2021-07-16 16:41:32 -05:00
Mia
7b52c4d1d0 Friends: Fix crash 2021-07-16 16:38:34 -05:00
Mia
3020298000 Friends: Fix accepting your own requests 2021-07-16 16:19:17 -05:00
Mia
1a2c3b2e72 Friends: Properly allow viewing lists while requests are blocked 2021-07-16 15:56:05 -05:00
Mia
9323fd2416 Friends: Use Users#getExact more 2021-07-16 15:53:24 -05:00
Mia
2c73519641 Friends: Revert to sending PMs from & 2021-07-16 15:41:27 -05:00
Mia
c9c5e7fbb3 Friends: Display sent list for users blocking requests 2021-07-16 15:31:37 -05:00
Mia
241804aa6b Friends: Send friend request messages from the friend instead of & 2021-07-16 15:26:40 -05:00
Mia
084af11c06 Friends: Properly handle blockpms 2021-07-16 15:16:10 -05:00
Mia
e5fbd64427
Support adding friends (#7333) 2021-07-16 12:56:34 -07:00
Kris Johnson
40e36c8f38
Make adjustments to Section Leaders (#8387) 2021-07-16 12:51:29 -07:00
PartMan
ddec31a24f
Add /notifyuser (#8394) 2021-07-16 12:50:45 -07:00
PartMan
29421ee145
Scavengers: Notify users on hint addition (#8400) 2021-07-16 12:50:34 -07:00
Mia
cee7d8290c Youtube: Update TwitchStream display HTML
Requested by Felucia.
2021-07-15 23:43:12 -05:00
Mia
c57691e2a6 Fix build pt. 2 2021-07-15 17:59:11 -05:00
Mia
422ca25506 Fix build 2021-07-15 16:44:04 -05:00
Mia
cb72f8e42d Usergroups: Block autoconfirmed & locked users from bypassing /blockpms ac 2021-07-15 15:19:03 -05:00
Mia
bb19c45448 Helptickets: Add extra state tracking, update messages 2021-07-15 15:16:40 -05:00
Annika
5b5c1a1646 Fix room privacy checks
Room.settings.isPrivate can be a boolean, undefined, or a string.
2021-07-15 13:13:55 -07:00
Karthik
8b911cbf12
Remove LC Uber as a valid tier in /ds help text (#8399) 2021-07-15 08:15:03 -07:00
Karthik
12abcd02c9
Fix bugs with Sucrase build process (#8393) 2021-07-14 09:50:01 -07:00
Annika
52a9378361 Trivia: Support combining multiple categories 2021-07-13 16:01:03 -07:00
Annika
6cc4ebe5d7 Trivia: Fix crash when no questions have been added 2021-07-13 15:43:38 -07:00
Mia
84bc3972a6 Helptickets: Add help for /ht removenote
Didn't get staged in my previous commit, unfortunately.
2021-07-11 22:20:58 -05:00
Mia
cdb910be4c Helptickets: Support adding hover notes to tickets 2021-07-11 18:58:45 -05:00
Annika
c5f881b76f More fixes for ts-node 2021-07-10 16:33:04 -04:00
PartMan
dfb246d40f
Datasearch: Minor refactor (#8390)
This fixes/changes a couple things:

a) Long dexsearch queries now reject with an error instead of blindly trimming and giving stuff like ``retur could not be found in any of the search categories``.
b) Maxgen now works properly (before this, the maxgen parameter only worked if it was either the first term or if there were no spaces after the preceding comma).
c) Mod now allows spaces around the equals sign (`mod = SSB`) instead of matching properly and failing on the split.
d) Gen0 no longer works in abilitysearch / itemsearch (not that relevant, but since current behaviour is to block Gen 1/2, seems a bit weird to allow 0).
e) Gen X and Maxgen X now work in abilitysearch / itemsearch (before this, they'd give a blank 'no results found').
f) Gen X and Maxgen X now support multi-digit generations (well in advance before Gen 10 releases, but doesn't hurt to be ready).
2021-07-10 04:19:03 -07:00
Mia
ba2a109311
Support viewing stats on the activity of rooms (#8345) 2021-07-09 20:01:15 -07:00
Annika
6ed55b6d1f
IPTools: Add sanity checks (#8331) 2021-07-09 19:59:45 -07:00
Annika
c134195915
Use ts-node instead of Sucrase (#8369) 2021-07-09 19:59:22 -07:00
Mia
c27cc7ae64 Helptickets: Properly link logs for text tickets in /ht list 2021-07-09 17:14:45 -05:00
Mia
aeac844ed1 Helptickets: Refresh text tickets on claim 2021-07-09 17:00:10 -05:00
TheSupervillain
1ef25735b9
Avatars: Change Duel Disk to Wonder Launcher (#8380) 2021-07-07 21:58:24 -07:00
Kris Johnson
598ac409e8 Rename Let's Go! mod to 'gen7letsgo' 2021-07-06 23:07:51 -06:00
Karthik
73eed0d40b
Show "Bypasses Protect" flag in /dt for ally-targeting moves (#8384) 2021-07-06 11:59:55 -07:00
FeluciaPS
ad406e37c6
Add htmlfaq to multi-line commands (#8379) 2021-07-04 15:57:47 -07:00
Guangcong Luo
a3eec79627 Update documentation for /avatarhelp 2021-07-04 17:05:01 -05:00
Annika
3403cc0d93 /whois: Fix formatting for punished previous names 2021-07-02 19:49:43 -07:00
Mia
5b4e2fe172 Spotlights: Check /setdaily permissions for viewing source instead of /daily
https://www.smogon.com/forums/threads/let-drivers-see-sourcecode-for-dailies-when-doing-daily.3687106/#post-8905412
2021-07-02 20:26:10 -05:00
Kris Johnson
876c86d236 Change type declaration formatting for Maps/Sets 2021-06-29 22:47:28 -06:00
Kris Johnson
61b72b687c Wifi: Modernize code of Giveaway#getSprite 2021-06-29 22:45:53 -06:00
Annika
56754afb42 Punishments: Remove getPunishType functions
These are poorly designed as they only return one punishments, but users can now have several.
2021-06-29 17:55:45 -07:00
Mia
7fe886302c /botmsg: Fix filter check 2021-06-29 00:45:29 -05:00
Mia
5430bf4365 Fix build
Unsure why ESLint did not throw this for me.
2021-06-28 21:50:56 -05:00
Mia
d829ceeff4 Chat: Validate command recursion 2021-06-28 21:28:30 -05:00
Kris Johnson
62eaf3f5fa Room FAQs: Update help 2021-06-28 17:08:16 -06:00
Distrib
e9a5bc9332
/blockchallenges: Support allowing challenges from certain groups (#8362) 2021-06-26 17:28:03 -07:00
Mia
44ef659eb5 Helptickets: Better handle RG errors
Seriously, fuck ripgrepe error reporting.
2021-06-24 20:46:08 -05:00
Mia
d1b397bc7c Helptickets: Fix crash 2021-06-24 20:39:11 -05:00
Mia
1176e393f0
Helptickets: Log text tickets (#8352) 2021-06-24 14:39:42 -07:00
Mia
59c404c8c4
Chat-monitor: Wrap autolocked messages in code formatting 2021-06-24 14:00:44 -05:00
Mia
3eeccb002e Punishments: Make /unlock lift /yearlockname 2021-06-23 21:52:19 -05:00
Mia
817986de92 Moderation: Restrict seeing punishments for non-staff trusted users 2021-06-23 16:25:42 -05:00
Mia
558c4e3a4a Moderation: Only allow non-staff trusted users to see locks and bans on /offlinewhois
Approved by Aeo.
2021-06-23 16:05:51 -05:00
Mia
7cad87035f Roomfaqs: Actually fix crash 2021-06-22 23:20:57 -05:00
Mia
342ce89a38 Roomfaqs: Fix crash 2021-06-22 23:19:57 -05:00
Mia
cb0bb92ad3 Helptickets: Determine opponents from replays for battle harassment tickets 2021-06-22 23:13:25 -05:00
Mia
e02b358da5
Room FAQs: Support HTML (#8343) 2021-06-22 18:26:31 -07:00
PartMan
0d7159b12c
/botmsg: Permit ROs too (#8370)
(Bots become ROs of subroom groupchats if they create them.)
2021-06-22 15:52:54 -07:00
Mia
fe338a84f5
Support locking usernames for a year (#8371) 2021-06-22 15:10:16 -07:00
Karthik
5db9d39756
Support default format for randbats commands (#8367) 2021-06-22 12:06:02 -07:00
Mia
eedf54a01b Helptickets: Hide punishment options on ticket close 2021-06-21 23:03:56 -05:00
Mia
45a2f8e125 Helptickets: Add autocompletes to the 'respond to reporter' tab 2021-06-17 11:39:26 -05:00
Mia
b0e839e1e8 Moderation: Only log /rangeban to Staff 2021-06-15 18:16:06 -05:00
Guangcong Luo
5c5b82931d Don't break invites when renaming rooms
Fixes #8361
2021-06-15 12:46:15 -07:00
Mia
ce7bb61dd4 Helptickets: Update some grammar and behavior 2021-06-14 12:20:51 -05:00
Mia
197fe7b6b8 Spotlights: Add a refresh button to the dailies page
https://www.smogon.com/forums/threads/add-a-refresh-button-to-the-daily-spotlights-page.3686101/#post-8886206
2021-06-13 13:10:52 -05:00
Mia
e6ebcebc82 Helptickets: Update IP-Appeals to text and add new Appeal responses 2021-06-13 12:14:14 -05:00
Mia
d03ba1c25e Punishments: Better handle custom punishments 2021-06-11 02:05:44 -05:00
Annika
264831e36a /randombattles: Display sets for the battle format 2021-06-08 18:17:16 -07:00
Annika
c3d4f80b6e Punishments: Remove unnecessary check 2021-06-08 14:14:58 -07:00
Annika
9d87d9bac2 Fix Punishments#ipSearch 2021-06-08 14:08:36 -07:00
PartMan
46a858f2be
Movesearch: Add defrost and reflectable aliases (#8359)
Added Magic Coat/Magic Bounce since those are intuitive terms to use while searching
2021-06-08 11:45:16 -04:00
Mia
6f6b564f7f Hangman: Don't allow filtered words in guesses 2021-06-07 22:07:09 -05:00
Mia
6dac7566d8 Punishments: Check interactions on room punishments 2021-06-07 12:32:18 -05:00
Distrib
fad49102e0
Helptickets: Change password reset link (#8358) 2021-06-06 18:40:18 -07:00
Annika
b3b18465a4 Jeopardy improvements
- announce ability to buzz in via chat rather than via a colored square in HTML
- improve validation of integer arguments
- improve grammar
2021-06-03 17:01:13 -07:00
Mia
bdd08acecb Info: Fix /regdate display for registration time 2021-06-03 13:46:14 -05:00
Mia
b32a397f72 Helptickets: Update punishment UI 2021-06-03 13:40:32 -05:00
Mia
f07855a2d0 Rooms: Fix automodchat 2021-06-03 13:40:31 -05:00
Annika
b712278fd0
Use global punishments instead of fake rooms (#8350) 2021-06-02 21:54:33 -07:00
Annika
613bf3243f Jeopardy: More fixes 2021-06-02 14:42:56 -07:00
Mia
81af92da52 Helptickets: Make the 'punish reporter' button more distinct 2021-06-02 16:37:20 -05:00
Annika
343db5a762 Jeopardy: Fix crash 2021-06-02 13:49:44 -07:00
Mia
01a7132e0e Fix alt display in /whois 2021-06-02 14:19:16 -05:00
Mia
59377f5a47
Info: Fix /show and /requestshow interaction error (#7904) 2021-06-02 11:03:00 -07:00
Mia
e987a01427 Rooms: Partially fix bug in automodchat
This should provide a temporary bandaid in that it won't spam rooms, and it will inform us of what the setting is so that we can proceed.
2021-06-01 19:18:52 -05:00
Mia
da8d9f0096 Chat: Don't block login if a plugin crashes during startup 2021-06-01 19:18:51 -05:00
Annika
c71e090153 Username prefixes: Fix bug in loading 2021-06-01 11:49:50 -07:00
Mia
94b5e5e898 Fix trusting users 2021-06-01 10:17:10 -05:00
Mia
ec7dfa203f Prefix-Manager: Fix crash 2021-06-01 09:59:57 -05:00
Mia
eaacf70494 Punishments: Attempt to reduce RAM use
This is one of several possible causes I identified. Worst case, we can restore this later, but it isn't critical at any rate.
2021-06-01 08:53:24 -05:00
Mia
8fa02b73a4 Users: Automatically trust users in Staff room 2021-06-01 08:33:51 -05:00
Mia
607c645316 Punishments: Fix saving of several punishments 2021-06-01 08:28:36 -05:00
Guangcong Luo
a338dad78a Fix challenge notifications
This is a temporary fix; the real fix is a decent margin more
complicated, unfortunately...
2021-05-31 20:05:47 -04:00
Guangcong Luo
7ac0e34183 Prevent getReadmoreBlock from getting too big
Fixes #8346
2021-05-31 20:05:47 -04:00
Annika
5eb01c8abb Further improvements to the Jeopardy plugin 2021-05-31 15:00:51 -07:00
Mia
c237e18672 Fix previous names display in /whois 2021-05-31 14:25:26 -05:00
Mia
3d1c5b24f2 Fix room close page handling 2021-05-31 14:14:53 -05:00
Mia
6562a14385 Fix punishment reason displays in /whois 2021-05-31 13:16:31 -05:00
Mia
09e298f15b
Punishments: Support giving multiple punishments to one user (#8265) 2021-05-31 11:06:01 -07:00
Mia
dc6a7ea2e3 Chat: Properly load handler hooks 2021-05-31 11:27:04 -05:00
Mia
62a8471d80 Chat: Properly handle roomClose hooks 2021-05-31 11:27:04 -05:00
Annika
836a7a2a10 Improvements to the Jeopardy plugin
Requested by Trivia staff and approved by me
2021-05-30 20:55:22 -07:00
Mia
5f4671bb79 Fix build 2021-05-30 22:48:52 -05:00
Mia
e0ca414a89 Helptickets: Fix proof in PM Harassment tickets 2021-05-30 22:19:02 -05:00
fart
839075a166
Allow alternative parameters for dexsearches (#7847) 2021-05-30 16:13:39 -07:00
Annika
f0d142e621 Chat monitor: Fix bug in loading from JSON 2021-05-30 15:55:54 -07:00
Annika
652bbb1064
Jeopardy: Refactor to use Chat.ErrorMessage (#8342) 2021-05-30 02:35:39 -07:00
Mia
9000eebbef Chatlog: Fix date validation 2021-05-30 01:43:17 -05:00
Mia
69990a6ddc Chat-monitor: Fix crash 2021-05-30 01:40:14 -05:00
Mia
5f9072b2ba
Chat-monitor: Centralize functions and migrate to JSON (#8328) 2021-05-29 22:11:32 -07:00
Mia
487fc5e3fa Fix comment 2021-05-29 21:02:16 -05:00
Mia
8ba56d3d03 Chatlog: Fix crash in date validation 2021-05-29 20:56:07 -05:00
Mia
d9109e64bc Hangman: Allow creators to play in random hangman games 2021-05-29 20:11:48 -05:00
Annika
4e5939ecd6 Jeopardy: Improve message displayed on timeout 2021-05-29 17:55:36 -07:00
Annika
602c6af0af GlobalAuth: Handle multiple usergroups.csv entries
I don't know why users get two sometimes (I think it's an old bug that got fixed?) but this handles it better.
2021-05-29 16:02:55 -07:00
Annika
8714bf36ce /randbats: Use a <details> dropdown 2021-05-29 13:23:31 -07:00
Mia
fb1b5582cc Helptickets: remove extra replay link HTML 2021-05-29 11:14:36 -05:00
Mia
7ae21cebf8
Chat: Support exporting custom handlers from plugins (#8319) 2021-05-28 23:13:01 -07:00
Mia
bf648598ec
Add modlog stats page (#8339) 2021-05-28 12:12:50 -07:00
Mia
a9c200baf1 Helptickets: Properly handle ticketbans in text tickets 2021-05-28 09:45:42 -05:00
Mia
3c6c560e36 Helptickets: Attempt to determine a reported user in battle harassment tickets 2021-05-28 09:30:44 -05:00
Mia
c29a9a1eb1 Moderation: Explicitly note if punishments are done with no user object 2021-05-27 21:29:59 -05:00
Annika
fd9b922e86 /sectionleader: Get user object exactly 2021-05-27 11:21:35 -07:00
Mia
248ce8b3b3 Helptickets: Display punishment list for reporters and add more punishments 2021-05-27 08:25:13 -05:00
Annika
83df279b1d
Add a chat plugin to manage username prefixes (#8338) 2021-05-26 14:39:13 -07:00
Guangcong Luo
74211859c9 Update to TypeScript 4.3
Changes relevant to our codebase:

- TypeScript now knows that `typeof id === 'string'`! A bunch of casts
  on `User | ID` or `Room | RoomID` are no longer necessary!!!

- `override` will protect against certain typoes, and we'll adopt it
  (and `--noImplicitOverride`) as soon as sucrase comes in

- `declare` is now required for properties we want to narrow the type
  of without directly overwriting - a good thing to use going forward,
	but very annoying to fix all our old code for
2021-05-26 14:16:54 -07:00
Distrib
0596c9ba6e
Datasearch: Increase in the number of pokemon generated in /randpoke (#8317) 2021-05-26 12:38:20 -07:00
Mia
2fe8cb44bb Helptickets: Support fetching replay logs 2021-05-26 13:23:57 -05:00
Annika
0bd31705ab Improve handling of legacy forced-public prefixes 2021-05-26 12:44:44 -04:00
Mia
817fe96134 Usersearch: Use tables in the page 2021-05-25 20:02:11 -05:00
Mia
5523cc5f96 Helptickets: Fix punishment proofs 2021-05-25 18:37:14 -05:00
Mia
66261e99d2
Admin: Support /eval in PMs (#8249) 2021-05-25 16:28:09 -07:00
Mia
9df9d10c98 Autoresponder: Fix again 2021-05-25 18:12:08 -05:00
Mia
1052e3c786 Autoresponder: Fix crash 2021-05-25 17:34:52 -05:00
Mia
21cc7b05ec
Autoresponder: Migrate logs to JSONL (#8335) 2021-05-25 15:21:41 -07:00
Mia
756db075be
Usersearch: Support setting a list of most-searched names (#8283) 2021-05-25 15:21:32 -07:00
Mia
d31ceb5693 Helptickets: Show Pokemon names in ticket for inap pokemon name tickets 2021-05-25 15:16:52 -05:00
Mia
a730b6a2bc Helptickets: Add shared battle HTML to pm harassment 2021-05-25 14:43:27 -05:00
Mia
f5ab015f0e Helptickets: Ensure battle replay links aren't duplicated 2021-05-25 13:58:45 -05:00
Mia
c4a667ae1d Hosts: Support aliases for suffix types 2021-05-24 19:58:21 -05:00
Quinton Lee
96895a6187
Tournaments: Add feedback to /tour runautodq (#8322) 2021-05-24 11:19:02 -07:00
PartMan
69e71297e8
/punishments: Use toID (#8332) 2021-05-24 11:18:32 -07:00
Mia
961e5b90d0 /clearlines: Trim reasons 2021-05-24 11:34:26 -05:00
Guangcong Luo
d555f6fe0d Fix max-len for long regexes
We use eslint-disable for max-len in a lot of places where we don't
actually need it. This fixes that.
2021-05-23 20:48:31 -07:00
Guangcong Luo
d8f492d209 Fix bugs in IP and IP range support
IPTools has gotten a bit buggy since the last time I looked at it. This
fixes `IPTools.ipRegex` to actually validate IPs, and adds a new
`IPTools.isValidRange` validation function.

`/ipsearch` now also supports all three IP range formats, thanks to
being refactored to use `IPTools.checker`.

Fixes #8330
2021-05-23 20:48:31 -07:00
Guangcong Luo
49cacba6cf Support !rebroadcast to bypass broadcast cooldown
The old system where only admins can bypass the broadcast cooldown
is weird, because it's wrong in both directions: Admins could
unintentionally re-broadcast, but other users couldn't intentionally
re-broadcast.

Now no one can unintentionally re-broadcast and everyone can
intentionally re-broadcast.
2021-05-23 19:41:07 -07:00
Guangcong Luo
4a716f1456 Use aliases for !formathelp broadcast cooldown
(This makes it so if someone uses `!om sketch` it will prevent use
of `!om sketchmons` for a while.)

Suggestion thread: https://www.smogon.com/forums/threads/make-the-broadcast-cooldown-for-commands-apply-to-aliases-of-that-command.3684569/
2021-05-23 18:23:52 -07:00
Annika
44dd12686d Mastermind: Maintain scores for users who leave 2021-05-23 16:11:54 -07:00
Mia
1721152389 Helptickets: Remove inner dropdowns on battle logs 2021-05-23 11:53:26 -05:00
Marty-D
abec21011f
Add more missing Trainer avatars 2021-05-22 13:47:23 -04:00
Mia
68c0be6594 Netfilters: Remove accidental commit
I was still debugging this and i'm unsure how this snuck in, seeing as it was on another branch...
2021-05-21 19:21:10 -05:00
Mia
fdbf6c693c Helptickets: Fix formatting in battle logs 2021-05-21 17:04:15 -05:00
Mia
081574bfdb Helptickets: Properly filter battle rooms 2021-05-21 12:41:53 -05:00
Mia
feab8f0049 Helptickets: Show all chat messages in reported battles 2021-05-21 12:35:08 -05:00
Mia
2cf47420ea Helptickets: Auto-upload common battle replays on submit for PM harassment tickets 2021-05-21 12:00:56 -05:00
Mia
310e4e8987 TOTD: Document /-otd removewinner 2021-05-20 22:11:36 -05:00
Annika
6628bb9d36 Mastermind: Support category aliases 2021-05-20 13:01:23 -07:00
Mia
538ca60d14 Roomevents: Check /roomevents add permissions for viewing source
Currently, it checks /roomevents view. But, /roomevents view does not have room permissions, as it is usable by anyone. As such, this makes it so anyone who can add a roomevent can view sources.
2021-05-20 09:36:11 -05:00
Annika
5b50c31507 /blockpms: Normalize capitalization 2021-05-19 18:07:26 -07:00
Annika
f71fb356f9 /randbats: Don't show sets for future gens 2021-05-19 10:39:18 -07:00
Mia
cbb5cf8ad5 Helptickets: Remove extraenous linebreak 2021-05-19 12:32:07 -05:00
Mia
88b4db05c3 Helptickets: Add global modlog button in PM harassment 2021-05-19 12:30:21 -05:00
Mia
f036283a60 Rooms: Actually ensure bots don't count for automodchat 2021-05-19 09:21:05 -05:00
Mia
ac976e7aa1 Rooms: Use user#can for checking staff permissions in automodchat
isStaff includes bots, which makes this useless if the room has a roombot.
2021-05-19 08:20:25 -05:00
Mia
4cd8031bb4 Helptickets: Link to client, not replays, in PM harassment tickets 2021-05-18 11:29:29 -05:00
Mia
b924534cb1 Helptickets: Fix shared battles display 2021-05-18 09:53:55 -05:00
Mia
9e459daee2 Helptickets: Support a disclaimer message on submit 2021-05-17 14:44:57 -05:00
Mia
8775d52953 Helptickets: Support HTML error messages for text tickets 2021-05-17 14:44:09 -05:00
Mia
d2c4eaf67e Helptickets: Make PMHarassment a text ticket type 2021-05-17 14:37:37 -05:00
Mia
52d1042c96 Helptickets: Support async checker functions
Likely necessary for future commits, either way cleaner to break them into separate commits (organization reasons)
2021-05-17 12:19:32 -05:00
Mia
77023b02b6
Stop defaulting messages to Lobby in protocol (#8304) 2021-05-17 07:17:48 -07:00
Guangcong Luo
c695620e58
Refactor to new challenge system (#8303)
See PR for full details:

https://github.com/smogon/pokemon-showdown/pull/8303
2021-05-17 07:15:01 -07:00
Mia
e5c568274c Helptickets: Prioritize text tickets in staff display 2021-05-17 08:53:29 -05:00
Guangcong Luo
58c85ee125 Fix crash with min source gen in /learn 2021-05-17 04:30:00 -07:00
Mia
38374f8bd9 Alias /chatlog to /chatlogs 2021-05-16 19:53:33 -05:00
Mia
d93de6c2fb Minor activities: Don't shift queue twice upon end 2021-05-16 18:11:01 -05:00
Mia
1ebf254697 Remove accidental debug print
Didn't see i didn't save.
2021-05-16 12:56:27 -05:00
Mia
959cb78aab Helptickets: Only state resolution time if it was more than 1 second ago 2021-05-16 11:28:21 -05:00
Annika
411858bbe9 /randombattles: Display sets for alternate formes 2021-05-15 13:33:50 -07:00
Mia
e351fd8222 Helptickets: Save replays on text ticket submit 2021-05-14 15:53:56 -05:00
Mia
d99a21ad41 Users: Close open pages on connection disconnect 2021-05-14 09:33:01 -05:00
pacmanboss256
4186ef5f4f
Refactor Mold Breaker effect (#8291) 2021-05-14 08:32:41 -04:00
Quinton Lee
3783f11ea0
Implement /sendprivatehtmlbox (#8285) 2021-05-14 02:47:33 -07:00
Guangcong Luo
997c3e2fe8 Further fix Rock Paper Scissors
- You no longer get kicked out if you try to join the game room manually

- Games no longer default to private

- Games now auto-pause if both players time out

- Paused games now have a Resume button

- Games no longer lose history if you leave/rejoin

- It is now possible to reject challenges

- Fix `game.destroy()` improperly getting overridden
2021-05-14 02:28:25 -04:00
Guangcong Luo
509d0abad4 Refactor out some Object.keys invocations
If you need values, you should be using `Object.values` or
`Object.entries` directly.
2021-05-13 23:02:04 -07:00
Mia
7e45048519 Helptickets: Make text tickets use userid modlog search 2021-05-13 16:42:58 -05:00
Mia
2a9f451434 Helptickets: Display user language in Staff room buttons 2021-05-13 15:40:35 -05:00
Mia
e83b030c09 Chat-monitor: Ensure users receive offline warns with no reason
In practice, it shouldn't happen much, but it never hurts to ensure proper behavior.
2021-05-13 15:31:25 -05:00
Mia
172408838a Helptickets: Improve formatting of proof URLs 2021-05-13 14:21:10 -05:00
Mia
b1163a84a2 Helptickets: Improve formatting of reported battle URLs 2021-05-13 14:14:03 -05:00
Mia
32272aaa39 Helptickets: Format claimed text tickets properly 2021-05-13 12:37:19 -05:00
Mia
30d582443a Helptickets: Send Inap Username ticket forcerenames to Staff 2021-05-13 11:53:37 -05:00
Mia
a591868fbd Helptickets: Support leaving a staff note in text tickets 2021-05-13 09:58:30 -05:00
Guangcong Luo
3038147315 Also remove unused getPlayers function in RPS 2021-05-13 06:58:16 -07:00
Guangcong Luo
1cc52d6607 Remove unused clearChoices function in RPS 2021-05-13 06:48:50 -07:00
Mia
b2963ff53b Helptickets: Style textareas 2021-05-13 08:41:23 -05:00
Guangcong Luo
4e213368dc Redesign Rock Paper Scissors
This new update will have it looking a lot nicer, and also fixes some
architectural issues with the old design.
2021-05-13 09:39:51 -04:00
Mia
12b319e713 Helptickets: Add claiming and add more punishment types to text tickets 2021-05-13 08:34:52 -05:00
Mia
8e624e744e Helptickets: Add a hover display for text tickets and reasons for battle harassment locks 2021-05-12 20:05:36 -05:00
Mia
b496298c29
Helptickets: Refactor to support text-only tickets (#8179) 2021-05-12 20:24:36 -04:00
Mia
7c1be296e6 Roomsettings: Don't allow locked users to set modchat
People are spamming with this. See comment for why it's not in the other access denied check.
2021-05-12 13:26:39 -05:00
Mia
1a7d1db909 RPS: Make /rps challenge work in PMs with no target again 2021-05-12 10:57:54 -05:00
Mia
acda9585f8 RPS: Respect /blockchallenges 2021-05-12 08:59:22 -05:00
Guangcong Luo
26392b5be8 PM-convert |uhtml| and |uhtmlchange|
`|uhtml|` and `|uhtmlchange|` are now converted to `/uhtml` and
`/uhtmlchange` in PMs, like `|html|`. This should simplify stuff
in PMs going forward.
2021-05-11 20:46:26 -07:00
Mia
42b6a59af8 Fix formatting
Oops.
2021-05-11 16:21:25 -05:00
Mia
23e2c28388 Polls: Respect Config.noipchecks 2021-05-11 16:20:32 -05:00
Mia
79b716bb06 Moderation: Show forcerenames to regular users in helptickets
Requested by Ransei.
2021-05-11 12:08:53 -05:00
Mia
0466718637 Increase status character limit to 52
Policy end, Ransei said this was fine. Tech end, looks fine - two lines on the usercard, even with caps it's pretty minimal.
2021-05-11 12:07:15 -05:00
PartMan
f2a10c8e0d
Scavengers: Ladder isn't monthly (#8295) 2021-05-10 21:41:22 -07:00
Mia
0b2f63b9f3 Info: Support twitch links in /show 2021-05-10 21:57:20 -05:00
Mia
2864b6dd87 Autoresponder: Remove minimum length 2021-05-10 20:00:51 -05:00
Annika
2fd6153e70
Hide lines from locked/banned users' alts (#8277) 2021-05-10 10:41:12 -07:00
Mia
518fccd921 Youtube: Allow Pokemon Go to use /twitch watch 2021-05-10 10:10:56 -05:00
Mia
ec1c8cc95d /botmsg: Bypass room throttles 2021-05-09 18:05:25 -05:00
PartMan
cab2ad0c08
Scavengers: Italicize host names on end (#8290)
The `<em>` being wrapped around each individual username and not the entire host string is intentional since it looks better  - and also allows parsing of hosts from the finishing message
2021-05-10 00:20:14 +02:00
HoeenHero
36fe51f71c Dont block future updates if Config.privatecodepath is not set. 2021-05-08 20:55:49 -04:00
Mia
a7c0f8054a Chatlog: Fix crash
This should ensure that all dates passed to roomstats are in the form year-month. The crashes came from only a year being passed
2021-05-08 11:29:18 -05:00
Mia
8be458463d Autoresponder: Update permission checks for raw regex
Global staff with dev mod should be able to do it.
2021-05-07 17:20:09 -05:00
Kris Johnson
5056f86c86 Add help for /roomspotlight 2021-05-07 12:51:48 -06:00
Mia
fd29cc4cf3 TOTD: Fix timestamp parsing 2021-05-07 12:40:01 -05:00
Mia
30c461bfdc TOTD: Fix timestamp display
Take 2. Hopefully.
2021-05-07 12:27:09 -05:00
Mia
f949f9ba66 Chat-monitor: Use new spoiler format instead of SPOILER:
Mentioned in Staff, slightly cleaner.
2021-05-06 13:21:54 -05:00
Annika
2837f9dc26 Handle undefined reason in monitorRoomPunishments 2021-05-06 10:17:36 -07:00
Guangcong Luo
11a6902154 Force rebuild when using /rebuild 2021-05-06 01:36:34 -07:00
Guangcong Luo
55980d416c
Support value rules (#8267)
`teamLength`, `maxLevel`, `cupLevelLimit`, and `minSourceGen` no longer
exist as properties of `Format`. Instead, they're value rules that
become properties of `RuleTable`, and can be specified as custom rules
and inherited through rulesets like anything else.

See the PR for a full reckoning of changes:

https://github.com/smogon/pokemon-showdown/pull/8267
2021-05-06 01:16:16 -07:00
Mia
64b3b554c2 Usersearch: Add namelock buttons
Requested by staff, approved by Ransei.
2021-05-05 16:24:01 -05:00
Mia
a5d3aaee35 Helptickets: Don't display language if set to English in /ht list 2021-05-05 14:27:09 -05:00
Mia
5fb8071274 Info: Fix /regtime time handling 2021-05-05 12:04:25 -05:00
Guangcong Luo
574bb28bbe
Implement Utils.Multiset (#8260)
If you grep the codebase for `|| 0) + 1` you get a lot of results,
all of which would be better implemented with a multiset.
2021-05-04 21:53:23 -07:00
Kris Johnson
70a06de929
PunishmentMonitor: Fix "(banned: )" in autolocks (#8256) 2021-05-04 21:50:04 -07:00
Annika
a150b4aa6c Fix help for /host 2021-05-05 00:18:23 -04:00
Mia
5f21bc1d9d Helptickets: Update language display in /ht list
Staff preferred this, from opinions given when it went live.
2021-05-04 20:54:58 -05:00
Annika
2df7307ca2 Helptickets: Display language in ticket list 2021-05-03 10:35:37 -07:00
Mia
abcf367181 Admin: Respawn Dexsearch processes in formats hotpatch 2021-05-03 11:41:49 -05:00
Mia
a20f2ebdf2 Helptickets: Add the alias /ht tb to /ht ban
Requested by a few staff
2021-05-03 10:45:46 -05:00
Annika
f6b21b90ce Trivia: Support games with fewer than 3 players
Requested by Trivia roomstaff
2021-05-02 21:36:22 -07:00
Annika
38f16f2097 Trivia: Add a button for signups 2021-05-02 21:34:50 -07:00
Quinton Lee
51e005e65d
Implement /closehtmlpage (#8253) 2021-05-02 13:42:46 -07:00
Annika
dd6fb52079 /lock: Fix reason parsing 2021-05-01 21:19:09 -07:00
Kris Johnson
5331e0e748
Refactor splitTarget to splitUser (#8246) 2021-05-01 00:42:25 -07:00
Guangcong Luo
e450e8082e Fix bug in requireUser refactor 2021-04-30 18:32:43 -07:00
Guangcong Luo
a480a84ce4 Chat API: Add requireUser
This simplifies a lot of `splitUser` uses that immediately go on
to make sure the user actually exists.
2021-04-30 17:14:35 -07:00
Guangcong Luo
0230a002fd Make bot attribution stricter
Admins should not be using `addhtml` commands for jokes. This makes
it so only gbots get access to unattributed `addhtml`.
2021-04-30 17:14:35 -07:00
Mia
1b0bcc9000 Usersearch: Remove extraneous linebreaks when there are no online matches 2021-04-29 09:56:20 -05:00
Mia
721e7bc8a2 Remove /makegroupchat from /commands
Regs can't use it now, so it doesn't need to be here
2021-04-29 09:48:11 -05:00
Guangcong Luo
d80319d114
Implement /botmsg (#8240) 2021-04-29 00:54:57 -07:00
Guangcong Luo
17ca6b271c Add a bit more documentation for plines 2021-04-28 01:53:03 -07:00
Guangcong Luo
09d2b9c514 Deprecate splitTarget with splitUser
(Note that the `splitUser` API isn't stable yet, and a future update
will determine if we want to call the final output `message` or
`rest`.)
2021-04-28 01:45:56 -07:00
Guangcong Luo
d9c564d15c Add hint for locked users challenging unlocked 2021-04-27 22:34:52 -07:00
Mia
24ac3cfc40 Fix crash in /effectiveness 2021-04-27 21:32:10 -05:00
Guangcong Luo
9abbe47531
Support setting a default format/mod for commands in rooms (#8237) 2021-04-27 15:38:51 -07:00
urkerab
d4662c4c04
Handle extraneous parentheses again (#8238) 2021-04-27 15:06:51 -07:00
Annika
4bbb809c7b
Mastermind: Fix sorting in getTopPlayers 2021-04-27 09:09:37 -07:00
Guangcong Luo
ddd96995a1 Fix crash report display
Fixes #8234
2021-04-26 22:30:02 -04:00
urkerab
74ed6a3651
/math: Give the negative operator a precedence (#8235) 2021-04-26 18:53:32 -07:00
Annika
8ee9a68067 RoomBattle: Properly handle legacy config format
#8214 added code to handle Config.forcedpublicprefixes and convert it to Config.forcedprefixes, but it was buggy.
2021-04-25 22:03:08 -07:00
Quinton Lee
6079927a95
Commands: Support sending |selectorhtml| to bot HTML pages (#8228) 2021-04-25 20:20:57 -07:00
Mia
ea6f6a81d9
Chat: Allow plugins to add custom /crq handlers (#8225) 2021-04-25 15:26:05 -07:00
Guangcong Luo
810aff74cd Namespace more server global types 2021-04-25 14:16:27 -07:00
Guangcong Luo
0e0389bdc8 Rename pageContext.send to pageContext.setHTML
It's currently not very similar to commandContext.send so using the
same name could make things very confusing.

We have a new `pageContext.send` function that actually behaves as
you'd expect.
2021-04-25 13:25:42 -07:00
Kris Johnson
46b9a36fa7 /hiderank: Don't let users hide as Section Leaders 2021-04-25 02:26:46 -06:00
Mia
5e455cdb6c
Fix missed punishment description conversions 2021-04-24 21:27:53 -05:00
Kris Johnson
0d5a99d9b0 FIx sorting in /sectionleaders 2021-04-24 01:05:58 -06:00
Guangcong Luo
7336b22540 Fix support for spotlight rooms 2021-04-24 02:46:45 -04:00
Guangcong Luo
e75636aebc Fix crash in custom punishments change 2021-04-24 02:46:07 -04:00
Guangcong Luo
486f292904
Refactor everything to use Utils.sortBy (#8220)
A few uses of `array.sort()` have been left alone:

- sorting in `data/` because they aren't supposed to import anything

- `set-importer` because I still have no clue what that's for and what
  dependencies it is/isn't allowed to have

- `sort()` with no arguments used as a lexical sort (at which point
  `sortBy` offers no benefits)

All other cases have been replaced with `Utils.sortBy`, which should
be a massive increase in readability.

Sort orders should be much more readable now, without needing to puzzle
through sign issues. The order is always low-to-high, A-to-Z,
true-to-false.
2021-04-23 22:41:00 -07:00
Mia
d992b8f5fa
Add more support for custom punishments (#8215) 2021-04-23 22:40:31 -07:00
Mia
7154920b2c
Support forcing modchat on ladder tour battles (#8214) 2021-04-23 22:40:09 -07:00
Kris Johnson
a1bdafbfe8
Add room sections (#8205) 2021-04-23 22:39:56 -07:00
Annika
909d4657f4 Trivia: Further clarify typing 2021-04-22 12:38:33 -07:00
Annika
df16828aaf Trivia: Fix typing for TriviaLadder 2021-04-22 12:10:13 -07:00
Mia
5586484622 Hosts: Fix crash 2021-04-22 11:41:16 -05:00
Mia
cec237ddff Remove extraneous 2021-04-22 08:35:36 -05:00
Mia
54e2c74630 Punishments: Fix markshared blacklist loading 2021-04-22 08:35:07 -05:00
Mia
a92c44cf52 Add missing global punishments to /pl 2021-04-22 08:15:50 -05:00
InAShellnut
9ab4c86fe3
Add Stadium 2, Nintendo Cup 1997, and Nintendo Cup 2000 (#8195)
An implementation of Nintendo Cup 1997, Nintendo Cup 2000, and Pokemon Stadium 2, for Pokemon Showdown. The only thing which has not been implemented was showing the exact health of both Pokemon in Pokemon Stadium 2, however implementing that requires changes to the showdown client. The Nintendo Cup 1997 code was done by Enigami, and the rest was by myself (Shellnuts).

This should fulfill the requirements asked by the following accepted suggestions:
https://www.smogon.com/forums/threads/please-add-a-pok%C3%A9mon-stadium-2-simulator-in-showdown.3679486/
https://www.smogon.com/forums/threads/add-nintendo-cup-1997-and-2000-as-challenge-only-formats.3653454/
2021-04-22 00:54:14 -07:00
Annika
0e21aebfab Trivia: Improve display for unranked games 2021-04-21 20:27:16 -07:00
Mia
9a1df4241d /permissions: Put single command permissions into a readmore
Requested change
2021-04-21 09:03:47 -05:00
Mia
e9b1bfe5f0 Chat-monitor: Fix /filter help
(CommandContext#run does not work for help commands that are arrays)
2021-04-21 08:30:19 -05:00
Mia
075c9e85c5 Usergroups: Properly include aliases in supportedRoomPermissions
This can be useful for things like /poll htmlcreate
2021-04-20 12:54:25 -05:00
Mia
34f26a2049 Chat: Fix alias duplication issue in AnnotatedChatHandler#aliases 2021-04-20 12:54:24 -05:00
Annika
5fde7faf07 Support translation of /privacypolicy 2021-04-19 11:31:45 -07:00
Annika
d5a4c7d9e2 CommandContext#globalModlog: Make user optional
Global modlog entries aren't always acting on a user, so making this parameter optional makes sense. I also changed them to default to null for consistency with CommandContext#modlog.
2021-04-19 08:53:17 -07:00
Annika
c87f63f4f0 /processes: Fix RAM usage display
`ps` reports RSS in kb, not bytes, making /processes off by a factor of 1024
2021-04-17 22:17:48 -07:00
Kris Johnson
f4fda49201 Update Battle Factory tests and command 2021-04-16 17:35:26 -06:00
Kris Johnson
e9e58c9f99 Dexsearch: Fix bug with mod parameters 2021-04-15 16:44:44 -06:00
Mia
5ed9517c84 Polls: Increase max question limit 2021-04-15 12:11:33 -05:00
Annika
9933c4e3f1 Fix lint errors 2021-04-15 09:03:33 -07:00
Mia
fdb1d4b762 Chat: Properly allow banwording new spoiler formatting 2021-04-15 10:33:41 -05:00
PartMan
54ebe56f20
Scavengers: Escape usernames in /scav status (#8201) 2021-04-15 15:46:43 +02:00
Kris Johnson
a0c3f105b2
Add /filter test (#8197) 2021-04-14 10:15:25 -07:00
Guangcong Luo
b8681ec288
Use a dispatch system for sockets (#8198)
Instead of using a mega-switch, instead use a dispatch system for the
sockets protocol.

A big advantage is that we don't need to be weird about variable
declarations using this method. We can use `const`s!
2021-04-14 07:18:59 -07:00
Distrib
334df4a744
Announcements: Fix /announcement htmlcreate (#8194) 2021-04-13 14:00:48 -07:00
Marty-D
84301ca382
Admin: Fix typo in processes 2021-04-12 17:36:43 -04:00
Marty-D
4eee39cd4a Revert "Fix suspect test unbans"
This reverts commit 6c3615a6f8.
2021-04-12 17:03:40 -04:00
Marty-D
6c3615a6f8 Fix suspect test unbans 2021-04-12 16:00:53 -04:00
Mia
1d494b6f2d RPS: Fix bugs with matchups and lower round cap 2021-04-12 10:40:31 -05:00
Leonard Craft III
d1e863b584
Help Tickets: Add cheating report type (#8190) 2021-04-10 01:14:04 -07:00
Guangcong Luo
5ece6ec784 Fix /formathelp, but properly this time 2021-04-09 08:09:55 -04:00
Christopher Monsanto
99fd7b8706
Chat: Implement Discord spoilers (#7948) 2021-04-09 01:39:47 -07:00
Annika L
583dceb693 Chat monitor: Weeklock for slurs in Pokemon nicknames 2021-04-08 22:18:38 -07:00
Mia
c43da18531
Admin: Add ram info to /processes (#8189) 2021-04-08 12:19:18 -07:00
Mia
e548579e9b
IPTools: Automatically add Tor IPs to the proxy list (#8188) 2021-04-08 11:34:09 -07:00
Guangcong Luo
cf5b325b62 Fix /formathelp 2021-04-08 13:34:36 -04:00
Mia
1db638815e Moderation: Allow locking hostfiltered users 2021-04-08 11:52:48 -05:00
Mia
6605e1e1b7 Autoresponder: Correctly format newlines in FAQs and improve style 2021-04-08 10:04:17 -05:00
Guangcong Luo
5233559183 Refactor Dex types 2021-04-08 07:08:56 -07:00
Guangcong Luo
13189fdb02
Update Dex API (#8181)
This is the change that renames:

- `Dex.getMove` -> `Dex.moves.get`
- `Dex.getAbility` -> `Dex.abilities.get`
- `Dex.getItem` -> `Dex.items.get`
- `Dex.getSpecies` -> `Dex.species.get`
- `Dex.getEffect` -> `Dex.conditions.get`
- `Dex.getNature` -> `Dex.natures.get`
- `Dex.getType` -> `Dex.types.get`
- `Dex.getFormat` -> `Dex.formats.get`

In addition, some other APIs have been updated:

- `getByID` methods have also been added to every other table.
- `Dex.moves.all()` now gets an array of all moves
  - Plus equivalent methods for `abilities`, `items`, `species`, `formats`, `natures`, `types`
  - Note: there's no `Dex.conditions.all()`
- new API: `Dex.stats` for naming/iterating stats
- `Dex.getEffectByID` -> `Dex.conditions.getByID`
- `Dex.getType` -> `Dex.types.get`
- `Dex.data.Formats` -> `Dex.data.Rulesets`
- `Dex.formats` -> now an array `Dex.formats.all()`
- `Dex.getRuleTable` -> `Dex.formats.getRuleTable`
- `Dex.validateFormat` -> `Dex.formats.validate`

Team functions have been split off into a new `sim/teams` package:

- `Dex.packTeam` -> `Teams.pack`
- `Dex.fastUnpackTeam` -> `Teams.unpack`
- `Dex.generateTeam` -> `Teams.generate`
- `Dex.stringifyTeam` -> `Teams.export`

`Teams.export` has also been rewritten to better match how it works in client.

This implements #8178
2021-04-08 03:00:37 -07:00
Quinton Lee
697cd715bb
Add feedback to /sendhtmlpage and /highlighthtmlpage (#8187) 2021-04-07 22:27:39 -07:00
Mia
becb403d17 Chat: Add <youtube> to the list of autoclose HTML tags 2021-04-07 18:37:54 -05:00
Mia
9849c63fef
Room-Battle: Fix timer interaction with choice-blocking moves (#8186)
Co-authored-by: Guangcong Luo <guangcongluo@gmail.com>
2021-04-07 11:26:55 -07:00
Annika
6806b8c3ac Chat monitor: Weeklock for slur evasion 2021-04-06 12:42:42 -07:00
Mia
7ea8cfa668 TOTD: Fix keys[0] not being the nom 2021-04-06 11:58:02 -05:00
Mia
708d81efde OTD: Fix double timestamp display 2021-04-06 11:50:28 -05:00
Mia
4ec9db3489 TOTD: Fix timestamp display and ensure timestamp always exists 2021-04-05 16:01:48 -05:00
Mia
4e6dce1395 Moderation: Properly allow extending namelocks 2021-04-05 14:21:27 -05:00
Mia
c506b2118c Hangman: Fix caps sensitivity in /hangman untag 2021-04-05 11:25:28 -05:00
Mia
783d581908 /invitebattle: Update form if target is blocking challenges 2021-04-04 14:19:55 -05:00
Mia
07bd07af4d Core: Properly apply /bch to /invitebattle 2021-04-03 21:26:43 -05:00
Annika
f43795880c Repeats: Ensure repeat IDs aren't empty strings 2021-04-03 18:04:52 -07:00
Guangcong Luo
0f127597b5 Shorten unrated matchmaking timer 2021-04-02 23:10:08 -07:00
Guangcong Luo
47da1d61c8 Use the invite form for /importinputlog 2021-04-02 23:00:30 -07:00
Guangcong Luo
368202605f Add Multi Random Battles 2021-04-02 23:00:30 -07:00
Guangcong Luo
694e79eea8 Add form for inviting players
(This makes it so you don't need to use console commands)
2021-04-02 23:00:30 -07:00
Guangcong Luo
8f001cc2ae Support challenges in 4-player games 2021-04-02 23:00:30 -07:00
Mia
46dc3409b6
Helptickets: Notify users of /faq proxy when opening an IP-appeal ticket (#8132) 2021-04-02 22:29:14 -04:00
Ben Baral
f3dc79f949
Update required version of Node.js (#8163) 2021-04-02 19:17:01 -07:00
siteworks
d887c00795
Mafia: Change lynches to vote in the votebox (#8149) 2021-04-02 18:52:13 -04:00
Distrib
9ba6a2e802
Tournaments: Allow regular users to check tour rules (#8161)
PR for https://www.smogon.com/forums/threads/allow-voiceds-and-regulars-to-check-tour-rules.3681028/
2021-04-02 15:38:25 -07:00
Annika
3ecff41881 /hotpatch: Remove non-alphanumeric characters
Today I accidentally typed a space after /hotpatch formats, and I don't see why it should reject that.
2021-04-02 14:22:03 -07:00
Mia
294e3a4a57
Chat monitor: Refactor to handle private filters better (#8112) 2021-04-01 15:35:37 -07:00
Guangcong Luo
c6edf9389f Minor refactor to RPS code 2021-04-01 15:07:27 -07:00