Commit Graph

233 Commits

Author SHA1 Message Date
Max Leiter
ad1114ccfe Support audio file previews 2017-12-12 11:29:13 -08:00
Erik Vosseberg
33d865501d
Add whois and conversation as action to user contextmenu
Add Op specific actions to contextMenu

Show context menu when left clicking user

Switch to using data attributes as selectors

remove ban as possible action

Move `isOpInChannel()` to utils.js

Capitalize strings

use CSS.escape for `ownNick`

use string interpolation

properly point to findCurrentNetworkChan

Move context menu item actions to command pattern

add icons for context menu actions

Make list in context menu always list.

remove empty lines in style.css

use info circle instead of question circle

change context menu labels.

change contextMenuActions.execute to more explicit method.
2017-12-11 23:04:29 -05:00
Pavel Djundik
2d0ddfb2e8
Merge pull request #1778 from thelounge/xpaw/lazy-init
Heavily improve performance of "init" event
2017-12-05 12:03:01 +02:00
Pavel Djundik
b5d39b96b9
Handle CHGHOST cap 2017-12-04 23:33:48 -05:00
Jérémie Astori
b80710ed82
Merge pull request #1788 from PolarizedIons/PolarizedIons/actualip
Add actualip to the actualhost line in the whois output
2017-12-04 23:30:04 -05:00
Logan Griswold
f07c1bef69
#1755 - implement monospace formatting with keybinding, tests, and help section 2017-12-03 15:10:46 -05:00
Logan Griswold
0643d3b4a3
#1754 - implement strikethrough formatting, client keybinding, tests, and help section 2017-12-03 15:10:34 -05:00
Pavel Djundik
41e121d270 Only emit a single message per channel on init 2017-12-03 16:13:18 +02:00
stepie22
c7f6b8409f Change whois's actual host to include the actualip aswell 2017-12-01 15:03:02 +02:00
Pavel Djundik
a7bd40a5b1 Fix users not being linked in /me actions 2017-11-30 14:13:11 +02: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
f89054784f
Merge pull request #1764 from thelounge/xpaw/fix-data-from
Fix data-from on messages
2017-11-30 11:28:00 +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
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
Pavel Djundik
68753ae3e8 Fix data-from on messages 2017-11-29 20:45:19 +02:00
Max Leiter
3d31fa4686 Link nicks mentioned in messages 2017-11-27 09:10:56 -08:00
Max Leiter
9eb79d675c
Fix whois template parsing real name field
Links and etc will now render correctly
2017-11-25 12:23:03 -08:00
Erik Vosseberg
f40edc7dc2
Include all available whois info 2017-11-21 00:27:24 -05:00
Pavel Djundik
c30f4aaaeb Move help to view 2017-11-19 19:43:43 +02:00
Pavel Djundik
90861effb4 Fix sign in 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
55d1625ab2 Split connect and settings into templates 2017-11-19 19:43:42 +02:00
Pavel Djundik
2a6b255aee Make sign in work 2017-11-19 19:43:42 +02:00
Pavel Djundik
303dddb12e wip 2017-11-19 19:43:42 +02:00
Jérémie Astori
0e55dafd8a WIP 2017-11-19 19:43:42 +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
36ab3ffc8d
Merge pull request #1689 from thelounge/xpaw/parse-real-name
Parse formatting in real name
2017-11-19 00:07:23 -05:00
Pavel Djundik
9ff974b702 Fix missing attributes on unhandled messages 2017-11-10 16:18:44 +02:00
Pavel Djundik
10dab7afac
Parse formatting in real name 2017-11-07 17:38:03 +02:00
Pavel Djundik
d7e6db92b5 Implement session list 2017-09-26 10:56:08 +03:00
Jérémie Astori
90cb79ac91 Merge pull request #845 from MaxLeiter/MaxLeiter/away-notify
Use away-notify to show updates on users away state
2017-09-17 14:45:27 -04:00
Max Leiter
163cfaba3c Use away-notify to show user away status change 2017-09-17 11:16:48 -07:00
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
Jérémie Astori
d82f4007ec
Fix /expand command also expanding condensed status messages 2017-09-07 19:50:00 -04:00
Pavel Djundik
94d40256d9 Always create condensed wrapper 2017-09-02 18:31:47 +03:00
Pavel Djundik
d814abd1cf Implement condensed messages option entirely with CSS
Fixes #1432
2017-08-30 15:43:31 +03:00
Jérémie Astori
51bd46b871
Fix time placeholder showing on mobile format for condensed messages
As an extra, make sure time placeholder cannot be selected anymore, and do not do an extra call to `tz` helper when time is not relevant/displayed.

