Граф коммитов

783 Коммитов

Автор SHA1 Сообщение Дата
Joachim Bauch 3f4f0b1ee1
Update room list on "room" events.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2018-02-02 11:43:00 +01:00
Joachim Bauch b3c601a8cb
Split "room" from "call" when using the standalone signaling server.
Clients use the regular joinRoom/-Call API and get a Nextcloud session
id. No special handling for sessions from the standalone signaling
server are required.

The signaling server regularly "pings" active sessions to prevent them
from timing out (in case of guest users).

Signed-off-by: Joachim Bauch <bauch@struktur.de>
2018-02-02 11:42:59 +01:00
Joas Schilling b2db74df87
Only return 20 suggestions, it's still more than enough
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-01-31 12:29:15 +01:00
Ivan Sein aedbd5a0bf Do not overwrite app-content classes when screensharing is active.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2018-01-26 15:28:16 +01:00
Ivan Sein a8de18eeb8 Add a button to show/hide password input.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2018-01-26 15:14:34 +01:00
Joas Schilling 0b6fe312c1
Do not update non-relative dates and show seconds again
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-01-26 12:20:48 +01:00
Joas Schilling 7f75568720
No relative date on the comment after a day, makes no sense...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-01-26 12:20:48 +01:00
Daniel Calviño Sánchez 9fa0cf04a8
Show date in first message
When using the oldest to newest layout now the first (oldest) message
always shows the date.

When using the newest to oldest layout, however, there is no date shown
in the first (newest) message; in this case it would be good to show it
only if the newest message was not sent today, but the newest to oldest
layout is currently not used anywhere (and it is likely to be removed
from the code), so there was no need to spend time on that.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-26 12:20:48 +01:00
Joas Schilling 34972eda40
Add a relative prefix to the date divider in the chat
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-01-26 12:20:48 +01:00
Joas Schilling e5a4a0a02b
Remove unneeded condition
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-01-26 12:20:48 +01:00
Ivan Sein 9dec8b591f
Store [session -> guest name] table. Used to refresh guest shared screen name indicators.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2018-01-26 12:20:48 +01:00
Ivan Sein 2ccdeb66e1
Always send guest name via data channel when connection is established.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2018-01-26 12:20:47 +01:00
Ivan Sein 3fac50104a
Add aditional check for modelSaveOptions.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2018-01-26 12:20:47 +01:00
Joas Schilling a6f6e7a87b
Use search input as room name for "New public call"
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-01-26 12:20:47 +01:00
Joas Schilling bf738393c0
Do not use relative paths to images on the server
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-01-26 12:20:47 +01:00
Ivan Sein 1892a6a55d
Merge pull request #579 from nextcloud/format-links-in-chat
make links in chat clickable
2018-01-12 11:44:36 +01:00
Arthur Schiwon 90865c369f make links in chat clickable
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-01-11 18:34:02 +01:00
Daniel Calviño Sánchez 1448fde92e Fix variables already defined
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-11 18:20:40 +01:00
Daniel Calviño Sánchez a15e973ac7 Add chat tab as the first one instead of appending it
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-10 13:15:07 +01:00
Daniel Calviño Sánchez 92fbc4777f Select chat tab when adding it to the sidebar
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-10 13:14:32 +01:00
Daniel Calviño Sánchez 3c0587f31c Improve automatic scrolling behaviour when new messages arrive
When the chat messages are shown from newest to oldest and a new message
arrives the list is automatically scrolled to keep the current visible
messages at the same place, except if the list was at the top, in which
case no scrolling is made and the new message appears.

When the chat messages are shown from oldest to newest and a new message
arrives the list is automatically scrolled to show the new message,
except if the list was not at the bottom in which case no scrolling is
made and the current visible messages are kept at the same place.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-10 11:15:13 +01:00
Ivan Sein 3c1a4da137
Merge pull request #561 from nextcloud/reverse-chat-layout
Reverse chat layout
2018-01-10 09:56:02 +01:00
Daniel Calviño Sánchez 57a65b24f5 Reverse chat layout
Before chat messages were shown from newest to oldest, with the new
message input above the list of messages. Now the layout can be chosen,
either the previous one or the reversed one, from oldest to newest with
the new message input below the list of messages.

The new reversed layout is the default one, and probably the old one
will not be used anywhere in the future... but for the time being I kept
the old one too just in case.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-10 08:50:44 +01:00
Ivan Sein 505f2d55c0
Merge pull request #555 from nextcloud/fix-the-update-of-the-editabletextlabel-input
Fix the update of the EditableTextLabel input
2018-01-10 01:28:23 +01:00
Ivan Sein cb403ccdf2
Merge pull request #549 from nextcloud/room-info-title
Improve title for 1-to-1 calls.
2018-01-10 01:17:08 +01:00
Ivan Sein 290b00bf68
Merge pull request #550 from nextcloud/limit-scroll-bar-in-sidebar-to-chatview
Limit scroll bar in sidebar to chat view
2018-01-10 01:03:50 +01:00
Ivan Sein 2a19f95968 Add 'video-disabled' class to mute button when video is disabled.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2018-01-10 00:57:41 +01:00
Daniel Calviño Sánchez bccc62c0ed Show scroll bar for the list of participants in the sidebar
Limiting the scroll bar in the sidebar to the list of chat messages
causes the scroll bar to be removed from the whole sidebar in other tabs
too. Therefore, the scroll bars must be explicitly enabled in the other
tab contents that need them.

