Commit graph

588 commits

Author SHA1 Message Date
Pavel Djundik e9cbea9569 Update link prefetch stream handling
Fixes #3564
2019-12-09 21:05:33 +02:00
Pavel Djundik fc1c9568e2 Rename helpers folder, move some vue filters 2019-11-25 20:12:58 +02:00
Pavel Djundik 874385814d
Merge pull request #3502 from thelounge/webpack-hmr
Add webpack hot module reloading for development
2019-11-08 17:26:10 +02:00
Tim Miller-Williams 19d8178606 Add webpack hot module reloading for development
Co-Authored-By: Tim Miller-Williams <timmw@users.noreply.github.com>
2019-11-08 15:02:44 +02:00
Raqbit 95cc9a47fb Add file size to link preview 2019-11-07 16:58:28 +01:00
Pavel Djundik 8a224809dd
Merge pull request #3498 from MiniDigger/feature/package-versions
Print package versions on startup
2019-11-07 11:32:43 +02:00
MiniDigger 6f8364b1dd Print package versions on startup 2019-11-06 18:02:28 +01:00
Pavel Djundik 14c2cf6b0b Remove away message from channels
Fixes #3026
2019-11-02 16:53:41 +02:00
Pavel Djundik 959ec5b598
Merge pull request #3471 from MiniDigger/feature/plugin-messages
Add message type for plugins
2019-11-01 16:41:41 +02:00
Pavel Djundik 6c57339668 Allow configure base url for uploads
Fixes #3484
2019-10-31 13:21:22 +02:00
MiniDigger dbec8330ce Pass package info around so it can be used as identifier 2019-10-22 20:03:54 +02:00
MiniDigger 19d69ba4c3 Add message type for plugins 2019-10-22 18:44:05 +02:00
Pavel Djundik 8aa8768dcc Do not print no packages warning when opening help on client 2019-10-16 17:07:25 +03:00
Al McKinlay f163e20a93 Add public files for plugins 2019-10-02 10:33:08 +01:00
Pavel Djundik b96e5cc042 Print error and stacktrace when package fails to load 2019-09-17 19:57:21 +03:00
Pavel Djundik 600115b8d1 Implement keep nick 2019-09-16 17:12:05 +03:00
Pavel Djundik cee3a50ddc Move back to ldapjs dependency
Fixes #3381
2019-09-15 22:42:27 +03:00
Pavel Djundik 5a94727d79 Bump minimum node version to v10 2019-09-04 22:50:25 +03:00
Pavel Djundik 16d070c19e Update error messages for uploads 2019-08-25 20:14:34 +03:00
Pavel Djundik 858f8425fd Make /raw actually write to network as-is 2019-08-05 20:16:39 +03:00
Pavel Djundik 72bebd8681
Merge pull request #3326 from thelounge/xpaw/theme-color
Allow themes to change theme-color
2019-08-03 22:28:20 +03:00
Pavel Djundik ad984fa377 Parse target group for sent messages when echo-message is not enabled 2019-08-01 00:16:00 +03:00
Pavel Djundik efa0aeb2c6 Allow themes to change theme-color 2019-07-22 19:50:04 +03:00
Alistair McKinlay 20816d509d Add check for outdated packages, and show on the help screen. 2019-07-19 13:33:09 +01:00
Alistair McKinlay 133e7bf710 Format js/vue with prettier 2019-07-19 11:27:40 +01:00
Pavel Djundik 7e5c2672b2
Merge pull request #3307 from thelounge/xpaw/browser-object
Store ip and language in a separate object in user file
2019-07-19 13:11:20 +03:00
Pavel Djundik e04bfe39bf Improve raw messages 2019-07-17 10:34:23 +03:00
Pavel Djundik 54a4085b68 Store ip and language in a separate object in user file 2019-07-16 13:00:29 +03:00
Alistair McKinlay 1fcdc51861 Change the api for calling plugin commands 2019-07-05 15:04:32 +01:00
Pavel Djundik 85acfdcf92
Merge pull request #3280 from thelounge/xpaw/sqlite-msg
Change unable to load sqlite3 message
2019-07-05 11:52:58 +03:00
Pavel Djundik a56e6de51f Change unable to load sqlite3 message 2019-07-05 10:32:14 +03:00
Pavel Djundik 95a3ec42c2 Add a message about experimental API 2019-07-05 10:26:22 +03:00
Pavel Djundik 4765f06940
Make sure unhandled command has params 2019-07-03 11:20:29 +03:00
Alistair McKinlay 4cbe72f635 Add support for command plugins 2019-07-02 17:02:05 +01:00
Pavel Djundik 1425130436 Update eslint and eslint-plugin-vue, fix rules 2019-06-25 11:51:47 +03:00
Pavel Djundik cdcd7df425
Remove bogus prefetch limit 2019-05-25 15:40:55 +03:00
Pavel Djundik fe68f2a1ee Replace request with got 2019-05-13 10:30:43 +03:00
Pavel Djundik 21cb4dca1e
Merge pull request #2761 from thelounge/mcinkay/plugins/server-options
Add server config api
2019-05-13 10:23:05 +03:00
Alistair McKinlay 4c35b80b88 Move query to msg, fix #3049 2019-05-13 08:10:08 +01:00
Al McKinlay af976c52c3 Add server config api 2019-05-13 07:44:41 +01:00
Pavel Djundik 830fdda91a Implement invite list 2019-04-15 14:38:11 +03:00
Pavel Djundik 88df9148dc
Merge pull request #3019 from Zarthus/ctcp_notify
plugin/ctcp: Let the user know a CTCP request was sent
2019-03-25 12:39:28 +02:00
Pavel Djundik f84e4199e9 Re-implement file uploads with old-school forms
Co-Authored-By: Richard Lewis <richrd@users.noreply.github.com>
2019-03-18 10:28:18 +02:00
Jérémie Astori f7ebff0b67
Merge pull request #3109 from thelounge/xpaw/chan-mode-is
Display current channel mode on /mode command
2019-03-16 21:48:22 -04:00
Kramer Campbell cff4f1ce2c Add support for /kill
Fixes #3122
2019-03-16 12:57:24 -07:00
Pavel Djundik 71332f59d9 Display current channel mode on /mode command
Fixes #885
2019-03-07 12:57:31 +02:00
Pavel Djundik 4d9c01deea Put channel errors and unhandled numerics to relevant channel if it exists 2019-02-22 14:04:33 +02:00
Jos Ahrens 0fbf301e0f
plugin/ctcp: Let the user know a CTCP request was sent
Because responding to a CTCP request is completely optional,
sometimes thelounge will just do absolutely nothing. (the request
was received, but the client did not respond to it)

