Commit Graph

974 Commits

Author SHA1 Message Date
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
Pavel Djundik
bd370699fd Fix crash and remove remaining 0777 mode 2016-03-05 20:31:29 +02:00
Jérémie Astori
0f48b11a22 Merge pull request #117 from maxpoulin64/fix-user-filemode
Remove attempts to set file modes
2016-03-05 01:48:51 -05:00
Jérémie Astori
ec37b6671b Merge pull request #82 from xPaw/lock-server
Allow locking network configuration
2016-03-02 00:37:27 -05:00
Jérémie Astori
325739c8be Merge pull request #122 from xPaw/odd-invite
Fix #116: Move 'you' handling in invites to the client
2016-03-01 00:16:55 -05:00
Jérémie Astori
5f11c26223 Fix complete crash when refreshing a public instance 2016-02-29 01:19:11 +00:00
Pavel Djundik
f6563d0ea9 Fix #116: Move 'you' handling in invites to the client 2016-02-28 10:21:19 +02:00
Jérémie Astori
ce69ce333a Merge pull request #91 from xPaw/fix-highlight
Fix how highlights are handled
2016-02-28 00:45:23 -05:00
Maxime Poulin
b70c0a98fe Remove attempts to set file modes
After some testing and manually trying to set sane file modes, it turns out the umask still applies. So it seems the logical way to handle this is to actually rely on the OS umask to set proper permissions.
2016-02-27 21:34:39 -05:00
Max-P
1d8667ed4b Merge pull request #57 from diddledan/frontend-password-change
frontend password change functionality
2016-02-27 20:07:08 -05:00
Pavel Djundik
357e238a45 Fix how highlights are handled 2016-02-28 01:30:20 +02:00
Daniel Llewellyn
b79a918be8 frontend password change functionality
- refactor clientManager.js to allow configuration parsing as a serparate
  function.
  - refactor clientManager.js to add configuration writing function.
  - add server.js changes to allow for new password-change functionality
  - add password change ui to "settings" screen
  - refactor client.js to use new clientManager functionality for saving
    the configuration files
