Commit Graph

790 Commits

Author SHA1 Message Date
JC Brand
115abdda27 muc-views: pass all model attributes to template
Makes it possible to show a validation message in a downstream
application.
2019-12-03 15:02:37 +01:00
JC Brand
9bff567b3c Fixes #1796 2019-12-03 10:57:01 +01:00
JC Brand
d7d810ba89 Improvements to rendering MUC MAM logs before joining
- Add config variable `muc_show_logs_before_join`
- Restore nickname form for the original use-case (when not showing MAM logs before joining).
- Render nickname form in the `.muc-bottom-panel` when showing MAM logs (instead of in a modal)
- Show a message when there aren't any archived messages to show
- Fix converse-mam so that chat logs are properly fetched before entering a MUC

closes #1266
2019-11-29 09:23:15 +01:00
Emmanuel Gil Peyrot
a83911d67f WIP: Move the nickname selection form to a modal 2019-11-28 15:45:48 +01:00
JC Brand
025cdbf18f Check for support before allowing message moderation 2019-11-22 13:50:36 +01:00
JC Brand
1b9ba58aca Rename variable to be more accurate 2019-11-22 13:50:36 +01:00
JC Brand
d895c7fc16 Bugfix. Leave space between classes 2019-11-22 13:50:36 +01:00
JC Brand
b4dafcc45b Add support for XEP-0424 and XEP-0425
- Add support for switching ephemerality after message creation
- Move more methods from ChatBox and ChatRoom to utils/stanza.js
- Rename 'ephemeral' to 'is_ephemeral' since it's a boolean
2019-11-22 13:50:36 +01:00
JC Brand
1fa203c990 Support for IndexedDB. updates #1105
Depend on latest backbone.browserStorage which has support for IndexedDB
via localforage.

Storage operations are now asynchronous and transactional.

Bugs fixed (mostly by waiting for operations to complete):

* Rooms are now fetched asynchronously, so wait before triggering `show`
  or when closing.
* Make sure chat create/update transactions complete before firing events
* Make sure chats and messages have been fetched before creating new ones.
* When doing a `fetch` with `wait: false` on a collection and then
  creating a model in that collection, then once the read
  operation finishes (after creating the model), the collection is emptied again.
* Patch and wait when saving.
  Otherwise we have previously set attributes overriding later ones.
* Make sure api.roomviews.close returns a promise

Test fixes:

* Chats are now asynchronously returned, so we need to use `await`
* Wait for the storage transaction to complete when creating and updating messages
* Wait for all chatboxes to close
    Otherwise we get sessionStorage inconsistencies due to the async nature of localforage.
* Wait for room views to close in spec/chatroom.js

In the process, remove the `closeAllChatBoxes` override in
converse-controlbox by letting the `close` method decide whether it
should be closed or not.
2019-10-30 13:02:23 +01:00
JC Brand
b71500104b Move emoji-picker out so that its width can expand 2019-10-29 17:19:33 +01:00
JC Brand
015f1c6fc8 Make status clickable instead of adding pencil icon 2019-10-17 13:33:43 +02:00
JC Brand
e6e23a1a82 Add initial support for custom emojis 2019-10-17 12:12:08 +02:00
JC Brand
2ed8b4660e Bugfix. Duplicate rooms-list header 2019-10-16 12:11:59 +02:00
JC Brand
c8b7e8ab99 bookmarks: refactor to use VDOMView instead of OrderedListView 2019-10-13 17:53:57 +02:00
JC Brand
91397125ba roomslist: Refactor to use VDOMView instead of OrderedListView 2019-10-13 16:59:31 +02:00
JC Brand
8780f7a128 Fix linting errors (no-unused-vars) 2019-10-09 16:27:58 +02:00
Christoph Scholz
1c7c25091f new config option: allow_message_corrections 2019-10-04 15:42:38 +02:00
JC Brand
1a7b7f1bea modtools: fix typo 2019-09-09 12:10:44 +02:00
JC Brand
2ec70adc5d modtools: Add help text to explain roles and affiliations 2019-09-09 11:02:14 +02:00
JC Brand
f52ade1193 emoji-views: don't iterate over all emojis if...
new search term includes the previous one
2019-09-05 16:17:59 +02:00
JC Brand
01468fc087 converse-emoji: Sort search results
Also, don't show the categories while searching.
2019-09-05 14:49:06 +02:00
JC Brand
3f0d88e88d Fix ids for the modtools modal 2019-09-04 15:18:51 +02:00
JC Brand
3b40f6964f Update Emoji JSON
* Order by category
* Set odering pre category (instead of just showing them alphabetically)
2019-08-22 16:21:27 +02:00
JC Brand
a59510bbf0 Highlight relevant category when scrolling 2019-08-22 13:56:47 +02:00
JC Brand
2c48096664 Add new spec with emoji tests 2019-08-22 13:56:47 +02:00
JC Brand
73c8002b76 Add search bar for emojis 2019-08-22 13:56:47 +02:00
JC Brand
13d419102a converse-emoji-views: Show categories in chosen skintone 2019-08-22 13:56:47 +02:00
JC Brand
1cf9a936a4 Move Views associated to emojis into a new plugin 2019-08-22 13:56:47 +02:00
JC Brand
d7ce231c51 Various emoji improvements:
* Add emoji tooltip
* Make categories configurable and add smileys category
* Rearrange emoji categories and style
& Show all emojis together
2019-08-22 13:56:47 +02:00
JC Brand
4cb9fd88a8 Refactor emojis so that JSON is fetch asynchronously 2019-08-22 13:56:47 +02:00
JC Brand
89ac4a6969 Show error message with option to retry when MAM query times out 2019-08-13 11:08:03 +02:00
JC Brand
cb10c28082 modtools: Test that error renders when not allowed to fetch affiliation list
Also fix scrolling bug
2019-08-12 12:45:12 +02:00
JC Brand
aee6a192d1 Add a new command /modtools
in which you can set user affiliations and roles.

