Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/richdocuments.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/js
diff options
context:
space:
mode:
authorJulius Härtl <jus@bitgrid.net>2018-11-09 11:12:13 +0300
committerJulius Härtl <jus@bitgrid.net>2018-11-09 11:12:13 +0300
commit42e5e1ee0cd1724fa11ae93994ef4c18c41bea6a (patch)
tree30e7270457f71253de5dfdb6183bc4b0895d90f3 /js
parentb9d1bf08504ffe8a74a7c640fc47a7d1da0342da (diff)
Use object to store list of views
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Diffstat (limited to 'js')
-rw-r--r--js/documents.js21
1 files changed, 7 insertions, 14 deletions
diff --git a/js/documents.js b/js/documents.js
index 1470b41b..0a1e87c5 100644
--- a/js/documents.js
+++ b/js/documents.js
@@ -161,7 +161,7 @@ var documentsMain = {
revisionsStart: 0,
/* Views: people currently editing the file */
- views: [],
+ views: {},
init : function(){
documentsMain.UI.mainTitle = parent.document.title;
@@ -174,9 +174,10 @@ var documentsMain = {
renderAvatars: function() {
var avatardiv = parent.$('#header .header-right #richdocuments-avatars');
avatardiv.empty();
-
+ var users = [];
// Add new avatars
- this.views.forEach(function(view, viewId) {
+ for (var viewId in this.views) {
+ var view = this.views[viewId];
if (view.UserId === parent.OC.currentUser) {
return;
}
@@ -188,7 +189,7 @@ var documentsMain = {
if (parent.OC.currentUser !== null && view.UserId !== '') {
$(avatar).contactsMenu(view.UserId, 0, avatarContainer);
}
- });
+ };
},
showViewer: function(fileId, title){
@@ -561,18 +562,10 @@ var documentsMain = {
documentsMain.$deferredVersionRestoreAck.resolve();
}
} else if (msgId === 'View_Added') {
- documentsMain.UI.views.push(args);
+ documentsMain.UI.views[args.ViewId] = args;
documentsMain.UI.renderAvatars();
} else if (msgId === 'View_Removed') {
- var view = $.grep(documentsMain.UI.views, function(element, index) {
- return element.ViewId === args.ViewId;
- });
- if (view.length === 1) {
- index = documentsMain.UI.views.indexOf(view[0]);
- if (index > -1) {
- documentsMain.UI.views.splice(index, 1);
- }
- }
+ delete documentsMain.UI.views[args.ViewId];
documentsMain.UI.renderAvatars();
} else if (msgId === 'Get_Views_Resp') {
args.forEach(function(view) {