The list of participants grows dynamically, so a vertical scroll bar
should be enabled on it to be able to view all the participants in a
long list.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-10 00:39:43 +01:00
Daniel Calviño Sánchez bd8d30d725 Fix tooltips when chat view is shown in the sidebar
The positioning context (the element that an absolute element is
relative to) of the tooltips shown for the date of messages was the
author row, and thus they were visible only were the author row would be
visible. The author row would be clipped outside the list of messages
(due to its "overflow-y" CSS property), so the tooltip shown for the
date of the newest message was clipped at the top of the list of
messages.

Now the tooltips are added to the chat view itself, so "#app-content"
becomes their positioning context and thus are no longer clipped by the
list of messages.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-10 00:39:43 +01:00
Daniel Calviño Sánchez 0b546c200f Add extra CSS class to tab content wrapper with the id of the tab
In CSS it is not currently possible to select an element based on
whether it has certain child or not, nor select the parent element of
another one. In certain cases it may be necessary to use a special style
for the tab content wrapper element, for example to remove the padding
from the wrapper and left the tab content element itself to handle it.
To support that now the tab content wrapper has the "tab-{tabId}" CSS
class in addition to the "tab" CSS class.

Another option would have been to make possible to specify the class
name to use when a tab was added so the same class could be used by the
wrapper when showing different tabs. However this seem like an uncommon
use case, and there should not be a lot of tabs anyway, so the current
approach would not require a lot of ".tab-{tabId1}", ".tab-{tabId2}",
".tab-{tabId3}"... selectors for the same rules in the CSS files anyway.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-10 00:39:43 +01:00
Daniel Calviño Sánchez a0f0d9c274 Remove "scroll-container" CSS class from sidebar
The class was copied from the markup of the server sidebar, but it is
not used anywhere and its name is misleading now that the scroll bar is
shown on the tabs that need it.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-10 00:39:43 +01:00
Ivan Sein 95063bca66 Improve title in call info view for oneToOne calls.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2018-01-10 00:33:14 +01:00
Daniel Calviño Sánchez 1caa0be5bb Add methods to update the model attribute and the label placeholder
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-10 00:33:14 +01:00
Daniel Calviño Sánchez 4cf514478a Fix the update of the EditableTextLabel input
The value of the input was not properly updated when the model attribute
changed. Instead of updating it in that case too now it is always
updated before the input element is shown.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-09 23:36:37 +01:00
Jan-Christoph Borchardt 404ef18dfb Improve wording on Copy link icon
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2018-01-09 19:54:05 +01:00
Jan-Christoph Borchardt 876d44a161 Replace triangle sidebar trigger with dedicated icon
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2018-01-09 19:54:05 +01:00
Daniel Calviño Sánchez 4f0a187ac9
Merge pull request #544 from nextcloud/show-chat-view-as-main-view-when-in-a-room-but-not-in-a-call
Show chat view as main view when in a room but not in a call
2018-01-09 17:54:54 +01:00
Joas Schilling 3383c8fdcd
Merge pull request #547 from nextcloud/button-primary
Design enhancements
2018-01-09 16:49:42 +01:00
Jan-Christoph Borchardt 41be5382c2 Rename room information to room name so it's more obviously editable
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2018-01-09 16:03:42 +01:00
Jan-Christoph Borchardt 32b59d86be Call attention to call button via primary class
Signed-off-by: Jan-Christoph Borchardt <hey@jancborchardt.net>
2018-01-09 15:25:45 +01:00
Joas Schilling 2fc857efa0
Merge pull request #545 from nextcloud/focus-again-on-new-message-input-after-sending-a-message
Focus again on new message input after sending a message
2018-01-09 11:45:26 +01:00
Daniel Calviño Sánchez d20dbf6ece Focus again on new message input after sending a message
Some browsers (like Firefox) automatically return the focus to the new
message input after sending a message, while others (like Chromium) do
not. Now the focus is explicitly given back to the new message input to
make more comfortable to keep writing new messages.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-09 11:05:54 +01:00
Daniel Calviño Sánchez 38d866bf14 Fix tooltips when chat view is shown as the main view
By default, "tooltip()" adds the tooltip element to the element in which
the function is called. If a "container" option is provided the tooltip
is added instead to the given element, although visually it will be
shown for the element in which the function is called.

The positioning context (the element that an absolute element is
relative to) of the tooltips shown for the date of messages was the
author row, and thus they were visible only were the author row would be
visible. The author row would be clipped outside the list of messages
(due to its "overflow-y" CSS property), so the tooltip shown for the
date of the newest message was clipped at the top of the list of
messages.

Now the ChatView provides a method to specify to which element append
the tooltip elements, so they can be appended to another element that
does not cause clipping problems.

Although right now it would be enough to add the tooltips to the chat
view itself, once the chat view layout is modified to show the input
field at the bottom then the same problem would arise when the chat view
is shown as the main view, as the tooltips would be clipped by
"#app-content". Thus, to be prepared for that change, they are added to
"#app" instead.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-08 15:35:04 +01:00
Daniel Calviño Sánchez cc0f2b5bb7 Remove unneeded "tab" CSS class from chat view
The "tab" CSS class does not apply when the chat view is shown in the
main view, and it is not needed either when shown in the sidebar, as it
is automatically set in the div to which the view is appended (in fact,
it was a bug, as two "tab" classes were nested and thus its padding was
duplicated).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-08 15:35:04 +01:00
Daniel Calviño Sánchez 3cff47a238 Show the chat view as the main view when in a room but not in a call
When shown as the main view, the input field to add a new message is
always shown and a scroll bar is provided just for the list of messages.

Only the chat view is added and removed to and from the main view; the
other elements in the main view are not modified when that happens, and
they are hidden using some CSS magic.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-08 15:35:04 +01:00
Daniel Calviño Sánchez 3190f30399 Make ChatView to inherit from Marionette.View
Note that this only makes ChatView to inherit from Marionette.View, but
it does not make ChatView use all the fancy features of Marionette
Views.