Also, let getAffiliationList return an Error instead of `null` if you're
not allowed to fetch a particular affiliation list.
2019-08-09 23:30:14 +02:00
JC Brand
45e19acfb1 Use cursor: pointer instead of href="#" 2019-07-24 14:09:53 +02:00
JC Brand
8a405ee88c Various bugfixes based on the previous refactoring.
These two commit should ideally be one, but I inadvertently pushed to
remote too early.
2019-07-10 16:55:55 +02:00
JC Brand
5c88d3e836 Add role and affiliation classes to message DOM element 2019-07-08 13:58:15 +02:00
JC Brand
67bcc00f10 Associate ChatRoomOccupant to ChatRoomMessage
and use promises to indicate when an occupant or contact has been set
2019-07-04 08:28:12 +02:00
JC Brand
38d0d8360b New config setting message_limit
for limiting messages to a certain number of characters.
2019-06-16 21:52:56 +02:00
JC Brand
1d9bbb8ddd Message display improvements
* Checkmark and edit modal button are now on the right
* Instead of showing checkmarks for MUC messages,
  we now show them as light grey before MUC reflection
* Simplify message markup by requiring less `if` statements
2019-06-04 11:12:22 +02:00
JC Brand
7a18f59f8f Simplify rendering of trimmed chats
Also fix issue where trimmed headline chatboxes don't show the proper
color
2019-05-29 13:28:45 +02:00
JC Brand
da713f3162 Improve chatroom name rendering
- Take locked_muc_domain into consideration in chatroom display name
- Use getDisplayName when rendering the heading name
- Give preference to bookmark name if it exists
2019-05-29 13:27:41 +02:00
JC Brand
f20aee6906 Fixes #1576
When using `auto_login` and logging out, Converse gets stucks with an infinite spinner.
2019-05-26 15:30:15 +02:00
JC Brand
f387c947f5 Allow the full app to be embedded.
- new config option `singleton`.
- new plugin `converse-uniview`
- removed `converse-embedded`.
- various CSS changes, to properly render an embedded full app
- don't re-open cached and non-autojoined chats in singleton mode

The goal here is to extend the `embedded` `view_mode` so that the full app can
also be embedded, not just a single MUC or private chat.

To do this, we'll need to differentiate between multi and singleton chat apps.

* A singleton chat app contains only a single chat.
* A multi-chat app can contain zero or more chats

So we introduce a new config option, `singleton`, which when used with
`view_mode` set to `embedded` will determine whether a single chat or the full
app is embedded.

Similarly, in `overlayed`, `fullscreen` and `mobile` view modes, `singleton`
set to true will allow only one chat within the parameters of that view mode.

We're appropriating the word `singleton` and introducing the concepts of
`uniview` and `multiview` (see a785ca8) to cover what was
previously meant with `singleton`.

updates #1297
2019-05-24 20:39:19 +02:00
JC Brand
271c79eae8 Refactor message corrections
- Save date for older message versions and display it in the modal
- Properly handle the correction being received *before* the corrected message
2019-05-22 13:26:46 +02:00
JC Brand
7cd69726a8 Loosen coupling between ChatRoomOccupantsView and ChatRoomView
Hide/show the sidebar based on state and not imperatively in ChatRoomView
2019-05-15 14:50:12 +02:00
JC Brand
ca5b6f9fde Add class on MUC message to indicate author's role 2019-05-13 20:10:48 +02:00
JC Brand
3bd9e09fd7 Don't wipe the nickname value when rerendering the form
Ideally Snabbdom wouldn't completely replace the input when we add the
`error` class, because that's what's causing the input value to be
cleared.
2019-04-25 08:35:44 +02:00
JC Brand
d311e14013 Render MUC forms with Backbone.VDOMView
That way we don't lose the user's input values, we avoid flashing and we
avoid unnecessary rendering.

In the process, fixed an annoying issue where Chrome auto-completes
what it thinks is the username into the "Language Tag" field of the MUC
config form.

