Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/zabbix/zabbix.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'ui/js/common.js')
-rw-r--r--ui/js/common.js42
1 files changed, 37 insertions, 5 deletions
diff --git a/ui/js/common.js b/ui/js/common.js
index cd696caa9e4..bad37ea49a6 100644
--- a/ui/js/common.js
+++ b/ui/js/common.js
@@ -361,7 +361,16 @@ function PopUp(action, parameters, {
.then(function(resp) {
if ('error' in resp) {
overlay.setProperties({
- content: makeMessageBox('bad', resp.error.messages, resp.error.title, false)
+ title: resp.header !== undefined ? resp.header : '',
+ content: makeMessageBox('bad', resp.error.messages, resp.error.title, false),
+ buttons: [
+ {
+ 'title': t('Cancel'),
+ 'class': 'btn-alt js-cancel',
+ 'cancel': true,
+ 'action': function() {}
+ }
+ ]
});
}
else {
@@ -401,6 +410,26 @@ function PopUp(action, parameters, {
overlay.recoverFocus();
overlay.containFocus();
+ })
+ .fail((resp) => {
+ const error = resp.responseJSON !== undefined && resp.responseJSON.error !== undefined
+ ? resp.responseJSON.error
+ : {title: t('Unexpected server error.')};
+
+ overlay.setProperties({
+ content: makeMessageBox('bad', error.messages, error.title, false),
+ buttons: [
+ {
+ 'title': t('Cancel'),
+ 'class': 'btn-alt js-cancel',
+ 'cancel': true,
+ 'action': function() {}
+ }
+ ]
+ });
+
+ overlay.recoverFocus();
+ overlay.containFocus();
});
addToOverlaysStack(overlay);
@@ -522,15 +551,18 @@ function closeDialogHandler(event) {
* @return {object|undefined|null} Overlay object, if found.
*/
function removeFromOverlaysStack(dialogueid, return_focus) {
- var overlay = null;
-
if (return_focus !== false) {
return_focus = true;
}
- overlay = overlays_stack.removeById(dialogueid);
+ const overlay = overlays_stack.removeById(dialogueid);
+
if (overlay && return_focus) {
- jQuery(overlay.element).focus();
+ if (overlay.element !== undefined) {
+ const element = overlay.element instanceof jQuery ? overlay.element[0] : overlay.element;
+
+ element.focus({preventScroll: true});
+ }
}
// Remove event listener.