duplicati/Duplicati/Server/webroot/ngax/scripts/controllers/DialogController.js
2024-08-27 09:59:12 +02:00

35 lines
1.1 KiB
JavaScript

backupApp.controller('DialogController', function($scope, DialogService, gettextCatalog) {
$scope.state = DialogService.watch($scope);
function showTooltip(elem, msg) {
elem.addEventListener('mouseleave', function(e) {
e.currentTarget.setAttribute('class', 'button');
e.currentTarget.removeAttribute('aria-label');
});
elem.setAttribute('class', 'button tooltipped tooltipped-w');
elem.setAttribute('aria-label', msg);
}
$scope.onCopySuccess = function(e) {
e.clearSelection();
showTooltip(e.trigger, gettextCatalog.getString('Copied!'));
};
$scope.onCopyError = function(e) {
showTooltip(e.trigger, gettextCatalog.getString('Copy failed. Please manually copy the URL'));
};
$scope.onButtonClick = function(index) {
var cur = $scope.state.CurrentItem;
var input = cur.textarea;
if (cur.validate && !cur.validate(index, input, cur))
return;
DialogService.dismissCurrent();
if (cur.callback)
cur.callback(index, input, cur);
};
});