This alleviates the problem by always notifying the user that
*something* was sent.
2019-02-16 21:01:32 +00:00
Pavel Djundik b066dc301e Move custom highlights to the server 2019-02-13 16:44:15 +02:00
Pavel Djundik a4ec875c87 Check that CHANTYPES and PREFIX are set, and set defaults 2019-02-12 12:49:06 +02:00
Pavel Djundik 7c8441a93b Clear user lists on all channels when disconnected from network 2019-02-12 12:48:45 +02:00
Pavel Djundik 853f67ab40 Synchornize channel state to the client 2019-02-12 12:48:44 +02:00
Pavel Djundik f2cbd1efed Pass PREFIX and CHANTYPES to parser 2019-02-12 12:48:44 +02:00
Pavel Djundik 771739cf94 Port ignore list to Vue 2019-02-12 12:48:42 +02:00
Pavel Djundik 595915fefd Render link previews in Vue 2019-02-12 12:48:42 +02:00
Pavel Djundik 5f5b5fef3d Enable .js linter 2019-02-12 12:48:42 +02:00
Pavel Djundik db803a8548 Port channel list to Vue 2019-02-12 12:48:42 +02:00
Pavel Djundik 121dd35c3b Port ban lists to Vue 2019-02-12 12:48:42 +02:00
Pavel Djundik 3300276c27 Delete some files and undo server change 2019-02-12 12:48:41 +02:00
Pavel Djundik 7e332b817d Channel list rendering with Vue
Co-Authored-By: Tim Miller-Williams <timmw@users.noreply.github.com>
2019-02-12 12:48:41 +02:00
Pavel Djundik 211ebbfe5f Allow forcing /disconnect to stop reconnection timer from running 2019-02-06 12:10:07 +02:00
creesch 39071aff50 Invites should not automatically highlight you. 2019-02-05 13:06:00 +01:00
Pavel Djundik 3d82378cbd Fix incorrect 404 error for files with unknown file type 2019-01-31 10:12:50 +02:00
Jérémie Astori 3e623e8b77
Merge pull request #2939 from thelounge/renovate/file-type-10.x
Update dependency file-type to v10.7.0
2019-01-27 18:23:20 -05:00
Pavel Djundik 02a343624e Always emit part message (required for logging)
Fixes #2988
2019-01-21 18:07:00 +02:00
Pavel Djundik 221b7145f1
Fix incorrect use of fs.stat 2019-01-19 12:00:09 +02:00
Pavel Djundik ab083f9eb6 Fix wav mime type in uploader 2018-12-19 17:20:47 +02:00
Pavel Djundik 7da036bf34 Add extra logging in ldap 2018-12-12 22:33:30 +02:00
Pavel Djundik dd61e6e09a Use fileType.minimumBytes 2018-11-13 13:30:02 +02:00
Pavel Djundik 8d5d9617ae Hard limit nicks to 100 characters, add maxlength on connect inputs 2018-10-20 14:10:26 +03:00
Pavel Djundik 1d8a0e639f Encode uploaded file slugs 2018-10-14 00:23:41 +03:00
Pavel Djundik 88ce0cee99 Use Date.toISOString for logging 2018-09-23 21:57:40 +03:00
Pavel Djundik 2162f4a55a Fix issues in regards to ignoring your own nickname 2018-09-22 13:27:03 +03:00
Pavel Djundik b538360c5e Limit network name length and replace spaces in log folders 2018-09-09 13:09:30 +03:00
Pavel Djundik bec241e7fa Move correct file after upload, put file extension in slug 2018-09-05 10:08:46 +03:00
Pavel Djundik 8fa8526698 Only emit upload url to the client that uploaded the file
Fixes #2747
2018-09-04 12:08:30 +03:00
Pavel Djundik ce212e001c Add file uploading support
Co-Authored-By: Max Leiter <hello@maxleiter.com>
Co-Authored-By: Jérémie Astori <astorije@users.noreply.github.com>
2018-09-03 10:30:05 +03:00
Jérémie Astori 0569ee2269
Merge pull request #2721 from thelounge/xpaw/fix-query-away-spam
Fix displaying away message multiple times in query windows
2018-08-26 21:06:36 -04:00
Pavel Djundik f8bb8f9d6f Fix displaying away message multiple times in query windows 2018-08-26 23:14:09 +03:00
Pavel Djundik 9bcec3bea5 Remember disconnected networks between server restarts 2018-08-25 12:11:59 +03:00
Alexandre Oliveira 619b054b95 Add X-Purpose header to link prefetcher 2018-08-07 21:10:03 -03:00
Pavel Djundik e8c02d5ad2
Merge pull request #2669 from MaxLeiter/humandate-refactor
refactor getHumanDate() to accept a timestamp; avoids possible test failure; more accurate log times
2018-07-22 11:39:11 +03:00
Max Leiter 9bee3eca5a refactor getHumanDate() to accept a timestamp; fixes test 2018-07-22 00:27:49 -07:00
Pavel Djundik 265876786c Don't put .log in text log folder name 2018-07-22 00:39:22 +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 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