2017-01-05 11:02:43 +01:00
|
|
|
<!DOCTYPE html>
|
|
|
|
|
<html>
|
|
|
|
|
<head>
|
|
|
|
|
<meta charset="utf-8" />
|
|
|
|
|
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height" />
|
|
|
|
|
|
|
|
|
|
<title> Cloudron Setup </title>
|
|
|
|
|
|
|
|
|
|
<!-- Theme CSS -->
|
|
|
|
|
<link href="theme.css" rel="stylesheet">
|
|
|
|
|
|
|
|
|
|
<!-- Custom Fonts -->
|
|
|
|
|
<link href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css" rel="stylesheet" type="text/css">
|
|
|
|
|
|
|
|
|
|
<!-- jQuery-->
|
|
|
|
|
<script src="3rdparty/js/jquery.min.js"></script>
|
|
|
|
|
|
|
|
|
|
<!-- Bootstrap Core JavaScript -->
|
|
|
|
|
<script src="3rdparty/js/bootstrap.min.js"></script>
|
|
|
|
|
|
|
|
|
|
<!-- Angularjs scripts -->
|
|
|
|
|
<script src="3rdparty/js/angular.min.js"></script>
|
|
|
|
|
<script src="3rdparty/js/angular-loader.min.js"></script>
|
|
|
|
|
<script src="3rdparty/js/angular-md5.min.js"></script>
|
|
|
|
|
<script src="3rdparty/js/angular-ui-notification.min.js"></script>
|
|
|
|
|
<script src="3rdparty/js/autofill-event.js"></script>
|
|
|
|
|
|
|
|
|
|
<!-- Setup Application -->
|
|
|
|
|
<script src="js/setupdns.js"></script>
|
|
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
|
2017-01-05 11:53:45 +01:00
|
|
|
<body class="setup" ng-app="Application" ng-controller="SetupDNSController">
|
2017-01-05 11:02:43 +01:00
|
|
|
<div class="main-container ng-cloak" ng-show="initialized">
|
|
|
|
|
<div class="row">
|
|
|
|
|
<div class="col-md-6 col-md-offset-3">
|
|
|
|
|
<div class="card" style="max-width: none; padding: 20px;">
|
|
|
|
|
<div ng-show="busy">
|
|
|
|
|
<i class="fa fa-spinner fa-pulse fa-5x"></i>
|
|
|
|
|
</div>
|
2017-01-05 11:53:45 +01:00
|
|
|
<div ng-hide="busy">
|
2017-01-05 11:02:43 +01:00
|
|
|
<form name="dnsCredentialsForm" role="form" novalidate ng-submit="setDnsCredentials()" autocomplete="off">
|
|
|
|
|
<div class="row">
|
|
|
|
|
<div class="col-md-12 text-center">
|
|
|
|
|
<h1>Domain Setup</h1>
|
|
|
|
|
<h3>Specify the domain for your Cloudron</h3>
|
|
|
|
|
<p>Apps will be installed on subdomains of that domain.</p>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="row">
|
|
|
|
|
<div class="col-md-4 col-md-offset-4 text-center">
|
|
|
|
|
<p class="has-error text-center" ng-show="dnsCredentials.error">{{ dnsCredentials.error }}</p>
|
|
|
|
|
|
|
|
|
|
<div class="form-group" ng-class="{ 'has-error': dnsCredentialsForm.domain.$dirty && dnsCredentialsForm.domain.$invalid }">
|
|
|
|
|
<input type="text" class="form-control" ng-model="dnsCredentials.domain" name="domain" ng-minlength="4" ng-maxlength="128" placeholder="example.com" required autofocus>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="form-group" ng-show="dnsConfig.provider !== 'caas'">
|
|
|
|
|
<label class="control-label">DNS API Provider</label>
|
|
|
|
|
<select class="form-control" ng-model="dnsCredentials.provider" ng-options="a.value as a.name for a in dnsProvider">
|
|
|
|
|
</select>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<!-- Route53 -->
|
|
|
|
|
<div class="form-group" ng-class="{ 'has-error': dnsCredentialsForm.accessKeyId.$dirty && dnsCredentialsForm.accessKeyId.$invalid }" ng-show="dnsCredentials.provider === 'route53'">
|
|
|
|
|
<label class="control-label">Access Key Id</label>
|
|
|
|
|
<input type="text" class="form-control" ng-model="dnsCredentials.accessKeyId" name="accessKeyId" ng-minlength="16" ng-maxlength="32" ng-required="dnsCredentials.provider === 'route53'">
|
|
|
|
|
</div>
|
|
|
|
|
<div class="form-group" ng-class="{ 'has-error': dnsCredentialsForm.secretAccessKey.$dirty && dnsCredentialsForm.secretAccessKey.$invalid }" ng-show="dnsCredentials.provider === 'route53'">
|
|
|
|
|
<label class="control-label">Secret Access Key</label>
|
|
|
|
|
<input type="text" class="form-control" ng-model="dnsCredentials.secretAccessKey" name="secretAccessKey" ng-required="dnsCredentials.provider === 'route53'">
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<!-- DigitalOcean -->
|
|
|
|
|
<div class="form-group" ng-class="{ 'has-error': dnsCredentialsForm.digitalOceanToken.$dirty && dnsCredentialsForm.digitalOceanToken.$invalid }" ng-show="dnsCredentials.provider === 'digitalocean'">
|
|
|
|
|
<label class="control-label">API Token</label>
|
|
|
|
|
<input type="text" class="form-control" ng-model="dnsCredentials.digitalOceanToken" name="digitalOceanToken" ng-required="dnsCredentials.provider === 'digitalocean'">
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="row">
|
|
|
|
|
<div class="col-md-12 text-center">
|
|
|
|
|
<input type="submit" class="btn btn-primary" ng-disabled="dnsCredentialsForm.$invalid" value="Done"/>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</form>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|