diff --git a/apps/documenteditor/embed/js/ApplicationController.js b/apps/documenteditor/embed/js/ApplicationController.js
index b51279b9e..e2aa0592d 100644
--- a/apps/documenteditor/embed/js/ApplicationController.js
+++ b/apps/documenteditor/embed/js/ApplicationController.js
@@ -43,7 +43,7 @@ DE.ApplicationController = new(function(){
labelDocName,
appOptions = {},
btnSubmit,
- _submitFail, $submitedTooltip;
+ _submitFail, $submitedTooltip, $requiredTooltip;
// Initialize analytics
// -------------------------
@@ -166,6 +166,7 @@ DE.ApplicationController = new(function(){
_submitFail = false;
$submitedTooltip && $submitedTooltip.hide();
btnSubmit.attr({disabled: true});
+ btnSubmit.css("pointer-events", "none");
break;
default:
text = me.waitText;
@@ -181,12 +182,15 @@ DE.ApplicationController = new(function(){
function onLongActionEnd(type, id){
if (id==Asc.c_oAscAsyncAction['Submit']) {
btnSubmit.removeAttr('disabled');
- if (!$submitedTooltip) {
- $submitedTooltip = $('
' + me.textSubmited + '
');
- $(document.body).append($submitedTooltip);
- $submitedTooltip.on('click', function() {$submitedTooltip.hide();});
+ btnSubmit.css("pointer-events", "auto");
+ if (!_submitFail) {
+ if (!$submitedTooltip) {
+ $submitedTooltip = $('
' + me.textSubmited + '
');
+ $(document.body).append($submitedTooltip);
+ $submitedTooltip.on('click', function() {$submitedTooltip.hide();});
+ }
+ $submitedTooltip.show();
}
- !_submitFail && $submitedTooltip.show();
}
hideMask();
}
@@ -251,6 +255,14 @@ DE.ApplicationController = new(function(){
common.utils.dialogPrint(url, api);
}
+ function onFillRequiredFields() {
+ if (btnSubmit) {
+ btnSubmit.removeAttr('disabled');
+ btnSubmit.css("pointer-events", "auto");
+ }
+ $requiredTooltip && $requiredTooltip.hide();
+ }
+
function hidePreloader() {
$('#loading-mask').fadeOut('slow');
}
@@ -326,6 +338,7 @@ DE.ApplicationController = new(function(){
api.asc_registerCallback('asc_onDownloadUrl', onDownloadUrl);
api.asc_registerCallback('asc_onPrint', onPrint);
api.asc_registerCallback('asc_onPrintUrl', onPrintUrl);
+ api.asc_registerCallback('asc_onFillRequiredFields', onFillRequiredFields);
Common.Gateway.on('processmouse', onProcessMouse);
Common.Gateway.on('downloadas', onDownloadAs);
@@ -406,6 +419,37 @@ DE.ApplicationController = new(function(){
$pagenum.focus();
});
+ // TODO: add asc_hasRequiredFields to sdk
+ /*
+ if (appOptions.canSubmitForms && api.asc_hasRequiredFields()) {
+ var sgroup = $('#id-submit-group');
+ btnSubmit.attr({disabled: true});
+ btnSubmit.css("pointer-events", "none");
+ if (!common.localStorage.getItem("de-embed-hide-submittip")) {
+ var offset = btnSubmit.offset();
+ $requiredTooltip = $('
');
+ $(document.body).append($requiredTooltip);
+ $requiredTooltip.css({top : offset.top + btnSubmit.height() + 'px', left: offset.left + btnSubmit.outerWidth()/2 - $requiredTooltip.outerWidth() + 'px'});
+ $requiredTooltip.find('.close-div').on('click', function() {
+ $requiredTooltip.hide();
+ common.localStorage.setItem("de-embed-hide-submittip", 1);
+ sgroup.attr('data-toggle', 'tooltip');
+ sgroup.tooltip({
+ title : me.textRequired,
+ placement : 'bottom'
+ });
+ });
+ $requiredTooltip.show();
+ } else {
+ sgroup.attr('data-toggle', 'tooltip');
+ sgroup.tooltip({
+ title : me.textRequired,
+ placement : 'bottom'
+ });
+ }
+ }
+ */
+
var documentMoveTimer;
var ismoved = false;
$(document).mousemove(function(event){
@@ -757,6 +801,8 @@ DE.ApplicationController = new(function(){
errorSubmit: 'Submit failed.',
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.',
textGuest: 'Guest',
- textAnonymous: 'Anonymous'
+ textAnonymous: 'Anonymous',
+ textRequired: 'Fill all required fields to send form.',
+ textGotIt: 'Got it'
}
})();
\ No newline at end of file
diff --git a/apps/documenteditor/embed/locale/en.json b/apps/documenteditor/embed/locale/en.json
index 6c9cff05d..ba2a995f1 100644
--- a/apps/documenteditor/embed/locale/en.json
+++ b/apps/documenteditor/embed/locale/en.json
@@ -31,6 +31,8 @@
"DE.ApplicationController.unknownErrorText": "Unknown error.",
"DE.ApplicationController.unsupportedBrowserErrorText": "Your browser is not supported.",
"DE.ApplicationController.waitText": "Please, wait...",
+ "DE.ApplicationController.textRequired": "Fill all required fields to send form.",
+ "DE.ApplicationController.textGotIt": "Got it",
"DE.ApplicationView.txtDownload": "Download",
"DE.ApplicationView.txtDownloadDocx": "Download as docx",
"DE.ApplicationView.txtDownloadPdf": "Download as pdf",