This will be needed for proper View lifecycle support when the ChatView
is added and removed to and from the sidebar.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2018-01-08 13:40:01 +01:00
Joas Schilling 7fea2fb7f8
Fix deprecated *-white icon
Signed-off-by: Joas Schilling <coding@schilljs.com>
2018-01-08 12:51:02 +01:00
Artur Bergen 4d319941fb
Fix for 'no-mixed-spaces-and-tabs' allowed
Signed-off-by: Artur Bergen <artur.bergen@struktur.de>
2018-01-08 12:32:36 +01:00
Artur Bergen 0de8d69501
Remove redundant
Signed-off-by: Artur Bergen <artur.bergen@struktur.de>
2018-01-08 12:32:36 +01:00
Artur Bergen 35f2b2fd1c
Renamed class and refactor code
Signed-off-by: Artur Bergen <artur.bergen@struktur.de>
2018-01-08 12:32:36 +01:00
Artur Bergen bd5475e07b
Rebase and fix conflicts
Signed-off-by: Artur Bergen <artur.bergen@struktur.de>
2018-01-08 12:32:36 +01:00
Daniel Calviño Sánchez b448b3c4cc Fix protocols for TURN server not saved
The TURN server values are now (tried to be) saved when the protocols
are changed, like it is done when the server URL or the secret are
changed.

Fixes #531

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-12-26 17:16:06 +01:00
Ivan Sein 700c9dd864
Merge pull request #502 from nextcloud/bugfix/noid/fix-room-messages-with-room-call-split
Adjust the room/call message while waiting for a call
2017-12-11 20:08:43 +01:00
Daniel Calviño Sánchez 3b142369f5
Merge pull request #519 from nextcloud/fix-multiple-pullmessages-requests
Avoid multiple pull messages requests at the same time.
2017-12-07 20:59:03 +01:00
Daniel Calviño Sánchez 7014a4d2ad Fix removing the name of the room
The name of the room is removed by setting it to the empty string, but
the if condition was wrong and thus an empty string did not satisfy it.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-12-07 18:14:46 +01:00
Ivan Sein c86300f65e Fix room rename.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-12-07 18:14:46 +01:00
Ivan Sein 51f26f93b2 Avoid multiple pull messages requests at the same time.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-12-07 17:53:28 +01:00
Daniel Calviño Sánchez 9fd87806c2 Open sidebar automatically when joining a room
Below certain window width the sidebar starts overlapping with the
content area, so the sidebar is automatically open only if it will not
overlap with the content.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-12-01 20:31:25 +01:00
Ivan Sein b6d8532f75
Merge pull request #515 from nextcloud/fix-sorting-of-chat-messages-with-same-timestamp
Fix sorting of chat messages with same timestamp
2017-12-01 19:40:33 +01:00
Daniel Calviño Sánchez 0a882e04d2 Fix sorting of chat messages with same timestamp
The timestamp is in seconds, so when sent extremely fast two or more
messages can have the same timestamp. As a stable sorting algorithm is
used and the messages were sorted only by timestamp, when two or more
messages had the same timestamp the relative order between them was the
same as the one returned by the server. Due to this those messages were
sorted from newest to oldest between them, while the rest were sorted
from oldest to newest. The solution is to sort the models by their
reversed position in the set returned by the server.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-12-01 16:27:33 +01:00
Daniel Calviño Sánchez 96402de854 Fix input field not disabled while a chat message is being sent
The problem was caused by trying to disable the div using the "disabled"
property, which works only on real input fields; when using a content
editable div the way to disable it is by setting "contenteditable" to
"false".

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-12-01 02:41:02 +01:00
Joas Schilling d3cdf41b97
Merge pull request #507 from nextcloud/make-possible-to-remove-tabs-from-the-right-sidebar
Make possible to remove tabs from the right sidebar
2017-11-29 12:40:51 +01:00
Joas Schilling ff8193de8f
Use the jQuery way to empty the element
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-11-28 10:50:46 +01:00
Joas Schilling 8028311ae5
Use a different icon when there is a call in progress and adjust the messages a bit
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-11-23 10:00:25 +01:00
Joas Schilling 49288d746c
Adjust the room/call message while waiting for a call
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-11-22 15:09:13 +01:00
Ivan Sein 5184ca34fe
Merge pull request #496 from nextcloud/bugfix/495/ping-missing-when-only-joining-room
Ping should work when you joined a room
2017-11-22 13:50:29 +01:00
Joas Schilling 36e8a337e0
Do not fall back to the User list when there is no name
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-11-22 12:05:00 +01:00
Joas Schilling fc83c6a33f
Ping should work when you joined a room
Otherwise your session times out while chatting and you can not
receive and post new messages after the 30 second timeout on your
session

Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-11-22 11:54:53 +01:00
Artur Bergen 04b9761fb9 Additional translation attributes 2017-11-17 15:06:24 +01:00
Ivan Sein 8b5b4e2572
Merge pull request #483 from nextcloud/fix/481/make-user-leave-the-room-on-unload
also leave the room when the user navigates away
2017-11-17 14:13:55 +01:00
Joas Schilling 231add54e4
Merge pull request #487 from nextcloud/add-translation-attr
Add translation attribute
2017-11-16 18:01:30 +01:00
Daniel Calviño Sánchez 96a4942585 Add a header with the date when it changes between messages
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-16 13:13:08 +01:00
Daniel Calviño Sánchez bc501ba53c Group temporary near messages by same participant
When two or more consecutive messages were sent by the same participant
with a difference of less than 120 seconds between each message those
messages are now shown grouped (the participant name is not shown for
the intermediate messages and each message is pushed closer to the
previous message).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-16 13:13:08 +01:00
Joas Schilling d5ea8734cf
also leave the room when the user navigates away
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-11-16 11:24:56 +01:00
Artur Bergen d8d652d8f9 Add translation attribute 2017-11-16 11:17:58 +01:00
Ivan Sein 06b62d8c56
Merge pull request #478 from nextcloud/fix-slow-update-of-join-leave-call-button
Fix slow update of "Join/leave call" button
2017-11-15 17:09:52 +01:00
Daniel Calviño Sánchez 2004490b37 Fix slow update of "Join/leave call" button
The button is updated when the model changes, but the model was not
being synced when the user joined or left a call, so it only changed
when it was synced for any other reason.

