Authentication untested.
This commit is contained in:
1
resources/oauth/error.htx
Normal file
1
resources/oauth/error.htx
Normal file
@@ -0,0 +1 @@
|
||||
<div class="illustration"><i class="icon ion-close-circled"></i></div><p class="auth">@@@</p>
|
||||
1
resources/oauth/footer.htx
Normal file
1
resources/oauth/footer.htx
Normal file
@@ -0,0 +1 @@
|
||||
</form></div><script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/js/bootstrap.bundle.min.js"></script></body></html>
|
||||
1
resources/oauth/header.htx
Normal file
1
resources/oauth/header.htx
Normal file
@@ -0,0 +1 @@
|
||||
<!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Stalwart JMAP - Authorization</title><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/css/bootstrap.min.css"><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/ionicons/2.0.1/css/ionicons.min.css"><style>html, body{height: 100%; margin: 0;}.login-clean{background: #f1f7fc; padding: 80px 0; display: flex; flex-flow: column; height: 100%;}.login-clean form{max-width: 320px; width: 90%; margin: 0 auto; background-color: #ffffff; padding: 40px; border-radius: 4px; color: #505e6c; box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.1);}.login-clean .illustration{text-align: center; padding: 0 0 0px; font-size: 70px; color: rgb(244, 71, 107);}.login-clean form .form-control{background: #f7f9fc; border: none; border-bottom: 1px solid #dfe7f1; border-radius: 0; box-shadow: none; outline: none; color: inherit; text-indent: 8px; height: 42px;}.login-clean form .btn-primary{background: #f4476b; border: none; border-radius: 4px; padding: 11px; box-shadow: none; margin-top: 26px; text-shadow: none; outline: none !important;}.login-clean form .btn-primary:hover, .login-clean form .btn-primary:active{background: #eb3b60;}.login-clean form .btn-primary:active{transform: translateY(1px);}.login-clean form .auth{display: block; text-align: center; font-size: 14px; color: #6f7a85; opacity: 0.9; padding: 0 0 10px; text-decoration: none;}</style></head><body><div class="login-clean"><form method="post" action="@@@"><h2 class="sr-only">Stalwart JMAP</h2>
|
||||
1
resources/oauth/login.htx
Normal file
1
resources/oauth/login.htx
Normal file
@@ -0,0 +1 @@
|
||||
<div class="form-group"><input class="form-control" type="text" name="email" placeholder="Email"></div><div class="form-group"><input class="form-control" type="password" name="password" placeholder="Password"></div><div class="form-group"><button class="btn btn-primary btn-block" type="submit">Authorize</button></div><a class="auth" style="font-size: 12px;" href="@@@">Cancel</a>
|
||||
1
resources/oauth/login_code.htx
Normal file
1
resources/oauth/login_code.htx
Normal file
@@ -0,0 +1 @@
|
||||
<div class="form-group"><input class="form-control" type="text" name="code" value="@@@" placeholder="Enter code"></div>
|
||||
1
resources/oauth/login_code_hidden.htx
Normal file
1
resources/oauth/login_code_hidden.htx
Normal file
@@ -0,0 +1 @@
|
||||
<input type="hidden" name="code" value="@@@">
|
||||
1
resources/oauth/login_hdr_client.htx
Normal file
1
resources/oauth/login_hdr_client.htx
Normal file
@@ -0,0 +1 @@
|
||||
<div class="illustration"><i class="icon ion-locked"></i></div><p class="auth">Authorize client to access your <b>Stalwart JMAP</b> account</p>
|
||||
1
resources/oauth/login_hdr_device.htx
Normal file
1
resources/oauth/login_hdr_device.htx
Normal file
@@ -0,0 +1 @@
|
||||
<div class="illustration"><i class="icon ion-locked"></i></div><p class="auth">Authorize device to access your <b>Stalwart JMAP</b> account</p>
|
||||
1
resources/oauth/login_hdr_failed.htx
Normal file
1
resources/oauth/login_hdr_failed.htx
Normal file
@@ -0,0 +1 @@
|
||||
<div class="illustration"><i class="icon ion-close-circled"></i></div><p class="auth">Incorrect username or password, please try again.</p>
|
||||
1
resources/oauth/login_success.htx
Normal file
1
resources/oauth/login_success.htx
Normal file
@@ -0,0 +1 @@
|
||||
<div class="illustration"><i class="icon ion-unlocked"></i></div><p class="auth"><b>Authentication successful</b><br />You can now close this window.</p>
|
||||
125
resources/oauth/oauth.htx
Normal file
125
resources/oauth/oauth.htx
Normal file
@@ -0,0 +1,125 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>
|
||||
Stalwart JMAP - Device Authorization
|
||||
</title>
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/css/bootstrap.min.css">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/ionicons/2.0.1/css/ionicons.min.css">
|
||||
<style>
|
||||
html,
|
||||
body {
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.login-clean {
|
||||
background: #f1f7fc;
|
||||
padding: 80px 0;
|
||||
display: flex;
|
||||
flex-flow: column;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.login-clean form {
|
||||
max-width: 320px;
|
||||
width: 90%;
|
||||
margin: 0 auto;
|
||||
background-color: #ffffff;
|
||||
padding: 40px;
|
||||
border-radius: 4px;
|
||||
color: #505e6c;
|
||||
box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.1);
|
||||
}
|
||||
|
||||
.login-clean .illustration {
|
||||
text-align: center;
|
||||
padding: 0 0 0px;
|
||||
font-size: 70px;
|
||||
color: rgb(244, 71, 107);
|
||||
}
|
||||
|
||||
.login-clean form .form-control {
|
||||
background: #f7f9fc;
|
||||
border: none;
|
||||
border-bottom: 1px solid #dfe7f1;
|
||||
border-radius: 0;
|
||||
box-shadow: none;
|
||||
outline: none;
|
||||
color: inherit;
|
||||
text-indent: 8px;
|
||||
height: 42px;
|
||||
}
|
||||
|
||||
.login-clean form .btn-primary {
|
||||
background: #f4476b;
|
||||
border: none;
|
||||
border-radius: 4px;
|
||||
padding: 11px;
|
||||
box-shadow: none;
|
||||
margin-top: 26px;
|
||||
text-shadow: none;
|
||||
outline: none !important;
|
||||
}
|
||||
|
||||
.login-clean form .btn-primary:hover,
|
||||
.login-clean form .btn-primary:active {
|
||||
background: #eb3b60;
|
||||
}
|
||||
|
||||
.login-clean form .btn-primary:active {
|
||||
transform: translateY(1px);
|
||||
}
|
||||
|
||||
.login-clean form .auth {
|
||||
display: block;
|
||||
text-align: center;
|
||||
font-size: 14px;
|
||||
color: #6f7a85;
|
||||
opacity: 0.9;
|
||||
padding: 0 0 10px;
|
||||
text-decoration: none;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="login-clean">
|
||||
<form method="post" action="/auth">
|
||||
<h2 class="sr-only">Stalwart JMAP</h2>
|
||||
<div class="illustration"><i class="icon ion-locked"></i></div>
|
||||
<p class="auth">Authorize device to access your <b>Stalwart JMAP</b> account</p>
|
||||
<div class="form-group"><input class="form-control" type="code" name="text" value="@@@"
|
||||
placeholder="Enter code"></div>
|
||||
<div class="form-group"><input class="form-control" type="email" name="email" placeholder="Email"></div>
|
||||
<div class="form-group"><input class="form-control" type="password" name="password" placeholder="Password">
|
||||
</div>
|
||||
<div class="form-group"><button class="btn btn-primary btn-block" type="submit">Authorize</button>
|
||||
<a class="auth" style="font-size: 12px;" href="@@@">Deny</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--div class="illustration"><i class="icon ion-close-circled"></i></div>
|
||||
<p class="auth">Incorrect username or password, please try again.</p>
|
||||
<div class="form-group"><input class="form-control" type="code" name="text" value="@@@" placeholder="Enter code"></div>
|
||||
<div class="form-group"><input class="form-control" type="email" name="email" placeholder="Email"></div>
|
||||
<div class="form-group"><input class="form-control" type="password" name="password" placeholder="Password">
|
||||
</div>
|
||||
<div class="form-group"><button class="btn btn-primary btn-block" type="submit">Authorize</button></div-->
|
||||
|
||||
<!--div class="illustration"><i class="icon ion-close-circled"></i></div>
|
||||
<p class="auth">There was a problem processing your request.</p-->
|
||||
|
||||
<!--div class="illustration"><i class="icon ion-unlocked"></i></div>
|
||||
<p class="auth"><b>Authentication successful</b><br />You can now close this window.</p-->
|
||||
|
||||
</form>
|
||||
</div>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/js/bootstrap.bundle.min.js"></script>
|
||||
</body>
|
||||
|
||||
</html>
|
||||
Reference in New Issue
Block a user