Commit Graph

250 Commits

Author SHA1 Message Date
Pavel Djundik
426893077f Add prefix to channels from connect window
Fixes #2327
2018-05-02 13:08:00 +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
682d3070e9 Move IRC object and validation to network model 2018-04-12 10:37:45 +03:00
Pavel Djundik
99386510d8 Replace client ids with guids 2018-04-10 16:15:44 +03:00
dgw
da23d42692 Prevent "undefined" OS version in session list 2018-04-08 05:44:55 -05: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
Jérémie Astori
00bca229f0
Enforce object literal shorthand syntax with ESLint 2018-03-15 00:22:09 -04:00
Pavel Djundik
a15e922e27 Close sqlite database when user quits
Fixes #2178
2018-03-11 00:21:47 +02:00
Pavel Djundik
5146686814 Only request znc.in/playback if sqlite logging is enabled 2018-03-10 13:25:56 +02:00
Pavel Djundik
b5b0ebe00d
Do not crash when awayMessage is set but IRC connection does not 2018-03-09 12:33:24 +02:00
Pavel Djundik
8f59ca1bec Add support for znc.in/playback
Fixes #1768
2018-03-08 20:23:29 +02:00
Pavel Djundik
941849eaa8 Add message indexing 2018-03-08 20:23:29 +02:00
Pavel Djundik
731b29c059 Generate uuid per network 2018-03-08 20:23:29 +02:00
Pavel Djundik
9188943261 Fix rejectUnauthorized 2018-03-06 11:42:06 +02:00
Pavel Djundik
eab823ba66 Allow setting rejectUnauthorized per network 2018-03-04 12:45:48 +02:00
Pavel Djundik
fee81e78e1 Replace colors.js with chalk 2018-03-02 20:28:54 +02:00
Pavel Djundik
b10962f13f Remove isRegistered 2018-02-20 13:24:46 +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
a3e448acf5 Enable no-var rule
Fixes #1961
2018-02-19 19:49:39 +02:00
Pavel Djundik
0d068f34a8
Merge pull request #1966 from thelounge/xpaw/no-session-convert
Remove session token hash conversion
2018-02-19 19:33:42 +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
f92aeceb22
Fix bind not being passed to irc-framework 2018-02-18 13:07:24 +02:00
Pavel Djundik
aee1ec2739 Fix crash when hostname is changed in lockNetwork mode
Fixes #2040
2018-02-07 12:03:25 +02:00
Al McKinlay
5cf24b80e6 Save query channels in user.json 2018-01-30 17:14:51 +00:00
Pavel Djundik
59a1a9cd36 Fix #1958: Remove session token hash conversion 2018-01-11 21:44:00 +02:00
Pavel Djundik
eac092e661 Hash user tokens, increase token entropy
Fixes #1934
2018-01-10 15:54:52 +02:00
Pavel Djundik
fc39a67e10 Only emit "more" history to the client that requested it 2018-01-07 15:06:59 +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
552f3da67e Implement manual network/channel cloning for better performance 2017-12-03 16:31:37 +02:00
Pavel Djundik
0f75c1a138 Change users array to be a Map 2017-11-19 11:35:15 +02:00
Jérémie Astori
1dc92d8934
Enforce dangling commas with ESLint
¯\_(ツ)_/¯
2017-11-15 01:35:15 -05:00
Pavel Djundik
833bdfa2aa Fix session data not updating correctly 2017-09-26 10:56:08 +03: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
Max Leiter
163cfaba3c Use away-notify to show user away status change 2017-09-17 11:16:48 -07:00
Pavel Djundik
79eb83d82f Move userLog function where it belongs
Fixes #438
2017-09-14 10:41:50 +03:00
Pavel Djundik
14cac93e10 Fix requesting last messages when no message id is known
Fixes #1460
2017-09-12 16:05:40 +03:00
Jérémie Astori
220af0e180 Merge pull request #1449 from dgw/cycle-command
Add /cycle command (a.k.a. /rejoin)
2017-08-31 23:45:54 -04:00
dgw
bed6053cec Add /cycle command (a.k.a. /rejoin)
Closes #1436
2017-08-31 06:43:32 -05:00
Pavel Djundik
0d57df81af Gracefully quit on Ctrl+C
Fixes #268
2017-08-30 20:26:45 +03:00
Pavel Djundik
05f8bfe906 Deleting a user should log them out
Fixes #916
2017-08-29 15:43:52 +03:00
Pavel Djundik
4a3026e11b Set default quit default message 2017-08-24 21:07:47 +03:00
Pavel Djundik
1bf2be1b51 Do not unintentionally send incorrect messages from history 2017-08-23 14:17:53 +03:00
Pavel Djundik
0ac3ba28e1 Web Push Notifications 2017-08-22 10:54:18 +03:00
Pavel Djundik
3190fd00bf Refactor authentication flow 2017-08-13 21:37:12 +03:00
Pavel Djundik
6f32e7ae75 Correctly dereference stored images when leaving channels
Fixes #1404
2017-08-11 15:02:58 +03:00
Pavel Djundik
25ac4d9e69 Correctly append OS name 2017-08-08 22:46:55 +03:00
Pavel Djundik
c14f7da1b2 Generate unique tokens for each login and session 2017-07-31 02:02:15 +03:00
Alistair McKinlay
e01e21cdbe Change more to use id rather than count. 2017-07-19 07:37:13 +01:00
Pavel Djundik
f3a4ed8e52 Fix losing network name when displayNetwork is false 2017-07-06 15:00:53 +03:00
Pavel Djundik
f6dd616d5e Update to eslint 4 and enforce extra rules 2017-06-19 09:58:29 +03:00
Pavel Djundik
81bdf7d33e Fix network name not being set when displayNetwork is false 2017-06-08 21:40:17 +03:00
Pavel Djundik
8ad92ed7b7 Merge pull request #1115 from PolarizedIons/fix-sorting
Fix channel sorting messing up the order
2017-04-29 14:56:19 +03:00
PolarizedIons
dd48ba4e87 Fix channel sorting messing up the order 2017-04-29 13:19:31 +02:00
Pavel Djundik
d6d7df62fe Fix away message disappearing
Closes #1102
2017-04-28 18:58:14 +03:00
Alistair McKinlay
b03d01b6eb Add ban/unban command
Fixes #1073
2017-04-26 08:54:25 +01:00
Jérémie Astori
30bf20eb12 Merge pull request #1064 from thelounge/xpaw/harden-sort
Rewrite server code of channel sorting
2017-04-23 14:12:53 -04:00
Pavel Djundik
57acf0f5ce Revert "Disable (temporarily) client ping timeouts"
This reverts commit ffa0740b50.
2017-04-23 09:42:16 +03:00
Alistair McKinlay
1e504f4383 Add support for banlist messages 2017-04-22 13:51:28 +01:00
Pavel Djundik
a1bdd6f740 Rewrite server code of channel sorting
Fixes server crash, fixes losing channels
2017-04-22 13:32:42 +03:00
Pavel Djundik
c0e364e1c2 Store channel keys 2017-04-01 15:28:38 -04:00
Pavel Djundik
4a68b78fd5 Implement away message restoration on reconnections and auto away 2017-03-29 00:27:58 -04:00
Pavel Djundik
23599fc39b Prevent message sending in lobbies
Fixes #956
2017-03-11 20:09:37 +02:00
Pavel Djundik
ffa0740b50 Disable (temporarily) client ping timeouts 2017-02-24 22:13:50 +02:00
greenkeeper[bot]
e2abbff7b0 fix(package): update irc-framework to version 2.5.5
https://greenkeeper.io/
2017-02-11 07:59:16 +02:00
Jérémie Astori
da2e286ff8 Use double-nick in whois on query to get idle time
This queries server of the other user and not current user, which does
not know idle time.
See http://superuser.com/a/272069/208074.

