diff --git a/apps/api/documents/api.js b/apps/api/documents/api.js
index bc40135ae8..94f1ec2db5 100644
--- a/apps/api/documents/api.js
+++ b/apps/api/documents/api.js
@@ -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,
diff --git a/apps/common/Gateway.js b/apps/common/Gateway.js
index 031afc7dae..9a39cb5c6a 100644
--- a/apps/common/Gateway.js
+++ b/apps/common/Gateway.js
@@ -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);
},
diff --git a/apps/documenteditor/embed/js/ApplicationController.js b/apps/documenteditor/embed/js/ApplicationController.js
index 406d103188..031203a351 100644
--- a/apps/documenteditor/embed/js/ApplicationController.js
+++ b/apps/documenteditor/embed/js/ApplicationController.js
@@ -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.
Please contact your Document Server administrator.',
- txtOpenWarning: 'Clicking this link can be harmful to your device and data.
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:
%1
Are you sure you want to continue?',
txtYes:'Yes',
txtNo: 'No',
textOk: 'OK',
diff --git a/apps/documenteditor/embed/locale/en.json b/apps/documenteditor/embed/locale/en.json
index 08e4b06837..c095774f42 100644
--- a/apps/documenteditor/embed/locale/en.json
+++ b/apps/documenteditor/embed/locale/en.json
@@ -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.
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:
%1
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.
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.",
diff --git a/apps/documenteditor/forms/app/controller/ApplicationController.js b/apps/documenteditor/forms/app/controller/ApplicationController.js
index 8bc5f83468..20a9425b59 100644
--- a/apps/documenteditor/forms/app/controller/ApplicationController.js
+++ b/apps/documenteditor/forms/app/controller/ApplicationController.js
@@ -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);
+ }
}
},
diff --git a/apps/documenteditor/forms/locale/en.json b/apps/documenteditor/forms/locale/en.json
index bc1a9d1142..1c98129779 100644
--- a/apps/documenteditor/forms/locale/en.json
+++ b/apps/documenteditor/forms/locale/en.json
@@ -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.
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.
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:
{0}
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",
diff --git a/apps/documenteditor/main/app/controller/DocumentHolderExt.js b/apps/documenteditor/main/app/controller/DocumentHolderExt.js
index 20abc68ce6..3f84eb2719 100644
--- a/apps/documenteditor/main/app/controller/DocumentHolderExt.js
+++ b/apps/documenteditor/main/app/controller/DocumentHolderExt.js
@@ -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);
diff --git a/apps/documenteditor/main/app/controller/Main.js b/apps/documenteditor/main/app/controller/Main.js
index c390a0e018..cc26aa25f9 100644
--- a/apps/documenteditor/main/app/controller/Main.js
+++ b/apps/documenteditor/main/app/controller/Main.js
@@ -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));
diff --git a/apps/documenteditor/main/app/view/ListSettingsDialog.js b/apps/documenteditor/main/app/view/ListSettingsDialog.js
index 383cbb6882..36fecb94a7 100644
--- a/apps/documenteditor/main/app/view/ListSettingsDialog.js
+++ b/apps/documenteditor/main/app/view/ListSettingsDialog.js
@@ -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;
}
});
diff --git a/apps/documenteditor/main/locale/en.json b/apps/documenteditor/main/locale/en.json
index c4a6f563f0..4e075526da 100644
--- a/apps/documenteditor/main/locale/en.json
+++ b/apps/documenteditor/main/locale/en.json
@@ -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.
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.
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.
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:
{0}
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",
diff --git a/apps/documenteditor/mobile/locale/en.json b/apps/documenteditor/mobile/locale/en.json
index d97c3edb41..272f107c79 100644
--- a/apps/documenteditor/mobile/locale/en.json
+++ b/apps/documenteditor/mobile/locale/en.json
@@ -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.
Are you sure you want to continue?"
+ "txtWarnUrl": "Clicking this link can be harmful to your device and data. This location may be unsafe:
{0}
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.
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.",
diff --git a/apps/documenteditor/mobile/src/controller/ContextMenu.jsx b/apps/documenteditor/mobile/src/controller/ContextMenu.jsx
index 4105f53aa6..fc7cdb445b 100644
--- a/apps/documenteditor/mobile/src/controller/ContextMenu.jsx
+++ b/apps/documenteditor/mobile/src/controller/ContextMenu.jsx
@@ -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();
}
}
diff --git a/apps/documenteditor/mobile/src/controller/Main.jsx b/apps/documenteditor/mobile/src/controller/Main.jsx
index f3aec73246..0d2d9985ae 100644
--- a/apps/documenteditor/mobile/src/controller/Main.jsx
+++ b/apps/documenteditor/mobile/src/controller/Main.jsx
@@ -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;
diff --git a/apps/pdfeditor/main/app/controller/DocumentHolderExt.js b/apps/pdfeditor/main/app/controller/DocumentHolderExt.js
index b7eecb9d22..93de8ed800 100644
--- a/apps/pdfeditor/main/app/controller/DocumentHolderExt.js
+++ b/apps/pdfeditor/main/app/controller/DocumentHolderExt.js
@@ -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();
diff --git a/apps/pdfeditor/main/app/controller/Main.js b/apps/pdfeditor/main/app/controller/Main.js
index aa7b3e36ee..268a60c97e 100644
--- a/apps/pdfeditor/main/app/controller/Main.js
+++ b/apps/pdfeditor/main/app/controller/Main.js
@@ -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));
diff --git a/apps/pdfeditor/main/app/view/FormsTab.js b/apps/pdfeditor/main/app/view/FormsTab.js
index 3584ab43dc..b17ca491c4 100644
--- a/apps/pdfeditor/main/app/view/FormsTab.js
+++ b/apps/pdfeditor/main/app/view/FormsTab.js
@@ -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',
diff --git a/apps/pdfeditor/main/locale/en.json b/apps/pdfeditor/main/locale/en.json
index cfb56d71df..f3c73c97ce 100644
--- a/apps/pdfeditor/main/locale/en.json
+++ b/apps/pdfeditor/main/locale/en.json
@@ -1074,7 +1074,7 @@
"PDFE.Controllers.Main.errorLoadingFont": "Fonts are not loaded.
Please contact your Document Server administrator.",
"PDFE.Controllers.Main.errorPasswordIsNotCorrect": "The password you supplied is not correct.
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.
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.",
diff --git a/apps/presentationeditor/embed/js/ApplicationController.js b/apps/presentationeditor/embed/js/ApplicationController.js
index b60febfa0a..db23f216af 100644
--- a/apps/presentationeditor/embed/js/ApplicationController.js
+++ b/apps/presentationeditor/embed/js/ApplicationController.js
@@ -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.
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.
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.
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:
%1
Are you sure you want to continue?',
txtYes:'Yes',
txtNo: 'No'
}
diff --git a/apps/presentationeditor/embed/locale/en.json b/apps/presentationeditor/embed/locale/en.json
index c57b38cbbd..275603fece 100644
--- a/apps/presentationeditor/embed/locale/en.json
+++ b/apps/presentationeditor/embed/locale/en.json
@@ -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.
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:
%1
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.",
diff --git a/apps/presentationeditor/main/app/controller/DocumentHolderExt.js b/apps/presentationeditor/main/app/controller/DocumentHolderExt.js
index f63397d91e..584ea9477d 100644
--- a/apps/presentationeditor/main/app/controller/DocumentHolderExt.js
+++ b/apps/presentationeditor/main/app/controller/DocumentHolderExt.js
@@ -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);
diff --git a/apps/presentationeditor/main/app/controller/Main.js b/apps/presentationeditor/main/app/controller/Main.js
index a9631c56c2..3c39a5862c 100644
--- a/apps/presentationeditor/main/app/controller/Main.js
+++ b/apps/presentationeditor/main/app/controller/Main.js
@@ -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));
diff --git a/apps/presentationeditor/main/locale/en.json b/apps/presentationeditor/main/locale/en.json
index d44216c2b3..d65a8cf85e 100644
--- a/apps/presentationeditor/main/locale/en.json
+++ b/apps/presentationeditor/main/locale/en.json
@@ -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.
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.
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.
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:
{0}
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",
diff --git a/apps/presentationeditor/mobile/locale/en.json b/apps/presentationeditor/mobile/locale/en.json
index de7442fd60..0b34fd3b98 100644
--- a/apps/presentationeditor/mobile/locale/en.json
+++ b/apps/presentationeditor/mobile/locale/en.json
@@ -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.
Are you sure you want to continue?"
+ "txtWarnUrl": "Clicking this link can be harmful to your device and data. This location may be unsafe:
{0}
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.
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.",
diff --git a/apps/presentationeditor/mobile/src/controller/ContextMenu.jsx b/apps/presentationeditor/mobile/src/controller/ContextMenu.jsx
index ac107b0e89..064e29ff74 100644
--- a/apps/presentationeditor/mobile/src/controller/ContextMenu.jsx
+++ b/apps/presentationeditor/mobile/src/controller/ContextMenu.jsx
@@ -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();
}
}
diff --git a/apps/presentationeditor/mobile/src/controller/Main.jsx b/apps/presentationeditor/mobile/src/controller/Main.jsx
index 20c0804ac4..63aeeb5cb0 100644
--- a/apps/presentationeditor/mobile/src/controller/Main.jsx
+++ b/apps/presentationeditor/mobile/src/controller/Main.jsx
@@ -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;
diff --git a/apps/spreadsheeteditor/embed/js/ApplicationController.js b/apps/spreadsheeteditor/embed/js/ApplicationController.js
index e0b81a1f36..c88d49c7d1 100644
--- a/apps/spreadsheeteditor/embed/js/ApplicationController.js
+++ b/apps/spreadsheeteditor/embed/js/ApplicationController.js
@@ -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.
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.
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.
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:
%1
Are you sure you want to continue?',
txtYes:'Yes',
txtNo: 'No'
}
diff --git a/apps/spreadsheeteditor/embed/locale/en.json b/apps/spreadsheeteditor/embed/locale/en.json
index 92386dc516..55119a8097 100644
--- a/apps/spreadsheeteditor/embed/locale/en.json
+++ b/apps/spreadsheeteditor/embed/locale/en.json
@@ -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.
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:
%1
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.",
diff --git a/apps/spreadsheeteditor/main/app/controller/DocumentHolderExt.js b/apps/spreadsheeteditor/main/app/controller/DocumentHolderExt.js
index e232da1d5c..336f462886 100644
--- a/apps/spreadsheeteditor/main/app/controller/DocumentHolderExt.js
+++ b/apps/spreadsheeteditor/main/app/controller/DocumentHolderExt.js
@@ -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');
diff --git a/apps/spreadsheeteditor/main/app/controller/Main.js b/apps/spreadsheeteditor/main/app/controller/Main.js
index f046a5259a..154ec3ea9b 100644
--- a/apps/spreadsheeteditor/main/app/controller/Main.js
+++ b/apps/spreadsheeteditor/main/app/controller/Main.js
@@ -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));
diff --git a/apps/spreadsheeteditor/main/locale/en.json b/apps/spreadsheeteditor/main/locale/en.json
index 6112615819..305ea3cb42 100644
--- a/apps/spreadsheeteditor/main/locale/en.json
+++ b/apps/spreadsheeteditor/main/locale/en.json
@@ -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.
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:
{0}
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.
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.
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.
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.",
diff --git a/apps/spreadsheeteditor/mobile/locale/en.json b/apps/spreadsheeteditor/mobile/locale/en.json
index 3201719987..9e4301c1ee 100644
--- a/apps/spreadsheeteditor/mobile/locale/en.json
+++ b/apps/spreadsheeteditor/mobile/locale/en.json
@@ -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.
Are you sure you want to continue?",
+ "txtWarnUrl": "Clicking this link can be harmful to your device and data. This location may be unsafe:
{0}
Are you sure you want to continue?",
"warnMergeLostData": "Only the data from the upper-left cell will remain in the merged cell.
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.
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.",
diff --git a/apps/spreadsheeteditor/mobile/src/controller/ContextMenu.jsx b/apps/spreadsheeteditor/mobile/src/controller/ContextMenu.jsx
index 8e8b2e411b..861415491f 100644
--- a/apps/spreadsheeteditor/mobile/src/controller/ContextMenu.jsx
+++ b/apps/spreadsheeteditor/mobile/src/controller/ContextMenu.jsx
@@ -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();
}
}
diff --git a/apps/spreadsheeteditor/mobile/src/controller/Main.jsx b/apps/spreadsheeteditor/mobile/src/controller/Main.jsx
index 44f70ede99..537455eb3c 100644
--- a/apps/spreadsheeteditor/mobile/src/controller/Main.jsx
+++ b/apps/spreadsheeteditor/mobile/src/controller/Main.jsx
@@ -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;
diff --git a/apps/visioeditor/embed/js/ApplicationController.js b/apps/visioeditor/embed/js/ApplicationController.js
index b9ec54fc4e..0678d75506 100644
--- a/apps/visioeditor/embed/js/ApplicationController.js
+++ b/apps/visioeditor/embed/js/ApplicationController.js
@@ -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.
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.
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:
%1
Are you sure you want to continue?',
txtYes:'Yes',
txtNo: 'No'
}
diff --git a/apps/visioeditor/embed/locale/en.json b/apps/visioeditor/embed/locale/en.json
index 3cd7faffe8..b3be8903ca 100644
--- a/apps/visioeditor/embed/locale/en.json
+++ b/apps/visioeditor/embed/locale/en.json
@@ -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.
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:
%1
Are you sure you want to continue?",
"VE.ApplicationController.txtPage": "Page",
"VE.ApplicationController.txtPressLink": "Click the link to open it",
"VE.ApplicationController.txtYes": "Yes",
diff --git a/apps/visioeditor/main/app/controller/DocumentHolder.js b/apps/visioeditor/main/app/controller/DocumentHolder.js
index f5423e4e91..0a4a96b87a 100644
--- a/apps/visioeditor/main/app/controller/DocumentHolder.js
+++ b/apps/visioeditor/main/app/controller/DocumentHolder.js
@@ -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);
diff --git a/apps/visioeditor/main/locale/en.json b/apps/visioeditor/main/locale/en.json
index 05a84f5778..4ddc82dba4 100644
--- a/apps/visioeditor/main/locale/en.json
+++ b/apps/visioeditor/main/locale/en.json
@@ -206,7 +206,7 @@
"VE.Controllers.Main.errorKeyExpire": "Key descriptor expired",
"VE.Controllers.Main.errorLoadingFont": "Fonts are not loaded.
Please contact your Document Server administrator.",
"VE.Controllers.Main.errorPasswordIsNotCorrect": "The password you supplied is not correct.
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.
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:
{0}
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",
diff --git a/apps/visioeditor/mobile/locale/en.json b/apps/visioeditor/mobile/locale/en.json
index 123f96aa79..ccd739a763 100644
--- a/apps/visioeditor/mobile/locale/en.json
+++ b/apps/visioeditor/mobile/locale/en.json
@@ -30,7 +30,7 @@
"ContextMenu": {
"menuCancel": "Cancel",
"textOk": "Ok",
- "txtWarnUrl": "Clicking this link can be harmful to your device and data.
Are you sure you want to continue?"
+ "txtWarnUrl": "Clicking this link can be harmful to your device and data. This location may be unsafe:
{0}
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.
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.",
diff --git a/apps/visioeditor/mobile/src/controller/ContextMenu.jsx b/apps/visioeditor/mobile/src/controller/ContextMenu.jsx
index 5ed6dc7da5..d1d53d8017 100644
--- a/apps/visioeditor/mobile/src/controller/ContextMenu.jsx
+++ b/apps/visioeditor/mobile/src/controller/ContextMenu.jsx
@@ -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();
}
}