diff --git a/webadmin/src/views/certs.html b/webadmin/src/views/certs.html index 301e4ed5a..af8d8f293 100644 --- a/webadmin/src/views/certs.html +++ b/webadmin/src/views/certs.html @@ -1,3 +1,33 @@ + +

Domain & Certificates

@@ -18,7 +48,7 @@ - + @@ -26,31 +56,9 @@ - +
Access Key Id{{ dnsConfig.accessKeyId }}{{ dnsConfig.accessKeyId || 'unset' }}
Secret Access Key
Done    
- -
-

The security credentials must have full Route53 access.

-
-
-
{{ dnsCredentials.error }}
- -
- - -
-
- - -
- - Collapse - - -
-
-
diff --git a/webadmin/src/views/certs.js b/webadmin/src/views/certs.js index b0b4fec51..68ef26a8e 100644 --- a/webadmin/src/views/certs.js +++ b/webadmin/src/views/certs.js @@ -4,6 +4,7 @@ angular.module('Application').controller('CertsController', ['$scope', '$locatio Client.onReady(function () { if (!Client.getUserInfo().admin) $location.path('/'); }); $scope.config = Client.getConfig(); + $scope.dnsConfig = null; $scope.defaultCert = { error: null, @@ -29,7 +30,6 @@ angular.module('Application').controller('CertsController', ['$scope', '$locatio error: null, success: false, busy: false, - formVisible: false, accessKeyId: '', secretAccessKey: '', provider: 'route53' @@ -95,11 +95,6 @@ angular.module('Application').controller('CertsController', ['$scope', '$locatio }); }; - $scope.hideDnsCredentialsForm = function () { - $('#collapseDnsCredentialsForm').collapse('hide'); - $scope.dnsCredentials.formVisible = false; - }; - $scope.setDnsCredentials = function () { $scope.dnsCredentials.busy = true; $scope.dnsCredentials.error = null; @@ -120,28 +115,35 @@ angular.module('Application').controller('CertsController', ['$scope', '$locatio $scope.dnsConfig.accessKeyId = $scope.dnsCredentials.accessKeyId; $scope.dnsConfig.secretAccessKey = $scope.dnsCredentials.secretAccessKey; - $scope.dnsCredentials.accessKeyId = ''; - $scope.dnsCredentials.secretAccessKey = ''; + $('#dnsCredentialsModal').modal('hide'); - $scope.hideDnsCredentialsForm(); + dnsCredentialsReset(); } $scope.dnsCredentials.busy = false; }); }; - $scope.showDnsCredentialsForm = function () { + function dnsCredentialsReset() { $scope.dnsCredentials.busy = false; $scope.dnsCredentials.success = false; $scope.dnsCredentials.error = null; + $scope.dnsCredentials.accessKeyId = ''; $scope.dnsCredentials.secretAccessKey = ''; + $scope.dnsCredentialsForm.$setPristine(); $scope.dnsCredentialsForm.$setUntouched(); - $scope.dnsCredentials.formVisible = true; - $('#collapseDnsCredentialsForm').collapse('show'); $('#dnsCredentialsAccessKeyId').focus(); + } + + $scope.showChangeDnsCredentials = function () { + dnsCredentialsReset(); + + $scope.dnsCredentials.accessKeyId = $scope.dnsConfig.accessKeyId; + + $('#dnsCredentialsModal').modal('show'); }; Client.onReady(function () { @@ -151,4 +153,11 @@ angular.module('Application').controller('CertsController', ['$scope', '$locatio $scope.dnsConfig = result; }); }); + + // setup all the dialog focus handling + ['dnsCredentialsModal'].forEach(function (id) { + $('#' + id).on('shown.bs.modal', function () { + $(this).find("[autofocus]:first").focus(); + }); + }); }]);