Fixes #473

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-15 16:35:07 +01:00
Daniel Calviño Sánchez f4cf877ce0 Fix call info rendering blocked for normal (not moderator) users
When there is no password input field its value is undefined, so the
rendering never finished when calling "renderWhenInactive" due to the
strict equal comparison.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-15 16:15:26 +01:00
Ivan Sein a332901390
Merge pull request #474 from nextcloud/fix-463-enter-is-send
Submit chat messages with Enter and use Shift+Enter for new lines
2017-11-15 12:49:38 +01:00
Joas Schilling 53d87906a1
Fix app name in browser title
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-11-15 12:13:48 +01:00
Joas Schilling bb6aa2c279
Submit chat messages with Enter and use Shift+Enter for new lines
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-11-14 13:52:27 +01:00
Daniel Calviño Sánchez c8b5d2798f Get the current priorities using the tabIds list instead of the regions
The tabIds list is already sorted by priority and insertion order, while
the regions order is undefined and has to be explicitly sorted.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-11 14:08:41 +01:00
Daniel Calviño Sánchez 43e3054c50 Make possible to remove tabs from the right sidebar
Removing a tab from the right sidebar returns its content view, which
would be needed to move a view from the main area to the right sidebar
and back to the main area again (for example, the chat view).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-11 14:03:31 +01:00
Daniel Calviño Sánchez dda1349ebd Fix SidebarView documentation
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-11 13:59:13 +01:00
Daniel Calviño Sánchez 2e06880c95 Make calling "selectTabHeader" to implicitly show the content view
"selectTabHeader" now triggers a "select:tabHeader" event, which the
TabView handles by showing the appropriate content view. Thus, the click
events on tab headers can be directly handled with "selectTabHeader" and
"selectTab" no longer needs to explicitly show the content view.

Showing the appropriate content view when a tab header is selected
through "selectTabHeader" is a preparatory step to make possible to
remove tabs.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-11 12:47:44 +01:00
Joas Schilling 3b2eb7b4dd
Merge pull request #464 from nextcloud/leave_users_on_room_leave
Trigger "usersLeft" event for remaining users when leaving room.
2017-11-10 15:51:49 +01:00
Joas Schilling 575ad8e58f
Fix eslint
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-11-10 11:13:39 +01:00
Ivan Sein 218c1c6951 Rearrange steps in startSpreed function (fix problems joining a room from a url with room token).
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-11-03 17:03:38 +01:00
Ivan Sein d70d455b34 Added missing leave call function.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-11-03 16:06:52 +01:00
Joas Schilling 88b639ac2a Fix the UI to correctly join the room and the call
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-11-03 13:04:52 +01:00
Joachim Bauch 769793f6f7
Trigger "usersLeft" event for remaining users when leaving room.
This fixes a UI issue with the standalone signaling where the interface
didn't switch back to the "Looking good" view when leaving a room.

Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-03 12:18:43 +01:00
Daniel Calviño Sánchez 4c2b2ce7df Add chat view to sidebar tab
The CSS was copied from the Comments app.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-03 11:49:56 +01:00
Daniel Calviño Sánchez 13e7a049b7 Add basic view for chat
The ChatView is a simplified version of CommentsTabView from the
Comments app, adapted to be used with ChatMessageCollection.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-03 11:49:56 +01:00
Daniel Calviño Sánchez 4e07a72131 Add support for changing the room of a ChatMessageCollection
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-03 11:28:38 +01:00
Daniel Calviño Sánchez 0941e2aee6 Add incremental wait before trying to get messages again after a failure
This prevents overloading both the browser and the server with
continuous and immediate requests when a fetch fails due to the server
returning an error (for example, if the user does not have access to a
room but its messages are tried to be received anyway).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-03 11:28:38 +01:00
Daniel Calviño Sánchez 57f2581a72 Add method to stop polling
"stopReceivingMessages" must be called on ChatMessageCollections once
they are no longer needed to ensure that they do not keep polling the
server.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-03 11:28:35 +01:00
Daniel Calviño Sánchez 2a5a2c554e Add method to perform long polling on the model
"receiveMessages" sends a request to the server to get the messages; if
there is none to got the server keeps the connection open, causing
"receiveMessages" to wait until some message is available (or the
timeout ended, in which case the request would succeed but no message
would be returned). Once a response is got, "receiveMessages" sends a
new request to the server, and the process is repeated again and again.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-03 11:27:09 +01:00
Daniel Calviño Sánchez 6f55bd5f00 Fix the order of chat message models in the collection
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-03 04:20:30 +01:00
Daniel Calviño Sánchez b624a66e92 Add basic Backbone models for chat messages
As chat messages can only be sent and received, but not updated or
deleted, a limited set of features are available only in the models:
sending a message is done by saving a ChatMessage, while receiving the
chat messages from a room is done by fetching a ChatMessageCollection.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-03 04:20:25 +01:00
Joachim Bauch 6d137227d1
Fix eslint error.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:53 +01:00
Joachim Bauch 40f6cfeb41
Update room list after reconnect.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:53 +01:00
Joachim Bauch 7980e88865
Update UI for participants if room is deleted by another user.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:52 +01:00
Joachim Bauch 070b6aca6d
Fixed getting checkbox value.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:52 +01:00
Joachim Bauch 51889d5376
Fix passing of configured servers to the UI and wrong own URL to validate users.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:52 +01:00
Joachim Bauch d84a8c9cf6
Only use standalone server if a non-empty list of URLs is configured.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:51 +01:00
Joas Schilling f7f9e7929c
Allow multiple signaling servers
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-11-02 11:23:51 +01:00
Joachim Bauch e3139fe172
Detect and handle case where sessions no longer exist after a reconnect.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:11 +01:00
Joachim Bauch 51ba92cb03
Remove duplicate method.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:11 +01:00
Joachim Bauch 917b4f49f9
Added method to check for features provided by the server.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:10 +01:00
Joachim Bauch 5aaecc9845
Switch to new "resumeid" for resuming sessions.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:10 +01:00
Joachim Bauch 5cb56b5659
Allow setting up multiple signaling servers.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:10 +01:00
Joachim Bauch 6ee066ab08
Set STUN/TURN server through settings instead of performing requests.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:10 +01:00
Joachim Bauch e083e72256
Pass all signaling-related settings as JSON object to frontend.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:10 +01:00
Joachim Bauch 0f3d592660
Don't manually update list of rooms.
Instead only get initial list when connecting and then only update when
notifications from the signaling server are received.

Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:10 +01:00
Joachim Bauch 547c69c91c
Add frontend support for the standalone signaling server.
See #339 for a description of the API.

Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:09 +01:00
Joachim Bauch be33ec8d9c
Implement backend APIs to be used by standalone signaling server.
A standalone signaling server can be configured in the admin UI and is
notified through the BackendController on changes that should be sent to
connected clients.

