Commit graph

345 commits

Author SHA1 Message Date
Pavel Djundik f8bb8f9d6f Fix displaying away message multiple times in query windows 2018-08-26 23:14:09 +03:00
Alexandre Oliveira 619b054b95 Add X-Purpose header to link prefetcher 2018-08-07 21:10:03 -03:00
Alexandre Oliveira 671dad4ed6 Stop handling CTCP messages if the sender/target is ignored 2018-07-01 15:48:37 -03:00
Jérémie Astori 10642b8f5a
Merge pull request #2576 from thelounge/xpaw/query-away-notify
Also send away notices to query windows
2018-06-21 21:01:58 -04:00
Pavel Djundik 5091939aa4 Add support for WHOWAS
Fixes #2050

Co-Authored-By: jay2k1 <jay2k1@users.noreply.github.com>
2018-06-20 21:03:00 +03:00
Pavel Djundik 62e2cbe66b Also send away notices to query windows 2018-06-20 19:45:27 +03:00
Pavel Djundik b8d60ddaa6 Correctly handle away and back events
Also support for self messages

Co-Authored-By: jay2k1 <jay2k1@users.noreply.github.com>
2018-06-20 19:32:19 +03:00
Pavel Djundik a9413dc277 Update for changes in irc-framework 2018-06-20 18:30:32 +03:00
Pavel Djundik 472d618033 Remove log from global 2018-06-15 23:31:06 +03:00
Pavel Djundik 0d48c596c8 Fix multiple <title> tags being concatenated 2018-06-11 11:32:32 +03:00
Pavel Djundik 4e2523060b De-duplicate link fetching to one request at once 2018-06-11 10:38:03 +03:00
Pavel Djundik cd55e7bb2a
Merge pull request #2510 from Jay2k1/ctcp-unread-counter
Make CTCP requests/responses increase unread counter
2018-06-04 10:51:53 +03:00
Jay2k1 5d748a59cc
Make CTCP requests/responses increase unread counter 2018-06-04 00:47:30 +02:00
Pavel Djundik cd1763cbf8
Merge pull request #2504 from thelounge/xpaw/fix-2438
If a preview fails to load, remove the link from msg object
2018-06-03 20:39:14 +03:00
Jérémie Astori b336e4f202
Merge pull request #2505 from thelounge/xpaw/fix-2324
Don't mark your nick changes as self in each channel
2018-06-03 13:37:38 -04:00
Pavel Djundik a663993d0b If a preview fails to load, remove the link from msg object
Fixes #2438
2018-06-03 12:25:01 +03:00
Alexandre Oliveira 468427bfdb Add support for /ignore, /unignore and /ignorelist commands 2018-05-28 16:46:12 -03:00
Pavel Djundik d4fa6bbcb0 Use WHATWG URL parser in link prefetcher 2018-05-23 16:31:02 +03:00
Pavel Djundik 629ae8bfa4 Fix protocol-aware urls, add better link validation in previews 2018-05-23 16:31:02 +03:00
Pavel Djundik 9d5f213289 Don't mark your nick changes as self in each channel 2018-05-15 10:00:16 +03:00
Pavel Djundik bf8a16b7fe Use per-client channel and message ids
Fixes #2341
2018-04-27 13:16:23 +03:00
Pavel Djundik e136edb6ac Remove network ids and use uuids everywhere 2018-04-26 12:37:28 +03:00
Pavel Djundik 2bea5f67b9 Use default nick set in config for fallback 2018-04-12 10:39:03 +03:00
Pavel Djundik 99386510d8 Replace client ids with guids 2018-04-10 16:15:44 +03:00
Jérémie Astori 5738642d44
Fix/Improve some nick fallbacks
- Rename a forgotten `lounge-user`
- Generate nick fallbacks when already in use by appending 0-9 instead of 10-98 (?!).
- Generate nick fallbacks when invalid similarly to our config default instead of random string. This is to make it less confusing when fallback gets used.
2018-03-26 03:00:46 -04:00
Pavel Djundik 1ddc617b79 Fix lint issue 2018-03-24 22:53:02 +02:00
Pavel Djundik ca96d09a23 Send Accept header
Closes #2277
2018-03-23 20:17:03 +02:00
Pavel Djundik df04d697b1 Send hexip in ident responses 2018-03-15 15:30:37 +02:00
Jérémie Astori 00bca229f0
Enforce object literal shorthand syntax with ESLint 2018-03-15 00:22:09 -04:00
Pavel Djundik 351a203acd Fix some URLs not being sent as-is to the client 2018-03-13 22:08:19 +02:00
Al McKinlay 5ce67ba093 Insert channel/user into channel list at alphabetically sorted point, not just the end
Don't sort queries/users after special chans


