Commit Graph

1034 Commits

Author SHA1 Message Date
JC Brand
fa849b3dfa fixes #1091
We no longer need inverse.css
2018-05-24 14:38:17 +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
c920725832 Add a clearSession event to avoid using overrides. 2018-05-18 15:44:42 +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
ChaosKid42
7a36acade5 remove "?" from user-search-query (#1103) 2018-05-17 18:26:06 +02:00
JC Brand
38499917a9 updates #194
Include entity capabilities hash in outgoing presences

Also, started some work on using jsdoc for rendering API documentation.
Ideally that would go into a separate commit but that would take ages to
untangle.
2018-05-11 13:35:27 +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
7e94f3c691 Bugfix. Send model instance to event listeners
So that we can call `getDisplayName`
2018-05-07 10:58:58 +02:00
JC Brand
09c55ebc28 Remove the use_vcards settings
VCards will now always be used.
2018-05-04 22:50:41 +02:00
JC Brand
4c15ac2e8c Add new config setting: auto_join_private_chats 2018-05-03 16:36:02 +02:00
JC Brand
53f5627b72 Add support for rendering avatars in groupchats 2018-05-01 18:18:02 +02:00
JC Brand
b5a516e044 Add new api method vcard.update 2018-05-01 14:59:02 +02:00
JC Brand
54cafb1243 Update vcard.get API method to accept either a JID string or a model 2018-05-01 11:45:12 +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
midzer
2b5b2fae2c add another server which supports websockets (#1086) 2018-04-26 14:46:03 +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
24d55d6cbd Remove reference to inverse.min.js and fix tables 2018-04-13 20:22:58 +02:00
JC Brand
9528d81c00 Move various MUC methods onto the Backbone.Model
To more cleanly separate views and models and to make MUC in headless
mode more viable.

Refs #1032
2018-04-10 18:59:02 +02:00
ChaosKid42
fce9ee0db9 replace geoURIs (e.g. from Convesations) by links to openstreetmap (#1054)
* replace geoURIs by link to openstreetmap

* Added testcase
2018-03-31 18:29:01 +02:00
Richard Fairthorne
6bbbe8a393 add utf-8 tag so minified build will load on all platforms 2018-03-31 15:59:09 +02:00
JC Brand
44a2f7807c Hook in ar and eu locales and document. 2018-03-31 15:45:23 +02:00
JC Brand
b584f2efb3 Add a new config setting nickname
- for subscription requests
- when entering chat rooms
2018-03-30 14:22:53 +02:00
JC Brand
95406a149d Re-add xhr_user_search_url and autocomplete when adding contacts 2018-03-30 14:22:51 +02:00
JC Brand
deff6e071c Remove the clear button. It was pretty useless
because it didn't actually clear anything permanently and upon page
reload the messages were there again.
2018-03-30 14:16:06 +02:00
JC Brand
ca13c3286e Merge branch 'master' of github.com:conversejs/converse.js into bootstrap4 2018-03-18 03:42:49 +00:00
JC Brand
ae3942bc75 Update docs.
- Mention CSS file needed for embedded case.
- Update some outdated text
2018-03-15 20:22:32 +00:00
JC Brand
b0176e62f8 Mention where the embedded MUC gets embedded into 2018-03-15 19:52:11 +00:00
JC Brand
2045741fbe Add api.chatviews.get method 2018-03-14 13:27:36 +00:00
JC Brand
05e7cc8529 Let api.contacts.get return the RosterContact model 2018-03-14 13:01:29 +00:00
JC Brand
d4d3d4c838 Merge branch 'split-muc' into bootstrap4 2018-03-05 16:51:33 +01:00
JC Brand
8211ed8f70 Release 3.3.4 2018-03-05 14:43:53 +01:00
JC Brand
e344bf769a New modal for adding contacts.
Remove the xhr_user_search and xhr_user_search_url options
Lazily create modals
2018-02-23 16:33:09 +01:00
JC Brand
d9709af7cf Initial work on the new chatroom modal 2018-02-21 16:59:16 +01:00
JC Brand
ec2bda338b Refactor XMPPStatus.
- Remove undocumented and unused event `update-status-ui`
- Remove xhr_custom_status and xhr_custom_status_url options
- Use default value
- Remove unnecessary getter and setter
2018-02-21 14:41:54 +01:00
JC Brand
db85cb7f1d Release 3.3.3 2018-02-14 16:53:07 +01:00
JC Brand
08a76d8a6b Merge branch 'webcomponent-embedded' 2018-02-14 02:15:49 +01:00
JC Brand
2a2e4688a7 Update version number for CDN files in quickstart 2018-02-14 02:05:53 +01:00
JC Brand
2d746d2a1e Make converse-muc-embedded a core plugin.
1. Add a new `view_mode` value: `embedded`.

   This value is used to determine wether the `converse-muc-embedded`
   plugin is active or not.

2. Remove the need for the #converse-embedded-chat element.

   Instead we reuse the #conversejs element and embed inside that.

3. Removed the need to manually blacklist core plugins

   This is now done automatically if `view_mode` is set to `embedded`.
   Perhaps eventually we don't blacklist at all and instead use the
   `enable` plugin method. For some that probably won't work, like
   `converse-chatview`, which we still need to be active.
2018-02-09 16:37:55 +01:00
JC Brand
5517e3554c Add a new configuration setting: root 2018-02-09 16:08:39 +01:00
JC Brand
50f03c90e1 Write "chat room" as "chatroom" and "chat box" as chatbox"
We have bedroom, bathroom, classroom and boardroom as one word.
Living room is spelled separately because of the present participle (+ing) in living.

With "chatbox" it's a bit more subjective.
We have chatbot as one word (but litter box as two).
For consistency with chatroom, I'll go with one word.
2018-02-09 12:13:11 +01:00
JC Brand
055c4d2104 New config setting allow_public_bookmarks 2018-02-08 15:39:27 +01:00
JC Brand
d4ceb6d340 Add the ability to query for a disco identity 2018-02-07 17:24:25 +01:00
JC Brand
6b644d6d11 Release 3.3.2 2018-01-29 16:48:54 +01:00
linkmauve
4dc5e01d76 Replace tabs with spaces in source files. (#1005) 2018-01-27 16:20:35 +01:00
JC Brand
ccf5ce2ae5 New release 3.3.1 2018-01-18 14:48:32 +01:00
JC Brand
db8fd5c018 Turn off message animations by default 2018-01-18 11:41:47 +01:00
JC Brand
8f455cf902 Release 3.3.0 2018-01-17 19:45:33 +01:00
Senya
ff0f1d698d Fix mistyped example (#991)
was open instead of get in the example for get
2018-01-15 20:25:43 +00:00
JC Brand
c22aff9b13 Use newest pluggable.js.
`optional_dependencies` is now called `dependencies`
2018-01-10 13:13:26 +00:00
JC Brand
bcc367ef5b Mention the headless build 2018-01-09 14:52:36 +00:00
happy-dev
787a2a71f9 Typos ? (#981) 2018-01-06 21:32:57 +00:00
JC Brand
27c59cfe6c Update plugin docs prose a bit 2018-01-05 16:57:28 +00:00
JC Brand
fbc81d30ec Add and document bring_to_foreground option to rooms API 2017-12-15 20:51:07 +00:00
JC Brand
3c7454c4c1 Document a better way to open a room from a plugin 2017-12-15 20:17:31 +00:00
JC Brand
d331594225 Various small fixes based on real-world usage 2017-12-03 19:18:25 +01:00
JC Brand
79fd27ce58 Remove interpolation markup from yeoman 2017-12-03 18:52:32 +01:00
JC Brand
8662f751e3 Refactor converse-vcard and add API method to fetch a VCard 2017-12-02 18:01:56 +01:00
Taylor SaBell
adc4e6ebbc Changed connection manager URL (#955) 2017-11-17 19:20:42 +01:00
JC Brand
a6f2877ed9 Disco API refactoring
This came out of the desire to let `converse-muc` use the API to
determine whether MUC is supported. However, we don't know the entity
JID before hand and I couldn't think of a good way to query all current
and future entities for a feature.

So `converse-muc` still does it's own thing without the API, but some
refactoring came as a result of attempting.
2017-11-10 21:37:35 +01:00
JC Brand
042a26d05d New API method _converse.disco.supports
to check whether a certain service discovery feature is supported by an entity.
2017-11-02 23:23:01 +01:00
JC Brand
007e608f32 More work on combining the inverse/converse builds
- Use `enabled` method for plugins
- Rename `converse-inverse.js` to `converse-fullscreen.js` and make it a
  core plugin.
- We're no longer making separate mobile and inverse builds

No longer a need to whitelist/blacklist plugins for inverse to work.
2017-11-02 16:41:06 +01:00
JC Brand
3514d6d56b fixes #316
- Also allow private chats to be opened via URL fragment.
- Make sure to clear the URL fragment when the relevant chat is closed.
2017-10-31 23:11:27 +01:00
JC Brand
ad0e457486 Update API documentation to mention promises to wait for 2017-10-31 20:38:52 +01:00
JC Brand
2d747bb287 Various changes. See below.
* Update localisation/translation documentation due to recent changes.
* Remove `moment_locales.js` and instead load the moment locales in `src/i18n.js`
* Mention how to load the fullscreen version. Refs #939
2017-10-31 20:38:51 +01:00
JC Brand
c789af346f Add another example to the section about dealing with async 2017-10-31 20:38:51 +01:00
JC Brand
724e66d0e5 Initial code for opening a room via URL 2017-09-29 00:07:16 +02:00
JC Brand
f0debc61ab Refactor i18n so that only relevant translations are fetched
instead of bundling all translations in the dist file.
2017-09-25 12:49:10 +02:00
JC Brand
7e4fb52f8d Render register and login forms via links 2017-09-24 00:30:43 +02:00
JC Brand
6a4b62de0e Fix links 2017-09-13 11:14:58 +02:00
JC Brand
8d0cf8fa8c Update setup and integration docs 2017-09-13 11:12:15 +02:00
JC Brand
66ef67a589 Add setup diagram to docs 2017-09-04 16:19:12 +02:00
JC Brand
9008a1d4d4 Move license to repo root 2017-09-04 11:50:15 +02:00
JC Brand
36e02fb30b Add doc section on dealing with asynchronicity in plugins 2017-09-04 09:54:18 +02:00
JC Brand
c6839479c3 Mention plugin arch in readme.
Also, turn the sections about the fiddle example and the generator into notes.
2017-09-04 09:24:38 +02:00
JC Brand
8416143c65 Height fix for document sidebar 2017-09-04 09:13:23 +02:00
JC Brand
38e6012f06 Mention the Yeoman plugin generator 2017-09-04 07:51:02 +02:00
JC Brand
061832df41 Show documentation TOC in a left sidebar 2017-09-04 07:28:47 +02:00
JC Brand
11ff072366 Properly captitalize JavaScript 2017-09-03 22:12:17 +02:00
JC Brand
f668f2981a Update plugin example with code from the yeoman generator
Also improve the introductory text.
2017-09-03 22:10:45 +02:00
JC Brand
34e214d0df New release 3.2.1 2017-08-29 13:28:34 +02:00
JC Brand
bfeb297ffc Clarify usage of locked_domain.
Also, declare it in the controlbox plugin, not in core, where it's not used.
2017-08-15 10:23:57 +02:00
JC Brand
38f8724dd9 roomslist: Add ability to add or remove bookmarks 2017-08-09 15:50:24 +02:00
JC Brand
faa614ba3b Update events documentation to also mention promises. 2017-08-09 12:16:47 +02:00
JC Brand
8113a14ace Release candicate for 3.2.0 2017-07-22 22:23:44 +02:00
JC Brand
0a47f60f94 Emit new event `afterMessagesFetched` 2017-07-21 15:09:50 +02:00
JC Brand
a9589cba71 Don't expose 'connected' as a promise.
'reconnected' cannot be used as a promise (because it's recurring),
so to avoid confusion let's not have a 'connected' promise either.
2017-07-21 15:09:50 +02:00
JC Brand
49f26d8e49 emoji: Allow the assets path of Emojione to be overridden 2017-07-16 12:30:40 +02:00
JC Brand
972c31be1d emoji: Allow the option of using emojione (now that we sanitize) 2017-07-16 12:29:02 +02:00
JC Brand
ce2548c838 Remove the visible_toolbar_buttons.emoticons config option
in favor of `visible_toolbar_buttons.emoji`.
2017-07-15 08:17:41 +02:00
JC Brand
67578c9747 Merge branch 'master' into emoji 2017-07-15 07:16:37 +02:00
JC Brand
7721275962 New release v3.1.1 2017-07-12 22:51:56 +02:00
JC Brand
c422237668 New release: 3.1.0 2017-07-05 10:07:28 +00:00
JC Brand
f81a94baf1 Move updateSettings to the private API.
Also add an API method for exposing new promises.

Update the plugin and API documentation, specifically concerning the above
changes.
2017-07-05 11:03:13 +02:00
JC Brand
ca53a8d8ef Add support for Emojis 2017-06-17 01:01:52 +02:00
JC Brand
651a5de315 inverse: Set more defaults in the plugin itself 2017-06-13 21:40:06 +02:00
JC Brand
c04f690c44 Remove old docs and move CHANGES.md to root 2017-05-23 18:40:55 +02:00
JC Brand
754caad079 No way currently to remove plugins
and I'm not aware of a valid usecase for doing so.
2017-05-22 13:40:07 +02:00
JC Brand
5dd3b93a05 roomslist: update changelog 2017-05-09 09:49:09 +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
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
47ca3e64b2 Emit new event roomsPanelRendered 2017-05-08 21:28:56 +02:00
JC Brand
ed9ba78863 Mention that credentials_url can/should be used with auto_login 2017-05-03 09:18:58 +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
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
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
f3d29e016e Show unread messages counter next to roster contacts 2017-04-24 15:57:22 +02:00
JC Brand
e338afadc2 New release 3.0.2 2017-04-23 17:25:19 +00:00
Novokreshchenov Konstantin
bf1e612768 support opening chat in minimized mode initially (#855) 2017-04-23 15:38:48 +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
6af4480c14 Render disconnect message via template and add padding. 2017-04-21 18:26:59 +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
8c3c70c17e CSS fix. Lock icon wasn't showing. 2017-04-20 10:01:42 +02:00
JC Brand
0992c8d92e Update events documentation
Looks like now that we use Backbone.Events we don't get event objects passed
to the handlers.
2017-04-19 17:48:50 +02:00
JC Brand
f9898f32f1 converse-notification: MUC nickname wasn't being shown 2017-04-19 16:06:22 +02:00
JC Brand
a2735d4caa #844: Private API is accessible via attribute 2017-04-19 15:00: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
853c765f0d Update the documentation.
- Fix event listener code examples
- Mention the preferability of using versions in the CDN
2017-04-18 20:20:08 +02:00
JC Brand
1b38967d19 Updates #842 Persistent muc room creation not working 2017-04-13 11:19:24 +00:00
JC Brand
93b1481a2c Update Angular integration docs based on plugin changes in 3.0.x 2017-04-11 07:32:46 +00:00
JC Brand
b41d978d00 Update sinon to 2.1.0 and eslint to 3.19.0
Also update clean-css
2017-04-06 23:09:22 +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
bf9ba245b4 Fix title level inconsistencies 2017-04-04 20:43:25 +00:00
JC Brand
58f62998f9 Fix loading of converse.js in the docs 2017-04-04 18:43:52 +00:00
JC Brand
1fc4edd55f Update changelog after release. 2017-04-04 17:36:38 +00:00
JC Brand
21bc95a9f3 New release 3.0.1 2017-04-04 15:26:06 +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
e88afa0421 auto_reconnect is false by default. Fixes #834 2017-04-04 11:21:25 +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
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
JC Brand
4331ac7d11 Remove markup from translations 2017-03-15 10:30:56 +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
JC Brand
4ebc00282c Update plugin docs. Show fiddle example 2017-03-09 14:02:55 +00: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
fc7364bffa Mention that plugins must now be whitelisted 2017-03-07 11:18:26 +01:00
JC Brand
42f32e5c00 require is no longer used because we wrap our almond build
updates #805
2017-03-07 06:57:53 +00:00
JC Brand
06668d8733 3.0.0 release 2017-03-05 10:39:15 +00:00
JC Brand
f28cb1f2e2 Update docs around single-session support 2017-03-03 16:16:41 +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
f20d391ea6 Show chat room occupants' states. 2017-02-28 05:28:09 +00:00
JC Brand
128335e1dc 50 seems like a better default 2017-02-27 21:12:15 +00:00
JC Brand
a21fdce8fa Add JSON example 2017-02-27 17:56:39 +00:00
JC Brand
cfb0cd0970 New defaults 2017-02-27 10:41:46 +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
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
JC Brand
9779e83931 Make the default archived_messages_page_size 100 2017-02-25 09:57:22 +01:00
JC Brand
adb4f62ea9 Fixes #790 mam retrieval broken 2017-02-25 09:54:41 +01:00
JC Brand
0d48929bb3 Show join/leave messages in chat rooms. Updates #365 2017-02-24 17:54:45 +00:00
JC Brand
8a63813f5e Add the ability to set the presence priority.
Fixes #745
2017-02-22 22:13:23 +01:00
JC Brand
17e0e70e4e Support for XEP-0203 delayed delivery of presence stanzas 2017-02-21 23:30:11 +01:00
JC Brand
7ae2e46925 Expand tests and found a bug in the process.
updates #785
2017-02-20 22:37:06 +01:00
JC Brand
789654d54e Updates #785 and #787
Improve upon the previous implementation.

If the resource with the highest priority goes offline or becomes unavailable,
then the chat status of the contact must fall back to that of the resource with
the next highest priority.

In your example from #785, if the resource with priority 1 goes offline or
becomes unavailable, then in your implementation the chat status would stay at
online, although it must actually go to xa.

The solution is to update the resources attribute on the contact to not just be
an array or strings, but instead to be a map of resources to priorities and
statuses and to use that data structure.
2017-02-20 22:29:13 +01:00
w3host
15d2640c43 Presence priority NOT handled correctly #785 (#787) 2017-02-20 20:48:09 +01:00
JC Brand
4e0cb8d354 update changelog. Fixes #366 2017-02-20 09:48:41 +00:00
JC Brand
4c41ae8fad Render room features separately
So that the occupants list doesn't get wiped.
2017-02-19 11:16:27 +01:00
JC Brand
a5bfd7fa57 Hide invite widget if the room is not open
or if the room is members-only and the user is not the owner.
2017-02-19 01:18:36 +00:00
JC Brand
441f7a2a15 Show the chatroom occupants JID in the tooltip
if you're allowed to see it.
2017-02-19 01:08:08 +00:00
JC Brand
a6ca5aad35 Show room features in the sidebar. 2017-02-19 00:39:08 +00:00
JC Brand
10a85336cc Show the description in the heading, not the subject 2017-02-19 00:20:21 +00:00
JC Brand
a1c156456d Make keepalive and roster_groups true by default. 2017-02-17 08:54:58 +01:00
JC Brand
ef7a0df46e Mention converse-muc-embedded in the changelog 2017-02-16 22:03:03 +01:00
JC Brand
e0db1c7d91 Mention breaking changes in the changelog 2017-02-16 21:48:01 +01:00
JC Brand
483d01fbbf Fix link to converse.js in docs 2017-02-16 20:52:20 +01:00
JC Brand
2819148669 Document white- and blacklisting of plugins 2017-02-16 20:37:33 +01:00
JC Brand
f43084861e Remove references to bower in docs 2017-02-16 15:39:52 +01:00
JC Brand
4a37c6940b Use individual strophe plugins instead of entire repo 2017-02-16 13:02:09 +01:00
JC Brand
16688ebe1c Install fontawesome via NPM and remove last bower stuff 2017-02-16 12:03:56 +01:00
JC Brand
61568aca32 The notification option wasn't being used consistently 2017-02-15 19:12:45 +00:00
JC Brand
fbdbea223d Ensure consistent behavior from show_controlbox_by_default 2017-02-14 17:23:22 +00:00
JC Brand
e52a775430 Bugfix. See below.
"TypeError: this.sendConfiguration(...).then is not a function" when a room is created
2017-02-14 16:55:32 +00:00
JC Brand
bc8e3e1a01 Return a Backbone.View object instead of a wrapper
When returning chat boxes via the API.

We can do this now because these API methods are only available to
(whitelisted) plugins.
2017-02-14 15:10:46 +00:00
JC Brand
fe6a9ca748 Merge converse-api and converse-core
Otherwise `require('converse-core')` can be called, exposing the inner converse
object.
2017-02-14 14:35:52 +00:00
JC Brand
495c6060f9 Allow non-roster contacts to be invited to a chatroom. 2017-02-14 14:35:31 +01:00
JC Brand
7b65155d5b Don't show chat-state notifications by default. 2017-02-14 13:00:45 +00:00
JC Brand
994c961d9c Add a waitUntil API for promises. 2017-02-14 11:24:20 +01:00
JC Brand
e74d2feeae update changelog 2017-02-13 16:12:12 +00:00
JC Brand
54136a9447 Merge branch 'pr/chats_open_attrs' of https://github.com/Ape/converse.js into Ape-pr/chats_open_attrs 2017-02-13 15:26:40 +00:00
JC Brand
d334870d00 Render the login form again upon authfail. 2017-02-13 15:23:26 +00:00
JC Brand
fddcd1c6cf Improved roster filter UX.
Keep the focus in the input after filtering.
Prevent form submission from reloading the page.
2017-02-13 15:07:46 +00:00
JC Brand
fd2f1c22e4 Fixes #775 2017-02-13 14:26:59 +00:00
JC Brand
acf0e19d99 Fixes #774 2017-02-13 14:20:16 +00:00
JC Brand
5f67797202 Fixes #749 2017-02-13 14:00:05 +00:00
JC Brand
85f6a75fed Escape user-generated input to avoid injection attacks 2017-02-13 13:41:37 +00:00
JC Brand
6d2a38a7c1 Fixes #486 Update docs and fix failing test. 2017-02-12 19:01:07 +00:00
JC Brand
38f3dc66a3 Update documentation 2017-02-02 20:46:30 +00:00
JC Brand
a30cf931b8 Split API into public and private (plugin only) parts. 2017-02-02 20:09:52 +00:00
JC Brand
aacee2eb83 Replace jQuery-based event emitter with Backbone.Events 2017-02-02 19:49:49 +00:00
JC Brand
83feebb229 Two plugins changes
- Remove the `plugins.remove` API method.
- Throw an error when attempting to register multiple plugins with the same name.
2017-02-02 18:54:15 +00:00
JC Brand
6de6d526b0 Various documentation improvements. 2017-02-02 18:34:13 +00:00
JC Brand
7389e1e058 Add documentation on security considerations 2017-02-02 18:34:13 +00:00
JC Brand
9b48b2d6bd Update plugins to not depend on converse-core
To illustrate that this is not necessary (and also not possible with
non-bundled plugins).
2017-02-02 18:34:13 +00:00
JC Brand
b701c4830f Also use _converse as pluggable object reference. 2017-02-02 18:34:13 +00:00
JC Brand
55dbbede8a Update documentation 2017-02-02 18:34:13 +00:00
JC Brand
4dcb855562 Split API into public and private (plugin only) parts. 2017-02-02 18:30:59 +00:00
JC Brand
fd662d4bde Fix selector for cancel button. 2017-02-02 18:30:43 +00:00
JC Brand
647ee1ff04 Replace jQuery-based event emitter with Backbone.Events 2017-02-02 18:30:43 +00:00
JC Brand
82665d17fb By default allow chatting with pending/requesting users 2017-02-02 14:57:17 +01:00
JC Brand
bcbeb8da6c Case-insensitive matching of moderation commands.
Also add `/subject` as alias to `/topic`
2017-02-02 14:56:56 +01:00
JC Brand
4a6d85661a Use template loader that works with lodash.
Also update pluggable.js to a version that works with lodash.
2017-02-01 13:24:34 +00:00
Richard Icke
343e5777d1 first attempt to replace underscore with lodash 2017-02-01 14:00:38 +01:00
JC Brand
e34adf8000 New release: 2.0.5 2017-02-01 11:08:13 +00:00
JC Brand
25d9880f9e Add config setting allow_non_roster_messaging
- Add a test case.
- Don't allow passing of `attrs` to `chats.open`. Not sure yet of the
  implications of this.
2017-02-01 10:49:13 +00:00
JC Brand
e81eaf323e Prevent forging of messages via carbons. 2017-02-01 10:49:13 +00:00
JC Brand
9510bdc152 Remove minimized chats when logging out. 2017-02-01 10:49:12 +00:00
JC Brand
c1662c6339 Properly disconnect upon "host-unknown" error. 2017-02-01 10:49:12 +00:00
JC Brand
8cdadca492 Bugfix. Login form wasn't rendered after logging out
when `auto_reconnect` is set to true.
2017-01-31 19:32:12 +00:00
JC Brand
1fb6ad7310 Update changelog and bump pluggable.js 2017-01-26 09:37:35 +00:00
JC Brand
bd00fabe18 Add documentation on creating custom builds. 2017-01-20 09:18:18 +00:00
JC Brand
0b6775e6d4 Update to strophe 1.2.12. Updates #751 and #753 2017-01-15 10:22:07 +00:00
JC Brand
cbf9617734 Fix selector for cancel button. 2017-01-15 09:31:23 +00:00
Fabio Montefuscolo
a95fbcc0f8 create composer.json to add this project in packagist.org 2017-01-13 18:37:47 +01:00
JC Brand
c5fc477e9b Fix doc URLs 2016-12-13 20:01:20 +00:00
JC Brand
06805d80b8 New release 2.0.4 2016-12-13 19:47:00 +00:00
JC Brand
f5fbf71275 New config setting: muc_disable_moderator_commands 2016-12-07 13:48:47 +00:00
JC Brand
376c50fbc8 When inviting to a members-only room, first add to user to the member-list 2016-12-05 15:06:20 +00:00
JC Brand
7ad39cfdb9 Fetch the room information before opening the room. 2016-12-05 06:07:01 +00:00
JC Brand
67cdf5daf2 converse-muc: Expand the room configuration test 2016-12-04 18:06:11 +00:00
JC Brand
5b944f9e5f Fixes #737: translations weren't being applied. 2016-12-04 16:53:35 +00:00
JC Brand
e179811181 converse-controlbox: Fix empty controlbox toggle after disconnect
- Remove apparently unused `giveFeedback` method on ControlBoxView
- Don't show old connection feedback when rendering a new login form.
  Now also no need to explicitly remove feedback after disconnection.
2016-12-04 16:37:07 +00:00
JC Brand
be25c688ff converse-controlbox: Use event listeners instead of (removed) overrides
Due to changes in `converse-core` the controlbox wasn't aware anymore of
disconnection or reconnection events.
2016-12-04 15:07:46 +00:00
JC Brand
2a81d2e6f3 converse-mam: Don't fetch MAM messages on each page load. 2016-12-04 14:45:36 +00:00
JC Brand
d7892d942c converse-muc: Bugfix.
Switching from bookmarks form to config form shows only spinner.
2016-12-04 14:40:55 +01:00
JC Brand
8bbd88ba86 New release 2.0.3 2016-11-30 17:51:17 +00:00
JC Brand
a3bc7a18e5 Fixes #735. Querying by attribute returns empty list 2016-11-30 18:47:29 +01:00
JC Brand
829f9ab216 Release 2.0.2 2016-11-30 16:27:20 +00:00
JC Brand
9edc97101b Don't maximize minimized rooms when calling rooms.open 2016-11-30 11:03:28 +01:00
JC Brand
0d542cee8c New config settings `allow_bookmarks` 2016-11-24 09:52:05 +01:00
JC Brand
1b434dbe81 Updates #723 and #734.
`converse.rooms.open` ignored the `muc_nickname_from_jid` setting.
2016-11-24 09:25:06 +01:00
JC Brand
0b22b5a6e0 Emit a reconnecting event. 2016-11-23 14:50:28 +00:00
JC Brand
bfde4d3e4c Reconnection fixes.
- Reconnection failed if original connection was never established
- When the `credentials_url` is specified, keep on trying to reconnect.
2016-11-23 11:53:06 +00:00
JC Brand
c3b2a913bb Don't open the controlbox on requesting contacts.
Can get annoying very quickly
2016-11-22 17:41:57 +01:00
JC Brand
586bbd0e4d Bugfix. First configure browserStorage for ChatBoxes
before populating the roster.
2016-11-22 09:35:36 +00:00
JC Brand
3b38f7237c Bugfix. Chatboxes aren't closed when logging out. 2016-11-22 09:12:39 +00:00
JC Brand
c670893058 Bugfix. Arrays in configuration settings were ignored. 2016-11-22 08:55:52 +00:00
JC Brand
ebc7409d55 Enable new rooms to be configured automatically
Via `rooms.open` API method.
2016-11-20 16:42:11 +00:00
JC Brand
9bf00241de Updates #721 Restore sessions when logging in anonymously
together with keepalive.
2016-11-07 18:48:49 +01:00
JC Brand
474d14d1ce Fix links 2016-11-07 15:36:36 +00:00
JC Brand
8c3ffdffbb Release 2.0.1 2016-11-07 14:43:48 +00:00
JC Brand
d26d41a701 Use 'hidden' class instead of .hide(). Fixes #706 2016-11-07 14:10:39 +00:00
JC Brand
f65adb9dfc Mention test state isolation in changelog 2016-11-03 15:43:05 +00:00
JC Brand
55c2c383d1 Link to blogpost about client cert auth 2016-11-03 14:38:29 +00:00
JC Brand
8fdc664b24 Add table of contents and edit link 2016-11-02 14:31:58 +00:00
JC Brand
a66f056def Markup should be RsT, not markdown. 2016-11-02 14:21:20 +00:00
JC Brand
f5ce9620c1 Update angular.js integration example. 2016-11-02 14:17:05 +00:00
JC Brand
fa338c4828 Provide a brief explanation of converse.js's dependencies. 2016-11-02 15:08:31 +01:00
JC Brand
38db959e11 Reconnection fixes. Fixes #712
- Remove groupviews, so that they'll get recreated upon reconnection
- Don't call `clearSession` when reconnecting. We want to reuse the
  Backbone collections.
- Emit `rosterInitialized` event and use that in converse-rosterview.js
  (instead of overriding).
- Refactor `onReconnected` to emit `rosterReadyAfterReconnection`, call
  `converse.populateRoster()` and `converse.chatboxes.onConnected()`.
- Recreate the roster view on the `rosterReadyAfterReconnection` event.
2016-11-02 13:13:49 +00:00
JC Brand
e63853ee92 Add a logout event.
updates #714
2016-11-02 08:42:24 +01:00
JC Brand
aad90cc9df Add the ability to set the MUC domain to be used.
updates #203
2016-10-26 13:31:18 +00:00
JC Brand
575e9da705 Split development docs into separate files/sections 2016-10-21 14:36:05 +00:00
JC Brand
bfd7d037d7 Document angular.js integration 2016-10-21 13:52:34 +00:00
JC Brand
f8a9a98637 Fix markup (should be rst instead of md) 2016-10-21 13:52:00 +00:00
JC Brand
3edaffd3ec Fix typo 2016-10-13 10:12:23 +02:00
JC Brand
5a3917925e Add a new configuration setting: connection_options
Allows you to pass in options for the `Strophe.Connection` constructor.
2016-10-12 14:16:34 +02:00
JC Brand
052dd19252 Initial work on adding chatroom bookmarks. 2016-10-05 23:15:42 +02:00
JC Brand
d200f24bea Update CSS so that tests pass. 2016-10-03 19:51:15 +02:00
Mathias Ertl
1ba68dc8b2 Csp compat (#695)
* Remove some inline CSS style to improve CSP compatibility

* update changelog
2016-10-03 19:45:06 +02:00
JC Brand
90d1071df0 Load templates in the respective plugins 2016-09-23 12:35:01 +02:00
JC Brand
ab76f1da44 Let core populated the roster, and send the initial presence
This allows for cleaner separation between core and rosterview, making it
easier to remove that plugin for more stripped down deployments.
2016-09-21 15:06:48 +02:00
JC Brand
ac2c5f3e4e Allow the context to be passed in when registering event listeners
Similar to how backbone.js does it.
2016-09-21 13:15:45 +02:00
JC Brand
decea0e33b Missed some changelog entries 2016-09-16 12:46:34 +00:00
JC Brand
10da240e7e New release 2.0.0 2016-09-16 12:35:02 +00:00
JC Brand
713922a9e1 Update to Strophe 1.2.8 and add support for SASL-EXTERNAL auth 2016-09-16 13:06:52 +02:00
JC Brand
89e5bd7c54 Update to pluggable.js 0.0.2 2016-08-31 10:39:11 +00:00
JC Brand
a2ba3ccd4c Fixed chat state value, should be chat not chatty. 2016-08-23 08:43:20 +00:00
JC Brand
b0de7948f3 Document the update to the rooms API. 2016-08-21 11:09:08 +00:00
JC Brand
b8aaf751d2 Changes concerning caching of data in the browser.
- Add new configuration setting messages_storage
- Hardcode the storage for roster contacts and chatroom occupants to `sessionStorage`.
2016-08-21 10:55:45 +00:00
JC Brand
1ee7d06a08 Further document the auto_reconnect option
and drop the reconnection timeout to 3 seconds (from 5).
2016-08-19 14:11:37 +00:00
JC Brand
59143c1c72 More work on auto-reconnecting and on maintaining sessions.
- Added the ability to reconnect to more disconnection causes.
- Make sure the roster is fetched again when reconnecting.
2016-08-19 12:16:55 +00:00
JC Brand
fccd0860eb New release 1.0.6 2016-08-12 20:52:21 +00:00
JC Brand
6ac4f2601d Fixes #677 Chatbox does not open after close
Problem was a race condition between hide and show methods.
Solution was to not hide the chat box during the initialize method.
2016-08-12 20:38:39 +00:00
JC Brand
4402798dcd Don't add resources from message stanzas. Fixes #632
For each user we keep a list of currently online resources. These resources
were taken from both presence and message stanzas.

Receiving a message doesn't however indicate that the user is online,
especially in the case of archived messages.

This also abused the semantics of messages, which are meant to indicate
user presence.
2016-08-12 19:45:47 +00:00
JC Brand
fe46f2ee77 Chat state notifications are now also sent out from chat rooms. 2016-08-12 12:52:33 +00:00
JC Brand
66d80cc4db New configuration setting muc_instant_rooms.
This option is by default set to `true` which entails no changes in behavior
compared to previous versions of converse.js.

If set to `false`, then rooms first need to be configured before they can be
joined by other users (so-called "reserved" rooms).

More info on "instant" and "reserved" rooms here:
http://xmpp.org/extensions/xep-0045.html#createroom
2016-08-11 16:05:07 +00:00
JC Brand
462a43b891 Add new config option muc_nickname_from_jid
which if set to `true` will let converse.js automatically take the node part of
a user's JID as their nickname when entering a room.

If there is a nickname clash, then the nickname will be disambiguated by adding
integers to it.

For example, john will become john-1, then john-2 and so forth.
2016-08-11 12:02:35 +00:00
JC Brand
4c123d51d4 New release: 1.0.5 2016-07-28 16:07:47 +00:00
JC Brand
561c138edd Bugfix. Allow multiple MAM queries to be made simultaneously. 2016-07-28 18:01:37 +02:00
JC Brand
e28aba5a59 Fixes #645. When accepting a contact request...
the contact didn't appear under the pending contacts list.
2016-07-28 10:35:43 +00:00
JC Brand
a1e24c95c9 Add nickname to chat message when clicking on room occupant.
Allows you to easily mention someone in your message.
2016-07-26 09:31:23 +00:00
JC Brand
172ce7e0ce Remove the members-list work and keep the nickname form stuff
It's not stable yet and XMPP server support is very patchy.
However, the nickname form work can be merged into master.
2016-07-26 07:14:22 +00:00
JC Brand
be47ceaab5 In case of a nickname conflict, enable the user to choose a new one 2016-07-26 07:12:56 +00:00
JC Brand
d7c026e128 New release 1.0.4 2016-07-26 06:00:30 +00:00
JC Brand
b2e1896274 Clarify a little 2016-07-25 13:34:44 +00:00
JC Brand
71381e2f22 Show requesting contacts when filtering by chat state.
Also add an initial test case for filtering by chat state.
2016-07-18 08:42:07 +00:00
JC Brand
01f576e505 Return all rooms or private chat when caling get without arguments 2016-06-24 10:54:39 +02:00