Landing: Implement registration success/failure flows

Change-Id: I0b48cfb0c0b35bfe7c71b13f8953951821fb3958
diff --git a/apps/landing/layouts/_default/baseof.html b/apps/landing/layouts/_default/baseof.html
index 153bd09..dd82ad4 100644
--- a/apps/landing/layouts/_default/baseof.html
+++ b/apps/landing/layouts/_default/baseof.html
@@ -3,9 +3,12 @@
 <head>
     <meta charset="UTF-8">
     <meta name="viewport" content="width=device-width, initial-scale=1.0">
-    <link rel="stylesheet" href="/styles/style.css?v=0.0.2">
+    <link rel="stylesheet" href="/styles/style.css?v=0.0.6">
     <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/hack-font/3.3.0/web/hack.min.css">
     <title>dodo</title>
+    <script>
+        apiBaseURL = "{{ .Site.Params.apiBaseURL }}";
+    </script>
 </head>
 <body>
     <div class="container">
diff --git a/apps/landing/layouts/_default/list.html b/apps/landing/layouts/_default/list.html
index 471e61a..c92d5c5 100644
--- a/apps/landing/layouts/_default/list.html
+++ b/apps/landing/layouts/_default/list.html
@@ -30,5 +30,6 @@
 <div class="footer-form">
     {{ partial "register-form.html" . }}
 </div>
-<script src="/js/main.js?v=0.0.2"></script>
+<script src="/js/main.js?v=0.0.5"></script>
+<script src="/js/register.js?v=0.0.3"></script>
 {{ end }}
diff --git a/apps/landing/layouts/partials/register-form.html b/apps/landing/layouts/partials/register-form.html
index 3f35896..03e08c4 100644
--- a/apps/landing/layouts/partials/register-form.html
+++ b/apps/landing/layouts/partials/register-form.html
@@ -1,24 +1,24 @@
-<div class="form-container-footer">
-    <form id="register-form" method="POST" action="/register" class="form-group-footer" onsubmit="return register()">
-		<label>
-			domain
-			<select id="network" name="domain">
+<div id="form-container" class="form-container-footer">
+	<form id="register-form" method="POST" action="/register" class="form-group-footer" onsubmit="return register()">
+		<h3 id="error-message"></h3>
+		<div class="reg-inputs">
+			<select id="network" name="domain" required>
+				<option value="" disabled selected>domain</option>
 				<option value="dodoapp.xyz">dodoapp.xyz</option>
 			</select>
-		</label>
-		<label>
-			subdomain
-			<input id="subdomain" type="text" name="subdomain" />
-		</label>
-		<label>
-			application type
-			<select id="app-type" name="app-type">
+			<input id="subdomain" type="text" name="subdomain" placeholder="subdomain" required>
+			<select id="app-type" name="app-type" required>
+				<option value="" disabled selected>application type</option>
 			</select>
-		</label>
-        <label>
-			ssh public key
-			<textarea id="public-key" name="public-key" rows="2" required></textarea>
-		</label>
-        <button type="submit">create first app</button>
-    </form>
+		</div>
+		<textarea id="public-key" name="public-key" rows="2" placeholder="ssh public key"></textarea>
+		<button id="create-app-button" type="submit">
+			<svg id="spinner" class="animated-spinner" fill="none" height="18" width="18" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" style="display: none;">
+				<g>
+					<circle cx="12" cy="12" r="10" fill="none" stroke="currentColor" stroke-width="4" />
+				</g>
+			</svg>
+			create first app
+		</button>
+	</form>
 </div>
diff --git a/apps/landing/layouts/register/single.html b/apps/landing/layouts/register/single.html
index f576e41..7d872a5 100644
--- a/apps/landing/layouts/register/single.html
+++ b/apps/landing/layouts/register/single.html
@@ -4,4 +4,5 @@
         {{ partial "register-form.html" . }}
     </div>
 </div>
+<script src="/js/register.js?v=0.0.3"></script>
 {{ end }}