Pavel Djundik
41e121d270
Only emit a single message per channel on init
2017-12-03 16:13:18 +02:00
Jérémie Astori
052248445c
Do not rename home file as it is very likely to have permission issues
...
On most systems (Linux at least), to install a npm package locally, one must use `sudo`. When The Lounge runs, it usually does not run with `sudo`. This causes the program to crash as user running The Lounge cannot create/delete files there.
We will let people manually convert this file instead of doing it for them. This file is mainly intended for package authors anyway, most users will never have to touch it.
2017-12-01 01:33:04 -05: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
Pavel Djundik
be6975cb83
Merge pull request #1772 from thelounge/astorije/fix-nick-change
...
Fix nick changes wrongly reported
2017-11-30 11:26:26 +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
c0d348a678
Fix default value given to Msg.from
...
- `{}` is not falsey so Handlebars would try to render the block (see http://handlebarsjs.com/builtin_helpers.html#conditionals ), therefore with a `nick` of `undefined`, which breaks `colorClass` (doing `undefined.length)
- There does not seem to be a way to check for empty objects in Handlebars (sigh) so checking `from.nick` seems like the most reliable way to check for a non-empty value. Alternatively, we could use a helper to check `{}` but meh.
2017-11-29 18:37:17 -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
Pavel Djundik
ba002cca64
Merge pull request #1708 from thelounge/astorije/thelounge
...
Switch CLI tool from `lounge` to `thelounge`, deprecate `lounge`
2017-11-27 13:58:46 +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
Jérémie Astori
7fb92fee64
Merge pull request #1717 from thelounge/astorije/thelounge_home-env-var
...
Deprecate `LOUNGE_HOME` env var in favor of `THELOUNGE_HOME`, `.lounge_home` file in favor of `.thelounge_home`
2017-11-22 16:39:02 -05:00
Jérémie Astori
aca23257ed
Switch CLI tool from lounge
to thelounge
and deprecate lounge
...
This is in preparation of The Lounge v3 which will make `thelounge` uniform across the entire project. No more confusion!
2017-11-22 16:37:26 -05:00
keegan
f73132e226
Stop LDAP Auth from succeeding without password
2017-11-21 19:19:24 -05:00
Jérémie Astori
827f1dab96
Deprecate LOUNGE_HOME env var in favor of THELOUNGE_HOME, .lounge_home file in favor of .thelounge_home
...
This is one more step towards uniformization of lounge/thelounge due with The Lounge v3.
2017-11-21 00:36:26 -05:00
Erik Vosseberg
f40edc7dc2
Include all available whois info
2017-11-21 00:27:24 -05:00
Pavel Djundik
01f524b7c5
Don't send defaults if not displaying network
2017-11-19 19:46:04 +02:00
Pavel Djundik
adab03f730
Fix test
2017-11-19 19:43:43 +02:00
Pavel Djundik
e86a155ec2
Remove express-handlebars, read manifest.json to get theme-color
2017-11-19 19:43:43 +02:00
Pavel Djundik
c30f4aaaeb
Move help to view
2017-11-19 19:43:43 +02:00
Pavel Djundik
8d88779918
Fix options
2017-11-19 19:43:42 +02:00
Pavel Djundik
711b5e1d91
Make settings/options mostly work
...
Fixes #1672
2017-11-19 19:43:42 +02: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
f2d9ef62cf
Merge pull request #1715 from thelounge/astorije/deprecate-node-v4
...
Deprecate support of Node v4 in preparation of The Lounge v3
2017-11-19 01:05:57 -05:00
Jérémie Astori
3af9a45087
Merge pull request #1676 from realies/patch-1
...
handle empty client queries
2017-11-19 00:42:10 -05:00
realies
c5de1b3dbe
handle empty client queries
2017-11-19 00:33:29 -05:00
Jérémie Astori
ef1c59072c
Deprecate support of Node v4 in preparation of The Lounge v3
2017-11-18 13:52:31 -05:00
Jérémie Astori
1dc92d8934
Enforce dangling commas with ESLint
...
¯\_(ツ)_/¯
2017-11-15 01:35:15 -05:00
Pavel Djundik
e5cded0ad6
Fix local theme folder
2017-11-12 21:11:08 +02:00
Pavel Djundik
9ff398dac3
Go back to writing user files synchronously
2017-11-11 20:44:09 +02:00
Pavel Djundik
feb7d9d4bb
Fix #1692 when kicker is server
2017-11-08 23:10:17 +02:00
Pavel Djundik
81e3e88391
Merge pull request #1636 from thelounge/xpaw/cleanup-clientmanager
...
Cleanup client manager functions
2017-10-29 10:25:42 +02:00
Pavel Djundik
3f2a017583
Create public folder with webpack
2017-10-18 21:20:12 +03:00
Pavel Djundik
a263c3eab9
Merge pull request #1615 from dgw/mark-echoes-read
...
Mark channels as read when receiving self-messages
2017-10-17 16:25:59 +03:00
dgw
d675297405
Mark channels as read when receiving self-messages
...
Resets highlight counter and last unread message ID on server, and
clears the badge on the active client when the message is rendered.
Resolves #911
2017-10-17 08:05:35 -05:00
Pavel Djundik
50504ed09b
Fix possible race condition when attaching clients
2017-10-17 12:45:18 +03:00
Pavel Djundik
280eea970a
Get client ip address correctly
2017-10-17 10:35:28 +03:00
Pavel Djundik
5c45321cca
Cleanup client manager functions
2017-10-15 19:05:19 +03:00
Pavel Djundik
44acc5cb00
Teardown sockets in tests
2017-10-06 12:53:08 +03:00
Jérémie Astori
0cc9c4166b
Merge pull request #1583 from thelounge/astorije/thelounge-packages
...
Use `thelounge` instead of `lounge` when it comes to external packages
2017-09-30 23:47:02 -04:00
Jérémie Astori
c3ccfb092a
Merge pull request #1579 from thelounge/xpaw/install-msg
...
Add info message before calling `packageJson`
2017-09-29 17:53:40 -04:00
Pavel Djundik
1c4d9351d5
Add info message before calling packageJson
2017-09-29 10:54:03 +03:00
Pavel Djundik
fd21c84a76
Do not try to write user log if network is not found
...
Fixes #1584
2017-09-29 10:37:27 +03:00
Jérémie Astori
1e10cc66a6
Use thelounge instead of lounge when it comes to external packages
2017-09-29 00:03:01 -04:00
Pavel Djundik
3fc0f4e686
Merge pull request #1536 from thelounge/xpaw/session-list
...
Implement session list and allow signing out other clients
2017-09-26 11:03:41 +03: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
2f15ab3999
Fix attached client not having token on login
2017-09-26 10:56:08 +03:00
Pavel Djundik
833bdfa2aa
Fix session data not updating correctly
2017-09-26 10:56:08 +03:00
Pavel Djundik
d7e6db92b5
Implement session list
2017-09-26 10:56:08 +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
f85686bcb2
Merge pull request #1468 from thelounge/xpaw/combine-notifications
...
Combine unread notifications into a single one
2017-09-22 21:04:04 +03:00
Pavel Djundik
649e9c3192
Fix opening first channel on server start
...
Fixes #1547
2017-09-20 16:17:38 +03:00
Pavel Djundik
416ebf97ff
Create 'lounge install' command
2017-09-20 10:59:06 +03:00
Jérémie Astori
637949ea55
Merge pull request #1471 from thelounge/xpaw/client-reconnection
...
Automatic client reconnection
2017-09-20 00:05:37 -04:00
Pavel Djundik
21c9919fa1
Print compatibility theme setting warning on startup
2017-09-19 12:21:08 +03:00
Pavel Djundik
6cfe60e4d9
Group push notifications per target
2017-09-19 12:01:50 +03:00
Pavel Djundik
cffa957e34
Only send messages newer than last seen id
2017-09-19 11:45:22 +03:00
Pavel Djundik
0c0df1efc9
Force reload the page if socket reconnects and server restarted
2017-09-19 11:45:22 +03:00
Jérémie Astori
b8399471b3
Enable ESLint no-console
rule to avoid future mistakes
2017-09-17 21:50:21 -04:00
Alistair McKinlay
59d2f93f61
Allow themes from npm
2017-09-17 19:47:29 -04: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
Jérémie Astori
cb1b6db14e
Fix references to undefined this
2017-09-17 02:24:54 -04:00
Al McKinlay
aace1aab05
Merge pull request #1528 from thelounge/xpaw/move-log-function
...
Move user log function where it belongs
2017-09-16 20:50:06 +01:00
Pavel Djundik
9e008a76b7
Merge pull request #1527 from dgw/kick-modes
...
Display correct kick modes
2017-09-14 10:46:35 +03:00
Pavel Djundik
17dd18a605
Write correct timestamp to user log
2017-09-14 10:42:21 +03:00
Pavel Djundik
79eb83d82f
Move userLog function where it belongs
...
Fixes #438
2017-09-14 10:41:50 +03:00
dgw
e4c6d78762
Display correct kick modes
...
Defining both the kicker and the target before any code touches the
channel user list ensures that everything is passed to the template.
2017-09-14 02:39:00 -05:00
Al McKinlay
171449c81e
Merge pull request #1519 from thelounge/xpaw/fix-show-more-when-empty
...
Fix requesting last messages when no message id is known
2017-09-14 07:25:17 +01:00
Élie Michel
f26c2dad0f
Take an optional argument in /part
...
Fix #1430
2017-09-13 20:24:45 -04:00
Pavel Djundik
14cac93e10
Fix requesting last messages when no message id is known
...
Fixes #1460
2017-09-12 16:05:40 +03:00
Pavel Djundik
099fb058c6
Merge pull request #1478 from eliemichel/pr-proper-ldap--rebased
...
Implement a proper LDAP authentication process
2017-09-04 09:02:58 +03:00
Elie Michel
32e1a36980
Generalize auth plugin fallback mechanism
...
@astorije this is for you ;)
https://github.com/thelounge/lounge/pull/1478#discussion_r136492534
2017-09-03 23:00:25 +02:00
Elie Michel
435e14669b
Change string formatting style
2017-09-03 23:00:25 +02:00
Elie Michel
00e54e49ac
Add tests for LDAP auth plugin
2017-09-03 23:00:24 +02:00
Elie Michel
12ba10f688
Reorganize auth plugins
2017-09-03 23:00:23 +02:00
Élie Michel
cfa6db10c7
Make new LDAP options backward compatible
...
Also draft some kind of plugin system for auth, although it essentially consists in writing a function
and there is no mechanism to automatically fallback from one auth to another
2017-09-03 23:00:23 +02:00
Pavel Djundik
c845d5723d
One line server startup errors
2017-09-03 15:13:56 +03:00
Pavel Djundik
9e1296d303
Merge pull request #1479 from thelounge/xpaw/unix-socket
...
Add support for binding to unix sockets
2017-09-01 11:25:00 +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
Jérémie Astori
ad8ec4b1e6
Remove the "Stay signed in" checkbox at login
...
This option is less and less the norm on modern webapps, it is fair to assume this is the default behavior. In fact, we were making it the default.
But more importantly, coming soon is the ability of remotely logging out of your other sessions, which is well handled through token deletion. That means we need to know about said tokens, which are not sent in no-"Stay signed in" version.
2017-08-31 23:07:43 -04:00
Pavel Djundik
b79a6cce0c
Add support for binding to unix sockets
...
Fixes #686 .
Fixes #691 .
2017-08-31 21:56:20 +03: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
Élie Michel
19710b90c0
Merge branch 'master' into pr-proper-ldap
2017-08-29 08:42:26 +02:00
Pavel Djundik
495d8c3e04
Merge pull request #1448 from thelounge/xpaw/quit-promo
...
Set default quit default message
2017-08-26 20:34:32 +03:00
Jérémie Astori
f7ecd0a053
Merge pull request #1350 from thelounge/xpaw/proper-cli
...
Only create config folder in 'start' command
2017-08-26 12:17:10 -04:00
Jérémie Astori
234fd31411
Clarify some users.length
that were forgotten in a previous PR
2017-08-26 12:04:13 -04:00
Pavel Djundik
252dca3d3f
Only create config folder in 'start' command
...
Fixes #520 .
Fixes #1288 .
2017-08-26 12:04:13 -04:00
Jérémie Astori
9c5071ec98
Improve output of WebPush error
...
Without this, the error displayed contains a lot of superfluous information, repeated.
2017-08-26 11:47:35 -04:00
PolarizedIons
e00b28d201
Fix general spelling errors
2017-08-25 18:02:28 +02:00
Pavel Djundik
4a3026e11b
Set default quit default message
2017-08-24 21:07:47 +03:00
Jérémie Astori
ed68ff4a34
Make sure CLI does not crash on undefined.length
when we figured out users could not be read already
2017-08-23 13:21:15 -04:00
Jérémie Astori
684f1a641d
Make sure server is running before loading users
2017-08-23 13:21:14 -04:00
Jérémie Astori
aa49856446
Warn when adding or listing users in public mode
2017-08-23 13:21:14 -04:00
Jérémie Astori
f221121998
Inform when no users during autoload to take into account removing the last user
2017-08-23 13:21:14 -04:00
Jérémie Astori
90842267e8
Do not prevent server to run when there are no users in private mode
2017-08-23 13:20:46 -04:00
Pavel Djundik
1bf2be1b51
Do not unintentionally send incorrect messages from history
2017-08-23 14:17:53 +03:00
Pavel Djundik
fcd9782eb7
Merge pull request #1124 from thelounge/xpaw/push-notifications
...
Implement push notifications
2017-08-22 23:16:41 +03:00
Pavel Djundik
0ac3ba28e1
Web Push Notifications
2017-08-22 10:54:18 +03:00
Jérémie Astori
ac3ce74343
Read default LOUNGE_HOME from .lounge_home file
2017-08-21 02:03:40 -04:00
Jérémie Astori
98bfe349d9
Add documentation for LOUNGE_HOME environment variable in the CLI helper
2017-08-21 01:49:32 -04:00
Pavel Djundik
8343f3cdcf
Remove os.homedir() polyfill
2017-08-16 12:48:07 -04:00
Jérémie Astori
507cc61d5c
Rename new file holding config location for consistency
...
`.lounge_config` is misleading as this file does not contain the config itself. Also, env var is called `LOUNGE_HOME`, deprecated flag is `--home`, so it makes more sense that way.
2017-08-16 00:34:29 -04:00
Jérémie Astori
5e7a7a3870
Update CLI help with regard to recent deprecation of --home
option
...
- Mark the option as deprecated (cannot be removed from the help, unfortunately)
- Add details to `lounge config` regarding `LOUNGE_HOME`
- Remove mention of `--home` in default config file
2017-08-16 00:33:33 -04:00
Pavel Djundik
5299d976c0
Use .lounge_config to help distribution packages handle config paths right
2017-08-15 21:57:47 +03:00
Pavel Djundik
3190fd00bf
Refactor authentication flow
2017-08-13 21:37:12 +03:00
Jérémie Astori
dff94cc6fd
Merge pull request #1406 from thelounge/xpaw/storage-dereferencing
...
Correctly dereference stored images when leaving channels
2017-08-13 12:17:02 -04:00
Pavel Djundik
66ea26f4bd
Resolve relative URIs in link previewer
...
Also adds support for image_src links
2017-08-13 13:06:01 +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
Pavel Djundik
df698ab3ea
Correctly send /list parameters
2017-07-28 13:53:41 +03:00
Jérémie Astori
157289258a
Keep track of preview visibility on the server so it persists at page reload
2017-07-26 18:16:50 -04:00
Pavel Djundik
ed9bfcf2fa
Merge pull request #1194 from thelounge/xpaw/lazy-user-list
...
Lazily load user list in channels on init, keep autocompletion sort on server
2017-07-21 17:25:23 +03:00
Pavel Djundik
7d981d60d8
Recycle existing User objects in names event
...
This is required to keep lastMessage correct. This will also be useful for the away tracking PR.
2017-07-21 11:05:37 +03:00
Pavel Djundik
48d367e379
Use findUser
2017-07-21 11:05:37 +03:00
Pavel Djundik
d06c279f02
Lazily load user list
2017-07-21 11:05:36 +03:00
Pavel Djundik
7af573fd96
Handle auto completion order on the server
...
Fixes #289 .
2017-07-21 11:05:21 +03:00
Jérémie Astori
900d41bf47
Re-use .previews
to order incoming previews instead of extra links
2017-07-21 01:51:51 -04:00
Jérémie Astori
a13c08a45b
Enforce correct order for previews on server-side prefectch rather than at client parsing
...
This has the benefit of not adding `.preview` divs everywhere, anytime we use `parse()`, and also to un-tie the position of the preview blocks from the result of the helper. This means that templates that call `parse` and have some extra markup after that are not constrained anymore.
This is effectively an alternative, better way to fix https://github.com/thelounge/lounge/issues/1343 , but the initial fix that was put in place (https://github.com/thelounge/lounge/pull/1347 ) is still relevant, for example to make sure a preview stays hidden (and does not add extra margin/padding/etc.) if the link does not prefetch.
2017-07-21 01:06:42 -04:00
Alistair McKinlay
e01e21cdbe
Change more to use id rather than count.
2017-07-19 07:37:13 +01:00
Jérémie Astori
03d6f284fb
Merge pull request #1330 from MaxLeiter/MaxLeiter/TIME
...
Add SOURCE CTCP Command
2017-07-19 02:00:50 -04:00
Pavel Djundik
f35a2809a7
Store preview images on disk for privacy, security and caching
2017-07-18 11:37:16 +03:00
Max Leiter
58cf481d86
Add SOURCE CTCP Command
2017-07-17 11:09:20 -07:00
Pavel Djundik
199bc459b4
Merge pull request #1303 from thelounge/astorije/multiple-previews
...
Support multiple previews per message
2017-07-09 18:29:31 +03:00
Al McKinlay
590a63ae31
Merge pull request #1306 from thelounge/xpaw/remove-prettify
...
Remove hostname prettifier
2017-07-09 15:03:08 +01:00
Jérémie Astori
64ebe0f437
Support multiple previews per message
...
- Load up to 5 previews per message (to avoid abuse)
- Do not load multiple times the same URL
- Prepare preview containers per message instead of appending (to maintain correct order)
- Store an array of previews instead of a single preview in `Msg` objects
- Consolidate preview rendering for new messages and upon refresh/load history (when rendering entire channels)
- Update `parse` tests to reflect previous point
- Add test for multiple URLs
- Switch preview tests from `assert` API to `expect` API
2017-07-08 04:34:12 -04:00
Pavel Djundik
f06de70c40
Remove hostname prettifier
2017-07-06 15:02:32 +03:00
Pavel Djundik
f3a4ed8e52
Fix losing network name when displayNetwork is false
2017-07-06 15:00:53 +03:00
Pavel Djundik
23b2f7197c
Deep merge default config
2017-07-06 15:00:43 +03:00
Pavel Djundik
14b2ad7938
Refactor link previews
2017-07-03 00:41:18 +03:00
Jérémie Astori
ad10777684
Merge pull request #1274 from thelounge/xpaw/increase-prefetch-limit
...
Increase max downloaded bytes for link preview
2017-06-26 02:44:46 -04:00
Pavel Djundik
e967759802
Increase max downloaded bytes for link preview
...
twitter.com sends opengraph meta tags within ~20kb of data for individual tweets
2017-06-26 09:34:56 +03:00
Pavel Djundik
77667e7a3f
Do not display preview if there is nothing to preview
2017-06-26 09:27:51 +03:00
Jérémie Astori
e0ed1195fa
Merge pull request #1202 from thelounge/xpaw/trust-proxy
...
Parse X-Forwarded-For header correctly
2017-06-26 01:52:53 -04:00
Jérémie Astori
5abc4c8c2a
Merge pull request #1256 from thelounge/xPaw/og-title
...
Check og:title before title tag
2017-06-26 01:48:07 -04:00
Jérémie Astori
147a36adde
Merge pull request #1254 from thelounge/xpaw/thumb-is-img
...
Make sure thumbnail is a valid image
2017-06-26 01:46:20 -04:00
Jérémie Astori
0239fdd2fb
Merge pull request #1255 from thelounge/xPaw/og-description
...
Check og:description before description
2017-06-26 01:44:54 -04:00
Pavel Djundik
ddc076e894
Check status code in link prefetcher
...
Fixes #1258 .
2017-06-23 20:49:45 +03:00
Pavel Djundik
015a9fb6ef
Check og:title before title tag
2017-06-22 22:41:05 +03:00
Pavel Djundik
23c7f7296c
Check og:description before description
2017-06-22 22:34:17 +03:00
Pavel Djundik
3fd2849a37
Make sure thumbnail is a valid image
...
Fixes #1239 .
Fixes #1180 .
2017-06-22 22:32:13 +03:00
Niko Bews
57fd0562a2
Handle images with unknown size in prefetch
2017-06-21 14:40:51 +03:00
Pavel Djundik
b0efbf8a1e
Parse x-forwarded-for header correctly
2017-06-21 14:34:06 +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
ca54c40d0f
Merge pull request #1197 from thelounge/xpaw/socketio-transports
...
Correctly configure client socket transports
2017-06-08 20:19:49 +03:00
Jérémie Astori
5a5bf823a0
Merge pull request #1195 from thelounge/xpaw/consistent-user-object
...
Do not store unnecessary information in user objects
2017-06-08 02:46:25 -04:00
Pavel Djundik
b46f92c7d8
Only update bcrypt password rounds if the password actually matches
2017-06-02 11:02:03 +03:00
Pavel Djundik
16fb118d02
Correctly configure client transports
...
Fixes #848
2017-06-01 22:43:23 +03:00
Pavel Djundik
acf5dd5351
Do not store unnecessary information in user objects
2017-06-01 21:54:46 +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
b1159eff9b
Merge pull request #1082 from MaxLeiter/setTopic
...
Use irc-framework setTopic() for topic command
2017-04-25 23:32:58 +02:00
Max Leiter
e45cfbf02c
Use irc-framework setTopic() for topic command
2017-04-24 21:05:57 -07: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
Alistair McKinlay
b4310dbc03
Review changes
...
(Should be squashed before merge)
2017-04-21 09:26:02 +01:00
Alistair McKinlay
cc85b2143c
Change index.html to be rendered using handlebars
2017-04-21 09:16:24 +01:00
Jérémie Astori
4de632ba3c
Merge pull request #1018 from swordbeta/sort_channel_list
...
Improve channels list.
2017-04-20 01:40:14 -04:00
Michael van Tricht
764ac831d4
Improve channels list.
...
- Set fixed width to channel and users column.
- Sort by number of users in channel.
- Executing /list multiple times wont show multiple tables.
- Channel list is not stickied to the bottom.
- Limit channels to 500. Scrolling through 1k is very slow on my system.
2017-04-19 12:02:15 +02:00
Metsjeesus
b750da3f9d
Fix to helper.expandhome to correctly resolve "" and undefined
2017-04-18 17:36:43 +03:00
Daniel Oaks
5c336d3789
Add slug with command to unhandled messages
2017-04-16 12:31:32 +03:00
Metsjeesus
fa51a2c281
Add CA bundle option in SSL
2017-04-15 19:12:21 +03:00
Pavel Djundik
f645c32cb9
Use local variables to check length
2017-04-14 00:05:28 +03:00
Jérémie Astori
fe7c570cc9
Use Referrer-Policy header instead of CSP referrer
...
According to MDN:
> referrer
> Used to specify information in the referer (sic) header for links away from a page.
> Use the Referrer-Policy header instead.
See:
- https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/referrer
- https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy
2017-04-06 02:25:43 -04:00
Pavel Djundik
c0e364e1c2
Store channel keys
2017-04-01 15:28:38 -04:00
S
001f96035b
Switch to bcryptjs and make password comparison async
...
- PasswordCompareAsync prevents timeouts on resource constraint devices
- All password.compare calls are now async
- Updated tests to accept async functions
2017-04-01 03:06:09 -04:00
Pavel Djundik
4a68b78fd5
Implement away message restoration on reconnections and auto away
2017-03-29 00:27:58 -04:00
Élie Michel
ed3b4faa62
Fix eslint styling issues
2017-03-21 15:49:54 +01:00
Élie Michel
642442c041
Implement a proper LDAP authentication process
...
The Lounge first log as a special user in order to search (as in LDAP's
'"search" verb) for the user's full DN. It then attempts to bind using the
found user DN and the user provided password.
2017-03-21 15:15:33 +01:00
Pavel Djundik
3b2e3fc08c
Enforce more space and new line rules
2017-03-18 21:40:39 +02:00
Pavel Djundik
c409328ddf
Fix variable shuffling around ident handler
...
Fixes #965
2017-03-17 22:24:40 +02:00
Jérémie Astori
ff72ebbb74
Merge pull request #804 from thelounge/xpaw/new-identd
...
Rewrite identd server, combine with oidentd
2017-03-13 02:04:24 -04:00
Jérémie Astori
1c732ffc5b
Fix -h
help option alias shadowed by a similar alias for --home
...
In v2.2.1 (and in pretty much every software out there, really), `-h` was an alias of `--help`. By adding it as an alias of `--home`, it is now shown twice in the help.
2017-03-13 01:06:11 -04:00
Pavel Djundik
9997aafec7
Rewrite identd server, combine with oidentd
2017-03-12 12:02:22 +02:00
Pavel Djundik
23599fc39b
Prevent message sending in lobbies
...
Fixes #956
2017-03-11 20:09:37 +02:00
Pavel Djundik
24bd39361b
Merge pull request #929 from msaun008/msaun008/fix-command-line-arg-parsing
...
Update arg parsing and default 'lounge' to 'lounge --help'
2017-03-10 19:27:09 +02:00
Matthew Saunders
86ed0b6e59
Update arg parsing and default 'lounge' to 'lounge --help'
2017-03-04 15:58:44 -05:00
Pavel Djundik
ffa0740b50
Disable (temporarily) client ping timeouts
2017-02-24 22:13:50 +02:00
Pavel Djundik
6755524be1
Merge pull request #903 from thelounge/astorije/log-users-by-default
...
Prompt admin for user log at user creation
2017-02-12 09:39:22 +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
410eff428b
Prompt admin for user log at user creation
2017-02-01 01:26:19 -05:00
Alistair McKinlay
ba165de94e
Merge pull request #812 from birkof/master
...
No prefetch URLs unless are messages
2017-01-23 10:43:30 +00:00
Daniel Stancu
36893c6d7c
Do not prefetch URLs unless they are messages or /me actions
...
ACTION & MESSAGE type messages should be prefetched by default
2017-01-23 01:42:54 -05:00
Jérémie Astori
bc8b699437
Add a basic check for bundled application when starting the server
...
Note that this will not detect if the client application was built with an old version of the repo.
2017-01-23 01:15:50 -05:00
Jérémie Astori
3e82994ae2
Make log style when referring user consistent with other places
2017-01-04 02:17:15 -05:00
Jérémie Astori
df4b14d546
Merge pull request #783 from thelounge/xpaw/irc-raw-log
...
Option to log raw IRC traffic
2017-01-04 01:56:19 -05:00
Pavel Djundik
fb87bd3a58
Webpack
2016-12-27 19:15:30 +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
Jérémie Astori
7ae11babcb
Add human-readable idle time in whois info
2016-12-22 00:21:16 -05:00
Jérémie Astori
391f3cb59b
Merge pull request #834 from thelounge/xpaw/active-window
...
Do not ignore window opens when considering active channels
2016-12-21 18:15:14 -05:00
Pavel Djundik
4dd79af9bb
Option to log raw IRC traffic
2016-12-21 13:22:18 +02:00
Pavel Djundik
555902bfba
Do not ignore window opens when considering active channels
2016-12-21 12:38:50 +02:00
Pavel Djundik
3a3eebd61d
Do not use backticks in strings when unnecessary
2016-12-20 02:09:53 +02:00
Pavel Djundik
b9047d98a2
Merge pull request #799 from thelounge/astorije/improve-command-line-output
...
Improve CLI a bit (output formatting and bug fix)
2016-12-19 14:18:54 +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
770ede0587
Define a common helper for prompting to the user consistently
2016-12-16 22:46:14 -05:00
Pavel Djundik
e56d0c3be0
Fix #792 : irc-fw update changed socket reference
2016-12-17 00:15:05 +02:00
Jérémie Astori
6c546b2098
Fix CLI options on the start command
...
I know it is proposed to deprecate them in favor of a more generic one (`-c port=80`), but in the meantime the existing ones should work properly.
2016-12-15 01:29:44 -05:00
Jérémie Astori
baf3348cda
Normalize colors and content of the CLI tools
2016-12-15 01:13:43 -05:00
Max Leiter
d4554d2fa7
Do not accept empty password when adding new user; closes #316
2016-12-13 20:50:15 -08:00
Alistair McKinlay
5213853524
Merge pull request #779 from thelounge/astorije/users-always-autoload
...
Make user autoload more transparent in the app
2016-12-12 12:10:52 +00: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
b01517861d
Remove autoload option and always autoload users
...
Since @xPaw provided a really nice way to watch user config files, there is now no need to be cheap about it (it used to be run every second, possibly why it could be disabled via settings?).
This commit also improves the function a little bit by making use of ES6 syntax.
A warning gets displayed on the server console when the `autoload` option is still present in the config file.
2016-12-11 03:29:30 -05:00
Pavel Djundik
28056d678e
Correctly remove closed sockets from oident file, remove unused functions
2016-12-11 08:56:32 +02: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
Jérémie Astori
9260f6b845
Merge pull request #751 from thelounge/xpaw/watch-autoload
...
Change ghetto autoload to use fs.watch
2016-12-07 00:35:33 -05:00
Pavel Djundik
69999f9190
Change ghetto autoload to use fs.watch
2016-12-07 00:31:36 -05:00
stepie22
aa8e0ae2c2
Set the (correct) time on link expands
2016-11-25 21:27:19 +02:00
Jérémie Astori
adf93f9fad
Merge pull request #746 from thelounge/xpaw/update-deps
...
Update depdencides to latest stable versions
2016-11-20 14:46:16 -05: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
6023035838
Update depdencides to latest stable versions
2016-11-19 10:49:16 +02:00
Pavel Djundik
f24f707119
Implement /away and /back commands
2016-11-19 10:27:39 +02:00
Pavel Djundik
b5db0abc18
Print node version and platform
2016-11-18 19:25:23 +02:00
William Boman
2f77d6981b
src/server: log config path on start-up
2016-11-15 18:23:02 +01:00
Jérémie Astori
8ec6d969d1
Merge pull request #697 from cloudron-io/ldap_crashfix
...
Fix crash when LDAP server is unreachable
2016-10-23 10:10:48 -04:00
Pavel Djundik
c5e0dee3a3
Change bcrypt rounds from 8 to 11
2016-10-22 09:24:27 +03:00
Jérémie Astori
04f23704b8
Merge pull request #679 from thelounge/xpaw/fix-mode-command
...
Fix /mode command to correctly assume target
2016-10-17 15:30:02 -04: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
Girish Ramakrishnan
09f2d069de
Fix crash when LDAP server is unreachable
...
Fixes #667
2016-10-16 11:27:09 -07: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
Pavel Djundik
bfeaeee873
Fix /mode command to correctly assume target
2016-10-15 14:17:45 +03:00
Pavel Djundik
3711aefc2d
Merge pull request #664 from thelounge/xpaw/fix-defaults
...
Fix memory and reference shuffling when creating models
2016-10-15 14:14:53 +03:00
Pavel Djundik
db1dc3675a
Merge pull request #592 from williamboman/fix/git-describe
...
consolidate version numbers throughout all interfaces
2016-10-15 14:06:52 +03:00
Pavel Djundik
a58b7839a7
Merge pull request #685 from thelounge/astorije/fix-nick-in-logs
...
Fix nick changes not being properly reported in the logs
2016-10-15 14:00:47 +03:00
Jérémie Astori
93c4c14b72
Merge pull request #647 from nornagon/prefix-lookup
...
Fill in prefixLookup on network initialization
2016-10-12 03:37:06 -04:00
Jeremy Apthorp
b7814bc571
Fill in prefixLookup on network initialization
...
Fixes #644 .
2016-10-11 22:17:58 -07:00
William Boman
99218341ec
consolidate version numbers throughout all interfaces
2016-10-10 21:56:57 +02:00
Jérémie Astori
310ab8f43c
Fix nick changes not being properly reported in the logs
...
Before:
```
[2016-10-10 15:17:47] * nick
```
After:
```
[2016-10-10 16:32:47] * astorije nick astorije2
```
2016-10-10 13:08:23 -04: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
3b8a478e34
Fix loading fonts in Microsoft Edge
2016-10-09 12:29:17 +03:00
Jérémie Astori
45ff1c0a00
Merge pull request #673 from toXel/toxel/fix-missing-keys
...
Check if SSL key and certificate files exist
2016-10-08 15:35:25 -04:00
Pavel Djundik
8f3f1ca0b1
Fix memory and reference shuffling when creating models
2016-10-08 21:49:31 +03:00
Pavel Djundik
2e82c6b5c6
Make use of multi-prefix cap and remove NAMES spam on mode changes
2016-10-08 20:30:25 +03:00
toXel
5b6f5d5dce
Check if SSL key and certificate files exist
2016-10-08 14:56:12 +02:00
Jérémie Astori
ac3992bcdb
Merge pull request #658 from thelounge/xpaw/wallops
...
Display wallops in server window
2016-10-08 00:02:16 -04:00
Jérémie Astori
41525ec20c
Add hostmasks in logs when possible
...
This will augment logs for `join`/`part`/`quit` with something similar to:
```
[2016-10-03 23:19:29] * astorije2 (~lounge-us@123.45.67.89 ) join
[2016-10-03 23:22:04] * foobar (~foo@irc.example.com ) join
[2016-10-03 23:22:00] * foo (foo@gateway/web/freenode/ip.12.34.56.789) quit Quit: Page closed
[2016-10-03 23:22:12] * bar (~foo@unaffiliated/bar) quit Ping timeout: 252 seconds
[2016-10-03 23:31:23] * astorije (~astorije@128.30.0.0) part
```
2016-10-03 19:40:26 -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
Pavel Djundik
beb6d1ea5b
Reset nickname in UI back to previous one on error
2016-10-01 16:51:35 -04:00
Pavel Djundik
63f4fc39c9
Display wallops in server window
...
Fixes #225
2016-10-01 00:29:49 +03:00
Jérémie Astori
28b5fdb8ce
Merge pull request #637 from thelounge/xpaw/extra-loading
...
Display extra loading messages
2016-09-30 01:34:05 -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
Pavel Djundik
396a9cffb1
Display extra loading messages
2016-09-25 09:52:16 +03:00
Max Leiter
e6bf20de2f
Handle stderr when using edit or config command, fixes #164
2016-09-24 09:27:58 -07:00
Jérémie Astori
2b3b4ea924
Explicitly authorize websockets in CSP header
...
This follows a recent change in WebKit (see https://webkit.org/blog/6830/a-refined-content-security-policy/ , section "More restrictive wildcard *") to remove websocket schemes from the connect-src directive.
Users of Safari v10 (to be publicly released in a few days) would be affected by this and could not load the app.
2016-09-09 01:17:31 -04:00
Jérémie Astori
b153d568a0
Add a theme selector in the settings
...
Power to the people!
There is now 2 ways to set the theme: on the app config file (defaults
for all users) and in the user settings.
All CSS files present in the `client/themes` folder will be given as
choices to the users.
This is temporary (as in, temporary for a fairly long time) until we
have proper theme management.
2016-09-06 01:11:31 -04:00
Maxime Poulin
0c3dc31e31
Add debug config option for irc-fw debug log
2016-08-29 02:07:09 -04:00
Jérémie Astori
40b8f0c293
Make sure users with wrong tokens are locked out instead of crashing the app
2016-08-18 00:02:40 -04:00
Jérémie Astori
f824036225
Merge pull request #535 from thelounge/PR/fix-webirc-4in6
...
Fix webirc and 4-in-6 addresses
2016-08-12 00:39:26 -04:00
Maxime Poulin
bec0c74772
Merge pull request #552 from thelounge/astorije/logger
...
Use our logger instead of console.{log,error} for LDAP logs
2016-08-11 01:44:54 -04:00
Jérémie Astori
14782a56b7
Use our logger instead of console.{log,error}
2016-08-10 02:40:28 -04:00
Jérémie Astori
cf64cb04c4
Fix token persistency across server restarts
...
This fixes a regression introduced by LDAP support addition
(https://github.com/thelounge/lounge/pull/477 ), which forces
users to re-login when the server restarts. This was originally
implemented in https://github.com/thelounge/lounge/pull/370 .
2016-08-10 02:26:47 -04:00
Jérémie Astori
1fb14771ef
Merge pull request #477 from thisisdarshan/ldap
...
LDAP support
2016-08-09 23:58:21 -04:00
Jérémie Astori
a0315b13d1
Disable debug logs in npm releases
...
This is temporary until https://github.com/thelounge/lounge/issues/459 , but
meanwhile we should not be spamming connection debug messages in releases
or pre-releases.
2016-08-06 14:14:38 -04:00
Maxime Poulin
d42ac23c55
Fix webirc and 4-in-6 addresses
2016-07-30 20:54:09 -04:00
Johan Lindskogen
987474cfc1
implementing LDAP support
2016-07-29 21:28:00 -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
Jérémie Astori
9e188bad4b
Make sure git commit check would not send stderr to the console
...
Before that change, running a release would display this in the console:
```
fatal: Not a git repository (or any of the parent directories): .git
```
Also, this adds strict mode for that file, and make sure `gitCommit` never throws a `ReferenceError`.
2016-07-18 21:35:02 -04:00
Jérémie Astori
71577cf55e
Display whether instance is running from a release or from git on About section
2016-07-13 03:17:55 -04:00
Jérémie Astori
b1674f4f20
Add self info to TOGGLE messages to prevent unread marker to render for oneself
2016-07-07 02:53:30 -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
08f197f912
Only load config if it exists
2016-07-04 23:15:30 +03:00
Pavel Djundik
1d3037bd00
Register irc-framework events before connecting
2016-07-04 17:58:28 +03:00
Alistair McKinlay
9c07f2b0f2
Merge pull request #387 from thelounge/xpaw/config
...
Cache loaded config and merge it with defaults
2016-07-04 08:18:55 +01:00
Pavel Djundik
e445fd8e25
Store channels in array format
2016-07-03 21:58:31 +03:00
Pavel Djundik
34b4a7a018
Merge pull request #366 from thelounge/xpaw/fix-clicks
...
Improve click handling on users and inline channels
2016-07-03 20:51:20 +03:00
Jérémie Astori
d231a4b583
Merge pull request #453 from thelounge/xpaw/fix-autojoin
...
Only auto join actual channels
2016-07-03 09:25:38 -04:00
Pavel Djundik
cada00ab6a
Display unhandled numerics on the client
2016-07-03 11:47:53 +03:00
Pavel Djundik
f57328ef5b
Only auto join actual channels
...
Fixes #450
2016-07-03 11:39:29 +03:00
Pavel Djundik
2da6167cf5
Print network name and internal ids in debug log
2016-07-03 11:32:57 +03:00
Pavel Djundik
1f760d877e
Update irc-framework to 2.1.0
2016-07-02 22:25:08 +03:00
William Boman
32b46bb32d
src/client: make sure config is always an object
2016-06-30 15:06:14 +02:00
William Boman
1256e73d90
src/client: pass the updated token as argument to callback
...
This also fixes an issue where the token would not be stored in the
user file.
2016-06-30 15:05:58 +02:00
William Boman
c57d9ac1dc
irc-events/connection: increase join delay to 1000ms
...
100ms easily bypasses the excess flood threshold with constant
reproducibility with >20 channels (Freenode).
2016-06-28 00:11:19 +02:00
Pavel Djundik
100262ad1f
Cache loaded config and merge it with defaults
...
Fixes #249
2016-06-26 19:30:25 +03:00
Maxime Poulin
1b9c5d8996
Fix default configuration for host
.
...
Similarly to kiwiirc/irc-framework#55 , passing `undefined` there instead of `"0.0.0.0"` allows the OS to decide and use both IPv4 and IPv6.
2016-06-24 06:25:51 -04:00
Pavel Djundik
da9b0636fb
Improve click handling on users and inline channels
2016-06-22 18:36:01 +03:00
Pavel Djundik
779aed7cd6
Use tabs when saving user configs
2016-06-19 20:16:50 +03:00
Jérémie Astori
e8cc465228
Merge pull request #411 from thelounge/xpaw/join
...
Fix channel join regression and fix possibly joining parted channels
2016-06-19 12:59:49 -04:00
Pavel Djundik
eaa8e893a5
Do not print user loaded message in public mode
2016-06-19 11:01:50 +03:00
Pavel Djundik
f0adee1700
Fix crash in public mode introduced by #370 ( #413 )
2016-06-19 10:59:10 +03:00
Maxime Poulin
deba6f3aa1
Fix crash in public mode introduced by #370
2016-06-18 23:35:32 -04:00
Jérémie Astori
75c578c02c
Merge pull request #369 from thelounge/xpaw/fix-losing-auth
...
Do not lose authentication token when the connection gets lost
2016-06-18 22:35:12 -04:00
Pavel Djundik
d66e86ddc4
Fix channel join regression and fix possibly joining parted channels
2016-06-17 13:46:15 +03:00
Pavel Djundik
12551c06b6
Perform node version check as soon as possible
2016-06-16 11:13:34 +03:00
Jérémie Astori
cfdcd405d5
Merge pull request #370 from thelounge/xpaw/persistent-token
...
Implement user token persistency
2016-06-16 02:13:35 -04:00
William Boman
4a75a04402
command-line: fall back to LOUNGE_HOME env variable
2016-06-13 20:22:58 +02:00
Pavel Djundik
2008abc0e8
Do not lose authentication token when the connection gets lost
2016-06-13 10:39:01 +03:00
Pavel Djundik
9384cd9ca6
Implement user token persistency
2016-06-13 10:33:39 +03:00
Pavel Djundik
cddcd9cb47
Save user when they sort the channel list
2016-06-12 13:02:37 +03:00
Daniel
f8044bfc96
Remove redundant variables ( #397 )
2016-06-12 09:43:35 +03:00
Pavel Djundik
643e07dead
Merge pull request #396 from hogofwar/capital
...
Capitalise constructor Oidentd
2016-06-12 09:43:02 +03:00
Daniel
084b269865
Rename package variable to pkg, as "package" is reserved.
2016-06-12 02:46:51 +01:00
Daniel
29d94bf297
Capitalise constructor.
2016-06-11 21:03:59 +01:00
Daniel
3a2d97af6a
Supersede mkdirp with fs-extra.
...
Ensure USERS_PATH exists at start.
Remove unnecessary USER_PATH check.
Use fs-extra's copy to write default config.
2016-06-11 19:35:40 +01:00
Pavel Djundik
2ffd85d89f
Update eslint and enforce key-spacing
2016-06-05 21:48:34 +03:00
Maxime Poulin
22d4f40613
Warn the user when both ident handlers are enabled
2016-06-03 00:11:20 -04:00
Maxime Poulin
fabb758985
Add support for oidentd spoofing
2016-06-02 23:59:19 -04:00
Maxime Poulin
9aafffd273
Fix existing identd
2016-06-02 23:59:08 -04:00
Maxime Poulin
21eafef32d
Don't send completely empty messages
2016-05-25 03:27:25 -04:00
Pavel Djundik
a0010ca9f6
Allow /connect command to work on current network
2016-05-22 10:13:10 +03:00
Pavel Djundik
047a79ead6
Add separate /disconnect command
2016-05-22 10:13:08 +03:00
Pavel Djundik
e3a1bf2f87
Enable auto reconnection
2016-05-22 10:13:07 +03:00
Max-P
fca941e962
Merge pull request #307 from thelounge/astorije/path-join-everywhere
...
Replace all concatenated paths with Node's path.join
2016-05-21 22:22:28 -04:00
Max-P
423151ad97
Merge pull request #334 from thelounge/xpaw/query-highlights
...
Fix notifications in query windows
2016-05-21 22:09:55 -04:00
Jérémie Astori
0599a40df7
Merge pull request #320 from maxpoulin64/fix-space
...
Fix sending messages starting with a space
2016-05-21 13:11:09 -04:00
Pavel Djundik
1c57363106
Fix notifications in queries, limit message highlights to channels
2016-05-16 22:46:54 +03:00
Jérémie Astori
f65ffdff1e
Centralize the logs path in the Helper
2016-05-15 17:13:51 -04:00
Pavel Djundik
dcec9f3c37
Fix overriding home folder
2016-05-15 17:02:53 -04:00
Pavel Djundik
d725bf0f70
Remove permissions test and do not suggest using sudo
2016-05-15 17:02:47 -04:00
Jérémie Astori
fe85873f1e
Replace all concatenated paths with Node's path.join
2016-05-15 17:01:10 -04:00
Pavel Djundik
e6990e0fc7
Don't falsely report failed write if it didn't fail
2016-05-15 11:15:20 +03:00
Pavel Djundik
aa8c3f6419
Improve nick highlights
2016-05-12 14:20:24 +03:00
Max-P
bbf7b8086f
Merge pull request #324 from thelounge/update-irc-fw
...
Update irc-framework
2016-05-12 03:25:54 -04:00
Pavel Djundik
ac5e96cddf
Update irc-framework
2016-05-12 10:15:37 +03:00
Maxime Poulin
5a3b07a698
Fix sending messages starting with a space
...
There really is no need to trim apart bringing more situations like this. If I want to put spaces in front of my message (say, for alignment purposes), then I should be able to.
Fixes #319
2016-05-10 21:31:42 -04:00
Maxime Poulin
0b6d13d22d
Don't check for existing password emptyness
...
Pointed out by @PugaBear, it's possible for a user to have an empty password. There isn't really a need to check for password emptyness, it will simply fail with wrong old password instead.
2016-05-10 18:00:07 -04:00
Jérémie Astori
29e0717d8c
Merge pull request #238 from williamboman/fix/safer-add-user
...
clientManager: don't write user configs outside of lounge's users dir
2016-05-08 13:21:01 -04:00
Jérémie Astori
c7fb388323
Merge pull request #292 from thelounge/xpaw/csp
...
Add security headers to minimize XSS damage
2016-05-08 00:42:05 -04:00
William Boman
5e38060567
clientManager: don't write user configs outside of lounge's users dir
2016-05-07 13:35:16 +02:00
Pavel Djundik
4585583ebc
Save user when parting channels
2016-05-06 19:32:35 +03:00
Pavel Djundik
d143542fe5
Add security headers to minimize XSS damage
2016-05-06 11:08:45 +03:00
Jérémie Astori
48ce92bdcf
Make sure app does not crash when webirc is not defined in the configuration
2016-05-02 01:11:57 -04:00
Maxime Poulin
96d282e73c
Add WEBIRC support
...
Fixes #181
2016-05-02 00:45:19 -04:00
Maxime Poulin
6d1e81b324
Remove "trust proxy" as it does litterally nothing
2016-05-02 00:42:03 -04:00
Pavel Djundik
e75a8f40a6
Stricter eslint rule for curly brackets
2016-05-01 12:41:17 +03:00
Pavel Djundik
c6c32e7d5f
Merge pull request #217 from thelounge/xpaw/keep-autocomplete
...
Keep autocompletion sort whenever user list updates
2016-05-01 08:56:13 +03:00
Jérémie Astori
404bf2c4df
Merge pull request #270 from thelounge/ircv3/echo-message
...
Add support for echo-message and znc.in/self-message caps
2016-04-30 19:37:10 -04:00
Pavel Djundik
a082039ecb
Keep autocompletion sort whenever an user joins
2016-04-28 22:44:27 +03:00
Pavel Djundik
d9a0dd9406
Use lowercase global
...
GLOBAL shows a deprecated warning in node 6
2016-04-28 21:36:09 +03:00
Jérémie Astori
177041c9bb
Merge pull request #280 from thelounge/min-node-ver
...
Document supported node version
2016-04-27 10:03:43 -04:00
Maxime Poulin
96d180077c
Add support for ~ home folder expansion
2016-04-27 04:23:54 -04:00
Max-P
12c88debf4
Fix derp in new logger ( #283 )
...
Chose to rename to `error` as that's what's used everywhere and what the `console` object would expose, so it's more of a drop-in replacement.
2016-04-27 10:42:54 +03:00
Pavel Djundik
d428bb7511
Document supported node version
2016-04-27 10:07:43 +03:00
Jérémie Astori
21fb0e0709
Merge pull request #257 from thelounge/xpaw/console-log
...
Add global logging helper
2016-04-27 02:43:54 -04:00
Jérémie Astori
1150d646cb
Merge pull request #205 from maxpoulin64/I-194
...
Restrict access to the home directory by default
2016-04-27 02:25:30 -04:00
Pavel Djundik
ede3131168
Add global logging helper
2016-04-27 00:05:55 +03:00
Pavel Djundik
fd36eea0ed
Rename log to userLog
2016-04-26 23:58:53 +03:00
Pavel Djundik
80ac72709d
Do not count your own messages as unread
2016-04-26 13:10:17 +03:00
Pavel Djundik
2d8f4fdf14
Log enabled capabilities
2016-04-24 11:14:06 +03:00
Pavel Djundik
91aa4c6c4a
Never highlight self messages in queries, and leave it up to the server to decide
2016-04-22 19:38:59 +03:00
Pavel Djundik
84685acdcd
Add support for echo-message cap
2016-04-22 19:38:13 +03:00
Pavel Djundik
f4ac2aad19
Fix loading config before HOME variable is set
2016-04-19 23:58:49 +03:00
Pavel Djundik
148be767bb
Fix #232 : Do not store messages in memory when running in public mode
2016-04-19 13:28:07 +03:00
Pavel Djundik
6dc807ef07
Create a single helper function to write messages
2016-04-19 13:20:18 +03:00
Jérémie Astori
116dbc07be
Merge pull request #167 from thelounge/irc-framework
...
Drop slate-irc, switch to irc-framework
2016-04-13 01:28:32 -04:00
Pavel Djundik
71a4dde7ad
Do not generate random nicks on nick errors if already registered with the network
2016-04-10 11:55:58 +03:00
Jérémie Astori
49a62c4015
Merge pull request #230 from williamboman/fix/password-prompt
...
command-line/add,reset: reword password prompt
2016-04-08 23:49:43 -04:00
Pavel Djundik
34af38ff92
Change how nick errors are displayed
2016-04-07 16:08:33 -04:00
Pavel Djundik
7fdd0e90c1
Generate a random hexadecimal nickname when servers says current nick is invalid
2016-04-07 16:08:33 -04:00
Pavel Djundik
40a15b2676
Whitelist which commands are allowed while not being connected
2016-04-07 16:08:33 -04:00
Pavel Djundik
69bb003e45
Do not try to quit from errored networks
2016-04-07 16:08:32 -04:00
Pavel Djundik
7d24394814
Update irc-framework and fix issue when changing your own nick
2016-04-07 16:08:32 -04:00
Pavel Djundik
16370d8fcc
Add /ctcp command and handle ctcp responses
2016-04-07 16:08:31 -04:00
Maxime Poulin
9cd4c6744c
Support kick message in /kick command
2016-04-07 16:07:40 -04:00
Maxime Poulin
6c5ade3fe3
Fix the /topic command
2016-04-07 16:07:40 -04:00
Pavel Djundik
338116a01e
Prevent opening query windows for CHANTYPES and PREFIX
2016-04-07 16:07:40 -04:00
Pavel Djundik
142aa85548
Handle invites
...
Requires irc-fw update
2016-04-07 16:07:40 -04:00
Pavel Djundik
3fc7036d32
Don't reset time in link expander and hide time with css
2016-04-07 16:07:40 -04:00
Pavel Djundik
6b2ebd790d
Always send notices for non existing targets into server window
...
This matches current master behaviour
2016-04-07 16:07:40 -04:00
Pavel Djundik
d1da4b338a
Update irc-framework, fixes quitting networks
2016-04-07 16:07:40 -04:00
Pavel Djundik
769bd16c8b
Fix sending unknown commands
2016-04-07 16:07:40 -04:00
Pavel Djundik
43f58a8075
Format topic set date
2016-04-07 16:07:40 -04:00
Pavel Djundik
92cc130e2b
Always send notices that are not targeted at us into the server window
2016-04-07 16:07:40 -04:00
Pavel Djundik
e0fb454223
Search channel case insensitively
2016-04-07 16:07:37 -04:00
Jérémie Astori
40677e3248
Update tests to match the new irc-framework models
2016-04-07 16:06:03 -04:00
Pavel Djundik
54526215a4
Correctly create new windows for private messages
2016-04-07 16:06:03 -04:00
Pavel Djundik
b19e79c48f
Fix autojoining and allow autojoing with keys
...
Syntax is like "#a,#b,#c keya,keyb"
2016-04-07 16:06:03 -04:00
Pavel Djundik
17bcc37b80
Request names on mode change as a temporary measure
2016-04-07 16:06:02 -04:00
Pavel Djundik
db5fe00b60
A couple of fixes after rebasing and updating framework
2016-04-07 16:06:01 -04:00
Pavel Djundik
a01216fa4c
Update irc-framework
2016-04-07 16:04:41 -04:00
Pavel Djundik
071881a9fa
Sort user list within a single pass, use server provided user modes
2016-04-07 16:04:41 -04:00
Pavel Djundik
516ccd965f
Add support for IRCv3 server-time
2016-04-07 16:04:41 -04:00
Pavel Djundik
7baf5f0f81
Remove unused notice event
2016-04-07 16:04:41 -04:00
Pavel Djundik
dff6eb33c5
Maintain backwards compatibility by sending symbols to the client
2016-04-07 16:04:41 -04:00
Pavel Djundik
b6993f6e37
Make whois work
2016-04-07 16:04:41 -04:00
Pavel Djundik
28ae544b2a
Move connection events to a separate file, sync PREFIX with frontend
2016-04-07 16:04:40 -04:00
Pavel Djundik
2244dda566
Update commands
2016-04-07 16:04:40 -04:00
Pavel Djundik
82e192cd2c
Enable link fetcher
2016-04-07 16:04:40 -04:00
Pavel Djundik
356851c3f2
Handle kick
2016-04-07 16:04:40 -04:00
Pavel Djundik
627b698221
Fix creating duplicate query windows when our nick is not known
2016-04-07 16:04:40 -04:00
Pavel Djundik
9ab71b2588
Handle nick
2016-04-07 16:04:40 -04:00
Pavel Djundik
4d986537bc
Handle error
2016-04-07 16:04:40 -04:00
Pavel Djundik
360563528a
Handle channel and user modes
2016-04-07 16:04:40 -04:00
Pavel Djundik
e380319400
Handle parts, quits, topics and topic set by
2016-04-07 16:04:40 -04:00
Pavel Djundik
da425fefaf
Start working on moving to irc-framework
2016-04-07 16:04:28 -04:00
Maxime Poulin
7209bcd58a
Add config option to limit in-memory history size
...
This adds a (temporary?) config option to limit the amount of messages stored per channel to avoid the server's memory usage to grow as channels fills up with messages.
2016-04-06 03:29:35 -04:00
William Boman
8293497ae9
command-line/add,reset: reword password prompt
...
This makes the password prompts not look like a root access password prompt.
2016-04-03 20:47:45 +02:00
Pavel Djundik
ad3bdef542
Fix not being able to remove networks from user config
2016-04-02 11:16:31 +03:00
Pavel Djundik
93d7b16cd4
Harden url fetcher and don't crash on non-ASCII urls
2016-03-27 12:50:53 +03:00
Pavel Djundik
05ec819f2d
Merge pull request #222 from maxpoulin64/fix-part
...
Fix /part command
2016-03-27 01:27:54 +02:00
Maxime Poulin
d5e67d6503
Fix /part command
...
Fixes the /part command closing the wrong window. The current implementation simply passes all arguments to slate, which ended up parting every arguments.
This changes the command to `/part message`, and always parts the current window. This will be fixed further once irc-framework is merged.
2016-03-26 16:13:34 -04:00
Jérémie Astori
fefc6c5132
Disallow /query on non-nicks
2016-03-26 13:18:55 -04:00
Pavel Djundik
7d7c3edcec
Add a query command that simply opens a query window
2016-03-24 22:40:36 +02:00
Jérémie Astori
eadcca0b5e
Merge pull request #208 from thelounge/xpaw/remove-commands
...
Remove join, nick and whois inputs, they are cleanly handled by the server
2016-03-22 02:03:50 -04:00
Pavel Djundik
83021cf0ac
Fix #195 : Support port in connect command
2016-03-20 19:35:20 +02:00
Pavel Djundik
9deb0489f6
Disallow parting from lobbies
2016-03-20 18:34:36 +02:00
Pavel Djundik
52b953c492
Remove join, nick and whois inputs, they are cleanly handled by the server
...
Fixes #201
2016-03-20 16:14:37 +02:00
Maxime Poulin
346fb83abe
Restrict access to the home directory by default
...
Follow up on #165
Closes #194
2016-03-19 18:59:45 -04:00
Jérémie Astori
05be0ff57f
Merge pull request #174 from thelounge/xpaw/http2
...
Add support for HTTP2
2016-03-19 18:06:34 -04:00
xPaw
9e8bc44e3a
Fix default socket.io transports
2016-03-19 18:48:36 +02:00
Max-P
e54409b3dd
Merge pull request #193 from thelounge/astorije/minor-simplification
...
Remove unnecessary operation when sorting users
2016-03-14 20:55:49 -04:00
Max-P
c74811c894
Merge pull request #191 from thelounge/astorije/direct-inputs
...
Load input plugins at startup and call them directly when a command is received
2016-03-14 20:38:47 -04:00
Jérémie Astori
d02c0bd72c
Remove unnecessary operation when sorting users
2016-03-14 01:44:03 -04:00
Jérémie Astori
93a393f10d
Load input plugins at startup and call them directly when a command is received
2016-03-14 00:21:42 -04:00
Pavel Djundik
96ef274838
Keep track of highlights when user is offline
2016-03-13 18:05:05 +02:00
Pavel Djundik
d7750db87f
Remove moment.js from the client
2016-03-11 22:18:49 +02:00
Jérémie Astori
ddc72ea94f
Merge pull request #154 from xPaw/better-commands
...
Handle commands in a better way
2016-03-11 02:12:30 -05:00
Pavel Djundik
842b8d620c
Send unknown commands to the server
2016-03-10 10:05:56 +02:00
Pavel Djundik
42a7c54c0a
Fix #153 : Do not intercept service commands
2016-03-09 17:40:57 +02:00
Pavel Djundik
689b018079
Add support for HTTP2
2016-03-09 14:04:05 +02:00
Pavel Djundik
52bc324a63
Update eslint to 2.3.0 and add stricter rules
2016-03-09 10:50:20 +02:00
Jérémie Astori
c8664b7cfa
Merge pull request #161 from xPaw/whois-tpl
...
Make whois a client template
2016-03-09 00:16:47 -05:00
Jérémie Astori
6a6c41732d
Make sure highlight lookup stops as soon as a candidate is detected
2016-03-08 01:54:23 -05:00
Jérémie Astori
977b48649b
Fix #156 : Make sure self messages are never highlighted
2016-03-08 01:39:00 -05:00
Pavel Djundik
a61973a156
Make whois a client template
2016-03-07 17:10:46 +02:00