Commit c17fb0bd authored by Alexander.Trofimov's avatar Alexander.Trofimov Committed by Alexander.Trofimov

Переход от worksheet._getMergedCellsRange на model.getMergedByCell

git-svn-id: svn://192.168.3.15/activex/AVS/Sources/TeamlabOffice/trunk/OfficeWeb@50431 954022d7-b5bf-4e40-9824-e11837661b57
parent 8b815bb9
...@@ -527,60 +527,67 @@ function asc_CCellCommentator(currentSheet) { ...@@ -527,60 +527,67 @@ function asc_CCellCommentator(currentSheet) {
_this.isLockedComment = function(oComment, lockByDefault, callbackFunc) { _this.isLockedComment = function(oComment, lockByDefault, callbackFunc) {
var _this = this; var _this = this;
var c1, r1, c2, r2, lockInfo; var lockInfo;
var sheetId = _this.worksheet.model.getId(); var model = _this.worksheet.model;
var mergedRange = _this.worksheet._getMergedCellsRange(oComment.asc_getCol(), oComment.asc_getRow()); var sheetId = model.getId();
c1 = mergedRange ? mergedRange.c1 : oComment.asc_getCol(); var objectGuid = oComment.asc_getId();
r1 = mergedRange ? mergedRange.r1 : oComment.asc_getRow(); if (objectGuid) {
c2 = mergedRange ? mergedRange.c2 : oComment.asc_getCol();
r2 = mergedRange ? mergedRange.r2 : oComment.asc_getRow();
{ if (false === _this.worksheet.collaborativeEditing.isCoAuthoringExcellEnable()) {
var objectGuid = oComment.asc_getId(); // Запрещено совместное редактирование
if (objectGuid) { if ($.isFunction(callbackFunc)) { callbackFunc(true); }
return;
if (false === _this.worksheet.collaborativeEditing.isCoAuthoringExcellEnable()) { }
// Запрещено совместное редактирование
if ($.isFunction(callbackFunc)) { callbackFunc(true); } if ( lockByDefault )
return; _this.worksheet.collaborativeEditing.onStartCheckLock();
// Комментарий к документу блокируем как Range
if ( !oComment.asc_getDocumentFlag() ) {
var c = oComment.asc_getCol();
var r = oComment.asc_getRow();
var c1, r1, c2, r2;
var mergedRange = model.getMergedByCell(r, c);
if (mergedRange) {
c1 = mergedRange.c1;
r1 = mergedRange.r1;
c2 = mergedRange.c2;
r2 = mergedRange.r2;
} else {
c1 = c2 = c;
r1 = r2 = r;
} }
if ( lockByDefault ) lockInfo = _this.worksheet.collaborativeEditing.getLockInfo(c_oAscLockTypeElem.Range, /*subType*/null, sheetId, new asc_CCollaborativeRange(c1, r1, c2, r2));
_this.worksheet.collaborativeEditing.onStartCheckLock(); } else
lockInfo = _this.worksheet.collaborativeEditing.getLockInfo(c_oAscLockTypeElem.Object, /*subType*/null, sheetId, objectGuid);
// Комментарий к документу блокируем как Range
if ( !oComment.asc_getDocumentFlag() )
lockInfo = _this.worksheet.collaborativeEditing.getLockInfo(c_oAscLockTypeElem.Range, /*subType*/null, sheetId, new asc_CCollaborativeRange(c1, r1, c2, r2));
else
lockInfo = _this.worksheet.collaborativeEditing.getLockInfo(c_oAscLockTypeElem.Object, /*subType*/null, sheetId, objectGuid);
if (false === _this.worksheet.collaborativeEditing.getCollaborativeEditing()) { if (false === _this.worksheet.collaborativeEditing.getCollaborativeEditing()) {
// Пользователь редактирует один: не ждем ответа, а сразу продолжаем редактирование // Пользователь редактирует один: не ждем ответа, а сразу продолжаем редактирование
if ($.isFunction(callbackFunc)) { callbackFunc(true); } if ($.isFunction(callbackFunc)) { callbackFunc(true); }
callbackFunc = undefined; callbackFunc = undefined;
} }
if (false !== _this.worksheet.collaborativeEditing.getLockIntersection(lockInfo, c_oAscLockTypes.kLockTypeMine, /*bCheckOnlyLockAll*/false)) { if (false !== _this.worksheet.collaborativeEditing.getLockIntersection(lockInfo, c_oAscLockTypes.kLockTypeMine, /*bCheckOnlyLockAll*/false)) {
// Редактируем сами // Редактируем сами
if ($.isFunction(callbackFunc)) { callbackFunc(true); } if ($.isFunction(callbackFunc)) { callbackFunc(true); }
return; return;
} }
else if (false !== _this.worksheet.collaborativeEditing.getLockIntersection(lockInfo, c_oAscLockTypes.kLockTypeOther, /*bCheckOnlyLockAll*/false)) { else if (false !== _this.worksheet.collaborativeEditing.getLockIntersection(lockInfo, c_oAscLockTypes.kLockTypeOther, /*bCheckOnlyLockAll*/false)) {
// Уже ячейку кто-то редактирует // Уже ячейку кто-то редактирует
if ($.isFunction(callbackFunc)) { callbackFunc(false); } if ($.isFunction(callbackFunc)) { callbackFunc(false); }
return; return;
}
// Блокируем
if ( lockByDefault ) {
_this.worksheet.collaborativeEditing.addCheckLock(lockInfo);
_this.worksheet.collaborativeEditing.onEndCheckLock(callbackFunc);
}
else if ($.isFunction(callbackFunc)) { callbackFunc(true); }
} }
// Блокируем
if ( lockByDefault ) {
_this.worksheet.collaborativeEditing.addCheckLock(lockInfo);
_this.worksheet.collaborativeEditing.onEndCheckLock(callbackFunc);
}
else if ($.isFunction(callbackFunc)) { callbackFunc(true); }
} }
} };
_this.callLockComments = function(range) { _this.callLockComments = function(range) {
......
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