Commit Graph

963 Commits

Author SHA1 Message Date
JC Brand
b66ff721cd Merge inVerse into this repo 2017-06-13 21:10:32 +02:00
JC Brand
78c5139486 singleton: Add soft dependency on rosterview 2017-06-13 19:17:45 +02:00
JC Brand
422aaef863 register: create renderRegistrationPanel method 2017-06-13 19:11:32 +02:00
JC Brand
43408a6128 dragresize: render handles in the plugin
instead of having them already in the templates.
2017-06-13 18:53:41 +02:00
JC Brand
19d51f559d Make the avatar's dimensions settable 2017-06-13 18:53:20 +02:00
JC Brand
2d4159802e Bugfix. Don't override defaults for ChatBox 2017-06-13 18:22:19 +02:00
JC Brand
8191d5e83a muc: Rename `createChatRoom to openChatRoom`
It doesn't always create a new room.
2017-06-13 18:22:19 +02:00
JC Brand
1a95472ebe singleton: Ensure obscured chats gets actively hidden.
So that when a room is closed, a previously obscured chat doesn't become
visible again. Allowing this would force us to know which chat is visible, so
that we can falsify it's `hidden` attribute.
2017-06-10 20:39:09 +02:00
JC Brand
d1bafdb38a Re-render only the tab when num_unread changes. 2017-06-09 23:45:54 +02:00
JC Brand
f9fb13a71d muc: Make defaults a function
otherwise also the prototype's defaults gets overwritten.
2017-06-07 17:47:50 +02:00
JC Brand
b5ecc1fc6a Expose the fp version of lodash via the API 2017-06-07 09:15:22 +02:00
JC Brand
a128a70d41 Discriminate between which unread messages to indicate per tab 2017-06-07 00:55:57 +02:00
JC Brand
bbecee11d5 Add the functional programming version of lodash. 2017-06-07 00:43:09 +02:00
JC Brand
fcbeff4c72 Better check to know whether we can save the model 2017-06-06 22:12:54 +02:00
JC Brand
f897fbb7c0 Show number of unread mesages on the "Contacts" tab 2017-06-05 21:42:25 +02:00
JC Brand
5949ca9e36 Show number of unread messages on the "Rooms" tab 2017-06-05 14:52:24 +02:00
JC Brand
86dc3800aa Render nickname form when entering a room via invitation 2017-05-24 17:18:54 +02:00
JC Brand
c83026e5a8 muc: Differentiate between generally unread messages and unread mentions 2017-05-24 08:40:09 +02:00
JC Brand
8fa06e7d52 Markup and CSS for showing unread messages for a room 2017-05-23 21:50:48 +02:00
JC Brand
a4284e48f7 Use proper message handler. Fix typo 2017-05-23 18:49:04 +02:00
JC Brand
7df2d36e42 We now have a separate Backbone.Model for chat rooms
Also... `num_unread` is now updated for groupchat messages in which the user is
mentioned.
2017-05-23 18:40:55 +02:00
JC Brand
5e783e70e4 Lay the groundwork for being able to have separate ChatRoom models 2017-05-23 18:16:47 +02:00
JC Brand
bab80a3234 No need to set num_unread, it has a default value. 2017-05-23 18:15:28 +02:00
JC Brand
6b2ca629cc roomslist: expand tests 2017-05-22 13:40:07 +02:00
JC Brand
501c9f5e97 muc: Extract code into separate method renderRoomsPanel 2017-05-16 11:55:59 +02:00
JC Brand
7c9475e9fc controlbox: Only render the contacts panel when connected
Otherwise it gets rendered multiple times (at least during testing).
2017-05-16 11:54:20 +02:00
JC Brand
8fe7fd2ec2 minimize: Use Backbone.Model's default attribute 2017-05-16 11:19:15 +02:00
JC Brand
4f94a1f193 Refactor code that increments unread messages counter
Removed the "fetching_messages" hack.
2017-05-16 11:18:58 +02:00
JC Brand
023a68458c Initial work on showing unread messages indicator for chat rooms 2017-05-15 19:08:08 +02:00
JC Brand
443b67012d Right-float info icon 2017-05-15 18:43:12 +02:00
JC Brand
c5383ac22f chatview: trigger 'add' event when fetching messages
Otherwise they don't appear when reloading the page.

