Commit 2d44ce6b authored by Alexander.Trofimov's avatar Alexander.Trofimov Committed by Alexander.Trofimov

Добавил работу одного пользователя (когда нет совместного редактирования)

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@56825 954022d7-b5bf-4e40-9824-e11837661b57
parent 2cc789f3
......@@ -1674,7 +1674,7 @@ var ASC_DOCS_API_USE_EMBEDDED_FONTS = "@@ASC_DOCS_API_USE_EMBEDDED_FONTS";
this.CoAuthoringApi.set_url(url);
},
_onSaveChanges: function (recalcIndexColumns, recalcIndexRows) {
_onSaveChanges: function (deleteIndex, recalcIndexColumns, recalcIndexRows) {
if (this.IsSendDocumentLoadCompleate) {
var arrChanges = this.wbModel.SerializeHistory();
if (this.collaborativeEditing.getCollaborativeEditing()) {
......@@ -1685,7 +1685,7 @@ var ASC_DOCS_API_USE_EMBEDDED_FONTS = "@@ASC_DOCS_API_USE_EMBEDDED_FONTS";
arrChanges.push({"index" : recalcIndexRows, "type" : "1"});
}
if (0 < arrChanges.length)
this.CoAuthoringApi.saveChanges(arrChanges);
this.CoAuthoringApi.saveChanges(arrChanges, deleteIndex);
else
this.CoAuthoringApi.unLockDocument();
}
......
......@@ -32,6 +32,8 @@
return new CCollaborativeEditing ();
}
this.m_nUseType = 1; // 1 - 1 клиент и мы сохраняем историю, -1 - несколько клиентов, 0 - переход из -1 в 1
this.handlers = new asc.asc_CHandlersList(handlers);
this.m_bIsViewerMode = !!isViewerMode; // Режим Viewer-а
this.m_bIsCollaborative = false; // Совместное ли редактирование
......@@ -73,12 +75,13 @@
// Начало совместного редактирования
CCollaborativeEditing.prototype.startCollaborationEditing = function() {
this.m_bIsCollaborative = true;
this.m_nUseType = -1;
};
// Временное окончание совместного редактирования
CCollaborativeEditing.prototype.endCollaborationEditing = function() {
this.m_bIsCollaborative = false;
if (this.m_nUseType <= 0)
this.m_nUseType = 0;
};
// Выставление режима view
......@@ -89,7 +92,7 @@
CCollaborativeEditing.prototype.getCollaborativeEditing = function () {
if (true !== this.isCoAuthoringExcellEnable() || this.m_bIsViewerMode)
return false;
return this.m_bIsCollaborative;
return 1 === this.m_nUseType;
};
//-----------------------------------------------------------------------------------
......@@ -243,7 +246,7 @@
}
// Отправляем на сервер изменения
this.handlers.trigger("sendChanges", this.getRecalcIndexSave(this.m_oRecalcIndexColumns), this.getRecalcIndexSave(this.m_oRecalcIndexRows));
this.handlers.trigger("sendChanges", History.SavedIndex, this.getRecalcIndexSave(this.m_oRecalcIndexColumns), this.getRecalcIndexSave(this.m_oRecalcIndexRows));
if (bIsCollaborative) {
// Пересчитываем lock-и от чужих пользователей
......@@ -271,6 +274,12 @@
if (bCheckRedraw || bRedrawGraphicObjects)
this.handlers.trigger("showDrawingObjects");
if (0 === this.m_nUseType)
this.m_nUseType = 1;
} else {
// Обновляем точку последнего сохранения в истории
History.Reset_SavedIndex();
}
};
......
......@@ -353,6 +353,8 @@ function CHistory(workbook)
this.Transaction = 0;
this.RecIndex = -1;
this.lastDrawingObjects = null;
this.SavedIndex = null; // Номер точки отката, на которой произошло последнее сохранение
}
CHistory.prototype =
{
......@@ -365,6 +367,9 @@ CHistory.prototype =
this.IsModify = false;
this.TurnOffHistory = 0;
this.Transaction = 0;
this.SavedIndex = null;
this._sendCanUndoRedo();
},
Can_Undo : function()
......@@ -722,6 +727,10 @@ CHistory.prototype =
{
if ( 0 !== this.TurnOffHistory || 0 !== this.Transaction )
return;
if (null !== this.SavedIndex && this.Index < this.SavedIndex)
this.SavedIndex = this.Index;
this._checkCurPoint();
var Items = [];
var UpdateRigions = {};
......@@ -891,6 +900,10 @@ CHistory.prototype =
this.workbook.handlers.trigger("setDocumentModified", this.IsModify);
}
},
Reset_SavedIndex : function()
{
this.SavedIndex = this.Index;
},
Is_Modified : function()
{
if(null != this.CurPoint && this.CurPoint.Items.length > 0)
......
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