See #339 for a description of the backend API.

Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-11-02 11:23:09 +01:00
Ivan Sein d7ef5ef868
Merge pull request #458 from nextcloud/add-support-for-right-sidebar-in-public-page
Add support for right sidebar in public page
2017-11-02 11:21:28 +01:00
Daniel Calviño Sánchez 1ab4942ed5 Improve wording of placeholder for guest name when it is not set
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-11-02 05:43:04 +01:00
Daniel Calviño Sánchez 47b4ebdc18 Add sidebar to public page
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-30 13:57:55 +01:00
Daniel Calviño Sánchez 2d6a5a7d47 Move guest name from header to right sidebar
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-30 13:57:55 +01:00
Daniel Calviño Sánchez bb977aaccc Add support for a label placeholder in EditableTextLabel
If the attribute of the model to be shown in the label is empty the
label will now show the "labelPlaceholder" text set in the constructor
options, if any.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-30 13:57:55 +01:00
Daniel Calviño Sánchez 39db4c8883 Replace custom code with LocalStorageModel for guest name
Only the code related to getting and setting the guest name in the UI
was modified to use the LocalStorageModel; direct calls to localStorage
to simply get the value in other areas were kept (and this change does
not affect their behaviour).

As "maxlength" in the guest name input field is set to "20" there is no
need to check the length of the new nick before setting it; if some
validation of the nick was needed before setting it it would have to be
done by using "validate" from Backbone on the model (and
EditableTextLabel would have to be extended too to provide feedback to
the user in that case).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-30 13:57:55 +01:00
Daniel Calviño Sánchez 4678564894 Add a Backbone model for the local storage of the browser
The LocalStorageModel makes possible to use the local storage of the
browser as a Backbone model, for example, with a Marionette view.

It is introduced to be used in a later commit as a bridge between the
local storage of the browser and an EditableTextLabel for the name of
the guest.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-30 13:57:55 +01:00
Daniel Calviño Sánchez d55744a0e9 Fix call info not being rendered when a password is set
When the CallInfoView is rendered the values set in the input fields but
not saved yet are lost. Therefore, instead of directly rendering the
view when the attributes of the model change it is first checked if an
edition is being performed and, it is, then the view is rendered once
the edition is finished.

"renderWhenInactive" assumes that the password is not being edited when
the field has no value. However, when the user set a password the field
was not automatically emptied, and thus the rendering was blocked
(unless the user manually emptied the field). To prevent this, now, once
the password is successfully set, the field is automatically emptied.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-30 07:44:12 +01:00
Daniel Calviño Sánchez b89d385046 Replace custom code with EditableTextLabel for room name
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-30 06:14:02 +01:00
Daniel Calviño Sánchez e269597514 Add Marionette view for editable text labels
An EditableTextLabel is a view that shows a single text attribute from a
Backbone model and, optionally, also makes possible to edit it.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-30 06:03:02 +01:00
Daniel Calviño Sánchez 6efd5e00f0 Rename a room through the room model instead of a custom ajax call
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-29 14:18:14 +01:00
Daniel Calviño Sánchez 386857df72 Use "displayName" instead of "name" in functions to change a room name
The template uses the "displayName" attribute of the model to show the
name of the room, so that attribute should be used too in the functions
that change the room name.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-29 13:47:24 +01:00
Daniel Calviño Sánchez d5a2aed83c Unify room synchronization for users and guests
The main page gives a user access to more than one room, while the
public page only gives a guest access to a single room; guests can not
even query the list of rooms in the backend, so the app sets a room
collection only for users, but not guests. Before, the room model only
supported being part of a room collection, so there was no room model to
be used by the UI for guests. Now, the room model was extended to
support both being part of a room collection and being a standalone
model, and now the signaling can synchronize a single room model too
instead of only a room collection, so the UI can rely on the room model
set as active to be up to date for both users and guests.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-29 12:58:16 +01:00
Ivan Sein a54f2769b0 Merge pull request #440 from nextcloud/sidebar-polishing
Sidebar polishing
2017-10-26 12:12:08 +02:00
Daniel Calviño Sánchez 0abd362f74 Add support for specifying tab order in the right sidebar
When adding tabs to the right sidebar it is now possible to provide a
"priority" property to set the order of the tab header relative to the
other tab headers.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-24 11:26:56 +02:00
Joas Schilling 24b2844427
Use the given short cuts
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-23 12:06:03 +02:00
Joas Schilling d1b85315bb
Move add participant to the sidebar
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-23 12:04:28 +02:00
Daniel Calviño Sánchez d954bf137c Move "Add person" button from navigation bar to right sidebar
The ParticipantView was renamed to ParticipantListView and it is now a
subview of the new ParticipantView, which also contains the button to
add other participants to the room.