Instead we tell Chrome that the MUC JID is the username, thereby also
letting it save the password to to that JID.
2019-04-24 14:51:12 +02:00
JC Brand
e1392895b0 Fix: when closing a modal the overlay doesn't get removed
Looks like the `webkitTransitionEnd` event doesn't fire because `fade`
is already on the modal, so there's no transition, which means that in
bootstrap.native the event doesn't get fired to remove the overlay.
2019-04-18 16:14:51 +02:00
JC Brand
725a382e3b Refactor initialization and defaults for chat boxes
- Let box_id start with char for valid HTML.
- No need to use SHA1 for box id
- No need for the user_id attribute.
- Set nickname when we set the roster contact.

Also...

- _converse.api.contacts.get is now async
- _converse.api.chats.create is now async
2019-04-18 16:14:51 +02:00
JC Brand
06f53e7f18 Add some padding to form error message 2019-04-11 23:42:19 +02:00
JC Brand
f84c201437 Hide the textarea when a user is muted in a groupchat 2019-04-11 01:40:16 +02:00
JC Brand
36761f290e Don't show checkmark for /me messages 2019-04-10 19:34:31 +02:00
JC Brand
a75c118a2c Prioritize roster nickname as message and chatbox display name
Set reference to roster contact on the message and chatbox object and
listen for changes to the nickname.

Currently, because chat boxes are fetched and initialized before the
roster, messages and chats are repainted with the correct display name
only later, causing a "flash" effect.

Ideally we would only initialize the chat boxes after the roster
contacts have been fetched, but this is currently not easily possible
because we need the control box to render before everything else.
2019-04-09 17:20:41 +02:00
JC Brand
be1abdb5ff Add classes for easy styling 2019-03-28 15:43:29 +01:00
Christoph Scholz
dde815e0a8 Allow manual entry of jid with xhr_user_search_url 2019-03-28 15:38:56 +01:00
JC Brand
34b8cd2ee6 Prevent user from adding themselves as contact 2019-03-28 15:36:08 +01:00
JC Brand
cc865de0f0 Add new config setting autocomplete_add_contact
Determines whether search suggestions are shown in the "Add Contact" modal.
2019-03-28 14:34:12 +01:00
JC Brand
b726a2353c Remove Awesomeplete in favor of _converse.AutoComplete 2019-03-28 12:43:34 +01:00
JC Brand
75ae76ad93 Use _converse.AutoComplete in "Add Contact" modal 2019-03-28 10:47:14 +01:00
JC Brand
616731b323 Don't show MUC domain if locked_muc_domain is set to 'hidden' 2019-03-27 13:13:07 +01:00
JC Brand
18ad34e194 Show emoji shortname in tooltip 2019-03-27 08:41:32 +01:00
JC Brand
3ce3d661bc Make sure required registration fields have "required" attribute 2019-03-26 14:52:26 +01:00
JC Brand
9f290dab25 New config setting locked_muc_nickname
When set, the "Nickname" field won't be shown in the "Add groupchat"
modal and instead the nickname will be automatically set (based on other
config settings).
2019-03-26 13:29:33 +01:00
JC Brand
32f0eb5488 Fixes #1407. Don't allow empty value for MUC nickname 2019-03-26 13:03:42 +01:00
JC Brand
143d44c3f6 Avoid horizontal scrolling on the fullscreen login page 2019-03-07 17:47:30 +01:00
JC Brand
d4fbdf5629 Fixes #1213. Switch roster filter input and icons 2019-03-01 11:56:22 +01:00
JC Brand
61a0e1bb16 New config setting show_client_info
Determines whether we show the icon for opening the client's "About" modal.
2019-02-27 14:42:27 +01:00
JC Brand
49da581d14 Fixes #1400. When chat message is only an emoji, enlarge it 2019-02-27 10:34:47 +01:00
JC Brand
d3a4555165 Re-add support for muc_domain and add locked_muc_domain.
updates #1373
2019-02-26 11:58:01 +01:00
JC Brand
2ddd918f6a Fixes #1437. List of groupchats doesn't scroll 2019-02-26 11:57:36 +01:00
JC Brand
4463b44773 Use "XMPP address" instead of "XMPP username" 2019-02-19 15:00:38 +01:00
JC Brand
d97deaea80 Fixes #1369
* Add test and changelog entry
* Also show message subject if available
2019-01-28 13:27:25 +01:00
Emmanuel Gil Peyrot
9702e9dee3 Add ARIA live region on chat-content
This asks screen readers to read every message received, and is
mandatory for blind users to get notified of new messages.
2019-01-23 14:01:27 +01:00
JC Brand
1984bdd8e1 Remove row class.
Causes the register form to overflow the parent bounds in overlay view
2019-01-10 21:17:05 +01:00
JC Brand
1eb00d3e5d CSS/HTML: Nicer styling of branding on the login page 2019-01-10 21:15:01 +01:00
JC Brand
a4d608dcdf Save room features in separate model
As a namespacing mechanism to avoid clashes.
Fixes bug where two chats are shown as currently being active in the rooms list.
2019-01-10 12:15:59 +01:00
JC Brand
aa274f41c2 Make background darker and add new logo 2019-01-02 22:54:04 +01:00
JC Brand
debb8f0e4f Remove .icon-converse styles 2019-01-01 12:30:54 +01:00
JC Brand
a31c2d40f2 Remove icomoon fonts and use Bauman and the new logo for branding 2019-01-01 11:12:23 +01:00
JC Brand
b7c01993b7 User-facing term is "groupchat", not "room" 2018-12-16 11:22:12 +01:00
JC Brand
d5485d09ae Always render the OMEMO lock icon
When OMEMO isn't possible, render it as grey.