Override is done before command is being sent to the server: if a
single argument is given to `/whois`, it is being repeated, otherwise
the command is sent as is.
2016-12-23 01:59:08 -05:00
Pavel Djundik
555902bfba Do not ignore window opens when considering active channels 2016-12-21 12:38:50 +02:00
Jérémie Astori
3d0e1fd9f0 Merge pull request #745 from thelounge/xpaw/away-command
Implement /away and /back commands
2016-12-16 23:16:02 -05:00
Jérémie Astori
bc01d6ccd1 Improve message and style of loading/unloading console logs, use ES6 template literals 2016-12-11 03:30:19 -05:00
Jérémie Astori
303fab8519 Merge pull request #749 from thelounge/xpaw/hexip
Add support for hexip ilines and fix storing client ip in config
2016-12-10 19:50:33 -05:00
Jérémie Astori
b1478c1ae1 Merge pull request #782 from thelounge/xpaw/correct-link-chan
Use correct channel when pushing link prefetch messages
2016-12-10 19:44:35 -05:00
Jérémie Astori
cc763bd47a Merge pull request #757 from PolarizedIons/channel-sync
Sync reordering of channels/networks to other clients
2016-12-10 19:40:29 -05:00
Pavel Djundik
4fe3c5e96a Change ghetto timer to debounce 2016-12-10 11:05:34 +02:00
Pavel Djundik
463a63aed3 Avoid unnecessary disk writes if user object has not changed, make updateUser async 2016-12-10 11:05:34 +02:00
Pavel Djundik
62d4cd8fe8 Use correct channel when pushing link prefetch messages
Fixes #781
2016-12-09 23:00:33 +02:00
stepie22
a5ad573b2d Sync reordering of channels/networks to other clients 2016-12-09 14:56:19 +02:00
Pavel Djundik
00548e65d7 Update existing networks with ip and hostmask if null 2016-11-19 22:34:05 +02:00
Pavel Djundik
4078abb085 Correctly save ip and hostname in user config 2016-11-19 22:23:51 +02:00
Pavel Djundik
708788338c Add support for hexip ilines 2016-11-19 20:32:47 +02:00
Pavel Djundik
f24f707119 Implement /away and /back commands 2016-11-19 10:27:39 +02:00
Pavel Djundik
a1f56c7395 Improve support for opening multiple clients at once
- Synchornize unread counter with the server
- Fix unread marker on no attached clients
- Increase unread counter for server messages
2016-10-17 01:31:22 -04:00
Jérémie Astori
e905c139d7 Use native ES5 map method instead of lodash's 2016-10-15 15:58:49 -04:00
Jérémie Astori
089c315a8e Use forEach instead of lodash's each, and ES6 fat arrows like it's 2015 2016-10-15 15:58:48 -04:00
William Boman
99218341ec consolidate version numbers throughout all interfaces 2016-10-10 21:56:57 +02:00
Pavel Djundik
aa02fd5180 Enforce more eslint rules 2016-10-09 17:55:37 -04:00
Jérémie Astori
e416d74f57 Rename package variable, reserved in strict mode
This has been renamed similarly in other files of the projects already.
2016-10-09 15:15:20 -04:00
Jérémie Astori
caa46042bf Enforce strict mode across all JS files with ESLint
Several ES6 additions are only available in strict mode. Example:
> SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside strict mode