I'm not completely happy with the resulting workaround to avoid that messages
restored from sessionStorage increment the unread messages counter, but it'll
have to do for now.
2017-05-15 18:37:54 +02:00
JC Brand
26cd567cca bookmarks: only emit once the view has been created. 2017-05-15 18:04:28 +02:00
JC Brand
e49fbc457d bookmarks: Don't duplicate bookmarks in list. 2017-05-15 18:04:28 +02:00
JC Brand
3343cb6991 Some small css fixes. Show correct icon for clearing messages 2017-05-15 17:38:37 +02:00
JC Brand
4994615824 core: Only throw error when trying keepalive without JID for prebind 2017-05-15 16:47:10 +02:00
JC Brand
ea207ad6be Don't override credentials_url password with connection password
Causes login failure when one-time tokens are used.
2017-05-11 14:46:24 +02:00
JC Brand
7eecd6b1dd Move method closer to other relevant ones 2017-05-11 10:42:10 +02:00
JC Brand
0c61a5d791 core: Refactor common code into restoreBOSHSession 2017-05-11 10:42:10 +02:00
JC Brand
d50992b130 bookmarks: Fix remaining broken tests. 2017-05-09 09:45:12 +02:00
JC Brand
1ef99b3ecc bookmarks: Handle chat box being passed into renderBookmarkListElement 2017-05-08 21:28:56 +02:00
JC Brand
3835ab7af6 bookmarks: Don't autojoin rooms prematurely
by first waiting until chatboxes have been fetched as well.
2017-05-08 21:28:56 +02:00
JC Brand
d81d62f98d muc: check for browserStorage attr instead of whether connected 2017-05-08 21:28:56 +02:00
JC Brand
70e4f28548 Initial work on showing open rooms in the "Rooms" panel 2017-05-08 21:28:56 +02:00
JC Brand
d8963a8a8c bookmarks: New setting hide_open_bookmarks 2017-05-08 21:28:56 +02:00
JC Brand
0bd0798e34 Use the Backbone defaults functionality 2017-05-08 21:28:56 +02:00
JC Brand
09bf04bf03 converse-bookmarks: Bugfix + make bookmark.html more generic
- Bugfix: Entire list was removed when last bookmark was removed.
- Make the template more generic so that it can be used for showing open chat
  rooms
2017-05-08 21:28:56 +02:00
JC Brand
47ca3e64b2 Emit new event roomsPanelRendered 2017-05-08 21:28:56 +02:00
JC Brand
b32a8c5391 Update and simplify HTML/CSS for choosing status
Should also fix some of the issues mentioned in #847
2017-05-08 21:25:22 +02:00
JC Brand
3ec90096b9 Updates #864: Bugfix. Both select elements were being shown 2017-05-07 11:24:46 +02:00
JC Brand
738d227297 Solve the intermittent issue of _ not being defined in templates 2017-05-05 11:48:10 +02:00
Novokreshchenov Konstantin
7c057910a8 Inconsistent unread messages count updating #873 (#874)
* Consistent unread messages count updating on ChatBoxView, Minimized ChatBoxView, RosterView and page's title

* Add tests for checking unread messages count updates in different GUI parts

* Update docs/CHANGES.md

* document windowStateChanged event in events.rst
2017-05-03 09:06:28 +02:00
Novokreshchenov Konstantin
4b46ec3f8c #591 Unread message counter is reset when the chatbox is closed (#867)
* chatview: disable handling onMessageAdded when fetching messages during initialization

