Commit Graph

173 Commits

Author SHA1 Message Date
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
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
Pavel Djundik
f35a2809a7 Store preview images on disk for privacy, security and caching 2017-07-18 11:37:16 +03: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
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
14b2ad7938 Refactor link previews 2017-07-03 00:41:18 +03:00
Pavel Djundik
f6dd616d5e Update to eslint 4 and enforce extra rules 2017-06-19 09:58:29 +03:00
Pavel Djundik
acf5dd5351 Do not store unnecessary information in user objects 2017-06-01 21:54:46 +03:00
Alistair McKinlay
1e504f4383 Add support for banlist messages 2017-04-22 13:51:28 +01:00
Daniel Oaks
5c336d3789 Add slug with command to unhandled messages 2017-04-16 12:31:32 +03:00
Pavel Djundik
c0e364e1c2 Store channel keys 2017-04-01 15:28:38 -04:00
Pavel Djundik
4a68b78fd5 Implement away message restoration on reconnections and auto away 2017-03-29 00:27:58 -04:00
Pavel Djundik
6023035838 Update depdencides to latest stable versions 2016-11-19 10:49:16 +02:00
Pavel Djundik
a1f56c7395 Improve support for opening multiple clients at once
- Synchornize unread counter with the server
- Fix unread marker on no attached clients
- Increase unread counter for server messages
2016-10-17 01:31:22 -04:00
Jérémie Astori
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
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
aa02fd5180 Enforce more eslint rules 2016-10-09 17:55:37 -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
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
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
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
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
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
100262ad1f Cache loaded config and merge it with defaults
Fixes #249
2016-06-26 19:30:25 +03:00
Pavel Djundik
aa8c3f6419 Improve nick highlights 2016-05-12 14:20:24 +03:00
Maxime Poulin
96d282e73c
Add WEBIRC support
Fixes #181
2016-05-02 00:45:19 -04: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
Pavel Djundik
16370d8fcc Add /ctcp command and handle ctcp responses 2016-04-07 16:08:31 -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
db5fe00b60 A couple of fixes after rebasing and updating framework 2016-04-07 16:06:01 -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
28ae544b2a Move connection events to a separate file, sync PREFIX with frontend 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
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
Jérémie Astori
d02c0bd72c Remove unnecessary operation when sorting users 2016-03-14 01:44:03 -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
Alistair McKinlay
b2625aebae Merge pull request #38 from xPaw/lodash
Update lodash
2016-02-21 15:31:44 +00:00
Pavel Djundik
19bc4f37e0 Update lodash 2016-02-19 15:13:53 +02:00
Pavel Djundik
533ec1071b Handle invite event 2016-02-15 19:23:10 +02:00
William Boman
8fdfd70c7e Comply with ESLint 2015-10-26 03:01:47 +01:00
fbm-static
25e9f24d8b fix commands not being removed 2014-11-10 00:01:22 +08: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
f42a6487d6 Emit topic over socket 2014-10-10 22:05:25 +02:00
Mattias Erming
b801689eaa Show user modes in channel 2014-10-04 05:31:45 -07:00
Mattias Erming
2a00fb1bb6 Added link plugin 2014-09-27 12:17:13 -07:00
Mattias Erming
7936dab6e3 Show current nick 2014-09-25 16:51:53 -07: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
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
Chris Moeller
e83be28223 Corrected user list prefix priority and added an extra mode prefix. 2014-09-14 01:11:19 +01:00
Mattias Erming
41027adc69 Normalize line endings 2014-09-13 14:29:45 -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
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
34b729440e Fix name prettify 2014-08-25 03:14:28 -07:00
Mattias Erming
357578e20c Use superagent for image download 2014-08-17 14:40:26 -07:00
Mattias Erming
0fcdbeadec Added thumbnail plugin 2014-08-16 12:49:28 -07:00
Mattias Erming
928220c6c1 Rename lib to src 2014-08-05 00:48:14 -07:00