add namecheap dns provider to dns setup

This commit is contained in:
Johannes Zellner
2019-01-22 16:45:48 +01:00
parent 353517f9c6
commit 778ea0b720
2 changed files with 19 additions and 1 deletions
+8 -1
View File
@@ -1,6 +1,7 @@
'use strict';
/* global tld */
/* global tld:false */
/* global angular:false */
// create main application module
var app = angular.module('Application', ['angular-md5', 'ui-notification', 'ui.bootstrap']);
@@ -60,6 +61,7 @@ app.controller('SetupDNSController', ['$scope', '$http', '$timeout', 'Client', f
{ name: 'GoDaddy', value: 'godaddy' },
{ name: 'Google Cloud DNS', value: 'gcdns' },
{ name: 'Name.com', value: 'namecom' },
{ name: 'Namecheap', value: 'namecheap' },
{ name: 'Wildcard', value: 'wildcard' },
{ name: 'Manual (not recommended)', value: 'manual' },
{ name: 'No-op (only for development)', value: 'noop' }
@@ -80,6 +82,8 @@ app.controller('SetupDNSController', ['$scope', '$http', '$timeout', 'Client', f
godaddyApiSecret: '',
nameComUsername: '',
nameComToken: '',
namecheapUsername: '',
namecheapApiKey: '',
provider: 'route53',
zoneName: '',
tlsConfig: {
@@ -162,6 +166,9 @@ app.controller('SetupDNSController', ['$scope', '$http', '$timeout', 'Client', f
} else if (provider === 'namecom') {
data.username = $scope.dnsCredentials.nameComUsername;
data.token = $scope.dnsCredentials.nameComToken;
} else if (provider === 'namecheap') {
data.apiKey = $scope.dnsCredentials.namecheapApiKey;
data.username = $scope.dnsCredentials.namecheapUsername;
}
var tlsConfig = {
+11
View File
@@ -147,6 +147,17 @@
<input type="text" class="form-control" ng-model="dnsCredentials.nameComToken" name="nameComToken" placeholder="Name.com API Token" ng-required="dnsCredentials.provider === 'namecom'" ng-disabled="dnsCredentials.busy">
</div>
<!-- Namecheap -->
<div class="form-group" ng-class="{ 'has-error': dnsCredentialsForm.namecheapUsername.$dirty && dnsCredentialsForm.namecheapUsername.$invalid }" ng-show="dnsCredentials.provider === 'namecheap'">
<label class="control-label">Name.com Username</label>
<input type="text" class="form-control" ng-model="dnsCredentials.namecheapUsername" name="namecheapUsername" placeholder="Namecheap Username" ng-required="dnsCredentials.provider === 'namecheap'" ng-disabled="dnsCredentials.busy">
</div>
<div class="form-group" ng-class="{ 'has-error': dnsCredentialsForm.namecheapApiKey.$dirty && dnsCredentialsForm.namecheapApiKey.$invalid }" ng-show="dnsCredentials.provider === 'namecheap'">
<label class="control-label">API Key <sup><a href="https://ap.www.namecheap.com/settings/tools/apiaccess/" class="help" target="_blank"><i class="fa fa-question-circle"></i></a></sup></label>
<p class="small text-info" ng-show="dnsCredentials.provider === 'namecheap'">
<input type="text" class="form-control" ng-model="dnsCredentials.namecheapApiKey" name="namecheapApiKey" placeholder="Namecheap API Key" ng-required="dnsCredentials.provider === 'namecheap'" ng-disabled="dnsCredentials.busy">
</div>
<!-- Wildcard -->
<p class="small text-info" ng-show="dnsCredentials.provider === 'wildcard'">
<span>Setup A records for <b>*.{{ dnsCredentials.domain || 'example.com' }}</b> and <b>{{ dnsCredentials.domain || 'example.com' }}</b> to this server's IP.</span>