Strict mode was also enabled in a few of our files already, and it is a good thing to have anyway.
2016-10-09 15:14:02 -04:00
Pavel Djundik
024369d4c3 Implement our own /nick command to allow editing nick when not connected 2016-10-01 16:51:35 -04:00
Jérémie Astori
345aac1a27 Merge pull request #258 from maxpoulin64/channel-list
Implement /list
2016-09-29 02:47:34 -04:00
Maxime Poulin
0f439545d4 Fix broken IRC servers with /list 2016-07-22 21:42:42 -04:00
Maxime Poulin
1d47290ada Implement /list
Thanks to @xPaw for the base of this code
2016-07-22 21:42:42 -04:00
Pavel Djundik
1fa545152f Create a single function to render networks to reduce code duplication 2016-07-22 01:10:20 -04:00
Maxime Poulin
18c615236d Merge pull request #332 from thelounge/xpaw/unread-marker
A proper unread marker
2016-07-06 04:06:14 +00:00
Jérémie Astori
b3d3582d2f Merge pull request #286 from thelounge/xpaw/unknown-command
Display unhandled numerics on the client
2016-07-05 23:23:15 -04:00
Pavel Djundik
d37e94308d Unread marker MVP 2016-07-05 15:32:41 -04:00
Maxime Poulin
2d3464aa04
Use a textarea instead of an input for channel messages 2016-07-04 23:49:45 -04:00
Pavel Djundik
1d3037bd00 Register irc-framework events before connecting 2016-07-04 17:58:28 +03:00