TODO: finish the actual movement of the button, as currently this commit
is just a skeleton with the changed views.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-19 17:43:45 +02:00
Joas Schilling eb0950b7e1
Fix some language strings
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-18 12:22:30 +02:00
Joas Schilling 5f537006a3
Don't rerender when the user is typing
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-18 11:29:48 +02:00
Joas Schilling 3fb1314e41
Move password handling to the sidebar
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-18 10:58:47 +02:00
Joas Schilling 369f6a4fae
Move rename option to the sidebar
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-18 10:58:47 +02:00
Joas Schilling d94f84b58b
Move share link to the sidebar
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-18 10:58:42 +02:00
Ivan Sein bbb40e21f2 Merge pull request #437 from nextcloud/fix-sidebar-overlap-after-call
Fix sidebar overlap in calls
2017-10-18 10:15:39 +02:00
Ivan Sein de594c9f35 Merge pull request #433 from nextcloud/ask-for-password-in-plain-mode
Don't use popup to ask for the password but the "blue screen"
2017-10-17 18:52:48 +02:00
Ivan Sein ac6b80dcc4 Fix eslint.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-10-17 18:22:29 +02:00
Daniel Calviño Sánchez b5ce9061e6 Replace custom code with SidebarView
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-13 17:13:59 +02:00
Daniel Calviño Sánchez 936fe0a3f1 Add Marionette view for call info
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-13 17:13:59 +02:00
Daniel Calviño Sánchez c35a30475d Set the new room for ParticipantCollection when the active room changes
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-13 17:13:59 +02:00
Daniel Calviño Sánchez c516ddf513 Make ParticipantCollection to automatically fetch when its room changes
The ParticipantCollection provides the list of participants (including
guests) in a room. The Room model is synced through signaling and
provides some information about the registered users and the guests in a
room, so the ParticipantCollection can listen to changes in those
properties to automatically fetch its items again when needed.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-13 17:13:59 +02:00
Daniel Calviño Sánchez e26d1f17b9 Make ParticipantView to render automatically when its collection changes
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-13 17:13:59 +02:00
Daniel Calviño Sánchez 2f25d8abe8 Generalize ParticipantView CSS rules
Instead of being based on the "participantTabView" id the CSS rules used
by the ParticipantView were modified to be based on its class,
"participantWithList". This will make possible to change the parent
element of the ParticipantView and keep its style.

The rules for links were merged as those links that required a padding
due to being shown with an icon were also those shown inside the list
items.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-13 17:13:59 +02:00
Daniel Calviño Sánchez bfc9066137 Add content to the right sidebar
The right sidebar will contain a call info view and a tab view to which
different sections can be added as needed.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-13 17:13:59 +02:00
Daniel Calviño Sánchez 0fff33484b Add Marionette view for the right sidebar
The right sidebar is an area that can be shown or hidden from the right
border of the document. It is a core element from Nextcloud, and
SidebarView is a Marionette wrapper around it. Therefore, it has to be
used along an "#app-content" element that takes into account the
"with-app-sidebar" CSS class.

However, this right sidebar extends the standard right sidebar with an
icon shown on the right border of the screen that makes possible for the
user to show it when hidden (as there is no other element in the UI
suitable for that purpose).

That icon is just a right-pointing triangle created with a CSS trick (a
zero-sized div with width borders, but all of them transparent except
for the left one). However, as the icon will be shown on different
coloured backgrounds it can not have just a single colour; it must
provide a border on its own too, which is achieved with another triangle
slightly larger underneath. The triangle border is 2px instead of just
1px used in other UI elements (like in the sidebar itself) to make it
more noticeable on a white background.

The triangle used for the icon is a large one, with a width of 24px and
a height of 48px. Using this trick has an added benefit, as its
clickable area is larger than the triangle itself (48x48px), which
improves its usability on touchable screens (and does not negatively
affect the experience on other devices).