Set all users in tests to be of type query


Add test for not inserting infront of lobby


Break after finding the index, otherwise it always adds it to the end


Add checking for lobby in first test


Fix off-by-one error on the frontend


Fix utterly idiotic issue adding a duplicate of the channel we are on rather than the new user when we query


Check that we always insert before first special chan
2018-03-12 12:42:59 +00:00
Pavel Djundik 167101c3aa Do not include colon in push message for actions 2018-03-09 11:06:19 +02:00
Pavel Djundik 5aa9d7e1dc
Merge pull request #1839 from thelounge/sqlite
Add sqlite logging and reloading messages
2018-03-09 09:06:25 +02:00
Pavel Djundik 941849eaa8 Add message indexing 2018-03-08 20:23:29 +02:00
Pavel Djundik f475cc39ef Normalize unicode URLs in link prefetcher
Fixes #1644
2018-03-08 19:43:39 +02:00
Pavel Djundik 58d9490c2a Try to find og:video and og:audio on html pages 2018-03-07 12:53:56 +02:00
Pavel Djundik 6c6168e80a
Merge pull request #2164 from thelounge/xpaw/remove-maxlisteners
Remove setMaxListeners
2018-03-07 09:19:04 +02:00
Pavel Djundik 6fa48d3acf Remove setMaxListeners
Reverts 2cee0ea6ef as this no longer causes the EventEmitter warning due to `maxRedirects` being set to 5 on our end.