2016-02-26 18:38:15 +00:00
Jérémie Astori
31d938440b Merge pull request #94 from xPaw/action-templates
Move actions to templates
2016-02-26 01:26:48 -05:00
Jocelyn Delande
05ae17328d Fix /invite command broken by lodash update
Broken by #38 / 19bc4f3
2016-02-25 12:43:32 +01:00
Pavel Djundik
2c8c84aec5 Move actions to templates 2016-02-23 18:22:41 +02:00
Alistair McKinlay
b2625aebae Merge pull request #38 from xPaw/lodash
Update lodash
2016-02-21 15:31:44 +00:00
Pavel Djundik
aab7f298d8 Allow locking network configuration 2016-02-21 14:02:35 +02:00
Jérémie Astori
eb794ab080 Add a simplified way to invite a user in the current channel 2016-02-20 16:32:41 +00:00
Alistair McKinlay
761958e3ee Merge pull request #7 from xPaw/invites
Handle invite event
2016-02-19 21:58:22 +00:00
Alistair McKinlay
972aadd674 Merge pull request #58 from maxpoulin64/userlist-lag
Only update the users list when needed
2016-02-19 21:24:09 +00:00
Pavel Djundik
19bc4f37e0 Update lodash 2016-02-19 15:13:53 +02:00
Jérémie Astori
172c8d534a Merge pull request #34 from xPaw/fix-closing-channel
Fix #30: Close channel on the client as soon as close event is registered
2016-02-18 23:23:36 -05:00
Maxime Poulin
5bf205195d Only update the users list when needed
Currently, for join/part/kick/nick/... the server will send an updated list of users and the client will re-render the list entirely. This ends up being a very expensive operation when joined on large channels and causes the client to slow down a lot.
2016-02-17 04:35:55 -05:00
Pavel Djundik
533ec1071b Handle invite event 2016-02-15 19:23:10 +02:00
Alistair McKinlay
0d823f24d6 Merge pull request #37 from deiu/master
Replace deprecated moment().zone
2016-02-15 08:46:09 +00:00
Jérémie Astori
d8beaaead8 Merge pull request #33 from xPaw/fix-badly-sorted-userlist
Fix #29: Correctly send sorted user list whenever an user joins
2016-02-15 01:59:33 -05:00
deiu
a3227c90b2 Replace deprecated moment().zone 2016-02-14 11:31:11 -05:00
Pavel Djundik
937126a43e Fix #30: Close channel on the client as soon as close event is registered 2016-02-14 12:08:38 +02:00
Pavel Djundik
b8dbbf8219 Fix #29: Correctly send sorted user list whenever an user joins 2016-02-14 11:50:48 +02:00
dubzi
d909065a8f Also fixed the default freenode hostname in the client file 2016-02-13 22:47:42 +00:00
Jérémie Astori
96158ba43d Rename variable corresponding to the server 2016-02-10 06:20:05 +00:00
Jérémie Astori
39dc4e8957 Update name and link to repo to new project 2016-02-10 06:20:05 +00:00
Mattias Erming
62672e4b1b Merge pull request #588 from xPaw/user-actions
Render user actions separately
2016-01-24 16:03:12 +01:00
Pavel Djundik
12d798f0e2 Send useragent with link expander requests 2016-01-24 17:01:11 +02:00
Pavel Djundik
bb98be475a Render user actions separately 2016-01-24 16:59:13 +02:00
Pavel Djundik
06ce48c565 Render user actions separately 2016-01-17 23:18:43 +02:00
JocelynDelalande
8a80ee343d Merge pull request #519 from lyra833/escape-channel
Fixed a bug preventing logging
2015-12-01 22:09:13 +01:00
Olivier Lambert
e5858744a2 Limit preview for large image files (fix #500) 2015-11-09 10:07:47 +01:00
William Boman
8fdfd70c7e Comply with ESLint 2015-10-26 03:01:47 +01:00
Alexander Gould
0d6b3b00c3 slashes are replaced with %'s when writing log files 2015-10-14 19:53:27 -04:00
Jérémie Astori
df4a91fd05 Merge pull request #409 from kalaksi/fix_topic_on_ui
Fix topic on UI
2015-10-04 14:54:57 -04:00
Olli Mäntylä
4293336f3e Move escaping of topic and improve UI for long topics
- Data should be handled as is and only do the escaping on
the view/template or wherever it is used and escaping is necessary.
Keeps things simple and the focus of escaping values in the right place.
- Remove topic capitalization
- For long topics: hide overflow and add a title to topic span
- Also, simplify the code a tiny bit.
2015-10-03 17:04:05 +03:00
Jocelyn Delande
58aa236dcd Revert "Ignore localhost links" (on prefetch)
This reverts commit 29b66ff0ec.

Rationale:

1) It's not a security feature (abuse of prefetch can be on any server it's not
   more/less risky on localhost), it's pseudo-security measure
2) It's not to us to judge if it has no use-case (in fact it has, ex: two dev
   speaking and experimenting about urls of their local site/app instance,
   local web apps...)

refs #388
2015-09-29 22:22:45 +02:00
Mattias Erming
2cee0ea6ef Increase process.setMaxListeners 2015-04-29 12:55:34 -07:00
Mattias Erming
29b66ff0ec Ignore localhost links 2015-04-06 10:40:12 -07:00
PangeaCake
6c852a849a Prevent HTML injection through /topic!!!!
Really big security issue here.
2015-01-21 19:04:01 -08:00
Mattias Erming
bce916ba52 Merge pull request #325 from codl/master
support @foobar-type highlighting
2015-01-11 23:41:27 +01:00
Mattias Erming
e54feda878 Fix crash on broken links 2015-01-03 18:58:12 -08:00
Jon Nettleton
13717bd4f7 Catch undefined content-type headers
If content-type is undefined then catch the exception and set it
to empty just as is done for the body.
2015-01-03 10:03:43 +01:00
Corentin Delcourt
5efeffb7b8 support @foobar-type highlighting 2014-12-31 15:02:12 +01:00
Cyrus
36d861fd79 handles errors, increase limit 2014-12-23 09:06:11 +08:00
Cyrus
db6c6aaffc unconsole.log 2014-12-22 08:57:29 +08:00
Cyrus
bd191c09e5 conserve bandwidth
include application/json