Currently the SidebarView is empty. The content will be added in
following commits.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-13 17:13:59 +02:00
Daniel Calviño Sánchez aa24728518 Add Marionette view for tabs
A TabView contains a set of tab headers and a content area. When a
header is selected its associated content view is shown in the content
area; otherwise its content is hidden (although the header is always
shown).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2017-10-13 17:13:59 +02:00
Joas Schilling 86ec1dd446
Don't use popup to ask for the password but the "blue screen"
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-11 14:39:53 +02:00
Joas Schilling 780912eea0
Fix sidebar overlap in calls
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-09 14:11:01 +02:00
Joas Schilling c7e55a8953 Merge pull request #427 from nextcloud/move-admin-settings-to-own-section
Admin settings
2017-10-06 11:29:19 +02:00
Joas Schilling 71aa0b4dc2
Show green save mark
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-05 09:51:00 +02:00
Joas Schilling 302c2b3366
Only show the name hint once
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-10-04 14:03:28 +02:00
Joas Schilling b0c68b9a84
Fix eslint
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-29 11:57:49 +02:00
Joas Schilling 9e2e39a614
Allow multiple turn servers
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-28 15:53:59 +02:00
Joas Schilling 2a33f7fd1a
Allow setting multiple STUN servers
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-28 15:53:59 +02:00
Ivan Sein 08a30bca17 Stop sending call description to simplewebrtc using internal signaling.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-09-26 18:37:18 +02:00
Joas Schilling 1e0db4151d
Fix conflict-resolution from long-polling vs. passwords
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-25 15:43:46 +02:00
Joas Schilling 6150ac24f5
Move "get messages" also to signaling route
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-25 15:32:15 +02:00
Joas Schilling 288c1bb321
Fix spelling of Signaling (single L)
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-25 15:32:15 +02:00
Ivan Sein d23839df11
Retry after 5 seconds if pull messages failed.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-09-25 15:32:14 +02:00
Ivan Sein 294f3b6d27
Fix eslint.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-09-25 15:32:14 +02:00
Ivan Sein a8aa4cb04f
Unify sending messages into one method (rebased).
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-09-25 15:32:14 +02:00
Ivan Sein 561bddb14d
Change js code to use new OCS endpoints.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-09-25 15:32:14 +02:00
Joas Schilling 12332361d6
ES lint
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-22 16:16:05 +02:00
Joas Schilling aee0e22052
Request the password when joining a call with password
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-22 16:16:04 +02:00
Joas Schilling f8a9f124f8
Add option for the moderator to set a password
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-22 16:16:04 +02:00
Joas Schilling 411ff3dea9
Only do signaling while we ping (after successful join)
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-22 16:16:04 +02:00
Ivan Sein e18515211f Merge pull request #410 from nextcloud/fix-guest-entries-in-sidebar
Fix guest entries in sidebar
2017-09-20 12:08:26 +02:00
Ivan Sein bcbc315ce6 Fix guest avatar.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-09-19 19:03:29 +02:00
Ivan Sein abc71ceaba Fix guest's avatar.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-09-19 18:34:48 +02:00
Joas Schilling 18651b9d4f
Fix deleting of guests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-19 16:46:54 +02:00
Joas Schilling 960214ff3d
Use the variables
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-19 16:37:08 +02:00
Joas Schilling d320966802
Fix displaying guest entries in the sidebar
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-19 16:29:30 +02:00
Joas Schilling 1ffa4e0d6d
Fix ESlint
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-19 10:38:45 +02:00
Joas Schilling d28af29ff9
Restrict moderation a bit more
1. Owners can not be moderated
2. You can not moderate yourself

Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-08 16:11:49 +02:00
Joas Schilling b1b5e55485
Fix moderation
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-08 15:49:59 +02:00
Joas Schilling 448d708afb
Only show the sidebar while we are in a room
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-08 15:36:48 +02:00
Joas Schilling a3103b5dd5
Sort the participants
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-08 13:13:25 +02:00
Joas Schilling 2fcaec2b9f
Fix offline detection
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-08 12:38:21 +02:00
Joas Schilling dfe37a0706
Use same online detection as before
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-07 13:26:38 +02:00
Joas Schilling 5fe5872995
Correctly handle online/offline
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-07 11:17:39 +02:00
Joas Schilling 8a6be157a4
Correctly load the list on initial load and when switching rooms
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-07 11:16:37 +02:00
Joas Schilling e8aea7d5d6
Sidebar menu bubble
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-09-04 18:31:09 +02:00
Joas Schilling bc0afbe238
Fix loading participants into the sidebar
menu still broken

Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-08-25 18:09:04 +02:00
Joas Schilling 96baec5be8
What am I doing
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-08-25 17:17:23 +02:00
Joas Schilling 919445558b
Start debugging
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-08-25 17:17:22 +02:00
Joas Schilling dd87d76cc8
Add via and models for the participants
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-08-25 17:17:22 +02:00
Ivan Sein 3f1615081d Merge pull request #374 from nextcloud/fix-select2-glitch
Fix select2 glitch
2017-08-01 20:09:18 +02:00
Ivan Sein 24bb635844 Fix linting error.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-07-28 10:28:00 +02:00
Ivan Sein 9359888273 Add hideRenameInput function.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-07-28 09:56:17 +02:00
Ivan Sein 55b0b86c67 Fix room renaming event.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-07-27 20:08:14 +02:00
Ivan Sein 42bcae4549 Rename select2 input id to select-participants.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-07-27 16:55:53 +02:00
Ivan Sein 8727d6e15b Fix select2 selecting action.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-07-26 16:46:32 +02:00
Ivan Sein 2327b7d837 Improve code readability.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-07-24 15:02:16 +02:00
Ivan Sein afd72a0e82 Use 'select' event for creating rooms instead of 'change' event.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-07-24 15:02:16 +02:00
Ivan Sein 68f695d4b4 Merge pull request #368 from nextcloud/fix_room_delete
Use updated API to leave the current call.
2017-07-21 18:23:46 +02:00
Joachim Bauch 0d2c40c0eb
Use updated API to leave the current call.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-07-20 16:56:59 +02:00
Ivan Sein 08497c319b Fix room message for guests.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-07-20 14:28:29 +02:00
Ivan Sein 555159fcf3 Add only the users that need to be called by you to call description.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-07-19 16:48:09 +02:00
Ivan Sein aa35e83410 Ignore messages from hark datachannel.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-07-19 15:35:39 +02:00
Joachim Bauch 9e6146e300
Fix eslint error.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-07-19 11:09:51 +02:00
Joachim Bauch b505d629a9
Fixed initialization for public users.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-07-18 17:54:59 +02:00
Joachim Bauch a61c719f19
Fix check if peer already exists. 2017-07-18 15:58:44 +02:00
Joachim Bauch fcf78ec3ce
Fixed rebase error. 2017-07-18 15:58:42 +02:00
Joachim Bauch 5986508c2f
Remove unnecessary history change when deleting rooms (done by "leaveCurrentCall").
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-07-18 15:58:40 +02:00
Joachim Bauch 5c0d4163b6
More "room" vs. "call" changes.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-07-18 15:58:39 +02:00
Joachim Bauch ccfa4e9e1c
Add comment about what the parameter "users" is.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-07-18 15:57:25 +02:00
Joachim Bauch 1dc0ca660e
Wait for connection to be ready before joining room.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-07-18 15:57:24 +02:00
Joachim Bauch 7ab664467e
Only process users if one has joined or left
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-07-18 15:57:22 +02:00
Joachim Bauch 54cecf23cf
"leaveAllRooms" is actually "leaveAllCalls". 2017-07-18 15:57:21 +02:00
Joachim Bauch cb0def7b79
Inviting participants to a room shouldn't go through the signaling. 2017-07-18 15:57:19 +02:00
Joachim Bauch e55659020b
Add comment about who calls who. 2017-07-18 15:57:18 +02:00
Joachim Bauch c400092861
No need for separate "History.pushState". 2017-07-18 15:57:16 +02:00
Joachim Bauch c81f0df5f4
We no longer need an internal call id. 2017-07-18 15:57:15 +02:00
Joachim Bauch de90b7311b
Split up joining/leaving users in a call, no need to put call creation in signaling class. 2017-07-18 15:57:13 +02:00
Joachim Bauch 74ea9d5cf0
Fix eslint errors. 2017-07-18 15:57:12 +02:00
Joachim Bauch a147201ca3
Further differentiate between room and call and move signaling code to central class. 2017-07-18 15:57:10 +02:00
Joachim Bauch d4dc9b3e45
Start moving room apis into one place. 2017-07-18 15:57:08 +02:00
Joas Schilling 72dda3f38c
Fix eslint
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-17 13:04:54 +02:00
Joas Schilling c7a3c95962
Fix displaying the options in the UI only when the user has permissions
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-17 11:05:51 +02:00
Joas Schilling 204640364a
Add an option for moderators and owners to delete a call
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-17 11:05:51 +02:00
Joas Schilling f0d41b548e
Also expose the participant type with the list
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-17 11:05:51 +02:00
Joas Schilling 3648dfa133
Use POST to update the ping
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-13 16:56:03 +02:00
Joas Schilling 772d47cf10
Use token instead of id on all urls
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-12 12:01:04 +02:00
Joas Schilling 0d455abcee
Add token to the leave call request as well
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-12 12:01:04 +02:00
Joas Schilling 7c8441c793
Combine the createRoom methods
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-12 12:01:03 +02:00
Joas Schilling 9601b47342
Move public and participant endpoints
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-12 11:53:17 +02:00
Joas Schilling fed13ad2d0
Move call related URLs in /call
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-07-12 11:53:17 +02:00
Joachim Bauch 1ea935cf87
Use constants for room types.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-07-06 12:17:09 +02:00
Joachim Bauch 7ab8b383cd
Stop send interval when signaling connection is closed.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-07-06 09:05:53 +02:00
Joachim Bauch bff7cd5229
Move signaling code to single class.
This makes it easier to support different implementations in the future.
With this change also removed redundant message handling code from webrtc.js
that was also present in simplewebrtc.js.