Ref: https://github.com/request/request/issues/311#issuecomment-153507416
2018-03-07 09:13:06 +02:00
Pavel Djundik 827310a645 Apply ECDH curve fix only on affected version
Fixes #2162
2018-03-07 08:44:22 +02:00
Pavel Djundik 501730f2ca Fix default ecdh curve for better compatibility 2018-03-06 15:11:42 +02:00
Pavel Djundik 7a0a1b86f6 Set channel state to joined when channel already exists
Fixes #2141
Fixes #2103
2018-03-02 12:29:40 +02:00
Pavel Djundik 59ec0348b6
Merge pull request #1930 from thelounge/astorije/ctcp-request
Let user know someone is making a CTCP request against their nick
2018-02-27 13:15:27 +02:00
Pavel Djundik 1b97c1031d Log socket close error if any 2018-02-26 14:20:23 +02:00
Pavel Djundik 3da870be8c Send empty banlist error to lobby for channels user is not in 2018-02-22 11:01:49 +02:00
Jérémie Astori fa4331bcd9
Limit CTCP requests to prevent easy spamming 2018-02-22 00:42:33 -05:00
Jérémie Astori e03694b49c
Let user know someone is making a CTCP request against their nick 2018-02-22 00:42:33 -05:00
Pavel Djundik 59ec07be87
Update all links to thelounge repository 2018-02-21 22:47:52 -05:00
William Boman acb6179b30 relay client's preferred language in link preview requests
Closes #1440.
2018-02-21 10:35:33 +01:00
Pavel Djundik 37c61e2413 Report server errors when preview fetch fails 2018-02-20 11:33:42 +02:00
Pavel Djundik c733e72e7a Auto-fix code for padding-line-between-statements rule 2018-02-20 09:28:04 +02:00
Pavel Djundik 7330dc9553
Rewrite ctcp handling 2018-02-19 14:43:58 -05:00
Pavel Djundik c97352905d
Merge pull request #1962 from thelounge/xpaw/no-var
Enable no-var rule
2018-02-19 20:12:31 +02:00
Pavel Djundik 8886459be9
Merge pull request #2049 from thelounge/xpaw/ui-network-status
Sync network status and security to client UI
2018-02-19 19:57:36 +02:00
Pavel Djundik a3e448acf5 Enable no-var rule
Fixes #1961
2018-02-19 19:49:39 +02:00
Pavel Djundik 742929280d
Merge pull request #1919 from thelounge/yamanickill/image-size-error
Show error if image is greater than max prefetch size
2018-02-19 18:49:18 +02:00
Pavel Djundik b82ceb162b
Merge pull request #2059 from thelounge/xpaw/motd
Render MOTD with a single message
2018-02-19 18:42:16 +02:00
Jérémie Astori 416f45d1e3 Use some ES6/Node v4-only syntax when possible 2018-02-19 18:30:00 +02:00
Pavel Djundik b57830b859 Sync network status and security to client UI
Co-Authored-By: Jérémie Astori <astorije@users.noreply.github.com>
2018-02-19 13:12:01 +02:00
Jérémie Astori c8418a638d
Merge pull request #2058 from thelounge/xpaw/channel-state
Track channel state to allow removing channels user is not in
2018-02-17 19:27:09 -05:00
Pavel Djundik d1e5a8f492 Render MOTD with a single message 2018-02-14 11:00:46 +02:00
Pavel Djundik fa993c29d5 Trim MOTD to avoid empty line at the end 2018-02-13 12:38:33 +02:00
Pavel Djundik 7e704b2d73 Track channel state to allow removing channels user is not in 2018-02-13 12:30:26 +02:00
Alexandre Oliveira c53015c1af Show channel name on channel-related errors
Fixes #1207
2018-02-12 15:22:31 -02:00
Jérémie Astori 91e3ca88bb
UI for "Image too large" errors 2018-02-01 21:14:37 -05:00
Al McKinlay 335bd803af
Show error if image is greater than max prefetch size 2018-02-01 21:09:45 -05:00
Pavel Djundik 6675ced196 Store images with correct file extension 2018-01-03 13:33:52 +02:00
Pavel Djundik 349136f172 Do not match nicknames incorrectly as part of a bigger word
Fixes #1776
Fixes #1885
2017-12-27 20:44:59 +02:00
Pavel Djundik dc8c10f461 Correctly fix from field in messages
This should have been in #1859
2017-12-20 13:45:17 +02:00
Pavel Djundik ce5d18c4fa Fix possible issues with from in messages 2017-12-19 13:45:33 +02:00
Max Leiter d4ad60c11d Support video file previews 2017-12-13 17:52:07 -08:00
Max Leiter ad1114ccfe Support audio file previews 2017-12-12 11:29:13 -08:00
Pavel Djundik 5e48e04623 Show notices and errors inline 2017-12-06 17:58:52 +02:00
Pavel Djundik 2d0ddfb2e8
Merge pull request #1778 from thelounge/xpaw/lazy-init
Heavily improve performance of "init" event
2017-12-05 12:03:01 +02:00
Pavel Djundik b5d39b96b9
Handle CHGHOST cap 2017-12-04 23:33:48 -05:00
Pavel Djundik 5fc70397a9 Make sure all joins send filtered clone 2017-12-03 16:31:37 +02:00
Pavel Djundik 104e270882
Merge pull request #1771 from thelounge/astorije/fix-user-in-msg
Clone instances of `User` in `Msg` to avoid unintentional mutations
2017-11-30 11:29:23 +02:00
Jérémie Astori 4ec10b922a
Clone instances of User in Msg to avoid unintentional mutations 2017-11-30 00:41:19 -05:00
Jérémie Astori e60bbd9548
Fix nick changes wrongly reported 2017-11-29 18:44:33 -05:00
Jérémie Astori 7daf566025
Merge pull request #1758 from MaxLeiter/improve-regex
update nick regex for linking nicks in text
2017-11-27 18:30:37 -05:00
Max Leiter f98deaba70 update nick regex for linking nicks in text 2017-11-27 13:58:10 -08:00
Jérémie Astori b53f1719eb
Merge pull request #1749 from thelounge/astorije/avoid-escape-quotes
Avoid escaping quotes whenever possible
2017-11-27 12:57:55 -05:00
Jérémie Astori 39e99fcd29
Merge pull request #1753 from thelounge/xpaw/webp
Detect image/webp as an image
2017-11-27 12:55:27 -05:00
Max Leiter 3d31fa4686 Link nicks mentioned in messages 2017-11-27 09:10:56 -08:00
Pavel Djundik 4e45820235
Detect image/webp as an image 2017-11-27 15:50:35 +02:00
Jérémie Astori 287c3a8223
Avoid escaping quotes whenever possible
Our `.eslintrc.yml` configuration file already allows for avoiding escape (see [ESLint doc for `avoidEscape`](https://eslint.org/docs/rules/quotes#avoidescape)) so we might as well use it. We already use this in a few places I believe.
2017-11-26 17:34:28 -05:00
Pavel Djundik 727021be68 Call callback on fetch error 2017-11-25 20:59:12 +02:00
Erik Vosseberg f40edc7dc2
Include all available whois info 2017-11-21 00:27:24 -05:00
Pavel Djundik 055bd5dca5
Merge pull request #1580 from thelounge/xpaw/mobile-active-notifications
Use service worker to display notifications if available
2017-11-19 18:40:45 +02:00
Pavel Djundik 57289396da
Not all topic callbacks include nick 2017-11-19 18:30:10 +02:00
Pavel Djundik 0402554563 Move cleanIrcMessage to a separate file 2017-11-19 18:19:52 +02:00
Pavel Djundik 0f75c1a138 Change users array to be a Map 2017-11-19 11:35:15 +02:00
Pavel Djundik 74dcc52657
Refactor how user object is sent to the client 2017-11-19 02:46:45 -05:00
Jérémie Astori 1dc92d8934
Enforce dangling commas with ESLint
¯\_(ツ)_/¯
2017-11-15 01:35:15 -05:00
Pavel Djundik feb7d9d4bb Fix #1692 when kicker is server 2017-11-08 23:10:17 +02:00
Pavel Djundik 7cfd8d90c1 Merge pull request #1554 from thelounge/astorije/rm-event-stream
Remove event-stream dependency in favor of plain Buffers
2017-09-26 11:00:35 +03:00
Pavel Djundik 08edc434ca Merge pull request #1567 from dgw/preview-length-abort
Abort image prefetch if Content-Length exceeds limit
2017-09-25 23:11:20 +03:00
dgw 09cd9ce33a Abort img prefetch if Content-Length exceeds limit
If the Content-Length header is present in the response when an image
is prefetched, The Lounge can avoid wasting bandwidth (both for itself
and for the image's host) if the value of the header exceeds the
prefetch size limit by aborting the request immediately.
2017-09-25 05:31:21 -05:00
Jérémie Astori 75b927b4a3
Remove event-stream dependency in favor of plain Buffers 2017-09-23 04:08:17 -04:00
Pavel Djundik 6cfe60e4d9 Group push notifications per target 2017-09-19 12:01:50 +03:00
Jérémie Astori 90cb79ac91 Merge pull request #845 from MaxLeiter/MaxLeiter/away-notify
Use away-notify to show updates on users away state
2017-09-17 14:45:27 -04:00