I tried to entirely remove `time`/`from` blocks, but because of flexbox layout, that broke message alignment...
2017-08-23 02:23:54 -04:00
Jérémie Astori
853e646670
Move condense caret to the right, animate transition, add hover state (with transition), reuse thumbnail toggle style 2017-08-13 16:16:38 -04:00
Alistair McKinlay
499dfdfe92
Condense Joins 2017-08-13 14:30:30 -04:00
Pavel Djundik
6b00cdeba9 Change history button text while loading 2017-08-09 14:18:37 +03:00
Jérémie Astori
b9f17b77ab
Add Previous/Next cycling buttons to the image viewer 2017-07-23 13:14:27 -04: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
1c8ea0b75c
Fix preserved whitespace-related issues for previews by separating them from main text 2017-07-21 01:50:09 -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
Jérémie Astori
f88d1e3bef Merge pull request #1242 from starquake/newlines-fix
Correctly show whitespace and newlines in messages
2017-07-19 02:05:31 -04:00
Jan Visser
f0e6e397a4 Correctly handle multiple successive whitespace characters 2017-07-18 16:54:35 +02:00
Pavel Djundik
70d09841d9 Fix incorrect mode on kick target 2017-07-18 17:38:24 +03:00
Pavel Djundik
f35a2809a7 Store preview images on disk for privacy, security and caching 2017-07-18 11:37:16 +03:00
Jérémie Astori
511b173b6f
Add an image viewer for thumbnails and image previews 2017-07-16 19:25:48 -04:00
Jérémie Astori
28200830ed
Move preview toggle buttons next to their respective URLs and switch from ellipsis to caret 2017-07-08 04:36:26 -04: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
Jérémie Astori
ec5b5ef565
Add title attributes to previews
This is useful on long preview titles/descriptions that truncate. We currently do the same for topics
2017-07-04 12:56:57 -04:00
Pavel Djundik
c62bc2fa35 Do not truncate link previews if viewport can fit more text
Fixes #1084
2017-07-04 09:51:35 +03:00
Pavel Djundik
14b2ad7938 Refactor link previews 2017-07-03 00:41:18 +03:00
Niko Bews
eb4a4c7dfe Move nickname rendering to a single template
Closes #1241
2017-06-22 13:28:17 +03:00
Pavel Djundik
acf5dd5351 Do not store unnecessary information in user objects 2017-06-01 21:54:46 +03:00
Jérémie Astori
3e54569624
Fix user list search not responding to clicks on search results 2017-05-13 18:34:27 -04:00
Pavel Djundik
381ea326f4 Disable tabindex on userlist search input
Fixes #1036.
2017-04-30 15:07:09 +03:00
Pavel Djundik
c583d6edf9 Correctly update user list and search filtering on user updates 2017-04-23 18:18:56 -04:00
Pavel Djundik
b1e9a7ffda Use separate container for search results 2017-04-23 18:18:56 -04:00
Pavel Djundik
98e3bd0ca2 Merge pull request #1054 from thelounge/astorije/friendly-date-marker
Use moment on the client to display friendly dates
2017-04-23 10:24:21 +03:00
Alistair McKinlay
1e504f4383 Add support for banlist messages 2017-04-22 13:51:28 +01:00
Jérémie Astori
5fabf2f61a Make sure friendly date markers are reset at midnight 2017-04-22 00:39:00 -04:00
Jérémie Astori
648cfd12db Use moment on the client to display friendly dates
Also, unread and date markers are now half-transparent based on their colors and not parent opacity. This is necessary to display a non-translucide tooltip.
2017-04-22 00:38:19 -04:00
Alistair McKinlay
adfd99c92c Add fix for undefined name being slugified 2017-04-21 09:32:57 +01:00
Daniel Oaks
5c336d3789 Add slug with command to unhandled messages 2017-04-16 12:31:32 +03:00
Pavel Djundik
c0a7ae9d92 Use css tooltips on time elements 2017-04-13 01:55:27 -04:00
Maxime Poulin
6a273d825a Improve inline previews for links and images 2017-04-04 01:40:51 -04:00
Jérémie Astori
4363ef4abe Merge pull request #973 from thelounge/xpaw/use-require
Use require() instead of import in client code
2017-03-31 01:41:29 -04:00
William Boman
c6ed95e555 views/msg: set data-from attribute to allow styling messages from specific user(s) 2017-03-20 23:08:28 +01:00
Pavel Djundik
dcefcd19cb Use require() instead of import in client code
Closes #895
2017-03-18 11:21:18 +02:00
Pavel Djundik
fb87bd3a58 Webpack 2016-12-27 19:15:30 +02:00
Jérémie Astori
7ae11babcb Add human-readable idle time in whois info 2016-12-22 00:21:16 -05:00
stepie22
93f0f6942e Add a date seperator 2016-11-23 16:35:42 +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
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
Jérémie Astori
4e1d89f567 Consolidate locale time helpers
When working on #660, I missed that helper already existed, added in #167.
2016-10-01 15:38:06 -04:00
Jérémie Astori
fc03a338fc Display localized timestamp in title of message times 2016-10-01 02:46:19 -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
Jérémie Astori
2041c936b2 Add tooltips to user list and submit buttons 2016-08-03 01:10:22 -04:00
Maxime Poulin
1d47290ada Implement /list
Thanks to @xPaw for the base of this code
2016-07-22 21:42:42 -04:00
William Boman
c821b30374 views/chat: set title attribute on topic 2016-07-18 21:00:40 +02: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
3cddbbce6e Improve styling of the unread marker 2016-07-05 15:32:41 -04:00
Pavel Djundik
d37e94308d Unread marker MVP 2016-07-05 15:32:41 -04:00
Pavel Djundik
cada00ab6a Display unhandled numerics on the client 2016-07-03 11:47:53 +03:00
Pavel Djundik
8b8050d02a Remove javascript scrollbar library, use hover appearing scrollbar instead 2016-07-02 13:28:22 +03:00
Pavel Djundik
1438ba6f93 Change nicks from links to spans everywhere
Fixes #338
2016-06-22 22:34:10 +03:00
Jérémie Astori
c87d82dc48 Replace color generation with CSS classes
These colors were built using the current generation function to have
similar style.
2016-05-15 15:21:18 -04:00
Jérémie Astori
aad757e50a Fix missing colors in action messages 2016-05-10 19:40:09 -04:00
Pavel Djundik
ed700ef504 Fix unread counter not being formatted on page load 2016-05-08 22:49:53 +03:00
Jérémie Astori
57d7b0147e Make the sidebar close a button and add aria-label to it 2016-05-08 15:06:36 -04:00
Jérémie Astori
8af36eb0c7 Add an aria-label attribute to the user search field 2016-05-08 15:06:36 -04:00
Jérémie Astori
97c08d409e Add missing aria-label on icon buttons 2016-05-08 15:06:36 -04:00
Jérémie Astori
5fa5140bd8 Use a more explicit wording for the "Show more" button 2016-05-07 20:08:27 -04:00
Pavel Djundik
a082039ecb Keep autocompletion sort whenever an user joins 2016-04-28 22:44:27 +03:00
Pavel Djundik
d30e4e68ca Parse ctcp replies 2016-04-25 19:24:43 +03:00
Jérémie Astori
e799cc493c Move the sidebar serverOptions to the according template 2016-04-10 01:04:39 -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
Pavel Djundik
2a7a93d207 Fix incorrect context menu names in nick, whois and topic set by messages 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
43f58a8075 Format topic set date 2016-04-07 16:07:40 -04:00
Pavel Djundik
a01216fa4c Update irc-framework 2016-04-07 16:04:41 -04:00
Pavel Djundik
b6993f6e37 Make whois work 2016-04-07 16:04:41 -04:00
Pavel Djundik
9ab71b2588 Handle nick 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
Maxime Poulin
f1ecae8023 Display whitespace properly
Fixes alignment in many server's motd as well as in-channel ASCII art
2016-04-05 22:36:04 -04:00
Pavel Djundik
5c1a95b22f Do not parse link titles for IRC formatting 2016-04-04 10:43:45 +03:00
Jérémie Astori
4f7f862a55 Add a specific item divider for the context menu, allowing some margin 2016-03-20 17:40:12 -04:00
Maxime Poulin
d3a8b2b217 Add a menu where the Leave button was 2016-03-20 22:33:55 +02:00
Pavel Djundik
73930688cc Remove dedicated close button next to user button 2016-03-20 22:33:42 +02:00
Pavel Djundik
96ef274838 Keep track of highlights when user is offline 2016-03-13 18:05:05 +02:00
Pavel Djundik
a61973a156 Make whois a client template 2016-03-07 17:10:46 +02:00
Pavel Djundik
84ed021e0e Add context menus 2016-03-01 13:56:36 +02:00
Pavel Djundik
f6563d0ea9 Fix #116: Move 'you' handling in invites to the client 2016-02-28 10:21:19 +02:00
Pavel Djundik
357e238a45 Fix how highlights are handled 2016-02-28 01:30:20 +02:00
Pavel Djundik
2c8c84aec5 Move actions to templates 2016-02-23 18:22:41 +02:00
Maxime Poulin
867917ff6e Fade long channel names in sidebar 2016-02-22 01:07:59 -05:00
Max Leiter
20e9e6b611 Update chat template so no user-icon shown when a server or PM is selected. 2016-02-13 16:32:00 -08:00
Alistair McKinlay
e5aa02d696 Change user buttons to as. Allows highlighting on firefox. 2016-01-24 16:53:06 +00:00
Pavel Djundik
bb98be475a Render user actions separately 2016-01-24 16:59:13 +02:00
Pavel Djundik
7a9bc41b30 Use a single function to process and render messages 2016-01-23 16:59:05 +02:00
Jérémie Astori
37aa9c7eeb Revert "Change user buttons to as. Allows highlighting on firefox." 2016-01-09 14:16:44 -05:00
Alistair McKinlay
fe0eff8abd Change user buttons to as. Allows highlighting on firefox. 2016-01-09 15:51:54 +00:00
The Bastard Operator
7ef2da0c83 Fix XSS vulnerability 2015-08-16 03:28:21 +02:00
Mattias Erming
ccea9ea43d Close button now correctly says 'Close' for private messages 2014-12-12 00:10:15 +01:00
Mattias Erming
eb3bc22d71 Added dynamic title 2014-11-07 20:52:38 +01: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
Mattias Erming
f42a6487d6 Emit topic over socket 2014-10-10 22:05:25 +02:00
Mattias Erming
eae1e661b7 Split users by mode in the sidebar 2014-10-04 12:47:27 -07:00
Mattias Erming
b801689eaa Show user modes in channel 2014-10-04 05:31:45 -07:00