This change makes OMEMO for MUCs easier, since there I anticipate that
OMEMO support might change dynamically based on who enters/exits the
room.

updates #1180
2018-12-14 11:25:57 +01:00
JC Brand
df3118fe81 Fix bookmark icon 2018-12-12 17:40:14 +01:00
JC Brand
1d55b131f6 CSS: set groupchat owner badge to groupchat color 2018-12-10 15:12:29 +01:00
JC Brand
262b9f9260 CSS: Give color to the controlbox headings 2018-12-10 15:12:28 +01:00
JC Brand
4c965b58d3 CSS: Reuse list-item-action class for "Contact Requests" actions 2018-12-10 15:12:27 +01:00
JC Brand
2a79c5b08a Consistent icon usage for leaving a room 2018-12-10 13:31:42 +01:00
JC Brand
90bf42a002 HTML and CSS improvements for listed items in the controlbox
Fixes #1348

Tried to get the unread messages indicator to line up properly with the
text and icons in a room list item.

Also tried to reuse styles where appropriate, specifically
`.list-container` and `.list-toggle`.
2018-12-07 11:37:51 +01:00
JC Brand
7e24019568 Fixes #1288
Add CSS classes to differentiate between incoming and outgoing messages
2018-11-15 10:30:58 +01:00
JC Brand
ecff1fd954 Don't show role badges for /me messages 2018-11-15 10:25:12 +01:00
Emmanuel Gil Peyrot
339d8a8f92 Add XHTML compatibility
This is mainly a testing tool, which makes a mode where all HTML bugs
which could slightly mess up the rendering will trigger proper errors in
the browser.

Fixes #1131.
2018-11-14 22:08:12 +01:00
Emmanuel Gil Peyrot
ab5dd4a146 Switch avatar rendering from canvas to SVG.
This delegates the calculation of the aspect ratio to the browser, and
generally simplifies the code.

Fixes #1156.
2018-11-14 16:03:37 +01:00
JC Brand
dde2efb653 Fix trash icons for pending contacts 2018-11-14 15:46:51 +01:00
JC Brand
1e7247b4d2 Add client info modal showing name and version number 2018-11-14 12:01:27 +01:00
Christoph Scholz
9a307da808 show version info in login dialog 2018-11-13 21:12:24 +01:00
Christoph Scholz
4b7d18f418 added values 'on' and 'off' for 'trusted' option 2018-11-13 18:36:24 +01:00
Christoph Scholz
da5ca0b585 implement XEP-0184: Message Delivery Receipts 2018-11-13 17:13:35 +01:00
JC Brand
3b60ced39c Add a button for regenerating your OMEMO device bundle 2018-11-12 20:29:55 +01:00
JC Brand
773c678c4d More button color fixes after switching to css properties 2018-11-12 14:06:52 +01:00
JC Brand
6139b8060d Consistent placing of modal buttons 2018-11-12 14:05:35 +01:00
JC Brand
476b8041aa Fix badge & button colors. Ensure vars apply to .converse_content 2018-11-07 11:40:35 +01:00
JC Brand
2179255d0a Add button for resyncing roster contacts 2018-11-07 11:12:04 +01:00
JC Brand
5e7d5d7fb1 Add own class and style for controlbox heading buttons 2018-11-07 11:11:20 +01:00
Emmanuel Gil Peyrot
8c5df984f4 Make user JID a link in user details. 2018-11-03 00:32:29 +01:00
Emmanuel Gil Peyrot
6e26f8b50a Put the colons in the translatable message.
This helps languages which use a different typography for the colon,
such as French which has a narrow non-breakable space before it, or
Japanese which uses a full-width colon character.
2018-11-03 00:25:07 +01:00
Emmanuel Gil Peyrot
73e2d44d22 Allow translation of “Uploading file:”. 2018-11-03 00:15:23 +01:00
JC Brand
11a53608d9 Right Align badges of room occupants
fixes #1264

Also...

