Add separate file for dns setup

This commit is contained in:
Johannes Zellner
2017-01-05 11:02:43 +01:00
parent 1764567e1f
commit 92c92db595
2 changed files with 220 additions and 0 deletions

View File

@@ -0,0 +1,74 @@
'use strict';
// create main application module
var app = angular.module('Application', ['angular-md5', 'ui-notification']);
app.controller('SetupController', ['$scope', '$http', 'Client', function ($scope, $http, Client) {
$scope.initialized = false;
$scope.busy = false;
$scope.error = null;
$scope.provider = '';
$scope.showDNSSetup = false;
$scope.dnsProvider = [
{ name: 'Manual/Wildcard', value: 'manual' },
{ name: 'Wildcard', value: 'wildcard' },
{ name: 'No-op', value: 'noop' },
{ name: 'AWS Route53', value: 'route53' },
{ name: 'Digital Ocean', value: 'digitalocean' }
];
$scope.dnsCredentials = {
error: null,
busy: false,
domain: '',
accessKeyId: '',
secretAccessKey: '',
digitalOceanToken: '',
provider: 'route53'
};
$scope.setDNSCredentials = function () {
$scope.busy = true;
var data = {
domain: $scope.dnsCredentials.domain,
provider: $scope.dnsCredentials.provider,
accessKeyId: $scope.dnsCredentials.accessKeyId,
secretAccessKey: $scope.dnsCredentials.secretAccessKey,
token: $scope.dnsCredentials.digitalOceanToken
};
// special case the wildcard provider
if (data.provider === 'wildcard') {
data.provider = 'manual';
data.wildcard = true;
}
Client.setDnsConfig(data, function (error) {
if (error) {
$scope.busy = false;
$scope.dnsCredentials.error = error.message;
return;
}
setTimeout(function () {
// TODO wait until domain is propagated and cert got acquired
window.location.href = 'https://my.' + $scope.dnsCredentials.domain;
}, 5000);
});
};
Client.getStatus(function (error, status) {
if (error) {
window.location.href = '/error.html';
return;
}
if (status.activated || status.provider === 'caas') {
window.location.href = '/';
return;
}
$scope.provider = status.provider;
$scope.initialized = true;
});
}]);