
<html>
<head>
  <title>Dokku Setup</title>
  <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" />
  <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
</head>
<body>
  <div class="container" style="width: 640px;">
  <form id="form" role="form">
    <h1>Dokku Setup <small>v0.4.14</small></h1>
    <div class="form-group">
      <h3><small style="text-transform: uppercase;">Admin Access</small></h3>
      <label for="key">Public Key</label><br />
      <textarea class="form-control" name="keys" rows="7" id="key">ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDmfK8uxFLx7S2udWuwOP86hh4HoXPxJb2rb55KG16eZZVBM6o60AWR3Sf8UXFCeGAVZjLDlY1494UQQEBxQRo+KVFPbPHtfDA4mYGp0+5SLGfmGkBi2n3hgrLqWnoOqvParhWFiZ4Os3zN66/PahLe7vdWbsdkeyJP/ivXwM74s9lRiW7U0eQueIrBjjJvFxDX/8OLUT6y1fALUgw5ZQPa46DdvEZfH04dIGy2YuL86Kfvdjg7dooV3rruwkyEkFdTqPW4HUZFYQsvoD37TvJoc/R+ERS/aObYr45y55sAjQsn1mUVBLqDWMk6JKE1O0SX9YkgAlREl35kIX66pvsLIaouPo+3/K4U8S0A+LkaszE17vY2Akr52aYPUrFcGVR4Yoy7wUYyLxxszWWbBRETNw5lKT+LihfEM7un04NxSXMLYEuqcASPyAVXzRt68nsmbptMQWz5WAd3T0yG54OEELOPqz/vWVpPRGuadkoYGLPHtQNjlOEcXrz1g1Kj9xZFJYwR8JAhgu5m4jfD2H6dj+1tdATulVCkspRUrhZM831QS7oyEAMdBIfb4xpFvmFtxZCbp7p8rWJTjNRdbHdxPlFLNSq82ZYJ39+ZSVf2Ko6gzxZnU/FQlWX9i3gdmmCiXbysELRidDB/mIDIzYBWADd2J5PHyQdXkf59+KcFHw== jonmagic@gmail.com</textarea>
    </div>
    <div class="form-group">
      <h3><small style="text-transform: uppercase;">Hostname Configuration</small></h3>
      <div class="form-group">
        <label for="hostname">Hostname</label>
        <input class="form-control" type="text" id="hostname" name="hostname" value="192.241.203.205
" />
      </div>
      <div class="checkbox">
        <label><input id="vhost" name="vhost" type="checkbox" value="true"> Use <abbr title="Nginx will be run on port 80 and backend to your apps based on hostname">virtualhost naming</abbr> for apps</label>
      </div>
      <p>Your app URLs will look like:</p>
      <pre id="example">http://hostname:port</pre>
    </div>
    <button type="button" onclick="setup()" class="btn btn-primary">Finish Setup</button> <span style="padding-left: 20px;" id="result"></span>
  </form>
  </div>
  <div id="error-output"></div>
  <script>
    function setup() {
      if ($.trim($("#key").val()) == "") {
        alert("Your admin public key cannot be blank.")
        return
      }
      if ($.trim($("#hostname").val()) == "") {
        alert("Your hostname cannot be blank.")
        return
      }
      data = $("#form").serialize()
      $("input,textarea,button").prop("disabled", true);
      $.post('/setup', data)
        .done(function() {
          $("#result").html("Success!")
          window.location.href = "http://progrium.viewdocs.io/dokku/application-deployment";
        })
        .fail(function(data) {
          $("#result").html("Something went wrong...")
          $("#error-output").html(data.responseText)
        });
    }
    function update() {
      if ($("#vhost").is(":checked") && $("#hostname").val().match(/^(\d{1,3}\.){3}\d{1,3}$/)) {
        alert("In order to use virtualhost naming, the hostname must not be an IP but a valid domain name.")
        $("#vhost").prop('checked', false);
      }
      if ($("#vhost").is(':checked')) {
        $("#example").html("http://&lt;app-name&gt;."+$("#hostname").val())
      } else {
        $("#example").html("http://"+$("#hostname").val()+":&lt;app-port&gt;")
      }
    }
    $("#vhost").change(update);
    $("#hostname").change(update);
    update();
  </script>
</body>
</html>