- hide the badges in overlayed view mode
- hide the features list in overlayed view mode
2018-10-28 23:20:29 +01:00
JC Brand
f0c5f69757 Fix unclarity in tooltip 2018-10-27 19:23:35 +02:00
JC Brand
36f63d9000 Fixes #1272 Hiding MUC occupants leaves a blank space 2018-10-26 16:37:56 +02:00
JC Brand
2f9089ee10 Updates #1261 More file upload fixes 2018-10-26 14:45:36 +02:00
JC Brand
2bcac13683 Catch, log and report errors related to vcard update 2018-10-25 23:08:19 +02:00
JC Brand
7590a030b0 Move unnecessary templates in headless package to main package 2018-10-22 13:59:06 +02:00
cmrd Senya
12b9824e75 Create package @converse/headless 2018-10-22 12:42:48 +02:00
Lauren Mayers
ba689f4185 Update user status colors and icons
fixes #1209
2018-10-21 23:36:57 +02:00
JC Brand
c8dc7b63b2 Disable OMEMO when the current device is not trusted.
updates #1242
2018-10-18 07:47:25 +02:00
JC Brand
99c0687684 Fixes #537 Open xmpp: URIs inside Converse 2018-10-13 20:16:00 +02:00
JC Brand
7b9c97dfd3 Also squash leave/join messages
And fix an HTML rendering bug for info messages and nicks that contain spaces
2018-10-11 19:04:06 +02:00
JC Brand
dffcc13dea Fixes #1140 Add support for destroyed chatrooms 2018-10-10 22:57:12 +02:00
JC Brand
7a612460da Fixes #1063 Make URLs in topic clickable 2018-10-07 03:31:18 +02:00
Emmanuel Gil Peyrot
e9007146aa Improve the moderated and not moderated explanations 2018-10-06 19:32:03 +02:00
JC Brand
c62dca4bd4 Fixes #1199 Provide a link back to the login form 2018-10-05 20:32:34 +02:00
JC Brand
d30efcb3ab Better bootstrap markup for the account registration form 2018-10-05 20:12:13 +02:00
JC Brand
11bd3db86b Fixes #1190 by explicitly setting the column width 2018-10-05 17:40:57 +02:00
JC Brand
7a330600d4 Fixes #1214
Hide "add contact" button and requesting/pending contacts when
allow_contact_requests is false.
2018-10-05 17:19:53 +02:00
JC Brand
82ce73005b Fixes #1222 2018-10-05 04:54:00 +02:00
JC Brand
45643d52bf fixes #1225 2018-10-01 21:50:25 +02:00
JC Brand
6bd4782ff6 Include filename in download link and embedd ogg audio 2018-09-25 00:21:17 +02:00
JC Brand
af35d461e8 Set max-height for embedded videos.
Also udpate markup to not use `<source>`.

updates #1189
2018-09-24 23:56:54 +02:00
JC Brand
0833478da4 Use bootstrap4 for the Converse website 2018-09-18 16:15:32 +02:00
JC Brand
dee49e382c Avoid horizontal scrolling for messages in Firefox 2018-09-18 13:14:55 +02:00
JC Brand
2df9b24211 Add option to auto-register your nickname to a room
See https://xmpp.org/extensions/xep-0045.html#register
2018-09-12 12:36:13 +02:00
JC Brand
a3911094d3 Fix incorrect closing tag 2018-09-10 16:09:38 +02:00
JC Brand
27378068c0 Fixes #1064 /topic without argument sets topic to "undefined" 2018-09-07 10:21:47 +02:00
JC Brand
2ef117e402 Fix more missing icons due to Fontawesome upgrade 2018-09-06 19:50:41 +02:00
JC Brand
baf598608a Fix leave icon 2018-09-06 17:09:47 +02:00
JC Brand
023249f62e Render profile avatar as canvas.
We now have uniform avatar rendering for the profile, messages and
chatboxes.

By rendering as canvas, we can avoid stretching the image.

In the process I also moved the ChatBoxViews collection into its own
plugin `converse-chatboxviews` and placed the AvatarAware views there.

fixes #1157
2018-09-06 15:33:13 +02:00
JC Brand
c7ae188002 Re-add signout icon and hide clear-text icon when appropriate 2018-09-06 13:37:55 +02:00
JC Brand
eca11953bb Upgrade to fontawesome 5 2018-09-04 13:34:06 +02:00
JC Brand
4b5b517390 Update bookmark form with proper bootstrap markup 2018-08-30 22:32:16 +02:00
JC Brand
21178add98 Remove converse-otr 2018-08-27 22:09:22 +02:00
JC Brand
1dc1c1f98a Properly generate and render fingerprints 2018-08-27 21:02:31 +02:00
JC Brand
d784e4a73a Show an icon to indicate that a message is encrypted
updates #497
2018-08-24 16:26:54 +02:00
JC Brand
5e9d6c3d6a Merge branch 'master' into converse-omemo 2018-08-23 09:45:13 +02:00
JC Brand
9f8d30dde3 Create a new store, _converse.config to store trusted
The `_converse.session` store gets cleared after logout, but we want the
`trusted` flag to persist after logout.

Also update the documentation no that the `storage` config option has
been removed in favor of `trusted`.
2018-08-23 09:41:39 +02:00
JC Brand
62cecbec5f Merge branch 'master' into converse-omemo 2018-08-22 23:41:36 +02:00
JC Brand
9ed2ad631a Store whether this is a trusted device in _converse.session
So that it persists across page loads. Otherwise storage falls back to
the default, causing records to be in both local- and sessionStorage.