Signed-off-by: Joachim Bauch <bauch@struktur.de>
2017-07-06 09:05:47 +02:00
Joas Schilling 6155611ffa
Fix new data structure handling
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-06-28 15:01:12 +02:00
Joas Schilling c604e142bc
Fix JS lint
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-06-13 09:37:56 +02:00
Joas Schilling cdada8370a
Move API to OCS
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-06-12 17:33:50 +02:00
Ivan Sein e0819b06d6 Send all datachannel messages through 'status' datachannel.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-06-06 18:40:18 +02:00
Ivan Sein 6593810e2f Re-send messages that could not be sent because datachannel was still not opened.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-06-06 18:38:57 +02:00
Joas Schilling 0235555f91 Merge pull request #320 from nextcloud/ping-fail-tolerant
Make ping call more error tolerant
2017-05-22 12:23:22 +02:00
Ivan Sein 4bf9dce971 Remove unused variables.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-05-22 12:18:34 +02:00
Ivan Sein 0ec32809cd Remove space.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-05-22 12:15:52 +02:00
Joas Schilling 8e9a04300d Merge pull request #319 from nextcloud/screensharing-support
Add better user feedback for screensharing support
2017-05-22 12:12:12 +02:00
Ivan Sein 784e6d1949 Set directly avatar placeholders for guests.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-05-18 19:15:11 +02:00
Ivan Sein 849c21f27a Fix eslint.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-05-18 15:43:16 +02:00
Ivan Sein a2c21c8669 Improve UX when leaving current room.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-05-18 15:34:24 +02:00
Ivan Sein 203b718191 Make ping call more error tolerant.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-05-18 15:10:17 +02:00
Ivan Sein 2213519615 Use ICE-restart for reconnection attemps.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-05-17 16:27:50 +02:00
Ivan Sein c808a96d83 Add better user feedback for screensharing support.
Signed-off-by: Ivan Sein <ivan@nextcloud.com>
2017-05-16 12:02:34 +02:00