Commit 21c8135e authored by Alexander.Trofimov's avatar Alexander.Trofimov Committed by Alexander.Trofimov

Добавил эвент onEndCoAuthoring

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@56651 954022d7-b5bf-4e40-9824-e11837661b57
parent d0dfeed5
......@@ -25,6 +25,7 @@
this.onSetIndexUser = options.onSetIndexUser;
this.onSaveChanges = options.onSaveChanges;
this.onStartCoAuthoring = options.onStartCoAuthoring;
this.onEndCoAuthoring = options.onEndCoAuthoring;
}
};
......@@ -46,6 +47,7 @@
this._CoAuthoringApi.onSaveChanges = function (e, userId) {t.callback_OnSaveChanges(e, userId);};
// Callback есть пользователей больше 1
this._CoAuthoringApi.onStartCoAuthoring = function (e) {t.callback_OnStartCoAuthoring(e);};
this._CoAuthoringApi.onEndCoAuthoring = function (e) {t.callback_OnEndCoAuthoring(e);};
this._CoAuthoringApi.init(user, docid, token, serverHost, serverPort, serverPath, callback,
editorType, documentFormatSave, isViewer);
......@@ -229,6 +231,10 @@
if (this.onStartCoAuthoring)
this.onStartCoAuthoring(e);
};
CDocsCoApi.prototype.callback_OnEndCoAuthoring = function (e) {
if (this.onEndCoAuthoring)
this.onEndCoAuthoring(e);
};
/** States
* -1 - reconnect state
......@@ -607,6 +613,15 @@
}
};
DocsCoApi.prototype._onEndCoAuthoring = function (isStartEvent) {
if (true === this.isCoAuthoring) {
this.isCoAuthoring = false;
if (this.onEndCoAuthoring) {
this.onEndCoAuthoring(isStartEvent);
}
}
};
DocsCoApi.prototype._onSaveLock = function (data) {
if (undefined != data["saveLock"] && null != data["saveLock"]) {
var indexCallback = this._saveCallback.length - 1;
......@@ -644,9 +659,6 @@
// Посылать нужно всегда, т.к. на это рассчитываем при открытии
if (t.onFirstLoadChangesEnd)
t.onFirstLoadChangesEnd();
// Если были изменения, то мы все еще в совместном редактировании (иначе при сохранениях мы будем затирать изменения на сервере)
if (hasChanges)
t._onStartCoAuthoring(/*isStartEvent*/ true);
}
};
......@@ -704,6 +716,8 @@
// Посылаем эвент о совместном редактировании
if (1 < this._countEditUsers)
this._onStartCoAuthoring(/*isStartEvent*/true);
else
this._onEndCoAuthoring(/*isStartEvent*/true);
}
};
......@@ -715,15 +729,17 @@
if (userStateChanged.asc_getState()) {
this._participants[userStateChanged.asc_getId()] = userStateChanged;
++this._countEditUsers;
// Посылаем эвент о совместном редактировании
if (1 < this._countEditUsers)
this._onStartCoAuthoring(/*isStartEvent*/false);
} else {
delete this._participants[userStateChanged.asc_getId()];
--this._countEditUsers;
}
// Посылаем эвент о совместном редактировании
if (1 < this._countEditUsers)
this._onStartCoAuthoring(/*isStartEvent*/false);
else
this._onEndCoAuthoring(/*isStartEvent*/false);
this.onParticipantsChanged(this._participants, this._countEditUsers);
this.onConnectionStateChanged(userStateChanged);
}
......
......@@ -1634,6 +1634,9 @@ var ASC_DOCS_API_USE_EMBEDDED_FONTS = "@@ASC_DOCS_API_USE_EMBEDDED_FONTS";
t.collaborativeEditing.sendChanges();
}
};
this.CoAuthoringApi.onEndCoAuthoring = function (isStartEvent) {
t.endCollaborationEditing();
};
/**
* Event об отсоединении от сервера
* @param {jQuery} e event об отсоединении с причиной
......@@ -1811,6 +1814,11 @@ var ASC_DOCS_API_USE_EMBEDDED_FONTS = "@@ASC_DOCS_API_USE_EMBEDDED_FONTS";
this.collaborativeEditing.startCollaborationEditing();
},
endCollaborationEditing: function () {
// Временно заканчиваем совместное редактирование
this.collaborativeEditing.endCollaborationEditing();
},
// End Load document
_openDocumentEndCallback: function () {
// Не инициализируем дважды
......
......@@ -76,6 +76,11 @@
this.m_bIsCollaborative = true;
};
// Временное окончание совместного редактирования
CCollaborativeEditing.prototype.endCollaborationEditing = function() {
this.m_bIsCollaborative = false;
};
// Выставление режима view
CCollaborativeEditing.prototype.setViewerMode = function (isViewerMode) {
this.m_bIsViewerMode = isViewerMode;
......
......@@ -503,6 +503,9 @@ asc_docs_api.prototype._coAuthoringInit = function () {
}
} else
t.isStartCoAuthoringOnEndLoad = true;
};
this.CoAuthoringApi.onEndCoAuthoring = function (isStartEvent) {
// ToDo add code
};
/**
* Event об отсоединении от сервера
......
......@@ -1610,6 +1610,9 @@ asc_docs_api.prototype._coAuthoringInit = function()
} else
t.isStartCoAuthoringOnEndLoad = true;
};
this.CoAuthoringApi.onEndCoAuthoring = function (isStartEvent) {
// ToDo add code
};
/**
* Event об отсоединении от сервера
* @param {jQuery} e event об отсоединении с причиной
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment