Commit graph

454 commits

Author SHA1 Message Date
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 08682d2448 Fix circular dependency in Helper+log
Fixes #2568
2018-06-19 10:09:38 +03:00
Pavel Djundik 472d618033 Remove log from global 2018-06-15 23:31:06 +03:00
Jay2k1 254e39df18
remove unnecessary comment 2018-06-15 13:42:47 +02:00
Jay2k1 e11f97a2bb Improve formatting of text logs 2018-06-13 22:45:18 +02:00
Jérémie Astori 32ccfd50af
Merge pull request #2543 from thelounge/xpaw/link-title
Fix multiple <title> tags being concatenated
2018-06-11 09:15:37 -04:00
Pavel Djundik ea00587c00 Fix sqlite history not loading when maxHistory is -1
Fixes #2545
2018-06-11 14:08:05 +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 730c266ea8
Fix "/away " not setting you away 2018-06-07 19:23:51 +03:00
Pavel Djundik c0d712c53d Remove ability to change date format and timezone 2018-06-05 12:03:06 +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 0de90daa64
Merge pull request #2366 from thelounge/xpaw/refactor-userlog
Refactor userLog to be the same as sqlite logger
2018-05-26 23:53:17 +03:00
Pavel Djundik 5cfec76d3a Refactor userLog to be the same as sqlite logger
Fixes #1392
2018-05-23 16:56:18 +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 d22f0344ea
Merge pull request #2391 from thelounge/xpaw/no-sqlite-crash
Gracefully fail if sqlite3 module fails to load
2018-05-13 17:04:22 +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 0ad9def514 Gracefully fail if sqlite3 module fails to load 2018-04-26 12:11:38 +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 80c6e48b98
Merge pull request #2287 from thelounge/xpaw/accept
Send `Accept` header when fetching links
2018-03-24 16:58:00 +02:00
Pavel Djundik ca96d09a23 Send Accept header
Closes #2277
2018-03-23 20:17:03 +02:00
Pavel Djundik f82edcd7e7 quote-props: consistent-as-needed 2018-03-23 16:15:59 +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 0af3f10997
Do not try to write anything to sqlite after its closed 2018-03-14 08:45:52 +02: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 a15e922e27 Close sqlite database when user quits
Fixes #2178
2018-03-11 00:21:47 +02: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 dfc4cad712 Add test coverage for sqlite plugin 2018-03-08 20:23:29 +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
Jérémie Astori 9107f9e351
Merge pull request #2145 from thelounge/xpaw/chalk
Replace colors.js with chalk
2018-03-03 02:42:04 -05:00
Pavel Djundik fee81e78e1 Replace colors.js with chalk 2018-03-02 20:28:54 +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
Jérémie Astori 7a6b560303
Merge pull request #2098 from keegan/master
Enable logging for LDAP users
2018-02-24 12:54:48 -05:00
Keegan 4fe7dc0808 Enable logging for LDAP users 2018-02-23 20:07:08 -05:00
Pavel Djundik 7f82b440a2
Fix log.warn in ldap 2018-02-23 17:52:16 +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 3ccdee6f00
Merge pull request #1927 from thelounge/astorije/fix-ctcp
Fix CTCP commands always sent upper-case
2018-02-19 19:06:08 +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
Jérémie Astori 4196e627f9 Fix CTCP commands always sent upper-case
This is a Node v6+ only fix.
`irc-framework` upper-cases the first argument, and we were sending everything as a string in first argument. This correctly splits.
2018-02-19 18:43:52 +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 72e5e9f237
Merge pull request #2055 from thelounge/xpaw/fix-2054
Fix border after nickname not taking full height
2018-02-13 16:22:43 +02:00
Pavel Djundik 13e81e5a41 Fix themes not loading
Broken by e4701be708
2018-02-13 13:57:13 +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
Al McKinlay 865e5bb41b
Merge pull request #1933 from RockyTV/rockytv
Show channel name on channel-related errors
2018-02-13 10:03:20 +00:00
Pavel Djundik 4639a2528d
Merge pull request #2021 from thelounge/xpaw/ldapjs-no-dtrace
Use forked ldapjs to remove dtrace
2018-02-13 11:58:25 +02:00
Jérémie Astori 2c570fa9ef
Load packages from package.json, fix loading thelounge metadata from the wrong file, add tests 2018-02-13 01:06:31 -05:00
Jérémie Astori b5d96d215f
Ensure packages loaded are directories 2018-02-13 01:06:30 -05:00
Alexandre Oliveira c53015c1af Show channel name on channel-related errors
Fixes #1207
2018-02-12 15:22:31 -02:00
Pavel Djundik c4f6701d65 Use forked ldapjs to remove dtrace
Fixes #1756
2018-02-06 13:21:59 +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 33dbc80dbc Fix #1991: Wait for server response when parting channels 2018-01-31 10:04:54 +02:00
Al McKinlay 5cf24b80e6 Save query channels in user.json 2018-01-30 17:14:51 +00:00
Jérémie Astori c49239b4f1
Fix themes not being found in theme selector dropdown 2018-01-13 13:45:30 -05:00
Al McKinlay 3510094665 Allow custom css from plugins 2018-01-05 17:40:47 +00: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
Jérémie Astori 238e894377
Improve the version checking part of the changelog feature
- There is no client caching of the changelog/version anymore. Instead, server returns the expiration date of its cache, and that is used by the client as well.
- There is now a "Check now" button on the client that appears when data is stale. This means that info is fetched only once and never refreshed (it was refreshed every hour before) unless the user explicitly wants to check latest version, which in turn is as stale as server info is, i.e. 15 minutes max.
- Button style is shared with the "Join a channel" feature, `.btn-small` (not `.btn-sm` to be explicit that this is not a Bootstrap thing).
- Version checker content is now centralized in the `version_checker` template, instead of being partially in the checker template, partially in the Help template,  and partially in the code.
- A "Try again" button lets user attempt to fetch info instead of forcing them to reload the page.
- Use Flexbox to display a nicer version checker: icon is slightly bigger, and button is always aligned on the right.
- Changelog logic has been removed from `lounge.js` and moved into the component file.
- Changelog template is only passed what it needs instead of everything the server gives us.
- Public version now displays version checker, since server is caching things.
- Cleaner code overall.
2017-12-25 17:44:53 -05:00