Additionally, update singleton models to have the 'id' available as a getter.

Otherwise multiple records gets stored in browserStorage, causing random
results being returned.
2018-08-22 23:36:54 +02:00
JC Brand
3ec426e11d Don't render OMEMO stuff in profile modal if OMEMO's not enabled 2018-08-21 18:03:34 +02:00
JC Brand
a06d2c494a Implement own device removal via stanza 2018-08-21 17:35:17 +02:00
JC Brand
26e936583f Add devices section to own profile modal
Allow for devices to be removed.
2018-08-21 09:28:16 +02:00
JC Brand
cda426bc82 Merge branch 'master' into converse-omemo 2018-08-20 10:34:04 +02:00
Emmanuel Gil Peyrot
958e8a98a8 Use the roster name or vCard nickname before falling back to vCard fullname or JID. 2018-08-20 08:59:01 +02:00
JC Brand
b4110dc162 Merge branch 'master' into converse-omemo 2018-08-18 10:24:55 +02:00
JC Brand
9a8d3b695e Generic message which works for both single and groupchats 2018-08-16 15:17:53 +02:00
JC Brand
73deaf24c0 Make sure occupants toggle gets shown 2018-08-16 15:17:53 +02:00
JC Brand
b6f4f05b9e Add converse-autocomplete and use that in the chat textarea 2018-08-16 15:17:53 +02:00
JC Brand
2d05487862 More code reuse between chatboxview and chatroomview 2018-08-07 15:32:13 +02:00
JC Brand
bcd6845756 Show fingerprints in the user details modal
updates #497
2018-07-25 11:33:16 +02:00
JC Brand
ce447e4035 Merge branch 'master' into converse-omemo 2018-07-22 12:15:16 +02:00
JC Brand
5abb9f8bb2 Found more instance of room to be replaced with groupchat 2018-07-22 11:31:45 +02:00
JC Brand
bf13927946 Merge branch 'master' into converse-omemo 2018-07-21 11:34:51 +02:00
JC Brand
87406f5f93 Allow messages to be edited by clicking a pencil icon
updates #421
2018-07-21 10:41:10 +02:00
JC Brand
acd9a18696 Update with new message markup 2018-07-21 07:34:03 +02:00
JC Brand
84a10d77d9 Cancel message correction by pressing the down arrow
Also, add a class `correcting` to the message being corrected, to
provide a visual cue.

updates #421
2018-07-08 11:30:15 +02:00
JC Brand
f3f58a8da4 Test multiple corrections of the same message 2018-07-06 01:51:27 +02:00
JC Brand
9e965fa20e Add a rudimentary message versions modal 2018-07-06 01:36:34 +02:00
JC Brand
19b9aeadfd Show an indicator that the message has been edited 2018-07-06 01:18:03 +02:00
JC Brand
7b86e24b9a Add missing CSS class to bookmark list item and fix test
updates #1069
2018-07-04 11:24:02 +02:00
JC Brand
388719ff2d Update CSS of controlbox list items
Trying to use more generic CSS selectors and to extract out common patterns.
2018-07-04 10:57:30 +02:00
JC Brand
47ec7501ed updates #1069 Don't show room-info icon for bookmarks
Currently we can only show the room info modal for open rooms, because
we need the Backbone.Model.

