Merge pull request 'fix/bugfix' (#679) from fix/bugfix into release/v9.1.0

This commit is contained in:
Julia Radzhabova
2025-09-12 11:24:42 +00:00
39 changed files with 118 additions and 217 deletions

View File

@ -669,16 +669,6 @@
});
};
var _processSaveResult = function(result, message) {
_sendCommand({
command: 'processSaveResult',
data: {
result: result,
message: message
}
});
};
// TODO: remove processRightsChange, use denyEditingRights
var _processRightsChange = function(enabled, message) {
_sendCommand({
@ -903,7 +893,6 @@
return {
showMessage : _showMessage,
processSaveResult : _processSaveResult,
processRightsChange : _processRightsChange,
denyEditingRights : _denyEditingRights,
refreshHistory : _refreshHistory,

View File

@ -59,10 +59,6 @@ if (window.Common === undefined) {
$me.trigger('applyeditrights', data);
},
'processSaveResult': function(data) {
$me.trigger('processsaveresult', data);
},
'processRightsChange': function(data) {
$me.trigger('processrightschange', data);
},

View File

@ -778,9 +778,9 @@ DE.ApplicationController = new(function(){
WarningShown = true;
common.controller.modals.showWarning({
title: me.notcriticalErrorTitle,
message: me.txtOpenWarning,
buttons: [me.txtYes, me.txtNo],
primary: me.txtYes,
message: me.txtOpenWarning.replace('%1', url || ''),
buttons: [me.txtNo, me.txtYes],
primary: me.txtNo,
callback: function (btn) {
WarningShown = false;
if (btn === me.txtYes) {
@ -1184,7 +1184,7 @@ DE.ApplicationController = new(function(){
textConvertFormDownload: 'Download file as a fillable PDF form to be able to fill it out.',
textDownloadPdf: 'Download pdf',
errorToken: 'The document security token is not correctly formed.<br>Please contact your Document Server administrator.',
txtOpenWarning: 'Clicking this link can be harmful to your device and data.<br> Are you sure you want to continue?',
txtOpenWarning: 'Clicking this link can be harmful to your device and data.To protect you computer, click only those hyperlinks from trusted sources. This location may be unsafe:<br>%1<br>Are you sure you want to continue?',
txtYes:'Yes',
txtNo: 'No',
textOk: 'OK',

View File

@ -53,7 +53,7 @@
"DE.ApplicationController.txtClose": "Close",
"DE.ApplicationController.txtEmpty": "(Empty)",
"DE.ApplicationController.txtNo": "No",
"DE.ApplicationController.txtOpenWarning": "Clicking this link can be harmful to your device and data.<br> Are you sure you want to continue?",
"DE.ApplicationController.txtOpenWarning": "Clicking this link can be harmful to your device and data.To protect you computer, click only those hyperlinks from trusted sources. This location may be unsafe:<br>%1<br>Are you sure you want to continue?",
"DE.ApplicationController.txtPressLink": "Press %1 and click link",
"DE.ApplicationController.txtSecurityWarningLink": "This document is trying to connect to %1.<br>If you trust this site, press \"OK\" while holding down the Ctrl key.",
"DE.ApplicationController.txtSecurityWarningOpenFile": "This document is trying to open file dialog, press \"OK\" to open.",

View File

@ -1222,8 +1222,28 @@ define([
},
onHyperlinkClick: function(url) {
if (url /*&& me.api.asc_getUrlType(url)>0*/) {
window.open(url);
if (url) {
var type = this.api.asc_getUrlType(url);
if (type===AscCommon.c_oAscUrlType.Http || type===AscCommon.c_oAscUrlType.Email)
window.open(url);
else {
var me = this;
setTimeout(function() {
Common.UI.warning({
maxwidth: 500,
msg: Common.Utils.String.format(me.txtWarnUrl, url),
buttons: ['no', 'yes'],
primary: 'no',
callback: function(btn) {
try {
(btn == 'yes') && window.open(url);
} catch (err) {
err && console.log(err.stack);
}
}
});
}, 1);
}
}
},

View File

@ -177,6 +177,7 @@
"DE.Controllers.ApplicationController.warnNoLicense": "You've reached the limit for simultaneous connections to %1 editors. This document will be opened for viewing only.<br>Contact %1 sales team for personal upgrade terms.",
"DE.Controllers.ApplicationController.warnNoLicenseUsers": "You've reached the user limit for %1 editors. Contact %1 sales team for personal upgrade terms.",
"DE.Controllers.ApplicationController.warnStartFilling": "Form filling is in progress.<br>File editing is not currently available.",
"DE.Controllers.ApplicationController.txtWarnUrl": "Clicking this link can be harmful to your device and data.To protect you computer, click only those hyperlinks from trusted sources. This location may be unsafe:<br><br>{0}<br><br>Are you sure you want to continue?",
"DE.Views.ApplicationView.textClear": "Clear all fields",
"DE.Views.ApplicationView.textClearField": "Clear field",
"DE.Views.ApplicationView.textClose": "Close file",

View File

@ -477,9 +477,10 @@ define([], function () {
var me = this;
setTimeout(function() {
Common.UI.warning({
msg: me.documentHolder.txtWarnUrl,
buttons: ['yes', 'no'],
primary: 'yes',
maxwidth: 500,
msg: Common.Utils.String.format(me.documentHolder.txtWarnUrl, url),
buttons: ['no', 'yes'],
primary: 'no',
callback: function(btn) {
try {
(btn == 'yes') && window.open(url);

View File

@ -605,16 +605,6 @@ define([
}
},
onProcessSaveResult: function(data) {
this.api.asc_OnSaveEnd(data.result);
if (data && data.result === false) {
Common.UI.error({
title: this.criticalErrorTitle,
msg : _.isEmpty(data.message) ? this.errorProcessSaveResult : data.message
});
}
},
onProcessRightsChange: function(data) {
if (data && data.enabled === false) {
var me = this,
@ -1538,7 +1528,6 @@ define([
Common.component.Analytics.initialize('UA-12442749-13', 'Document Editor');
Common.Gateway.on('applyeditrights', _.bind(me.onApplyEditRights, me));
Common.Gateway.on('processsaveresult', _.bind(me.onProcessSaveResult, me));
Common.Gateway.on('processrightschange', _.bind(me.onProcessRightsChange, me));
Common.Gateway.on('processmouse', _.bind(me.onProcessMouse, me));
Common.Gateway.on('refreshhistory', _.bind(me.onRefreshHistory, me));

View File

@ -1033,7 +1033,8 @@ define([
if (props.get_Format() !== Asc.c_oAscNumberingFormat.Bullet) {
var text = props.get_Text();
var me = this;
var arr = this.formatString.lvlIndexes[this.level];
var arr = this.formatString.lvlIndexes[this.level],
isLgl = this.props.get_Lvl(this.level).get_IsLgl();
text.forEach(function (item, index) {
if (item.get_Type() === Asc.c_oAscNumberingLvlTextType.Text) {
formatStr += item.get_Value().toString();
@ -1042,8 +1043,12 @@ define([
if (me.levels[num] === undefined)
me.levels[num] = me.props.get_Lvl(num);
arr[num] = {start: formatStr.length, index: index};
var lvl = me.levels[num];
formatStr += AscCommon.IntToNumberFormat(lvl.get_Start(), lvl.get_Format(), me.lang);
var lvl = me.levels[num],
fmt = lvl.get_Format();
if (isLgl && fmt !== Asc.c_oAscNumberingFormat.Decimal && fmt !== Asc.c_oAscNumberingFormat.DecimalZero) {
fmt = Asc.c_oAscNumberingFormat.Decimal;
}
formatStr += AscCommon.IntToNumberFormat(lvl.get_Start(), fmt, me.lang);
arr[num].end = formatStr.length;
}
});

View File

@ -1005,7 +1005,7 @@
"DE.Controllers.Main.errorMailMergeSaveFile": "Merge failed.",
"DE.Controllers.Main.errorNoTOC": "There's no table of contents to update. You can insert one from the References tab.",
"DE.Controllers.Main.errorPasswordIsNotCorrect": "The password you supplied is not correct.<br>Verify that the CAPS LOCK key is off and be sure to use the correct capitalization.",
"DE.Controllers.Main.errorProcessSaveResult": "Saving failed.",
"del_DE.Controllers.Main.errorProcessSaveResult": "Saving failed.",
"DE.Controllers.Main.errorSaveWatermark": "This file contains a watermark image linked to another domain.<br>To make it visible in PDF, update the watermark image so it links from the same domain as your document, or upload it from your computer.",
"DE.Controllers.Main.errorServerVersion": "The editor version has been updated. The page will be reloaded to apply the changes.",
"DE.Controllers.Main.errorSessionAbsolute": "The document editing session has expired. Please reload the page.",
@ -2252,7 +2252,7 @@
"DE.Views.DocumentHolder.txtTopAndBottom": "Top and bottom",
"DE.Views.DocumentHolder.txtUnderbar": "Bar under text",
"DE.Views.DocumentHolder.txtUngroup": "Ungroup",
"DE.Views.DocumentHolder.txtWarnUrl": "Clicking this link can be harmful to your device and data.<br>Are you sure you want to continue?",
"DE.Views.DocumentHolder.txtWarnUrl": "Clicking this link can be harmful to your device and data.To protect you computer, click only those hyperlinks from trusted sources. This location may be unsafe:<br><br>{0}<br><br>Are you sure you want to continue?",
"DE.Views.DocumentHolder.unicodeText": "Unicode",
"DE.Views.DocumentHolder.updateStyleText": "Update %1 style",
"DE.Views.DocumentHolder.vertAlignText": "Vertical alignment",

View File

@ -228,7 +228,7 @@
"textRefreshEntireTable": "Refresh entire table",
"textRefreshPageNumbersOnly": "Refresh page numbers only",
"textRows": "Rows",
"txtWarnUrl": "Clicking this link can be harmful to your device and data.<br>Are you sure you want to continue?"
"txtWarnUrl": "Clicking this link can be harmful to your device and data. This location may be unsafe:<br>{0}<br>Are you sure you want to continue?"
},
"Draw": {
"textColor": "Color",
@ -533,7 +533,7 @@
"criticalErrorTitle": "Error",
"errorAccessDeny": "You are trying to perform an action you do not have rights for.<br>Please, contact your administrator.",
"errorOpensource": "Using the free Community version, you can open documents for viewing only. To access mobile web editors, a commercial license is required.",
"errorProcessSaveResult": "Saving failed.",
"del_errorProcessSaveResult": "Saving failed.",
"errorServerVersion": "The editor version has been updated. The page will be reloaded to apply the changes.",
"errorUpdateVersion": "The file version has been changed. The page will be reloaded.",
"leavePageText": "You have unsaved changes. Click 'Stay on this Page' to wait for autosave. Click 'Leave this Page' to discard all the unsaved changes.",

View File

@ -246,18 +246,18 @@ class ContextMenu extends ContextMenuController {
f7.dialog.create({
title: t('Settings', {returnObjects: true}).notcriticalErrorTitle,
text : _t.txtWarnUrl,
buttons: [{
text : _t.txtWarnUrl.replaceAll('{0}', url),
buttons: [
{ text: _t.menuCancel, bold: true },
{
text: _t.textOk,
bold: true,
onClick: () => {
const newDocumentPage = window.open(url, '_blank');
if (newDocumentPage) {
newDocumentPage.focus();
}
}
},
{ text: _t.menuCancel }]
}]
}).open();
}
}

View File

@ -402,7 +402,6 @@ class MainController extends Component {
Common.Notifications.trigger('api:disconnect');
}
Common.Gateway.on('processsaveresult', this.onProcessSaveResult.bind(this));
Common.Gateway.on('processrightschange', this.onProcessRightsChange.bind(this));
Common.Gateway.on('downloadas', this.onDownloadAs.bind(this));
Common.Gateway.on('requestclose', this.onRequestClose.bind(this));
@ -1236,20 +1235,6 @@ class MainController extends Component {
else Common.Notifications.trigger('openPdfDropdownList', obj);
}
onProcessSaveResult (data) {
this.api.asc_OnSaveEnd(data.result);
if (data && data.result === false) {
const { t } = this.props;
const _t = t('Main', {returnObjects:true});
f7.dialog.alert(
(!data.message) ? _t.errorProcessSaveResult : data.message,
_t.criticalErrorTitle
);
}
}
onProcessRightsChange (data) {
if (data && data.enabled === false) {
const appOptions = this.props.storeAppOptions;

View File

@ -59,9 +59,6 @@ define([], function () {
this.api.asc_registerCallback('asc_onContextMenu', _.bind(this.onContextMenu, this));
this.api.asc_registerCallback('asc_onMouseMoveStart', _.bind(this.onMouseMoveStart, this));
this.api.asc_registerCallback('asc_onMouseMoveEnd', _.bind(this.onMouseMoveEnd, this));
//hyperlink
this.api.asc_registerCallback('asc_onHyperlinkClick', _.bind(this.onHyperlinkClick, this));
this.api.asc_registerCallback('asc_onMouseMove', _.bind(this.onMouseMove, this));
if (this.mode.isEdit === true) {
@ -2389,31 +2386,6 @@ define([], function () {
Common.NotificationCenter.trigger('edit:complete', this.documentHolder);
};
dh.onHyperlinkClick = function(url) {
if (url) {
var type = this.api.asc_getUrlType(url);
if (type===AscCommon.c_oAscUrlType.Http || type===AscCommon.c_oAscUrlType.Email)
window.open(url);
else {
var me = this;
setTimeout(function() {
Common.UI.warning({
msg: me.documentHolder.txtWarnUrl,
buttons: ['yes', 'no'],
primary: 'yes',
callback: function(btn) {
try {
(btn == 'yes') && window.open(url);
} catch (err) {
err && console.log(err.stack);
}
}
});
}, 1);
}
}
};
dh.removeComment = function(item, e, eOpt){
this.api && this.api.asc_remove();
this.editComplete();

View File

@ -520,16 +520,6 @@ define([
}
},
onProcessSaveResult: function(data) {
this.api.asc_OnSaveEnd(data.result);
if (data && data.result === false) {
Common.UI.error({
title: this.criticalErrorTitle,
msg : _.isEmpty(data.message) ? this.errorProcessSaveResult : data.message
});
}
},
onProcessRightsChange: function(data) {
if (data && data.enabled === false) {
var me = this,
@ -1157,7 +1147,6 @@ define([
Common.component.Analytics.initialize('UA-12442749-13', 'Document Editor');
Common.Gateway.on('applyeditrights', _.bind(me.onApplyEditRights, me));
Common.Gateway.on('processsaveresult', _.bind(me.onProcessSaveResult, me));
Common.Gateway.on('processrightschange', _.bind(me.onProcessRightsChange, me));
Common.Gateway.on('processmouse', _.bind(me.onProcessMouse, me));
Common.Gateway.on('downloadas', _.bind(me.onDownloadAs, me));

View File

@ -152,7 +152,7 @@ define([
this.btnTextField = new Common.UI.Button({
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'toolbar__icon btn-text-field',
lock: [_set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
lock: [_set.pageDeleted, _set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
caption: this.capBtnText,
dataHint: '1',
dataHintDirection: 'bottom',
@ -163,7 +163,7 @@ define([
this.btnComboBox = new Common.UI.Button({
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'toolbar__icon btn-combo-box',
lock: [_set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
lock: [_set.pageDeleted, _set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
caption: this.capBtnComboBox,
dataHint: '1',
dataHintDirection: 'bottom',
@ -174,7 +174,7 @@ define([
this.btnDropDown = new Common.UI.Button({
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'toolbar__icon btn-listbox',
lock: [_set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
lock: [_set.pageDeleted, _set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
caption: this.capBtnDropDown,
dataHint: '1',
dataHintDirection: 'bottom',
@ -185,7 +185,7 @@ define([
this.btnCheckBox = new Common.UI.Button({
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'toolbar__icon btn-checkbox',
lock: [_set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
lock: [_set.pageDeleted, _set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
caption: this.capBtnCheckBox,
dataHint: '1',
dataHintDirection: 'bottom',
@ -196,7 +196,7 @@ define([
this.btnRadioBox = new Common.UI.Button({
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'toolbar__icon btn-radio-button',
lock: [_set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
lock: [_set.pageDeleted, _set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
caption: this.capBtnRadioBox,
dataHint: '1',
dataHintDirection: 'bottom',
@ -207,7 +207,7 @@ define([
this.btnImageField = new Common.UI.Button({
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'toolbar__icon btn-insertimage',
lock: [_set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
lock: [_set.pageDeleted, _set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
caption: this.capBtnImage,
dataHint: '1',
dataHintDirection: 'bottom',
@ -218,7 +218,7 @@ define([
this.btnEmailField = new Common.UI.Button({
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'toolbar__icon btn-email',
lock: [_set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
lock: [_set.pageDeleted, _set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
caption: this.capBtnEmail,
dataHint: '1',
dataHintDirection: 'bottom',
@ -229,7 +229,7 @@ define([
this.btnPhoneField = new Common.UI.Button({
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'toolbar__icon btn-phone',
lock: [_set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
lock: [_set.pageDeleted, _set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
caption: this.capBtnPhone,
dataHint: '1',
dataHintDirection: 'bottom',
@ -240,7 +240,7 @@ define([
this.btnZipCode = new Common.UI.Button({
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'toolbar__icon btn-zip-code',
lock: [_set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
lock: [_set.pageDeleted, _set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
caption: this.capZipCode,
dataHint: '1',
dataHintDirection: 'bottom',
@ -251,7 +251,7 @@ define([
this.btnCreditCard = new Common.UI.Button({
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'toolbar__icon btn-credit-card',
lock: [_set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
lock: [_set.pageDeleted, _set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
caption: this.capCreditCard,
dataHint: '1',
dataHintDirection: 'bottom',
@ -262,7 +262,7 @@ define([
this.btnDateTime = new Common.UI.Button({
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'toolbar__icon btn-datetime',
lock: [_set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
lock: [_set.pageDeleted, _set.paragraphLock, _set.lostConnect, _set.disableOnStart, _set.inSmartart, _set.inSmartartInternal, _set.viewMode],
caption: this.capDateTime,
dataHint: '1',
dataHintDirection: 'bottom',
@ -274,7 +274,7 @@ define([
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'toolbar__icon btn-clear-style',
caption: this.textClear,
lock: [ _set.lostConnect, _set.viewMode, _set.disableOnStart],
lock: [ _set.pageDeleted, _set.lostConnect, _set.viewMode, _set.disableOnStart],
visible: false,
dataHint: '1',
dataHintDirection: 'bottom',
@ -285,7 +285,7 @@ define([
this.btnPrevForm = new Common.UI.Button({
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'toolbar__icon btn-previous-field icon-rtl',
lock: [_set.lostConnect, _set.disableOnStart, _set.viewMode],
lock: [_set.pageDeleted, _set.lostConnect, _set.disableOnStart, _set.viewMode],
caption: this.capBtnPrev,
visible: false,
dataHint: '1',
@ -297,7 +297,7 @@ define([
this.btnNextForm = new Common.UI.Button({
cls: 'btn-toolbar x-huge icon-top',
iconCls: 'toolbar__icon btn-next-field icon-rtl',
lock: [_set.lostConnect, _set.disableOnStart, _set.viewMode],
lock: [_set.pageDeleted, _set.lostConnect, _set.disableOnStart, _set.viewMode],
caption: this.capBtnNext,
visible: false,
dataHint: '1',

View File

@ -1074,7 +1074,7 @@
"PDFE.Controllers.Main.errorLoadingFont": "Fonts are not loaded.<br>Please contact your Document Server administrator.",
"PDFE.Controllers.Main.errorPasswordIsNotCorrect": "The password you supplied is not correct.<br>Verify that the CAPS LOCK key is off and be sure to use the correct capitalization.",
"PDFE.Controllers.Main.errorPDFFormsLocked": "The action cannot be performed as it causes changes in locked forms.",
"PDFE.Controllers.Main.errorProcessSaveResult": "Saving failed.",
"del_PDFE.Controllers.Main.errorProcessSaveResult": "Saving failed.",
"PDFE.Controllers.Main.errorSaveWatermark": "This file contains a watermark image linked to another domain.<br>To make it visible in PDF, update the watermark image so it links from the same domain as your document, or upload it from your computer.",
"PDFE.Controllers.Main.errorServerVersion": "The editor version has been updated. The page will be reloaded to apply the changes.",
"PDFE.Controllers.Main.errorSessionAbsolute": "The document editing session has expired. Please reload the page.",

View File

@ -624,9 +624,9 @@ PE.ApplicationController = new(function(){
WarningShown = true;
common.controller.modals.showWarning({
title: me.notcriticalErrorTitle,
message: me.txtOpenWarning,
buttons: [me.txtYes, me.txtNo],
primary: me.txtYes,
message: me.txtOpenWarning.replace('%1', url || ''),
buttons: [me.txtNo, me.txtYes],
primary: me.txtNo,
callback: function (btn) {
WarningShown = false;
if (btn === me.txtYes) {
@ -932,7 +932,7 @@ PE.ApplicationController = new(function(){
errorEditingDownloadas: 'An error occurred during the work with the document.<br>Use the \'Download as...\' option to save the file backup copy to your computer hard drive.',
errorToken: 'The document security token is not correctly formed.<br>Please contact your Document Server administrator.',
txtPressLink: 'Click the link to open it',
txtOpenWarning: 'Clicking this link can be harmful to your device and data.<br> Are you sure you want to continue?',
txtOpenWarning: 'Clicking this link can be harmful to your device and data.To protect you computer, click only those hyperlinks from trusted sources. This location may be unsafe:<br>%1<br>Are you sure you want to continue?',
txtYes:'Yes',
txtNo: 'No'
}

View File

@ -40,7 +40,7 @@
"PE.ApplicationController.titleLicenseNotActive": "License not active",
"PE.ApplicationController.txtClose": "Close",
"PE.ApplicationController.txtNo": "No",
"PE.ApplicationController.txtOpenWarning": "Clicking this link can be harmful to your device and data.<br> Are you sure you want to continue?",
"PE.ApplicationController.txtOpenWarning": "Clicking this link can be harmful to your device and data.To protect you computer, click only those hyperlinks from trusted sources. This location may be unsafe:<br>%1<br>Are you sure you want to continue?",
"PE.ApplicationController.txtPressLink": "Click the link to open it",
"PE.ApplicationController.txtYes": "Yes",
"PE.ApplicationController.unknownErrorText": "Unknown error.",

View File

@ -380,9 +380,10 @@ define([], function () {
var me = this;
setTimeout(function() {
Common.UI.warning({
msg: me.documentHolder.txtWarnUrl,
buttons: ['yes', 'no'],
primary: 'yes',
maxwidth: 500,
msg: Common.Utils.String.format(me.documentHolder.txtWarnUrl, url),
buttons: ['no', 'yes'],
primary: 'no',
callback: function(btn) {
try {
(btn == 'yes') && window.open(url);

View File

@ -550,16 +550,6 @@ define([
}
},
onProcessSaveResult: function(data) {
this.api.asc_OnSaveEnd(data.result);
if (data && data.result === false) {
Common.UI.error({
title: this.criticalErrorTitle,
msg : _.isEmpty(data.message) ? this.errorProcessSaveResult : data.message
});
}
},
onProcessRightsChange: function(data) {
if (data && data.enabled === false) {
var me = this,
@ -1112,7 +1102,6 @@ define([
Common.component.Analytics.initialize('UA-12442749-13', 'Presentation Editor');
Common.Gateway.on('applyeditrights', _.bind(me.onApplyEditRights, me));
Common.Gateway.on('processsaveresult', _.bind(me.onProcessSaveResult, me));
Common.Gateway.on('processrightschange', _.bind(me.onProcessRightsChange, me));
Common.Gateway.on('processmouse', _.bind(me.onProcessMouse, me));
Common.Gateway.on('downloadas', _.bind(me.onDownloadAs, me));

View File

@ -1087,7 +1087,7 @@
"PE.Controllers.Main.errorKeyEncrypt": "Unknown key descriptor",
"PE.Controllers.Main.errorKeyExpire": "Key descriptor expired",
"PE.Controllers.Main.errorLoadingFont": "Fonts are not loaded.<br>Please contact your Document Server administrator.",
"PE.Controllers.Main.errorProcessSaveResult": "Saving failed.",
"del_PE.Controllers.Main.errorProcessSaveResult": "Saving failed.",
"PE.Controllers.Main.errorSaveWatermark": "This file contains a watermark image linked to another domain.<br>To make it visible in PDF, update the watermark image so it links from the same domain as your document, or upload it from your computer.",
"PE.Controllers.Main.errorServerVersion": "The editor version has been updated. The page will be reloaded to apply the changes.",
"PE.Controllers.Main.errorSessionAbsolute": "The document editing session has expired. Please reload the page.",
@ -2267,7 +2267,7 @@
"PE.Views.DocumentHolder.txtTop": "Top",
"PE.Views.DocumentHolder.txtUnderbar": "Bar under text",
"PE.Views.DocumentHolder.txtUngroup": "Ungroup",
"PE.Views.DocumentHolder.txtWarnUrl": "Clicking this link can be harmful to your device and data.<br>Are you sure you want to continue?",
"PE.Views.DocumentHolder.txtWarnUrl": "Clicking this link can be harmful to your device and data.To protect you computer, click only those hyperlinks from trusted sources. This location may be unsafe:<br><br>{0}<br><br>Are you sure you want to continue?",
"PE.Views.DocumentHolder.unicodeText": "Unicode",
"PE.Views.DocumentHolder.vertAlignText": "Vertical alignment",
"PE.Views.DocumentPreview.goToSlideText": "Go to slide",

View File

@ -83,7 +83,7 @@
"textDoNotShowAgain": "Don't show again",
"textOk": "Ok",
"textRows": "Rows",
"txtWarnUrl": "Clicking this link can be harmful to your device and data.<br>Are you sure you want to continue?"
"txtWarnUrl": "Clicking this link can be harmful to your device and data. This location may be unsafe:<br>{0}<br>Are you sure you want to continue?"
},
"Controller": {
"Main": {
@ -93,7 +93,7 @@
"criticalErrorTitle": "Error",
"errorAccessDeny": "You are trying to perform an action you do not have rights for.<br>Please, contact your admin.",
"errorOpensource": "Using the free Community version, you can open documents for viewing only. To access mobile web editors, a commercial license is required.",
"errorProcessSaveResult": "Saving failed.",
"del_errorProcessSaveResult": "Saving failed.",
"errorServerVersion": "The editor version has been updated. The page will be reloaded to apply the changes.",
"errorUpdateVersion": "The file version has been changed. The page will be reloaded.",
"leavePageText": "You have unsaved changes in this document. Click 'Stay on this Page' to wait for autosave. Click 'Leave this Page' to discard all the unsaved changes.",

View File

@ -209,18 +209,18 @@ class ContextMenu extends ContextMenuController {
const _t = t("ContextMenu", { returnObjects: true });
f7.dialog.create({
title: t('View.Settings', {returnObjects: true}).notcriticalErrorTitle,
text : _t.txtWarnUrl,
buttons: [{
text : _t.txtWarnUrl.replaceAll('{0}', url),
buttons: [
{ text: _t.menuCancel, bold: true },
{
text: t('View.Settings', {returnObjects: true}).textOk,
bold: true,
onClick: () => {
const newDocumentPage = window.open(url, '_blank');
if (newDocumentPage) {
newDocumentPage.focus();
}
}
},
{ text: _t.menuCancel }]
}]
}).open();
}
}

View File

@ -584,7 +584,6 @@ class MainController extends Component {
Common.Notifications.trigger('api:disconnect');
}
Common.Gateway.on('processsaveresult', this.onProcessSaveResult.bind(this));
Common.Gateway.on('processrightschange', this.onProcessRightsChange.bind(this));
Common.Gateway.on('downloadas', this.onDownloadAs.bind(this));
Common.Gateway.on('requestclose', this.onRequestClose.bind(this));
@ -1050,19 +1049,6 @@ class MainController extends Component {
}
}
onProcessSaveResult (data) {
this.api.asc_OnSaveEnd(data.result);
if (data && data.result === false) {
const { t } = this.props;
const _t = t('Controller.Main', {returnObjects:true});
f7.dialog.alert(
(!data.message) ? _t.errorProcessSaveResult : data.message,
_t.criticalErrorTitle
);
}
}
onProcessRightsChange (data) {
if (data && data.enabled === false) {
const appOptions = this.props.storeAppOptions;

View File

@ -669,9 +669,9 @@ SSE.ApplicationController = new(function(){
WarningShown = true;
common.controller.modals.showWarning({
title: me.notcriticalErrorTitle,
message: me.txtOpenWarning,
buttons: [me.txtYes, me.txtNo],
primary: me.txtYes,
message: me.txtOpenWarning.replace('%1', url || ''),
buttons: [me.txtNo, me.txtYes],
primary: me.txtNo,
callback: function (btn) {
WarningShown = false;
if (btn === me.txtYes) {
@ -1022,7 +1022,7 @@ SSE.ApplicationController = new(function(){
errorEditingDownloadas: 'An error occurred during the work with the document.<br>Use the \'Download as...\' option to save the file backup copy to your computer hard drive.',
errorToken: 'The document security token is not correctly formed.<br>Please contact your Document Server administrator.',
txtPressLink: 'Click the link to open it',
txtOpenWarning: 'Clicking this link can be harmful to your device and data.<br> Are you sure you want to continue?',
txtOpenWarning: 'Clicking this link can be harmful to your device and data.To protect you computer, click only those hyperlinks from trusted sources. This location may be unsafe:<br>%1<br>Are you sure you want to continue?',
txtYes:'Yes',
txtNo: 'No'
}

View File

@ -40,7 +40,7 @@
"SSE.ApplicationController.titleLicenseNotActive": "License not active",
"SSE.ApplicationController.txtClose": "Close",
"SSE.ApplicationController.txtNo": "No",
"SSE.ApplicationController.txtOpenWarning": "Clicking this link can be harmful to your device and data.<br> Are you sure you want to continue?",
"SSE.ApplicationController.txtOpenWarning": "Clicking this link can be harmful to your device and data.To protect you computer, click only those hyperlinks from trusted sources. This location may be unsafe:<br>%1<br>Are you sure you want to continue?",
"SSE.ApplicationController.txtPressLink": "Click the link to open it",
"SSE.ApplicationController.txtYes": "Yes",
"SSE.ApplicationController.unknownErrorText": "Unknown error.",

View File

@ -2003,9 +2003,10 @@ define([], function () {
window.open(url, '_blank');
else
Common.UI.warning({
msg: this.txtWarnUrl,
buttons: ['yes', 'no'],
primary: 'yes',
maxwidth: 500,
msg: Common.Utils.String.format(this.txtWarnUrl, url),
buttons: ['no', 'yes'],
primary: 'no',
callback: function(btn) {
try {
(btn == 'yes') && window.open(url, '_blank');

View File

@ -626,16 +626,6 @@ define([
this.api.asc_getEditorPermissions(this.editorConfig.licenseUrl, this.editorConfig.customerId);
},
onProcessSaveResult: function(data) {
this.api.asc_OnSaveEnd(data.result);
if (data && data.result === false) {
Common.UI.error({
title: this.criticalErrorTitle,
msg : _.isEmpty(data.message) ? this.errorProcessSaveResult : data.message
});
}
},
onProcessRightsChange: function(data) {
if (data && data.enabled === false) {
var me = this,
@ -1161,7 +1151,6 @@ define([
Common.component.Analytics.initialize('UA-12442749-13', 'Spreadsheet Editor');
Common.Gateway.on('applyeditrights', _.bind(me.onApplyEditRights, me));
Common.Gateway.on('processsaveresult', _.bind(me.onProcessSaveResult, me));
Common.Gateway.on('processrightschange', _.bind(me.onProcessRightsChange, me));
Common.Gateway.on('processmouse', _.bind(me.onProcessMouse, me));
Common.Gateway.on('downloadas', _.bind(me.onDownloadAs, me));

View File

@ -1073,7 +1073,7 @@
"SSE.Controllers.DocumentHolder.txtUndoExpansion": "Undo table autoexpansion",
"SSE.Controllers.DocumentHolder.txtUseTextImport": "Use text import wizard",
"SSE.Controllers.DocumentHolder.txtValue": "Value",
"SSE.Controllers.DocumentHolder.txtWarnUrl": "Clicking this link can be harmful to your device and data.<br>Are you sure you want to continue?",
"SSE.Controllers.DocumentHolder.txtWarnUrl": "Clicking this link can be harmful to your device and data.To protect you computer, click only those hyperlinks from trusted sources. This location may be unsafe:<br><br>{0}<br><br>Are you sure you want to continue?",
"SSE.Controllers.DocumentHolder.txtWidth": "Width",
"SSE.Controllers.DocumentHolder.warnFilterError": "You need at least one field in the Values area in order to apply a value filter.",
"SSE.Controllers.FormulaDialog.sCategoryAll": "All",
@ -1212,7 +1212,7 @@
"SSE.Controllers.Main.errorPivotWithoutUnderlying": "The Pivot Table report was saved without the underlying data.<br>Use the 'Refresh' button to update the report.",
"SSE.Controllers.Main.errorPrecedentsNoValidRef": "The Trace Precedents command requires that the active cell contain a formula which includes a valid references.",
"SSE.Controllers.Main.errorPrintMaxPagesCount": "Unfortunately, it is not possible to print more than 1500 pages at once in the current program version.<br>This restriction will be removed in the upcoming releases.",
"SSE.Controllers.Main.errorProcessSaveResult": "Saving failed",
"del_SSE.Controllers.Main.errorProcessSaveResult": "Saving failed",
"SSE.Controllers.Main.errorProtectedRange": "This range is not allowed for editing.",
"SSE.Controllers.Main.errorSaveWatermark": "This file contains a watermark image linked to another domain.<br>To make it visible in PDF, update the watermark image so it links from the same domain as your document, or upload it from your computer.",
"SSE.Controllers.Main.errorServerVersion": "The editor version has been updated. The page will be reloaded to apply the changes.",

View File

@ -87,7 +87,7 @@
"textCopyCutPasteActions": "Copy, Cut and Paste Actions",
"textDoNotShowAgain": "Don't show again",
"textOk": "Ok",
"txtWarnUrl": "Clicking this link can be harmful to your device and data.<br>Are you sure you want to continue?",
"txtWarnUrl": "Clicking this link can be harmful to your device and data. This location may be unsafe:<br>{0}<br>Are you sure you want to continue?",
"warnMergeLostData": "Only the data from the upper-left cell will remain in the merged cell. <br>Are you sure you want to continue?"
},
"Controller": {
@ -95,7 +95,7 @@
"criticalErrorTitle": "Error",
"errorAccessDeny": "You are trying to perform an action you do not have rights for.<br>Please, contact your admin.",
"errorOpensource": "Using the free Community version, you can open documents for viewing only. To access mobile web editors, a commercial license is required.",
"errorProcessSaveResult": "Saving is failed.",
"del_errorProcessSaveResult": "Saving is failed.",
"errorServerVersion": "The editor version has been updated. The page will be reloaded to apply the changes.",
"errorUpdateVersion": "The file version has been changed. The page will be reloaded.",
"leavePageText": "You have unsaved changes in this document. Click 'Stay on this Page' to wait for autosave. Click 'Leave this Page' to discard all the unsaved changes.",

View File

@ -215,18 +215,18 @@ class ContextMenu extends ContextMenuController {
const _t = t("ContextMenu", { returnObjects: true });
f7.dialog.create({
title: _t.notcriticalErrorTitle,
text : _t.txtWarnUrl,
buttons: [{
text : _t.txtWarnUrl.replaceAll('{0}', url),
buttons: [
{ text: _t.menuCancel, bold: true },
{
text: _t.textOk,
bold: true,
onClick: () => {
const newDocumentPage = window.open(url, '_blank');
if (newDocumentPage) {
newDocumentPage.focus();
}
}
},
{ text: _t.menuCancel }]
}]
}).open();
}
}

View File

@ -751,7 +751,6 @@ class MainController extends Component {
Common.component.Analytics.initialize('UA-12442749-13', 'Spreadsheet Editor');
}
Common.Gateway.on('processsaveresult', this.onProcessSaveResult.bind(this));
Common.Gateway.on('processrightschange', this.onProcessRightsChange.bind(this));
Common.Gateway.on('downloadas', this.onDownloadAs.bind(this));
Common.Gateway.on('requestclose', this.onRequestClose.bind(this));
@ -1217,19 +1216,6 @@ class MainController extends Component {
Common.component.Analytics.trackEvent('Print');
}
onProcessSaveResult (data) {
this.api.asc_OnSaveEnd(data.result);
if (data && data.result === false) {
const { t } = this.props;
const _t = t('Controller.Main', {returnObjects:true});
f7.dialog.alert(
(!data.message) ? _t.errorProcessSaveResult : data.message,
_t.criticalErrorTitle
);
}
}
onProcessRightsChange (data) {
if (data && data.enabled === false) {
const appOptions = this.props.storeAppOptions;

View File

@ -667,9 +667,9 @@ VE.ApplicationController = new(function(){
WarningShown = true;
common.controller.modals.showWarning({
title: me.notcriticalErrorTitle,
message: me.txtOpenWarning,
buttons: [me.txtYes, me.txtNo],
primary: me.txtYes,
message: me.txtOpenWarning.replace('%1', url || ''),
buttons: [me.txtNo, me.txtYes],
primary: me.txtNo,
callback: function (btn) {
WarningShown = false;
if (btn === me.txtYes) {
@ -973,7 +973,7 @@ VE.ApplicationController = new(function(){
errorToken: 'The document security token is not correctly formed.<br>Please contact your Document Server administrator.',
txtPressLink: 'Click the link to open it',
txtPage: 'Page',
txtOpenWarning: "Clicking this link can be harmful to your device and data.<br> Are you sure you want to continue?",
txtOpenWarning: 'Clicking this link can be harmful to your device and data.To protect you computer, click only those hyperlinks from trusted sources. This location may be unsafe:<br>%1<br>Are you sure you want to continue?',
txtYes:'Yes',
txtNo: 'No'
}

View File

@ -40,7 +40,7 @@
"VE.ApplicationController.titleLicenseNotActive": "License not active",
"VE.ApplicationController.txtClose": "Close",
"VE.ApplicationController.txtNo": "No",
"VE.ApplicationController.txtOpenWarning": "Clicking this link can be harmful to your device and data.<br> Are you sure you want to continue?",
"VE.ApplicationController.txtOpenWarning": "Clicking this link can be harmful to your device and data.To protect you computer, click only those hyperlinks from trusted sources. This location may be unsafe:<br>%1<br>Are you sure you want to continue?",
"VE.ApplicationController.txtPage": "Page",
"VE.ApplicationController.txtPressLink": "Click the link to open it",
"VE.ApplicationController.txtYes": "Yes",

View File

@ -398,9 +398,10 @@ define([
var me = this;
setTimeout(function() {
Common.UI.warning({
msg: me.documentHolder.txtWarnUrl,
buttons: ['yes', 'no'],
primary: 'yes',
maxwidth: 500,
msg: Common.Utils.String.format(this.txtWarnUrl, url),
buttons: ['no', 'yes'],
primary: 'no',
callback: function(btn) {
try {
(btn == 'yes') && window.open(url);

View File

@ -206,7 +206,7 @@
"VE.Controllers.Main.errorKeyExpire": "Key descriptor expired",
"VE.Controllers.Main.errorLoadingFont": "Fonts are not loaded.<br>Please contact your Document Server administrator.",
"VE.Controllers.Main.errorPasswordIsNotCorrect": "The password you supplied is not correct.<br>Verify that the CAPS LOCK key is off and be sure to use the correct capitalization.",
"VE.Controllers.Main.errorProcessSaveResult": "Saving failed.",
"del_VE.Controllers.Main.errorProcessSaveResult": "Saving failed.",
"VE.Controllers.Main.errorServerVersion": "The editor version has been updated. The page will be reloaded to apply the changes.",
"VE.Controllers.Main.errorSessionAbsolute": "The document editing session has expired. Please reload the page.",
"VE.Controllers.Main.errorSessionIdle": "The document has not been edited for quite a long time. Please reload the page.",
@ -316,7 +316,7 @@
"VE.Views.DocumentHolder.guestText": "Guest",
"VE.Views.DocumentHolder.textCopy": "Copy",
"VE.Views.DocumentHolder.txtPressLink": "Press {0} and click link",
"VE.Views.DocumentHolder.txtWarnUrl": "Clicking this link can be harmful to your device and data.<br>Are you sure you want to continue?",
"VE.Views.DocumentHolder.txtWarnUrl": "Clicking this link can be harmful to your device and data.To protect you computer, click only those hyperlinks from trusted sources. This location may be unsafe:<br><br>{0}<br><br>Are you sure you want to continue?",
"VE.Views.FileMenu.ariaFileMenu": "File menu",
"VE.Views.FileMenu.btnBackCaption": "Open File Location",
"VE.Views.FileMenu.btnCloseEditor": "Close File",

View File

@ -30,7 +30,7 @@
"ContextMenu": {
"menuCancel": "Cancel",
"textOk": "Ok",
"txtWarnUrl": "Clicking this link can be harmful to your device and data.<br>Are you sure you want to continue?"
"txtWarnUrl": "Clicking this link can be harmful to your device and data. This location may be unsafe:<br>{0}<br>Are you sure you want to continue?"
},
"Controller": {
"Main": {
@ -40,7 +40,7 @@
"criticalErrorTitle": "Error",
"errorAccessDeny": "You are trying to perform an action you do not have rights for.<br>Please, contact your admin.",
"errorOpensource": "Using the free Community version, you can open documents for viewing only. To access mobile web editors, a commercial license is required.",
"errorProcessSaveResult": "Saving failed.",
"del_errorProcessSaveResult": "Saving failed.",
"errorServerVersion": "The editor version has been updated. The page will be reloaded to apply the changes.",
"errorUpdateVersion": "The file version has been changed. The page will be reloaded.",
"leavePageText": "You have unsaved changes in this document. Click 'Stay on this Page' to wait for autosave. Click 'Leave this Page' to discard all the unsaved changes.",

View File

@ -83,8 +83,10 @@ class ContextMenu extends ContextMenuController {
const _t = t("ContextMenu", { returnObjects: true });
f7.dialog.create({
title: t('View.Settings', {returnObjects: true}).notcriticalErrorTitle,
text : _t.txtWarnUrl,
buttons: [{
text : _t.txtWarnUrl.replaceAll('{0}', url),
buttons: [
{ text: _t.menuCancel, bold: true },
{
text: t('View.Settings', {returnObjects: true}).textOk,
bold: true,
onClick: () => {
@ -93,8 +95,7 @@ class ContextMenu extends ContextMenuController {
newDocumentPage.focus();
}
}
},
{ text: _t.menuCancel }]
}]
}).open();
}
}