should be using hyperquest

appplication typo

adapt res

res.text

remove superagent dependency
2014-12-22 08:29:26 +08:00
Mattias Erming
67f6e526f2 Fetch max 1 link per message 2014-12-12 00:48:43 +01:00
Mattias Erming
9b03be22b2 Added service shortcuts 2014-12-11 23:34:22 +01:00
Mattias Erming
53faab2f41 Ignore query variables 2014-12-11 23:19:09 +01:00
fbm-static
25e9f24d8b fix commands not being removed 2014-11-10 00:01:22 +08:00
Mattias Erming
4d525eba88 Fix config 2014-11-06 11:48:10 +00:00
Riku Rouvila
9416c492dd add socket.io transports to configuration 2014-11-01 22:06:01 +02:00
Mattias Erming
1dc9929cf7 Remove password argument from add command 2014-10-27 22:55:20 +01:00
Mattias Erming
02d43ad896 Merge pull request #259 from theVDude/master
Fix edit command
2014-10-27 22:49:14 +01:00
thevdude
d18f318cad fix command-line scripts to work with username.json files 2014-10-22 22:37:29 -04:00
Orvar Segerström
560de1ac38 Send NOTICE messages to the correct channel
Fixes #177
2014-10-19 13:58:31 +02:00
Mattias Erming
5e6ac19d0f Fix crash on failed TLS connect 2014-10-16 23:33:07 +02:00
Mattias Erming
12152b8104 Ignore folders in 'users/' 2014-10-15 00:24:29 +02:00
Mattias Erming
e914ed50eb Fix '--home' option 2014-10-14 22:53:26 +02:00
Mattias Erming
1a620e1d54 Change 'users/' folder structure 2014-10-14 22:05:16 +02:00
Mattias Erming
dcdec78c4e Change 'logs/' location 2014-10-14 21:25:36 +02:00
Mattias Erming
193b30b8a7 Remove user reload for now 2014-10-14 21:14:14 +02:00
Mattias Erming
377e778f5d Move config.js 2014-10-14 21:10:09 +02:00
Mattias Erming
fea9fb7a85 Fix indentation 2014-10-14 20:51:27 +02:00
Mattias Erming
4dc9c66859 Bring back process.env variables 2014-10-14 20:47:49 +02:00
Mattias Erming
62b15ab193 Merge pull request #232 from xeoncore/autoload
Refactored Autoload system
2014-10-12 17:09:11 +02:00
Mattias Erming
c07c0f215a Merge pull request #228 from xeoncore/ogimage
Pull in extra meta data for links
2014-10-12 15:22:00 +02:00
Mattias Erming
f50568b6ec Merge pull request #230 from xeoncore/bug/illegalusernames
Replace illegal characters in username
2014-10-12 15:11:28 +02:00
XeonCore
8a61e4e969 Refactored Autoload
Autoload now uses kernel events to watch files on disk. This greatly increases performance and reliability. Autoload will also watch user.json files for changes and reload the users data.
2014-10-12 19:30:22 +11:00
XeonCore
0ba67481fb Listen to SIGHUP and reload users
Listens for a 'SIGHUP' signal and reloads users when it gets one. The signal won't be listened to if its running on Windows as a SIGHUP indicates a console window closing.
2014-10-12 17:52:51 +11:00
XeonCore
3998998871 Don't save when running in public mode 2014-10-12 16:15:03 +11:00
XeonCore
35f347472a Replace illegal characters in username
When a user has an _ or any other non-alphanumeric characters in their nickname, Shout would fail to connect to some IRC servers. This replaces all non-alphanumeric characters in the nickname before sending it as the username.
2014-10-12 15:52:43 +11:00
XeonCore
76f3646249 Restore old No description found message
When there is no meta tags, keep the old No Description found message
2014-10-12 12:53:01 +11:00
XeonCore
20d1e1b212 Add thumbnail to toggles when sites have them
Displays a small thumbnail above each toggle that comes from either og:image or twitter:image meta tags.
2014-10-12 12:42:30 +11:00
XeonCore
81d49c8e69 Pull description information from meta tags
Tries to extract a description from the page by looking at meta and og description tags
2014-10-12 12:38:38 +11:00
Mattias Erming
40f8a4ddc4 Delay save function 2014-10-12 02:20:30 +02:00
Mattias Erming
152395d303 Remember network and channels 2014-10-12 01:59:01 +02:00
Mattias Erming
aa02b0eaa7 Added client save 2014-10-12 00:47:24 +02:00
Mattias Erming
81401cec0f Added network export function 2014-10-11 22:44:56 +02:00
Mattias Erming
95bebfe12c Refactoring 2014-10-11 19:33:28 +02:00
Mattias Erming
3918c0ab61 Merge pull request #226 from wizardfrag/identd 2014-10-11 17:26:41 +02:00
Mattias Erming
d1296abf12 Clean up server options 2014-10-11 14:35:28 +02:00
David White
acd0b29671 Remove old debug/logging lines 2014-10-11 11:26:28 +01:00
David White
ea0e66afd0 Set up identd and make it work on connection 😎 2014-10-11 11:09:27 +01:00
XeonCore
dbd423e5a1 Allow binding to a local IP 2014-10-11 17:17:41 +11:00
Mattias Erming
681d3dac1a Added 'prefetch' option 2014-10-10 23:12:08 +02:00
Mattias Erming
f42a6487d6 Emit topic over socket 2014-10-10 22:05:25 +02:00
David White
924bc39a95 Fix cut/paste error in close event 2014-10-09 16:56:32 +01:00
David White
898fed76c6 Add initial support for identd 2014-10-09 16:46:12 +01:00
David White
df1578689f Replace "vi" with $EDITOR in config command 2014-10-09 13:40:16 +01:00
David White
a6aa40b1c1 Fix missing Helper method in edit and use $EDITOR
* Fix the missing Helper method in the edit command to use Helper.HOME and the correct path assembly method (path.join) instead of joining strings together!
* Use $EDITOR instead of "vi" in the event a user doesn't have "vi" installed or doesn't understand it. Fallback to "vi" in case user doesn't have $EDITOR set.
2014-10-09 09:27:36 +01:00
Mattias Erming
2e964ca629 Prevent multiple logins 2014-10-08 22:16:10 +02:00
David White
6bb0650a2b Fix highlight checking by lower-casing everything 2014-10-08 16:51:46 +01:00
Mattias Erming
0944456ade Allow relative '--home' path 2014-10-04 16:22:23 -07:00
Mattias Erming
72354700f0 Fix add user 2014-10-04 15:05:19 -07:00
Mattias Erming
b801689eaa Show user modes in channel 2014-10-04 05:31:45 -07:00
Mattias Erming
17ef33808a Fallback to USERPROFILE environment variable 2014-10-03 16:42:39 -07:00
Mattias Erming
2ed7d6364c Added '--home <path>' option 2014-10-03 16:33:44 -07:00
Mattias Erming
316fba3c08 Use 'bcrypt-nodejs' package 2014-10-03 02:57:35 -07:00
David White
58af356843 Replace bad regex with a substring test 2014-10-02 15:46:51 +01:00
David White
58709d021d Fix an issue where the word ACTION in a /me can be stripped 2014-10-02 15:25:31 +01:00
David White
18b41b8516 Fix issue #208 where actions from other users do not display 2014-10-02 15:25:06 +01:00
Shell Turner
3abec636fa Fix fs.exists to existsSync where necessary 2014-10-01 23:25:25 +02:00
Mattias Erming
354dac6a52 Fix config overwrite 2014-10-01 14:17:20 -07:00
Mattias Erming
656900448b Prevent private mode when no user exists 2014-10-01 12:05:07 -07:00
Shell Turner
cb588dc22f Don't sudo when editing the config 2014-10-01 19:38:35 +02:00
Shell Turner
b7fd64c2d8 Change config command to edit config.js in the Shout home directory
Also, copy config.js to the Shout home directory if it's not already
there.
2014-10-01 19:38:28 +02:00
Shell Turner
791a5914df Move config.js into the Shout home directory by default 2014-10-01 19:34:55 +02:00
Shell Turner
7e4534afa9 Always go through the Helper object to load config 2014-10-01 18:53:54 +02:00
Mattias Erming
bf8939cf06 List users on server start 2014-09-30 13:23:14 -07:00
Mattias Erming
9947b537b6 Fix bug causing users to disconnect 2014-09-29 08:49:38 -07:00
Mattias Erming
e4b4e0e065 Fix log highlight 2014-09-27 17:14:52 -07:00
Mattias Erming
6c6e76afda Persist inline links 2014-09-27 16:47:04 -07:00
Mattias Erming
3a28afe408 Fetch page titles 2014-09-27 13:39:14 -07:00
Mattias Erming
2a00fb1bb6 Added link plugin 2014-09-27 12:17:13 -07:00
Mattias Erming
ea5f7b2517 Call trim() on input string 2014-09-27 08:57:25 -07:00
Mattias Erming
35f6f1a677 Hide ctcp messages 2014-09-27 08:46:32 -07:00
Mattias Erming
3e22b6e88a Added https support 2014-09-26 16:26:21 -07:00
Mattias Erming
4c94a67d49 Use express 2014-09-26 15:12:53 -07:00
Mattias Erming
7936dab6e3 Show current nick 2014-09-25 16:51:53 -07:00
Mattias Erming
4d9b58ecd5 Autoload users 2014-09-24 15:23:54 -07:00
Mattias Erming
8793551371 Sync sidebar order 2014-09-24 12:42:36 -07:00
Suyeol Jeon
1839162421 Add username field to user info.
Most of the networks don't allow unicode username. This patch allows users to specify username optionally. When specified, username is used for connecting IRC networks instead of nickname.
2014-09-24 20:08:14 +09:00
Mattias Erming
69af79a635 Merge pull request #156 from dremex/custom-quit-message
Added custom quit message functionality. Resolves erming/shout#71
2014-09-22 19:15:16 +02:00
Mattias Erming
bd113dd46e Minor fix 2014-09-21 09:48:35 -07:00
Mattias Erming
11f3d452dd Server-side tracking of new message count 2014-09-21 09:46:43 -07:00
Kerry Peterson
6ed1a70f1c Added custom quit message functionality. Resolves erming/shout#71 2014-09-16 19:46:14 -06:00
Mattias Erming
ea1aaf2d6e Minor changes 2014-09-16 13:39:19 -07:00
Mattias Erming
f3aee8f6cb Minor changes 2014-09-16 13:06:13 -07:00
Mattias Erming
695e76a544 Added logging 2014-09-16 12:47:01 -07:00
Mattias Erming
56b72071ec Fix login 2014-09-16 10:43:02 -07:00
Mattias Erming
216030710a Minor changes 2014-09-16 10:33:15 -07:00
Mattias Erming
c3552319cd Update 'add' command 2014-09-15 14:31:25 -07:00
Mattias Erming
78d36d6750 Added 'Remember' login option 2014-09-15 14:13:03 -07:00
Mattias Erming
7defba55eb Added '-v, --version' option 2014-09-15 12:51:04 -07:00
Mattias Erming
3c76399cd0 Added '--public' and '--private' options 2014-09-15 12:37:05 -07:00
Mattias Erming
b52b860167 Fix login 2014-09-14 12:13:34 -07:00
Mattias Erming
66785be200 Fix bugs 2014-09-14 11:49:42 -07:00
Fredrik Pettersen
fabbb43e18 Added boolean flag if message was sent from "me"
Your own messages now have a different color, and the possibility of
changing colors etc in css of all things sent by yourself
2014-09-14 19:06:56 +02:00
Mattias Erming
caae8b859f Merge pull request #144 from kode54/master
Corrected user list prefix priority and added an extra mode prefix.
2014-09-14 12:53:01 +02:00
Mattias Erming
9553aa1888 Merge pull request #145 from sdepold/hotfix/merge-conflict
Remove legacy access to home variable
2014-09-14 12:52:52 +02:00
Sascha Depold
24803a73d7 Remove legacy access to home variable 2014-09-14 07:08:08 +02:00
Chris Moeller
e83be28223 Corrected user list prefix priority and added an extra mode prefix. 2014-09-14 01:11:19 +01:00
Mattias Erming
136213da73 Hidden password reset 2014-09-13 17:10:06 -07:00
Mattias Erming
2b41e2e88e Fix password reset 2014-09-13 15:42:11 -07:00
Mattias Erming
0d38f004d9 Add missing require 2014-09-13 14:55:07 -07:00
Mattias Erming
41027adc69 Normalize line endings 2014-09-13 14:29:45 -07:00
YuviPanda
9b2095fcbc Fix scope error in ClientManager.loadUser 2014-09-13 18:51:34 +01:00
YuviPanda
f015e4bfd4 Add missing semicolons 2014-09-13 18:51:34 +01:00
YuviPanda
f752d55b37 Add missing semicolon 2014-09-13 18:51:34 +01:00
YuviPanda
77484ccdf3 Remove duplicate definition of path variable 2014-09-13 18:51:10 +01:00
Mattias Erming
b3b36282aa Refactoring 2014-09-13 10:10:32 -07:00
Mattias Erming
221ed4b980 Change config.json to config.js 2014-09-13 09:41:11 -07:00
Mattias Erming
ead12493ff Merge pull request #123 from sdepold/feature/configurable-home
Load home directory from helper and make it configurable.
2014-09-13 18:29:33 +02:00
YuviPanda
8bbfb9618c Don't echo password on commandline when reading 2014-09-13 16:21:57 +01:00
Sascha Depold
aa2406eb4b Load home directory from helper and make it configurable. 2014-09-13 14:26:45 +02:00
Chris Moeller
1076ee4e06 Server correctly sends text/html MIME type and response code 200 for the root index. 2014-09-13 05:54:17 +01:00
Chris Moeller
b32520b1f9 Add a 500ms between network connections, to prevent hitting operating system rate limiting. 2014-09-13 05:52:03 +01:00
Mattias Erming
0f68823298 Fix 'shout add' crash 2014-09-11 16:55:50 -07:00
Mattias Erming
d53c0716e6 Added 'shout reset' command 2014-09-11 14:00:18 -07:00
Mattias Erming
428f63946b Added password hashing 2014-09-11 13:37:16 -07:00
Mattias Erming
815ed887f4 Fix multiple query windows 2014-09-11 11:05:33 -07:00
Mattias Erming
666f21cd66 Added MOTD messages 2014-09-11 10:24:32 -07:00
Mattias Erming
05a51f74a7 Fix the 'Show More' button 2014-09-10 12:23:56 -07:00
Mattias Erming
0e00f894a8 Set default port based on TLS setting 2014-09-10 09:22:58 -07:00
Mattias Erming
ef22d84d97 Add TLS/SSL support 2014-09-10 08:56:32 -07:00
Mattias Erming
1731fcdcad Fix custom name 2014-09-09 15:32:26 -07:00
Mattias Erming
0f754ea703 Allow custom network name 2014-09-09 15:20:07 -07:00
Mattias Erming
43e74d2908 Fix query windows 2014-09-09 14:28:01 -07:00
Mattias Erming
74d0765e00 Better --help output 2014-09-09 13:06:36 -07:00
Mattias Erming
c66fab06a4 Allow commands on connect 2014-09-09 12:31:23 -07:00
Mattias Erming
965981e112 Fix login 2014-09-09 10:23:46 -07:00
Stuart P. Bentley
3cfa1f42b2 Use PORT and IP environment variables
This makes Shout Heroku / Dokku / Plusku compatible.
2014-09-09 11:20:24 +00:00
Mattias Erming
25afe0f0c3 Merge pull request #55 from roccozanni/master
Add server password. Add rejectUnauthorized to disable SSL verification
2014-09-09 11:16:37 +02:00
Mattias Erming
404442f138 Bump version 2014-09-09 01:21:09 -07:00
Mattias Erming
b50deee77e Merge pull request #68 from JonathanHuot/master
Added listen IP parameter
2014-09-09 10:18:54 +02:00
Mattias Erming
04da27617e Create 'users/' if not exist 2014-09-09 01:10:09 -07:00
Jonathan Huot
3a093dacd8 Added listen IP parameter. Listening on localhost allow to put Nginx/Varnish in front of shout server 2014-09-09 09:48:53 +02:00
Rocco Zanni
86271f6ad0 Add server password. Add rejectUnauthorized to disable SSL verification 2014-09-08 23:24:20 +02:00
Yuki Morishita
41837210e1 Customizable server name
Read server name from config if "name" is present.
2014-09-08 14:45:54 -05:00
Mattias Erming
2f5be12d00 Minor change 2014-09-08 10:28:12 -07:00
Mattias Erming
53e08ebff3 Added CTCP replies 2014-09-03 14:43:27 -07:00
Mattias Erming
5594d49d11 Fix broken queries 2014-08-27 07:34:03 -07:00
Mattias Erming
90cce21e3a Minor changes 2014-08-26 11:15:17 -07:00
Mattias Erming
752c4c491b Save users in ~/.shout/ 2014-08-26 11:01:26 -07:00
Mattias Erming
0199fb4657 Added '/quote' command 2014-08-25 03:35:27 -07:00
Mattias Erming
34b729440e Fix name prettify 2014-08-25 03:14:28 -07:00
Mattias Erming
86134ba72f Trigger event when sending messages 2014-08-25 02:50:38 -07:00
Mattias Erming
6be53fba43 Rename cli folder 2014-08-25 02:40:13 -07:00
Mattias Erming
4c2e1e24f7 Added 'shout edit' command 2014-08-24 17:19:21 -07:00
Mattias Erming
100d3dee18 Added 'shout config' command 2014-08-18 18:53:17 -07:00
Mattias Erming
5e9c032591 Move cli code 2014-08-18 18:18:40 -07:00
Mattias Erming
523a9cd734 Fix failing thumbnails 2014-08-18 17:07:21 -07:00
Mattias Erming
a904de5d7a Minor changes 2014-08-18 17:07:21 -07:00
Mattias Erming
357578e20c Use superagent for image download 2014-08-17 14:40:26 -07:00
Mattias Erming
b36e069895 Update cli commands 2014-08-17 06:33:48 -07:00
Mattias Erming
ac156544f0 Fetch remote images 2014-08-16 14:19:15 -07:00
Mattias Erming
0fcdbeadec Added thumbnail plugin 2014-08-16 12:49:28 -07:00
Mattias Erming
67375a2600 Updated the cli 2014-08-14 10:26:03 -07:00
Mattias Erming
eb7c40276e Run private server by default
Use `shout start --public` or edit your `config.json` to override.
2014-08-14 09:37:26 -07:00
Mattias Erming
43b6310481 Added user loading 2014-08-13 18:52:02 -07:00
Mattias Erming
c870dc8c15 Added ClientManager class 2014-08-13 16:43:25 -07:00
Mattias Erming
cd1383c1f0 Added --port option 2014-08-05 01:44:29 -07:00
Mattias Erming
4b21c319c2 Turn index.js into an executable 2014-08-05 01:32:50 -07:00
Mattias Erming
928220c6c1 Rename lib to src 2014-08-05 00:48:14 -07:00