linkmauve
561bdbba35
Always use formatting inside translatable strings ( #983 )
...
This helps translators reorder words in the string.
2018-01-17 17:02:51 +01:00
JC Brand
16b8946dd9
Updates #978 : Use moment and generate date in correct format
2018-01-04 13:11:51 +00:00
JC Brand
671691353a
Use Backbone.NativeView instead of Backbone.View
2018-01-03 20:41:03 +00:00
Emmanuel Gil Peyrot
f2ecf3c010
Remove executable bit from files which don’t need it
2017-12-24 17:05:01 +00:00
JC Brand
ac643ae63f
Refactor views to use Backbone.OrderedListView
2017-12-22 12:02:18 +00:00
JC Brand
32621b8327
Clear chat_state timer when closing chat
2017-12-19 19:17:38 +00:00
JC Brand
6c6ef1f1f9
Refactoring of the roster view.
...
* Removed the dependency on jQuery
* Contacts are now shown inside a group element, simplifying the code
2017-12-19 18:44:31 +00:00
JC Brand
8dae284e6f
Log reason when catching errors
2017-12-18 12:20:39 +00:00
JC Brand
5eabf4008e
Render "create account" link via a VDOMView and hide when connecting
2017-12-14 12:30:50 +00:00
JC Brand
8cd75aa09c
Move ChatBox, Message and Messages to converse-chatboxes
2017-12-06 22:09:46 +01:00
JC Brand
c26ccf5e01
Remove jQuery as dependency for converse-mam
.
...
Also, if a message has no `archive_id` attribute, then do a time-based MAM query.
2017-12-02 14:26:28 +01:00
JC Brand
9d1c6236ac
Move the xmpp status (e.g. profile) view into separate plugin
2017-11-17 13:32:03 +01:00
JC Brand
87213bf90a
Rename getPromiseWrapper to getResolveablePromise
...
Let a promise be returned instead of a wrapper, but glue the `resolve`
and `reject` methods onto it
2017-11-10 21:37:35 +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
754ad7a027
Initial work on combining the converse and inverse modes
...
- Adds new config setting: `view_mode`
- `converse-singleton` is now a core plugin and its behavior depends on `view_mode`.
2017-11-02 14:21:29 +01:00
JC Brand
46ca6c7de2
Make the router global and clear login/register fragments
...
upon login or after registering.
2017-10-31 21:47:27 +01:00
JC Brand
e8e20fbf93
Make sure to emit upon reconnection
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
9862d747a9
Refetch the roster from the server after reconnection.
...
From the perspective of the XMPP server, this is an entirely new login,
and therefore as per RFC-6121 the roster SHOULD be queried, making the
client an "interested resource".
https://tools.ietf.org/html/rfc6121#section-2
2017-10-31 20:38:51 +01:00
JC Brand
0a7c20a1e2
Log incoming and outgoing XML stanzas in different colors
2017-10-31 20:38:51 +01:00
JC Brand
4dad60c8d6
Include timestamps in debug logs
2017-10-31 20:38:51 +01:00
JC Brand
05c3a5cad6
Move translation machinery into a separate module
2017-10-31 20:38:51 +01:00
JC Brand
79080b3569
Routing fixes
...
* Check if `Backbone.history.start()` has been called before.
* Only call it after routes have been registered.
* Use route for switching between login and register forms
2017-09-28 23:29:37 +02:00
JC Brand
50064ec1fd
Translation bugfix. Wait until after locales
attribute is there
2017-09-27 00:33:58 +02:00
JC Brand
80b3692131
More work in removing locales from builds
2017-09-26 18:27:41 +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
92af05d510
Some more refactoring now that we use a vdom for the login panel
...
We can now simply call `render` whenever we want to show an error or
notification message.
The flip side is that the template is now larger and contains more login.
2017-09-24 00:30:43 +02:00
JC Brand
937b310733
Refactor login form to make it more reactive.
2017-09-24 00:30:43 +02:00
JC Brand
4063bbfc1c
converse-register: Consolidate validation and error reporting
2017-09-24 00:30:43 +02:00
JC Brand
7cfe81ea1f
Fix failing tests.
...
Somehow the tests are flaky when the router sets a URL fragment for login or
registration, so I've now added an event handler which does the work without
setting the URL fragment.
The router is still there so that one can manually link to a URL that has the
registration form open. (Issue #828 )
2017-09-24 00:30:43 +02:00
JC Brand
43bbae9006
Don't require auto_login
to be true when using the API to log in
2017-09-24 00:30:43 +02:00
JC Brand
158acbf1d7
Fixes #828 Add routing for login and register URL fragments
2017-09-24 00:30:43 +02:00
JC Brand
f908463ab9
Clear connection feedback after login
2017-09-08 18:18:55 +02:00
JC Brand
bd913734e4
Don't hang indefinitely + nicer error messages
...
when a connection can't be established.
2017-09-08 14:24:38 +02:00
JC Brand
c9913bf6ac
Fix failing tests
2017-08-29 12:29:56 +02:00
JC Brand
32d574039d
Translateable strings must not be template literals
...
xgettext doesn't support them yet, which causes errors in the pot/po files.
https://savannah.gnu.org/bugs/?50920
updates #909
2017-08-23 12:00:49 +02:00
JC Brand
75301d2875
Bugfix. info called on object that doesn't implement interface Console
2017-08-21 12:52:18 +02:00
JC Brand
016bca74b8
console.warn
is not supported on FF < 52
2017-08-21 11:29:06 +02:00
JC Brand
694eabfc0e
Use promises to determine when to create the controlbox
2017-08-16 13:22:18 +02:00
JC Brand
956340aa8c
Make initialized
a promise and use it in the controlbox
2017-08-16 12:32:15 +02:00
JC Brand
273da9e876
Move chatboxes collection and overview into separate plugin
2017-08-16 12:32:15 +02:00
JC Brand
e4d95eb794
Don't load lodash.fp
in converse-core. It's not being used there.
2017-08-15 16:36:43 +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
a9d1e5c235
Don't use forEach
on nodeList objects (not supported by all browsers).
2017-08-08 15:32:53 +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
7850c38faa
disco: Create new plugin converse-disco
.
...
We can now support feature discovery for multiple entities (although we
currently still only query for the user's own XMPP server).
2017-07-21 15:09:50 +02:00
JC Brand
00484280c2
core: Catch and log errors that might happen during initStatus
2017-07-21 15:09:50 +02:00
JC Brand
c012c2c1af
Don't show duplicate sent groupchat messages in Slack chat rooms
2017-07-19 08:28:51 +02:00
JC Brand
d9a61746a2
Bugfix. Server disco features forgotten between logouts.
2017-07-18 10:46:46 +02:00
JC Brand
6fea88fcc3
Add JID validation and error messages to the add contact
form
2017-07-17 22:08:15 +02:00
JC Brand
e3d2abf0ec
emoji: Make sure emojis are also rendered for ascii emoticons
2017-07-16 12:50:59 +02:00
JC Brand
284e884766
Add js-xss
and use it to sanitize message HTML
2017-07-15 19:15:48 +02:00
JC Brand
e75b6ad694
Recreate promises whenever initialize
is called.
2017-07-11 17:05:01 +02:00
JC Brand
6ef0536e31
Some work on using es6 promises
2017-07-10 21:14:48 +02:00
JC Brand
9a9eae3fcf
Use esnext to auto-generate es2015 syntax
2017-07-10 17:46:22 +02:00
JC Brand
40e7ee1ae6
Initial stab at using ES2015
...
Mostly replaced ``var`` with ``let`` and ``const``.
Also added a few arrow functions.
2017-07-10 12:49:20 +02:00
JC Brand
8c1c665e2e
core: Some more logging improvements.
2017-07-10 10:43:13 +02:00
JC Brand
5ab1693136
logging: Add deprecation warning for updateSettings
...
and also use the Strophe.LogLevel levels for logging in general.
2017-07-05 11:33:55 +02: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
ea04b11724
Try to fix what appears to be a timing bug
2017-06-27 09:29:46 +02:00
JC Brand
095e7add86
mam: Upgrade MAM support to version 2
2017-06-23 22:58:47 +02:00
JC Brand
66fd9a9f28
muc: Fix: after reconnecting, already open room didn't receive new messages
2017-06-23 20:19:38 +02:00
JC Brand
53643ab541
core: Close chats when logging out, before disconnecting
...
Otherwise rooms cannot be exited properly.
Also, no need to call `_tearDown` in `logOut` when `connection.disconnect` gets
called since it will get called afterwards in the handler.
2017-06-23 18:21:00 +02:00
JC Brand
796edb03fe
Updates #890 . Make sure to clear session data
...
Otherwise carbons aren't re-enabled after reconnection.
2017-06-16 14:55:40 +02:00
JC Brand
f09d01c930
roster: Move roster push and rosterX handlers to core.
...
There's nothing about them that's view specific.
2017-06-16 11:42:46 +02:00
JC Brand
d527f693c2
Updates #890 Destroy and recreate session upon reconnection
...
This ensures that carbons will be activated again.
2017-06-15 17:30:26 +02:00
JC Brand
1f82b7dfe4
Create utils method isSameBareJID
. Refs: #894
2017-06-14 22:31:44 +02:00
JC Brand
c9ecd3cd4d
Only initiate OTR for new messages.
2017-06-14 19:43:02 +02:00
JC Brand
41bb8b5da7
Make `converse-roomslist
` a core (i.e. by default whitelisted) plugin
2017-06-14 10:49:21 +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
5e783e70e4
Lay the groundwork for being able to have separate ChatRoom models
2017-05-23 18:16:47 +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
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
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
0bd0798e34
Use the Backbone defaults
functionality
2017-05-08 21:28:56 +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
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
f3d29e016e
Show unread messages counter next to roster contacts
2017-04-24 15:57:22 +02:00
JC Brand
f3373c44fd
Fixes #850 . .where
method doesn't match numbers.
2017-04-21 18:06:28 +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
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
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
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
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
5fc6ab1e4e
Move plugin init code into method
2017-03-07 12:05:04 +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
a3407bb98b
Move MAM specific code to converse-mam.js
2017-02-28 22:34:04 +01:00
JC Brand
bccdedc64f
Also show a hint explaining the roomchat status
2017-02-28 06:52:33 +01:00
JC Brand
cfb0cd0970
New defaults
2017-02-27 10:41:46 +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
adb4f62ea9
Fixes #790 mam retrieval broken
2017-02-25 09:54:41 +01:00
JC Brand
305559a85c
Use sizzle in converse-muc.js
2017-02-24 12:00:05 +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
40605607e6
Specify radix for parseInt
2017-02-21 22:17:05 +01:00
JC Brand
4aa123d557
Add timestamps to resources
...
So that when a higher priority resource goes offline, we can fall back to the
right chat status if at the next priority level there are multiple resources.
789654d54e (comments)
2017-02-21 22:15:08 +01:00
JC Brand
728c7622e9
Use composition instead of chaining
2017-02-21 09:50:44 +01:00
JC Brand
d79bfe6f28
Use composition instead of chaining.
2017-02-21 09:35:50 +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
61bee4c263
The Strophe.Connection obj needs to be reset before reuse.
...
Otherwise re-login hangs after authfail.
2017-02-18 09:46:33 +00:00
JC Brand
33cc2c3cf5
Remove #BBB code for the deprecated prebind
option
...
replaced with the `authentication` option
2017-02-18 09:35:16 +00:00
JC Brand
a1c156456d
Make keepalive
and roster_groups
true by default.
2017-02-17 08:54:58 +01: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
994c961d9c
Add a waitUntil
API for promises.
2017-02-14 11:24:20 +01:00
JC Brand
d334870d00
Render the login form again upon authfail.
2017-02-13 15:23:26 +00:00
JC Brand
48a3c30e75
i18n locale can now be specified with only the language code
2017-02-13 15:16:16 +00:00
JC Brand
f73a1d3fc0
Don't name the modules.
...
According to the require.js docs this shouldn't be done.
http://requirejs.org/docs/whyamd.html#namedmodules
2017-02-13 14:37:17 +00:00
JC Brand
acf0e19d99
Fixes #774
2017-02-13 14:20:16 +00:00
JC Brand
7ad555d97f
Correct rev for pluggable.js.
...
Don't include muc-embedded by default
2017-02-04 09:32:24 +00:00
JC Brand
ebbde138db
Add the ability to whitelist/blacklist plugins.
2017-02-03 18:26:27 +00:00
JC Brand
63888dd454
Fix failing tests
2017-02-02 21:55:05 +00:00
JC Brand
761970c903
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 20:50:52 +00:00
JC Brand
0424df9edc
Rename the closured converse object to _converse
...
to indicate that it's private and to differentiate it from the outer "global"
converse object.
2017-02-02 20:43:48 +00:00
JC Brand
7c15e2f179
Some initial work on removing jQuery
2017-02-02 19:42:01 +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
b7b9711296
Rename the closured converse object to _converse
...
to indicate that it's private and to differentiate it from the outer "global"
converse object.
2017-02-02 18:34:13 +00:00
JC Brand
647ee1ff04
Replace jQuery-based event emitter with Backbone.Events
2017-02-02 18:30:43 +00:00
JC Brand
4b22c8ba7b
Use sizzle for tricky selector queries
...
Specifically involving querying by the 'xmlns' attribute, where I've had issues
in the past.
2017-02-02 18:30:08 +00:00
JC Brand
77f93a6471
Some initial work on removing jQuery
2017-02-02 18:30:08 +00:00
JC Brand
46e231b4b3
Emit 'will-reconnect' event
2017-02-01 17:36:20 +00:00
JC Brand
65852f4e7c
Remove what appear to be unnecessary calls
2017-02-01 17:08:36 +00:00
JC Brand
60f86378a4
Handle reconnection on authfail edge case.
...
Attempt reconnection on authfail when credentials_url and auto_reconnect are set.
2017-02-01 16:34:38 +00:00
JC Brand
8ef7461627
Simplify the onDisconnected method. Add some docstrings.
...
Let debounced reconnection happen on the leading edge.
2017-02-01 16:24:28 +00:00
JC Brand
081f075aa9
Add eslint with lodash checking and apply its suggestions
2017-02-01 14:02:18 +01:00
Richard Icke
343e5777d1
first attempt to replace underscore with lodash
2017-02-01 14:00:38 +01: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
Lauri Niskanen
246edf8a66
Allow chatting with users not in roster
...
Resolves #760 .
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
0cf9903726
Fix failing tests.
2017-02-01 10:49:13 +00:00
JC Brand
d96bc6ebe4
Avoid sending 'auth fail' feedback twice.
2017-02-01 10:49:12 +00:00
JC Brand
af42bc0696
Only close controlbox when logging out
...
Not when the connection failed due to other reasons (like wrong credentials).
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