dns_provider ui

This commit is contained in:
Curtis Castrapel
2018-04-27 11:18:41 -07:00
parent c5cb01bd33
commit 532872b3c6
10 changed files with 228 additions and 42 deletions

View File

@ -5,20 +5,12 @@ angular.module('lemur')
.controller('DnsProviderCreateController', function ($scope, $uibModalInstance, PluginService, DnsProviderService, LemurRestangular, toaster) {
$scope.dns_provider = LemurRestangular.restangularizeElement(null, {}, 'dns_providers');
PluginService.getByName('acme-issuer').then(function (acme) {
$scope.acme = acme;
});
PluginService.getByType('dns_provider').then(function (plugins) {
$scope.plugins = plugins;
});
PluginService.getByType('export').then(function (plugins) {
$scope.exportPlugins = plugins;
DnsProviderService.getDnsProviderOptions().then(function(res) {
$scope.options = res;
});
$scope.save = function (dns_provider) {
DnsProviderService.create(dns_provider.then(
DnsProviderService.create(dns_provider).then(
function () {
toaster.pop({
type: 'success',
@ -35,7 +27,7 @@ angular.module('lemur')
directiveData: response.data,
timeout: 100000
});
}));
});
};
$scope.cancel = function () {
@ -48,14 +40,6 @@ angular.module('lemur')
DnsProviderApi.get(editId).then(function (dns_provider) {
$scope.dns_provider = dns_provider;
PluginService.getByName('acme-issuer').then(function (acme) {
$scope.acme = acme;
_.each($scope.acme, function (opts) {
console.log(opts);
});
});
});
$scope.save = function (dns_provider) {

View File

@ -31,11 +31,11 @@
Provider Type
</label>
<div class="col-sm-10">
<select class="form-control" ng-model="dns_provider.provider_type" ng-options="plugin for plugin in ['route53', 'cloudflare']"
<select class="form-control" ng-model="dns_provider.provider_type" ng-options="item.name for item in options"
required></select>
</div>
</div>
<div class="form-group" ng-repeat="item in dns_provider.plugin.pluginOptions">
<div class="form-group" ng-repeat="item in dns_provider.provider_type.requirements">
<ng-form name="subForm" class="form-horizontal" role="form" novalidate>
<div ng-class="{'has-error': subForm.sub.$invalid, 'has-success': !subForm.sub.$invalid&&subForm.sub.$dirty}">
<label class="control-label col-sm-2">

View File

@ -3,7 +3,12 @@ angular.module('lemur')
.service('DnsProviderApi', function (LemurRestangular) {
return LemurRestangular.all('dns_providers');
})
.service('DnsProviderService', function ($location, DnsProviderApi, PluginService, DnsProviders) {
.service('DnsProviderOptions', function (LemurRestangular) {
return LemurRestangular.all('dns_provider_options');
})
.service('DnsProviderService', function ($location, DnsProviderApi, PluginService, DnsProviders, DnsProviderOptions) {
var DnsProviderService = this;
DnsProviderService.findDnsProvidersByName = function (filterValue) {
return DnsProviderApi.getList({'filter[label]': filterValue})
@ -16,6 +21,10 @@ angular.module('lemur')
return DnsProviders.get();
};
DnsProviderService.getDnsProviderOptions = function () {
return DnsProviderOptions.getList();
};
DnsProviderService.create = function (dns_provider) {
return DnsProviderApi.post(dns_provider);
};