* update CHANGES.md
2017-05-01 13:05:58 +02:00
Mathias Ertl
913eeec351 Csp compat 2 (#864)
* remove inline style in roster template

* remove inline style from contacts panel

* remove inline-css from roster_filters

* remove inline style in trimmed chats

* remove last inline style from minimized chats

* update converse.css

* update changelog
2017-04-30 10:22:54 +02:00
JC Brand
227eb9b81c Fix _ is undefined error 2017-04-28 19:57:36 +02:00
JC Brand
30febd17d4 Throw error if more than one chatroom is given 2017-04-28 19:52:42 +02:00
JC Brand
4c23925684 Fixes #861: Properly insert chatroom into DOM 2017-04-28 19:52:13 +02:00
Novokreshchenov Konstantin
dfd86d6c35 #567 Unreaded message count reset on page load (#856)
* save unread message count (num_unread) to server

* update CHANGES.md
2017-04-24 22:34:08 +02:00
JC Brand
b07e6291ea Ensure that chats are opened when contacts are clicked. 2017-04-24 15:57:23 +02:00
JC Brand
15f962ad6d Add converse-singleton to the mobile build.
This will make the unread messages feature work.
Update so that new chats are opened in the background.
2017-04-24 15:57:23 +02:00
JC Brand
c81599931c Fix failing tests based on recent unread message changes 2017-04-24 15:57:22 +02:00
JC Brand
d825a15baa Clear when maximizing a chat box 2017-04-24 15:57:22 +02:00
JC Brand
f3d29e016e Show unread messages counter next to roster contacts 2017-04-24 15:57:22 +02:00
JC Brand
ce16e1bcef New plugin: converse-singleton.js
Ensures that max one chat box is visible at any given time.
For use in mobile or fullscreen applications.
2017-04-24 15:56:54 +02:00
JC Brand
a5ea86e29a Initial CSS work on showing an unread messages indicator 2017-04-24 15:56:54 +02:00
JC Brand
e338afadc2 New release 3.0.2 2017-04-23 17:25:19 +00:00
JC Brand
41edd0567d Don't try to parse non-strings 2017-04-23 17:19:01 +00:00
JC Brand
c7d66377d0 Use lodash.noConflict for underscore 2017-04-23 17:19:01 +00:00
JC Brand
865789d49e "en" is always accepted, because default strings are English 2017-04-23 18:45:53 +02:00
Novokreshchenov Konstantin
bf1e612768 support opening chat in minimized mode initially (#855) 2017-04-23 15:38:48 +02:00
JC Brand
9f975c790b preferred_locale might be a JSON string, not an object 2017-04-22 19:29:02 +02:00
JC Brand
9faf9c3d6f Don't rerender the text input when filtering contacts 2017-04-21 19:37:11 +02:00
JC Brand
bc1fa24315 Show the MUC server in a bookmarked room's info view 2017-04-21 19:05:10 +02:00
JC Brand
0bab19fafd Render help messages via templates. 2017-04-21 18:35:34 +02:00
JC Brand
6af4480c14 Render disconnect message via template and add padding. 2017-04-21 18:26:59 +02:00
JC Brand
f3373c44fd Fixes #850. .where method doesn't match numbers. 2017-04-21 18:06:28 +02:00
JC Brand
1936e28275 Enable creation of dist/converse-muc-embedded.js build file 2017-04-21 18:06:27 +02:00
JC Brand
3ea43c6a0f Use noConflict to avoid polluting globale namespace
with lodash and Backbone.
2017-04-21 18:06:27 +02:00
JC Brand
39b3aa34d8 Fixes #848 OTR doesn't start when cache_otr_key is set to true 2017-04-20 10:04:33 +02:00
JC Brand
15f6649ace Bugfix. OTR meta-messages were being shown in HTML5 notifications 2017-04-20 10:02:59 +02:00
JC Brand
1a40b7aefb TypeError: converse.log is not a function 2017-04-20 08:55:51 +02:00
JC Brand
f9898f32f1 converse-notification: MUC nickname wasn't being shown 2017-04-19 16:06:22 +02:00
JC Brand
1e100a67e3 Catch error when destroying 2017-04-19 15:40:27 +02:00
JC Brand
9f28728e61 Updates #849. Don't call when no connection present 2017-04-19 14:47:18 +02:00
JC Brand
59ca7bae16 Make sure variables are interpolated when no translations exist. 2017-04-19 14:37:59 +02:00
JC Brand
f0deac9ec5 Updates #849
Refactor locales code to store the currently chosen locale as
`_converse.locale` and use that in converse-notifications.js
2017-04-19 14:37:52 +02:00
JC Brand
7ededd2379 Bugfix. class wasn't being toggled 2017-04-13 14:10:52 +00:00
JC Brand
1b38967d19 Updates #842 Persistent muc room creation not working 2017-04-13 11:19:24 +00:00
JC Brand
d781ebfd37 converse-core: More work on removing jQuery.
Only $.Deferred is still being used in converse-core.
2017-04-11 09:14:26 +00:00
JC Brand
3d2bfb5c8b converse-core: Use built-in XHR instead of $.ajax 2017-04-11 08:33:56 +00:00
JC Brand
de2f33f333 Send button must be translateable and should type "submit" 2017-04-11 07:32:17 +00:00
JC Brand
d2eadbdce4 Use classList API 2017-04-06 23:21:52 +02:00
JC Brand
47a9566bb2 Update moment.js to 2.18.1 2017-04-06 22:11:39 +02:00
JC Brand
0c43e4b87c Upgrade to Jasmine 2.5.3 2017-04-06 11:31:05 +02:00
JC Brand
21bc95a9f3 New release 3.0.1 2017-04-04 15:26:06 +00:00
JC Brand
d0f9f15d60 Bugfix. Prevent bypassing of password form via bookmark form
Not a security hole, but a UX issue.

Also... don't render artifacts before rendering the nickname form.
2017-04-04 14:45:50 +00:00
Novokreshchenov Konstantin
0b50c0c8c8 Fix #814: Images from URLs with query strings aren't being rendered. (#832)
* unescape html characters in URL before checking whether it targets to image

* update docs/CHANGES.md

* test image's URL with query string which contains html-escaped characters

* utils.js: following code conventions

* split test url with query string to separate test
2017-04-04 16:05:50 +02:00
JC Brand
9ecb3e227f Bugfix. Better check to see if spinner is already active 2017-04-04 11:21:25 +00:00
Marc Laporte
d83f64bcc9 Improve spelling (#836) 2017-04-04 09:11:55 +02:00
JC Brand
6045b3d1e1 Fix failing tests 2017-03-31 20:45:41 +00:00
JC Brand
09251f32c8 Remove the english translation files. No need for them. 2017-03-31 02:26:35 +00:00
JC Brand
a4be25e05c Fix time format to show seconds instead of month 2017-03-31 02:01:53 +00:00
JC Brand
9fc61d9302 Bugfix. Endless spinner when trying to log in
after rendering the registration form.
2017-03-31 01:54:42 +00:00
JC Brand
d3a8032f61 Fixes #811. jQuery wasn't being closured in builds. 2017-03-31 00:06:57 +00:00
JC Brand
898ad3107f Get 3rd party dependencies from the converse obj 2017-03-30 17:00:24 +02:00
JC Brand
550cc51724 Some work on removing jQuery from converse-rosterview 2017-03-30 16:50:52 +02:00
JC Brand
0d256dbaf8 Query relative to the view element. 2017-03-30 14:39:44 +02:00
JC Brand
9a2c7257d7 Use the builtin JSON library 2017-03-30 14:16:00 +02:00
JC Brand
4dd8fa655e Refactor to not use pseudo jQuery selector ':emptyVal' 2017-03-30 14:16:00 +02:00
JC Brand
cb94fd1940 Update isImage to not use jQuery
Updates #814
2017-03-30 14:09:18 +02:00
Anshul Singhal
99647438ac Adds the send button at bottom of chatbox (#796)
Fixes #796 New config option: `show_send_button`

* Adds show_send_button setting to docs

* Change log updated

* Improves send button CSS, style fixes and documentation corrections

* Adds missing setting in rendering template for headlines
2017-03-30 12:40:17 +02:00
Soumit Bose
e6f3406977 Implemented auto fetching of registration form for default XMPP domain (#812) 2017-03-20 13:21:03 +01:00
JC Brand
6e94e11dcc Fixes #820. Inconsistency in displaying room features 2017-03-19 18:23:02 +00:00
Soumit Bose
c976f3f079 Fixed typing status for typing from different devices (#802) 2017-03-16 16:28:59 +01:00
JC Brand
9214c81bbc Updated po files. 2017-03-15 11:02:25 +00:00
Soumit Bose
2c5ecd7120 Make messages' time format configurable (#797)
Fixes #675 

* Made time format configurable

* Made changes to values of time_format

* Removed user restrictions on time format

* Added documentation for time-format config

* Edited changes.md

* Edited config doc

* Modified time-format explanation

* Added link to moment

* Added test to check rendered time

* Edited CHANGES and removeunncessary lines from time format checking spec

* Removed unncessary spaces
2017-03-12 11:32:38 +01:00
Anshul Singhal
40da1d688e Fixes #628. Bug in displaying chat status during private chat with carbons. (PR #801)
* Fixes the bug in displaying chat status during private chat(message carbons)

* Adds fix#628 to ChangeLog

* Changes Log added to version 3.0.1

* Makes the string alphanumeric

* Orders the logs with ticket number
2017-03-09 12:38:54 +01:00
Anshul Singhal
3dd6ff1751 Fixes the duplication bug in adding contact and adds test for the same 2017-03-08 15:33:43 +01:00
JC Brand
5efb7fbf82 Fixes #806 Event listeners not triggered.
Functions need to be bound.
2017-03-08 11:54:23 +00:00
JC Brand
f1bf5a9654 Fixes #807
- Document `optional_plugin_dependencies`
- Also make `converse-headlines` an optional dependency of `converse-dragresize`
2017-03-08 11:36:46 +00:00
JC Brand
5fc6ab1e4e Move plugin init code into method 2017-03-07 12:05:04 +01:00
JC Brand
741f2a6b9a Make sure the occupants height is set after transition 2017-03-05 10:33:20 +00:00
JC Brand
27a0560ad3 Consistently use . Fixes failing test 2017-03-03 15:25:05 +01:00
JC Brand
f24e7c0905 Remove scrollDownMessageHeight. Fix failing test 2017-03-03 15:12:48 +01:00
JC Brand
0bc0072fea chatview: Mark whether scrolling was automatic
so that we don't confuse it with the case where it was manual.
2017-03-03 14:55:03 +01:00
JC Brand
e1e20690f0 muc: the original stanza must be emitted
Otherwise other plugins don't know whether the message was forwarded or not.
2017-03-03 14:44:04 +01:00
JC Brand
eb82d64426 converse-controlbox: Retain open state after logging in. 2017-03-03 14:43:13 +01:00
JC Brand
62c8177142 Bugfix.
After bookmarking a room for which a nickname is required, return to the nickname form.
2017-03-02 23:28:22 +01:00
JC Brand
a5c0d5c451 Wrap long lines. No need for that 2017-03-02 23:06:40 +01:00
JC Brand
c58348dd02 Emit the original message, not just the forwarded part
Otherwise we receive HTML5 notifications for MAM messages because they can't be
identified as such.
2017-03-01 10:37:07 +00:00
JC Brand
a895c91f14 Programmatically set the occupants height
since I couldn't find a way to do this with only CSS.
2017-03-01 08:42:26 +01:00
JC Brand
78865bbccb Don't show the features heading if we don't know of any 2017-02-28 22:34:16 +01:00
JC Brand
a3407bb98b Move MAM specific code to converse-mam.js 2017-02-28 22:34:04 +01:00
JC Brand
dc8cbc6104 3 changes
- immediately show chat box (sometimes fetching features takes long)
- add timeout for fetching features
- don't register scroll handler twice for chat rooms.
2017-02-28 17:25:33 +00:00
JC Brand
2c88545b28 Fix edge case with /me messages. Show in italics. 2017-02-28 07:58:17 +00:00
JC Brand
9c72205774 Show room jid in a tooltip 2017-02-28 07:44:08 +00:00
JC Brand
bccdedc64f Also show a hint explaining the roomchat status 2017-02-28 06:52:33 +01:00
JC Brand
f20d391ea6 Show chat room occupants' states. 2017-02-28 05:28:09 +00:00
JC Brand
f2f05ff484 MUC: Don't show duplicate join messages. 2017-02-28 05:02:36 +00:00
JC Brand
21fbb7b7ac Fix failing test by making sure chatroom gets destroyed 2017-02-27 21:21:38 +00:00
JC Brand
128335e1dc 50 seems like a better default 2017-02-27 21:12:15 +00:00
JC Brand
f8d9368163 MUC: only render and listen to 'scroll' event...
after the cached messages have been fetched.
2017-02-27 21:09:17 +00:00
JC Brand
adeac37b5c Move more features HTML to chatroom_features.html 2017-02-27 17:59:33 +00:00
JC Brand
946a240080 Make sure to show the invite widget
when the room features change.
2017-02-27 17:56:40 +00:00
JC Brand
84a21415f0 Shut eslint up 2017-02-27 10:41:46 +00:00
JC Brand
cfb0cd0970 New defaults 2017-02-27 10:41:46 +00:00
JC Brand
ac867c9524 Rework the way builds are created.
Builds are now themselves UMD modules, so they could be `require`'d like any
other AMD module or they can still be used as old ES5 modules with globals.

Additionally the build is now closured, so that the almond API doesn't pollute
the global context with `define` or `require`. This does however mean that
`require` can no longer be used outside of the build (unless requirej.s is
included directly.
2017-02-27 10:37:01 +00:00
JC Brand
38c9a9e10c Rework the way builds are created.
Builds are now themselves UMD modules, so they could be `require`'d like any
other AMD module or they can still be used as old ES5 modules with globals.

Additionally the build is now closured, so that the almond API doesn't pollute
the global context with `define` or `require`. This does however mean that
`require` can no longer be used outside of the build (unless requirej.s is
included directly.
2017-02-27 09:00:45 +00:00
JC Brand
704cef5590 Make work with latest strophe build 2017-02-25 22:26:54 +00:00
JC Brand
08fc0823de More scrolling improvements 2017-02-25 22:26:54 +00:00
JC Brand
f60b4fc268 auto_away shouldn't change the user's status if it's set to dnd
Fixes #620
2017-02-25 09:52:31 +00:00