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 @@ ...@@ -25,6 +25,7 @@
this.onSetIndexUser = options.onSetIndexUser; this.onSetIndexUser = options.onSetIndexUser;
this.onSaveChanges = options.onSaveChanges; this.onSaveChanges = options.onSaveChanges;
this.onStartCoAuthoring = options.onStartCoAuthoring; this.onStartCoAuthoring = options.onStartCoAuthoring;
this.onEndCoAuthoring = options.onEndCoAuthoring;
} }
}; };
...@@ -46,6 +47,7 @@ ...@@ -46,6 +47,7 @@
this._CoAuthoringApi.onSaveChanges = function (e, userId) {t.callback_OnSaveChanges(e, userId);}; this._CoAuthoringApi.onSaveChanges = function (e, userId) {t.callback_OnSaveChanges(e, userId);};
// Callback есть пользователей больше 1 // Callback есть пользователей больше 1
this._CoAuthoringApi.onStartCoAuthoring = function (e) {t.callback_OnStartCoAuthoring(e);}; 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, this._CoAuthoringApi.init(user, docid, token, serverHost, serverPort, serverPath, callback,
editorType, documentFormatSave, isViewer); editorType, documentFormatSave, isViewer);
...@@ -229,6 +231,10 @@ ...@@ -229,6 +231,10 @@
if (this.onStartCoAuthoring) if (this.onStartCoAuthoring)
this.onStartCoAuthoring(e); this.onStartCoAuthoring(e);
}; };
CDocsCoApi.prototype.callback_OnEndCoAuthoring = function (e) {
if (this.onEndCoAuthoring)
this.onEndCoAuthoring(e);
};
/** States /** States
* -1 - reconnect state * -1 - reconnect state
...@@ -606,6 +612,15 @@ ...@@ -606,6 +612,15 @@
} }
} }
}; };
DocsCoApi.prototype._onEndCoAuthoring = function (isStartEvent) {
if (true === this.isCoAuthoring) {
this.isCoAuthoring = false;
if (this.onEndCoAuthoring) {
this.onEndCoAuthoring(isStartEvent);
}
}
};
DocsCoApi.prototype._onSaveLock = function (data) { DocsCoApi.prototype._onSaveLock = function (data) {
if (undefined != data["saveLock"] && null != data["saveLock"]) { if (undefined != data["saveLock"] && null != data["saveLock"]) {
...@@ -644,9 +659,6 @@ ...@@ -644,9 +659,6 @@
// Посылать нужно всегда, т.к. на это рассчитываем при открытии // Посылать нужно всегда, т.к. на это рассчитываем при открытии
if (t.onFirstLoadChangesEnd) if (t.onFirstLoadChangesEnd)
t.onFirstLoadChangesEnd(); t.onFirstLoadChangesEnd();
// Если были изменения, то мы все еще в совместном редактировании (иначе при сохранениях мы будем затирать изменения на сервере)
if (hasChanges)
t._onStartCoAuthoring(/*isStartEvent*/ true);
} }
}; };
...@@ -704,6 +716,8 @@ ...@@ -704,6 +716,8 @@
// Посылаем эвент о совместном редактировании // Посылаем эвент о совместном редактировании
if (1 < this._countEditUsers) if (1 < this._countEditUsers)
this._onStartCoAuthoring(/*isStartEvent*/true); this._onStartCoAuthoring(/*isStartEvent*/true);
else
this._onEndCoAuthoring(/*isStartEvent*/true);
} }
}; };
...@@ -715,15 +729,17 @@ ...@@ -715,15 +729,17 @@
if (userStateChanged.asc_getState()) { if (userStateChanged.asc_getState()) {
this._participants[userStateChanged.asc_getId()] = userStateChanged; this._participants[userStateChanged.asc_getId()] = userStateChanged;
++this._countEditUsers; ++this._countEditUsers;
// Посылаем эвент о совместном редактировании
if (1 < this._countEditUsers)
this._onStartCoAuthoring(/*isStartEvent*/false);
} else { } else {
delete this._participants[userStateChanged.asc_getId()]; delete this._participants[userStateChanged.asc_getId()];
--this._countEditUsers; --this._countEditUsers;
} }
// Посылаем эвент о совместном редактировании
if (1 < this._countEditUsers)
this._onStartCoAuthoring(/*isStartEvent*/false);
else
this._onEndCoAuthoring(/*isStartEvent*/false);
this.onParticipantsChanged(this._participants, this._countEditUsers); this.onParticipantsChanged(this._participants, this._countEditUsers);
this.onConnectionStateChanged(userStateChanged); this.onConnectionStateChanged(userStateChanged);
} }
......
...@@ -1634,6 +1634,9 @@ var ASC_DOCS_API_USE_EMBEDDED_FONTS = "@@ASC_DOCS_API_USE_EMBEDDED_FONTS"; ...@@ -1634,6 +1634,9 @@ var ASC_DOCS_API_USE_EMBEDDED_FONTS = "@@ASC_DOCS_API_USE_EMBEDDED_FONTS";
t.collaborativeEditing.sendChanges(); t.collaborativeEditing.sendChanges();
} }
}; };
this.CoAuthoringApi.onEndCoAuthoring = function (isStartEvent) {
t.endCollaborationEditing();
};
/** /**
* Event об отсоединении от сервера * Event об отсоединении от сервера
* @param {jQuery} e event об отсоединении с причиной * @param {jQuery} e event об отсоединении с причиной
...@@ -1811,6 +1814,11 @@ var ASC_DOCS_API_USE_EMBEDDED_FONTS = "@@ASC_DOCS_API_USE_EMBEDDED_FONTS"; ...@@ -1811,6 +1814,11 @@ var ASC_DOCS_API_USE_EMBEDDED_FONTS = "@@ASC_DOCS_API_USE_EMBEDDED_FONTS";
this.collaborativeEditing.startCollaborationEditing(); this.collaborativeEditing.startCollaborationEditing();
}, },
endCollaborationEditing: function () {
// Временно заканчиваем совместное редактирование
this.collaborativeEditing.endCollaborationEditing();
},
// End Load document // End Load document
_openDocumentEndCallback: function () { _openDocumentEndCallback: function () {
// Не инициализируем дважды // Не инициализируем дважды
......
...@@ -76,6 +76,11 @@ ...@@ -76,6 +76,11 @@
this.m_bIsCollaborative = true; this.m_bIsCollaborative = true;
}; };
// Временное окончание совместного редактирования
CCollaborativeEditing.prototype.endCollaborationEditing = function() {
this.m_bIsCollaborative = false;
};
// Выставление режима view // Выставление режима view
CCollaborativeEditing.prototype.setViewerMode = function (isViewerMode) { CCollaborativeEditing.prototype.setViewerMode = function (isViewerMode) {
this.m_bIsViewerMode = isViewerMode; this.m_bIsViewerMode = isViewerMode;
......
...@@ -504,6 +504,9 @@ asc_docs_api.prototype._coAuthoringInit = function () { ...@@ -504,6 +504,9 @@ asc_docs_api.prototype._coAuthoringInit = function () {
} else } else
t.isStartCoAuthoringOnEndLoad = true; t.isStartCoAuthoringOnEndLoad = true;
}; };
this.CoAuthoringApi.onEndCoAuthoring = function (isStartEvent) {
// ToDo add code
};
/** /**
* Event об отсоединении от сервера * Event об отсоединении от сервера
* @param {jQuery} e event об отсоединении с причиной * @param {jQuery} e event об отсоединении с причиной
......
...@@ -1610,6 +1610,9 @@ asc_docs_api.prototype._coAuthoringInit = function() ...@@ -1610,6 +1610,9 @@ asc_docs_api.prototype._coAuthoringInit = function()
} else } else
t.isStartCoAuthoringOnEndLoad = true; t.isStartCoAuthoringOnEndLoad = true;
}; };
this.CoAuthoringApi.onEndCoAuthoring = function (isStartEvent) {
// ToDo add code
};
/** /**
* Event об отсоединении от сервера * Event об отсоединении от сервера
* @param {jQuery} e 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