Querying the room info and displaying it for non-open rooms will be more
work and will require a separate modal.
2018-07-04 09:18:54 +02:00
JC Brand
efa5e30596 updates #1069 Highlight currently open private chat in the sidebar 2018-07-04 09:08:22 +02:00
JC Brand
58ee1460fe Updates #1069
Highlight the currently open groupchat in the sidebar (in singleton mode).
2018-07-02 23:29:57 +02:00
JC Brand
a67fa6d4e5 Render URLs in the topic in the room details modal 2018-07-02 21:20:37 +02:00
JC Brand
a2fef1277c Don't render labels for hidden inputs 2018-07-02 20:22:16 +02:00
JC Brand
d335173fd7 Bootstrap markup for auto-generated forms 2018-07-02 20:18:22 +02:00
JC Brand
e64edf19b4 Use "Groupchat" instead of "Chatroom" 2018-07-02 16:27:58 +02:00
JC Brand
4331f920cf Fix failing tests 2018-07-02 15:23:49 +02:00
JC Brand
c6d7317bb2 Show the topic in the room info modal 2018-07-02 13:41:15 +02:00
JC Brand
1880b3f209 Nicer rendering of MUC disconnection messages 2018-07-02 12:52:19 +02:00
JC Brand
6785eff4a7 Merge branch 'master' into converse-omemo 2018-07-01 11:44:04 +02:00
JC Brand
6e99af698d Merge branch 'timetag' of https://github.com/Zash/converse.js into Zash-timetag 2018-06-30 15:12:57 +02:00
JC Brand
3dac4ae45c Add support for logging in with OAuth 2018-06-13 18:39:51 +02:00
JC Brand
57b4dec5a0 Bugfix. Validation messages wasn't being shown
due to Awesomplete doing things to the DOM and then confusing Snabbdom.
2018-06-06 18:31:04 +02:00
JC Brand
78d6d493d6 Add info icon in room header and show room details in modal 2018-06-04 19:54:11 +02:00
JC Brand
f7c3351e2b Merge branch 'master' into webpack 2018-06-04 13:46:27 +02:00
JC Brand
bc872ee2cb Fix various failing tests and update Makefile 2018-06-04 11:20:34 +02:00
JC Brand
74eed32e82 Add shims to webpack config and fix bugs in templates 2018-06-02 17:18:42 +02:00
JC Brand
8948be1d3d In mobile view, add arrows to chat headings
so that you can navigate "back" to the controlbox.
2018-06-01 14:57:19 +02:00
JC Brand
5e97db95f9 Add a close button on the occupants sidebar 2018-05-30 16:55:28 +02:00
JC Brand
8c983ab2a3 Use different icon for adding a groupchat
Fixes #1072
2018-05-30 16:38:51 +02:00
JC Brand
d384c70929 Use double angle brackets as occupants toggle icon
updates #1072
2018-05-30 16:27:45 +02:00
JC Brand
a85401627c Combine inverse/converse chatrooms css
updates #1091
2018-05-24 12:45:10 +02:00
JC Brand
3849f56270 Swop buttons and try to make column responsive 2018-05-24 10:18:27 +02:00
JC Brand
dd51ad8618 Bugfix. Nickname wasn't being set correctly in vcard 2018-05-24 10:15:25 +02:00
JC Brand
a99e7a317e Change lock icon when clicking the toggle
updates #497
2018-05-23 12:51:01 +02:00
JC Brand
6042c233bc Add test that the OMEMO toolbar button renders
Fix and improve accordingly. updates #497
2018-05-23 12:51:01 +02:00
JC Brand
7b28cb7943 updates #497
Initial work on adding OMEMO support
2018-05-23 12:51:00 +02:00
JC Brand
36fd859a88 Store presence info in a separate collection
So that we can cache roster data for longer and presence data for
shorter.
2018-05-22 21:09:43 +02:00
JC Brand
2508ef0e9e Make the default value for the 'trusted' checkbox configurable
Also remove the `message_storage` setting.
2018-05-18 15:44:42 +02:00
JC Brand
e82112715d Update padding of controlbox elements
Instead of padding the container, pad individual elements that need it.
This enables us to have highlighting (e.g. on hover) that spans the full
width of the controlbox.

updates #1069
2018-05-18 15:44:42 +02:00
JC Brand
59535656b6 Add checkbox to indicate whether this is a trusted device 2018-05-18 15:44:42 +02:00
JC Brand
4490e27e08 Forgot we're moving away from using inverse here :) 2018-05-17 11:19:07 +02:00
JC Brand
897a5b2a86 branding 2018-05-17 11:10:52 +02:00
JC Brand
37ce3fb737 Add a button to refresh a contact's vcard 2018-05-15 10:11:13 +02:00
JC Brand
ec5a57b9d2 Remove unnecessary btn class 2018-05-14 13:49:04 +02:00
JC Brand
8908ab5c7d We no longer user the inVerse branding 2018-05-11 13:50:19 +02:00
JC Brand
ab1c19a974 Update markup to fit the mockup 2018-05-11 10:29:56 +02:00
JC Brand
09db3eddb0 Add tests for contact removal via modal 2018-05-10 22:15:23 +02:00
JC Brand
d16bb315aa Add the ability to remove a contact via the details modal 2018-05-10 18:04:17 +02:00
JC Brand
65ac389625 Add a way to show a user's vcard 2018-05-10 14:10:03 +02:00
JC Brand
9bc21741fc Update mockup and CSS accordingly 2018-05-09 12:57:50 +02:00
JC Brand
859bc0616e Fixes #1094
- Show users who are registered on the different members lists
- Show badges indicating user's roles and affiliations
2018-05-09 12:28:34 +02:00
JC Brand
28ec15094e Add alert modal and close profile modal on save 2018-05-09 10:09:42 +02:00
JC Brand
64754fa33a Fix class name for icon 2018-05-09 09:27:21 +02:00
JC Brand
b6692b17a2 Show roles from VCard next to name in messages 2018-05-08 19:51:56 +02:00
JC Brand
708b1dbe99 fixes #337
It's now possible to set your VCard via the UI and via the API
2018-05-08 18:14:56 +02:00
JC Brand
b8679063c5 Use the VCards collection for roster contacts
Instead of saving the vcard data on the contact model itself
2018-05-05 20:51:14 +02:00
JC Brand
99915a26f4 Use vcard from the collection for rendering messages 2018-05-03 20:05:45 +02:00
JC Brand
adf34c845c Render chatbox avatar via the vcards collection 2018-05-03 19:01:57 +02:00
JC Brand
ca0f5fcfef Fix bookmark item markup
so that `hidden` class gets applied to the right element
2018-05-02 15:16:56 +02:00
JC Brand
53f5627b72 Add support for rendering avatars in groupchats 2018-05-01 18:18:02 +02:00
JC Brand
c14ef3bb75 Bugfix. Can't expect fullname to be set anymore. 2018-05-01 15:21:20 +02:00
JC Brand
f9aa75b69e Refactored message attributes and rendering.
- set `username` on the message object,
  instead of always using `fullname` with fallback to `jid`.
- Distinguish better between `groupchat` messages and normal
  messages in `getMessageAttributesFromStanza`
2018-05-01 12:30:58 +02:00
JC Brand
097d992d13 Bugfix, /me message wrongly marked as followup message. 2018-04-30 16:23:52 +02:00
JC Brand
eaf65f4d24 Add missing items-list class (as per mockup) 2018-04-30 15:37:37 +02:00
JC Brand
4bcf8e7bc3 Mark followup messags so that they can be styled differently 2018-04-30 15:37:37 +02:00
JC Brand
876a07b3de Fix the failing tests 2018-04-30 15:37:37 +02:00
JC Brand
1405d9cb49 Also style file upload and action messages. 2018-04-30 15:37:37 +02:00
JC Brand
36ccb4618f Tweak chatroom headings 2018-04-30 15:37:36 +02:00
JC Brand
56e4e8b8ee Fix rendering of headline messages.
Also, add urijs to more intelligently handle URIs
2018-04-30 15:37:36 +02:00
JC Brand
3d42425083 Some UI improvements
- Render images as thumbnails
- Use the image.html template when rendering images from pasted URLs
- Update message and spoiler markup to render avatars
- Use the default avatar as fallback when user doesn't have one
- Instead of 'me' render own name or JID
2018-04-30 15:37:36 +02:00
JC Brand
57f7e31aa1 Add a spoiler message to the mockups 2018-04-30 15:37:36 +02:00
JC Brand
aa6a739cfa Initial work on showing avatars in messages.
- Update the mockups to show avatars.
2018-04-30 15:37:36 +02:00
JC Brand
e0aaeb66ea updates #161
* Fix typo which broke MUC file upload
* Remove unused method
* Move file input into li element
2018-04-24 07:49:37 +02:00
JC Brand
a19e7aeffe Add support for XEP-0066 Out of band data 2018-04-18 16:58:52 +02:00
JC Brand
d048cff9a8 Provide metadata of file being uploaded.
updates #161
2018-04-18 11:49:53 +02:00
JC Brand
c01e9f8265 Move methods from chatbox view to message view
Specifically the methods related to requesting an upload slot and uploading a file.
Also show a progress indicator while a file is being uploaded.

Updates #161
2018-04-17 15:21:38 +02:00
JC Brand
de6ecbf07a Render messages via a new MessageView view
updates #161
2018-04-17 15:21:26 +02:00
JC Brand
584f293d05 Updated and refactored the work from @worlword
* Use Promises instead of callbacks
* Update to latest (Last Call) version of XEP-0363
* Move non-view specific methods to models instead
* Add more tests

updates #161
2018-04-17 15:21:09 +02:00
JC Brand
9c2a5bd3b8 Merge branch 'worlword-httpFileUpload' into http-file-upload 2018-04-14 07:50:29 +02:00
JC Brand
042c1947ed Add file-upload button 2018-04-14 07:40:07 +02:00
worlword
3b1d27636d problem fixed, that file-upload would not start. Also did some code cleanup 2018-04-13 11:45:43 +02:00
worlword
ca40cf6541 removed EmptyLines in ChatView.js and Change Lineendings to LF in toolbar_fileUpload.html 2018-04-12 09:37:58 +02:00
worlword
7660dbfb31 merge httpFileUpload-Branch with master 2018-04-12 07:43:39 +02:00
worlword
c9a9d01112 used code from 'http-file-upload' branch. Buttons are now added to the toolbars through converse-http-file-upload.js. 2018-04-11 17:09:32 +02:00
Kim Alvefur
a82f950e3c Put timestamp in a <time> tag for better semantics and easier styling 2018-04-07 21:47:22 +02:00
JC Brand
9a526d4194 Refactoring of the XEP-0085 Chat State Notifications code
* Distinguish between CSN messages and other types of messages
* Properly clear previous notifications
* Better handling of notifications from multiple users (in MUC)
* Rename methods to make clarify intent
2018-04-06 17:02:28 +02:00
worlword
b23712aec3 added httpFileUpload to converse.js 2018-04-03 11:20:57 +02:00
JC Brand
2705ec8193 Let the chatarea expand when the occupants sidebar is collapsed. 2018-03-30 14:23:39 +02:00
JC Brand
4f2b040f22 Allow setting a nickname when adding a roster contact 2018-03-30 14:22:51 +02:00
JC Brand
95406a149d Re-add xhr_user_search_url and autocomplete when adding contacts 2018-03-30 14:22:51 +02:00