[DE] Lock controls when document is protected (review only)
This commit is contained in:
parent
7f703b6294
commit
8f1f89ee31
|
@ -167,13 +167,15 @@ define([
|
|||
SetDisabled: function(state, reviewMode, fillFormMode) {
|
||||
if (this.dlgChanges)
|
||||
this.dlgChanges.close();
|
||||
if (reviewMode)
|
||||
if (reviewMode) {
|
||||
this.lockToolbar(Common.enumLock.previewReviewMode, state);
|
||||
else if (fillFormMode)
|
||||
this.dlgChanges && Common.Utils.lockControls(Common.enumLock.previewReviewMode, state, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]});
|
||||
} else if (fillFormMode) {
|
||||
this.lockToolbar(Common.enumLock.viewFormMode, state);
|
||||
else
|
||||
this.dlgChanges && Common.Utils.lockControls(Common.enumLock.viewFormMode, state, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]});
|
||||
} else {
|
||||
this.lockToolbar(Common.enumLock.viewMode, state);
|
||||
|
||||
}
|
||||
this.setPreviewMode(state);
|
||||
},
|
||||
|
||||
|
@ -218,17 +220,14 @@ define([
|
|||
onApiShowChange: function (sdkchange, isShow) {
|
||||
var btnlock = true,
|
||||
changes;
|
||||
if (this.appConfig.canReview && !this.appConfig.isReviewOnly) {
|
||||
if (this.appConfig.canReview && !(this.appConfig.isReviewOnly || Common.Utils.Store.get('docProtection', {}).isReviewOnly)) {
|
||||
if (sdkchange && sdkchange.length>0) {
|
||||
changes = this.readSDKChange(sdkchange);
|
||||
btnlock = this.isSelectedChangesLocked(changes, isShow);
|
||||
}
|
||||
if (this._state.lock !== btnlock) {
|
||||
Common.Utils.lockControls(Common.enumLock.reviewChangelock, btnlock, {array: [this.view.btnAccept, this.view.btnReject]});
|
||||
if (this.dlgChanges) {
|
||||
this.dlgChanges.btnAccept.setDisabled(btnlock);
|
||||
this.dlgChanges.btnReject.setDisabled(btnlock);
|
||||
}
|
||||
this.dlgChanges && Common.Utils.lockControls(Common.enumLock.reviewChangelock, btnlock, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]});
|
||||
this._state.lock = btnlock;
|
||||
Common.Utils.InternalSettings.set(this.view.appPrefix + "accept-reject-lock", btnlock);
|
||||
}
|
||||
|
@ -496,6 +495,7 @@ define([
|
|||
}
|
||||
var date = (item.get_DateTime() == '') ? new Date() : new Date(item.get_DateTime()),
|
||||
user = me.userCollection.findOriginalUser(item.get_UserId()),
|
||||
isProtectedReview = !!Common.Utils.Store.get('docProtection', {}).isReviewOnly,
|
||||
change = new Common.Models.ReviewChange({
|
||||
uid : Common.UI.getId(),
|
||||
userid : item.get_UserId(),
|
||||
|
@ -511,7 +511,7 @@ define([
|
|||
scope : me.view,
|
||||
hint : !me.appConfig.canReview,
|
||||
goto : (item.get_MoveType() == Asc.c_oAscRevisionsMove.MoveTo || item.get_MoveType() == Asc.c_oAscRevisionsMove.MoveFrom),
|
||||
editable : me.appConfig.isReviewOnly && (item.get_UserId() == me.currentUserId) || !me.appConfig.isReviewOnly && (!me.appConfig.canUseReviewPermissions || AscCommon.UserInfoParser.canEditReview(item.get_UserName()))
|
||||
editable : (me.appConfig.isReviewOnly || isProtectedReview) && (item.get_UserId() == me.currentUserId) || !(me.appConfig.isReviewOnly || isProtectedReview) && (!me.appConfig.canUseReviewPermissions || AscCommon.UserInfoParser.canEditReview(item.get_UserName()))
|
||||
});
|
||||
|
||||
arr.push(change);
|
||||
|
@ -600,7 +600,7 @@ define([
|
|||
},
|
||||
|
||||
onTurnPreview: function(state, global, fromApi) {
|
||||
if ( this.appConfig.isReviewOnly ) {
|
||||
if ( this.appConfig.isReviewOnly) {
|
||||
this.view.turnChanges(true);
|
||||
} else
|
||||
if ( this.appConfig.canReview ) {
|
||||
|
@ -614,7 +614,7 @@ define([
|
|||
},
|
||||
|
||||
onApiTrackRevisionsChange: function(localFlag, globalFlag, userId) {
|
||||
if ( this.appConfig.isReviewOnly ) {
|
||||
if ( this.appConfig.isReviewOnly || Common.Utils.Store.get('docProtection', {}).isReviewOnly) {
|
||||
this.view.turnChanges(true);
|
||||
} else
|
||||
if ( this.appConfig.canReview ) {
|
||||
|
@ -983,7 +983,8 @@ define([
|
|||
},
|
||||
|
||||
onCoAuthoringDisconnect: function() {
|
||||
this.lockToolbar(Common.enumLock.lostConnect, true)
|
||||
this.lockToolbar(Common.enumLock.lostConnect, true);
|
||||
this.dlgChanges && Common.Utils.lockControls(Common.enumLock.lostConnect, true, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]});
|
||||
},
|
||||
|
||||
onUpdateUsers: function() {
|
||||
|
@ -1034,6 +1035,22 @@ define([
|
|||
this.lockToolbar(Common.enumLock.docLockForms, docProtection.isFormsOnly);
|
||||
this.lockToolbar(Common.enumLock.docLockReview, docProtection.isReviewOnly);
|
||||
this.lockToolbar(Common.enumLock.docLockComments, docProtection.isCommentsOnly);
|
||||
if (this.dlgChanges) {
|
||||
Common.Utils.lockControls(Common.enumLock.docLockView, docProtection.isReadOnly, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]});
|
||||
Common.Utils.lockControls(Common.enumLock.docLockForms, docProtection.isFormsOnly, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]});
|
||||
Common.Utils.lockControls(Common.enumLock.docLockReview, docProtection.isReviewOnly, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]});
|
||||
Common.Utils.lockControls(Common.enumLock.docLockComments, docProtection.isCommentsOnly, {array: [this.dlgChanges.btnAccept, this.dlgChanges.btnReject]});
|
||||
}
|
||||
if (this.appConfig.canReview) {
|
||||
if (docProtection.isReviewOnly) {
|
||||
this.onTurnPreview(true);
|
||||
this.onApiShowChange();
|
||||
} else if (this._state.prevReviewProtected) {
|
||||
this.onTurnPreview(false);
|
||||
this.onApiShowChange();
|
||||
}
|
||||
this._state.prevReviewProtected = docProtection.isReviewOnly;
|
||||
}
|
||||
this.updatePreviewMode();
|
||||
}
|
||||
},
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<div class="btn-goto img-commonctrl"></div>
|
||||
<% } %>
|
||||
<% if (!hint) { %>
|
||||
<% if (scope.appConfig.isReviewOnly) { %>
|
||||
<% if (scope.appConfig.isReviewOnly || Common.Utils.Store.get("docProtection", {}).isReviewOnly) { %>
|
||||
<% if (editable) { %>
|
||||
<div class="btn-delete img-commonctrl"></div>
|
||||
<% } %>
|
||||
|
|
|
@ -259,7 +259,7 @@ define([
|
|||
caption: this.txtAccept,
|
||||
split: !this.appConfig.canUseReviewPermissions,
|
||||
iconCls: 'toolbar__icon btn-review-save',
|
||||
lock: [_set.reviewChangelock, _set.isReviewOnly, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments],
|
||||
lock: [_set.reviewChangelock, _set.isReviewOnly, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments, _set.docLockReview],
|
||||
dataHint: '1',
|
||||
dataHintDirection: 'bottom',
|
||||
dataHintOffset: 'small'
|
||||
|
@ -271,7 +271,7 @@ define([
|
|||
caption: this.txtReject,
|
||||
split: !this.appConfig.canUseReviewPermissions,
|
||||
iconCls: 'toolbar__icon btn-review-deny',
|
||||
lock: [_set.reviewChangelock, _set.isReviewOnly, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments],
|
||||
lock: [_set.reviewChangelock, _set.isReviewOnly, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments, _set.docLockReview],
|
||||
dataHint: '1',
|
||||
dataHintDirection: 'bottom',
|
||||
dataHintOffset: 'small'
|
||||
|
@ -294,7 +294,7 @@ define([
|
|||
this.btnTurnOn = new Common.UI.Button({
|
||||
cls: 'btn-toolbar x-huge icon-top',
|
||||
iconCls: 'toolbar__icon btn-ic-review',
|
||||
lock: [_set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments],
|
||||
lock: [_set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments, _set.docLockReview],
|
||||
caption: this.txtTurnon,
|
||||
split: !this.appConfig.isReviewOnly,
|
||||
enableToggle: true,
|
||||
|
@ -731,7 +731,7 @@ define([
|
|||
var button = new Common.UI.Button({
|
||||
cls : 'btn-toolbar',
|
||||
iconCls : 'toolbar__icon btn-ic-review',
|
||||
lock: [Common.enumLock.viewMode, Common.enumLock.previewReviewMode, Common.enumLock.viewFormMode, Common.enumLock.lostConnect, Common.enumLock.docLockView, Common.enumLock.docLockForms, Common.enumLock.docLockComments],
|
||||
lock: [Common.enumLock.viewMode, Common.enumLock.previewReviewMode, Common.enumLock.viewFormMode, Common.enumLock.lostConnect, Common.enumLock.docLockView, Common.enumLock.docLockForms, Common.enumLock.docLockComments, Common.enumLock.docLockReview],
|
||||
hintAnchor : 'top',
|
||||
hint : this.tipReview,
|
||||
split : !this.appConfig.isReviewOnly,
|
||||
|
@ -983,6 +983,7 @@ define([
|
|||
render: function() {
|
||||
Common.UI.Window.prototype.render.call(this);
|
||||
|
||||
var _set = Common.enumLock;
|
||||
this.btnPrev = new Common.UI.Button({
|
||||
cls: 'dlg-btn iconic',
|
||||
iconCls: 'img-commonctrl prev',
|
||||
|
@ -1003,7 +1004,8 @@ define([
|
|||
cls : 'btn-toolbar',
|
||||
caption : this.txtAccept,
|
||||
split : true,
|
||||
disabled : this.mode.isReviewOnly || !!Common.Utils.InternalSettings.get(this.appPrefix + "accept-reject-lock"),
|
||||
disabled : this.mode.isReviewOnly || Common.Utils.Store.get('docProtection', {}).isReviewOnly || !!Common.Utils.InternalSettings.get(this.appPrefix + "accept-reject-lock"),
|
||||
lock : [_set.reviewChangelock, _set.isReviewOnly, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments, _set.docLockReview],
|
||||
menu : this.mode.canUseReviewPermissions ? false : new Common.UI.Menu({
|
||||
items: [
|
||||
this.mnuAcceptCurrent = new Common.UI.MenuItem({
|
||||
|
@ -1023,7 +1025,7 @@ define([
|
|||
cls : 'btn-toolbar',
|
||||
caption : this.txtReject,
|
||||
split : true,
|
||||
disabled : this.mode.isReviewOnly || !!Common.Utils.InternalSettings.get(this.appPrefix + "accept-reject-lock"),
|
||||
lock : [_set.reviewChangelock, _set.isReviewOnly, _set.previewReviewMode, _set.viewFormMode, _set.lostConnect, _set.docLockView, _set.docLockForms, _set.docLockComments, _set.docLockReview],
|
||||
menu : this.mode.canUseReviewPermissions ? false : new Common.UI.Menu({
|
||||
items: [
|
||||
this.mnuRejectCurrent = new Common.UI.MenuItem({
|
||||
|
@ -1038,6 +1040,14 @@ define([
|
|||
})
|
||||
});
|
||||
this.btnReject.render(this.$window.find('#id-review-button-reject'));
|
||||
var arr = [this.btnAccept, this.btnReject];
|
||||
Common.Utils.lockControls(Common.enumLock.isReviewOnly, this.mode.isReviewOnly, {array: arr});
|
||||
var docProtection = Common.Utils.Store.get('docProtection', {});
|
||||
Common.Utils.lockControls(Common.enumLock.docLockView, docProtection.isReadOnly, {array: arr});
|
||||
Common.Utils.lockControls(Common.enumLock.docLockForms, docProtection.isFormsOnly, {array: arr});
|
||||
Common.Utils.lockControls(Common.enumLock.docLockReview, docProtection.isReviewOnly, {array: arr});
|
||||
Common.Utils.lockControls(Common.enumLock.docLockComments, docProtection.isCommentsOnly, {array: arr});
|
||||
Common.Utils.lockControls(Common.enumLock.reviewChangelock, !!Common.Utils.InternalSettings.get(this.appPrefix + "accept-reject-lock"), {array: arr});
|
||||
|
||||
var me = this;
|
||||
this.btnPrev.on('click', function (e) {
|
||||
|
|
Loading…
Reference in a new issue