mirror of https://github.com/moparisthebest/mail
67 lines
1.7 KiB
JavaScript
67 lines
1.7 KiB
JavaScript
'use strict';
|
|
|
|
var axe = require('axe-logger');
|
|
|
|
var DialogCtrl = function($scope, $q, dialog) {
|
|
|
|
var callback;
|
|
|
|
//
|
|
// Set dialog disply functions
|
|
//
|
|
|
|
dialog.displayInfo = function(options) {
|
|
return $q(function(resolve) {
|
|
setOptions(options);
|
|
resolve();
|
|
});
|
|
};
|
|
|
|
dialog.displayError = function(options) {
|
|
return $q(function(resolve) {
|
|
if (options) {
|
|
axe.error((options.errMsg || options.message) + (options.stack ? ('\n' + options.stack) : ''));
|
|
|
|
setOptions(options);
|
|
$scope.title = options.title || 'Error';
|
|
$scope.showBugReporter = (typeof options.showBugReporter !== 'undefined' ? options.showBugReporter : !options.title); // if title is set, presume it's not an error by default
|
|
}
|
|
|
|
resolve();
|
|
});
|
|
};
|
|
|
|
dialog.displayConfirm = function(options) {
|
|
return $q(function(resolve) {
|
|
setOptions(options);
|
|
resolve();
|
|
});
|
|
};
|
|
|
|
function setOptions(options) {
|
|
$scope.open = true;
|
|
$scope.title = options.title;
|
|
$scope.message = options.errMsg || options.message;
|
|
$scope.faqLink = options.faqLink;
|
|
$scope.positiveBtnStr = options.positiveBtnStr || 'Ok';
|
|
$scope.negativeBtnStr = options.negativeBtnStr || 'Cancel';
|
|
$scope.showNegativeBtn = options.showNegativeBtn || false;
|
|
|
|
callback = options.callback;
|
|
}
|
|
|
|
//
|
|
// Scope functions
|
|
//
|
|
|
|
$scope.confirm = function(ok) {
|
|
$scope.open = false;
|
|
|
|
if (callback) {
|
|
callback(ok);
|
|
}
|
|
callback = undefined;
|
|
};
|
|
};
|
|
|
|
module.exports = DialogCtrl; |