mirror of
https://github.com/btcpayserver/btcpayserver.git
synced 2025-02-20 13:34:37 +01:00
Merge pull request #1752 from dennisreimann/login
Login/register view improvements
This commit is contained in:
commit
ca8d83099f
13 changed files with 213 additions and 227 deletions
|
@ -6,6 +6,7 @@ namespace BTCPayServer.Models.AccountViewModels
|
|||
{
|
||||
[Required]
|
||||
[EmailAddress]
|
||||
[Display(Name = "Email address")]
|
||||
public string Email { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,6 +6,7 @@ namespace BTCPayServer.Models.AccountViewModels
|
|||
{
|
||||
[Required]
|
||||
[EmailAddress]
|
||||
[Display(Name = "Email address")]
|
||||
public string Email { get; set; }
|
||||
|
||||
[Required]
|
||||
|
|
|
@ -3,38 +3,37 @@
|
|||
@inject BTCPayServer.HostedServices.CssThemeManager themeManager
|
||||
@{
|
||||
ViewData["Title"] = "Log in";
|
||||
ViewData["Headline"] = "Welcome to your BTCPay Server";
|
||||
Layout = "_LayoutSimple";
|
||||
}
|
||||
|
||||
<style>
|
||||
.col-head,
|
||||
.col-account-form {
|
||||
max-width: 40em;
|
||||
}
|
||||
</style>
|
||||
<div class="row justify-content-center mb-2">
|
||||
<div class="col text-center">
|
||||
<a asp-controller="Home" asp-action="Index">
|
||||
<img src="~/img/btcpay-logo.svg" alt="BTCPay Server" class="mb-4" height="70" asp-append-version="true"/>
|
||||
</a>
|
||||
|
||||
<h1 class="h2 mb-3">Welcome to your BTCPay Server</h1>
|
||||
|
||||
<div class="row justify-content-center">
|
||||
<div class="col col-account-form">
|
||||
@if (TempData.HasStatusMessage())
|
||||
{
|
||||
<partial name="_StatusMessage"/>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="lead-login px-3">
|
||||
BTCPay Server is a self-hosted, open-source cryptocurrency payment processor.
|
||||
It is secure, private, censorship-resistant and free.
|
||||
</p>
|
||||
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<div class="row justify-content-center mb-5">
|
||||
<div class="col account-form">
|
||||
<div class="modal-content border-0 p-3">
|
||||
<div class="modal-header align-items-center border-0 py-2">
|
||||
<h4 class="modal-title">Sign In</h4>
|
||||
@if (env.OnionUrl != null)
|
||||
{
|
||||
<a href="@env.OnionUrl" target="_onion" class="btn btn-onion d-inline-flex align-items-center" data-clipboard="@env.OnionUrl">
|
||||
<img src="~/img/icons/Onion_Color.svg" height="24" class="mr-2" asp-append-version="true" />
|
||||
Copy Tor URL
|
||||
</a>
|
||||
<div class="text-center">
|
||||
<a href="@env.OnionUrl" target="_onion" class="btn btn-sm btn-outline-onion d-inline-flex align-items-center p-2" data-clipboard="@env.OnionUrl">
|
||||
<img src="~/img/icons/onion-purple.svg" height="20" class="mr-2" asp-append-version="true" />
|
||||
Copy Tor URL
|
||||
</a>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
|
@ -42,40 +41,36 @@
|
|||
<fieldset disabled="@(ViewData.ContainsKey("disabled") ? "disabled" : null)" >
|
||||
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||
<div class="form-group">
|
||||
<div class="input-group">
|
||||
<div class="input-group-prepend">
|
||||
<label for="Email" class="input-group-text"><span class="input-group-addon fa fa-user"></span></label>
|
||||
</div>
|
||||
|
||||
<input asp-for="Email" class="form-control" placeholder="Email" required="required" />
|
||||
</div>
|
||||
<label asp-for="Email"></label>
|
||||
<input asp-for="Email" class="form-control" required />
|
||||
<span asp-validation-for="Email" class="text-danger"></span>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="input-group">
|
||||
<div class="input-group-prepend">
|
||||
<label for="Password" class="input-group-text"><span class="input-group-addon fa fa-lock"></span></label>
|
||||
</div>
|
||||
<input asp-for="Password" class="form-control" placeholder="Password" required="required" />
|
||||
<div class="d-flex justify-content-between">
|
||||
<label asp-for="Password"></label>
|
||||
<a asp-action="ForgotPassword">Forgot password?</a>
|
||||
</div>
|
||||
<input asp-for="Password" class="form-control" required />
|
||||
<span asp-validation-for="Password" class="text-danger"></span>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="form-group mt-4">
|
||||
<button type="submit" class="btn btn-primary btn-block btn-lg" id="LoginButton">Sign in</button>
|
||||
</div>
|
||||
<p class="text-right mt-4 mb-2">
|
||||
<a asp-action="ForgotPassword" class="text-secondary">Forgot your password?</a>
|
||||
</p>
|
||||
</fieldset>
|
||||
</form>
|
||||
@if (themeManager.ShowRegister)
|
||||
{
|
||||
<p class="text-center mt-2 mb-0">
|
||||
<a id="Register" style="font-size:1.15rem" asp-action="Register" asp-route-returnurl="@ViewData["ReturnUrl"]">Create your account</a>
|
||||
</p>
|
||||
}
|
||||
</div>
|
||||
@if (themeManager.ShowRegister)
|
||||
{
|
||||
<div class="modal-footer">
|
||||
Don't have an account?
|
||||
<a id="Register" class="btn btn-secondary ml-3" asp-action="Register" asp-route-returnurl="@ViewData["ReturnUrl"]">Sign Up</a>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row justify-content-center mt-5">
|
||||
<div class="col">
|
||||
<partial name="_BTCPaySupporters"/>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -2,39 +2,42 @@
|
|||
@inject BTCPayServer.Services.BTCPayServerEnvironment env
|
||||
@{
|
||||
ViewData["Title"] = "Register";
|
||||
ViewData["Headline"] = "Welcome to your BTCPay Server";
|
||||
Layout = "_LayoutSimple";
|
||||
}
|
||||
|
||||
<style>
|
||||
.col-head,
|
||||
.col-account-form {
|
||||
max-width: 40em;
|
||||
}
|
||||
</style>
|
||||
<div class="row justify-content-center mb-2">
|
||||
<div class="col text-center">
|
||||
<a asp-controller="Home" asp-action="Index">
|
||||
<img src="~/img/btcpay-logo.svg" alt="BTCPay Server" class="mb-4" height="70" asp-append-version="true"/>
|
||||
</a>
|
||||
|
||||
<h1 class="h2 mb-3">Welcome to your BTCPay Server</h1>
|
||||
|
||||
<p class="lead">
|
||||
<span class="d-sm-block">A self-hosted, open-source cryptocurrency payment processor.</span>
|
||||
<span class="d-sm-block">It is secure, private, censorship-resistant and free.</span>
|
||||
</p>
|
||||
|
||||
<div class="row justify-content-center">
|
||||
<div class="col col-account-form">
|
||||
@if (TempData.HasStatusMessage())
|
||||
{
|
||||
<partial name="_StatusMessage"/>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="lead-login px-3">
|
||||
BTCPay Server is a self-hosted, open-source cryptocurrency payment processor.
|
||||
It is secure, private, censorship-resistant and free.
|
||||
</p>
|
||||
|
||||
<!-- We want to center the dialog box in case we are not using the Welcome layout -->
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<div class="row justify-content-center mb-5">
|
||||
<div class="col account-form">
|
||||
<div class="modal-content border-0 p-3">
|
||||
<div class="modal-header align-items-center border-0 py-2">
|
||||
<h4 class="modal-title">Create account</h4>
|
||||
@if (env.OnionUrl != null)
|
||||
{
|
||||
<a href="@env.OnionUrl" target="_onion" class="btn btn-onion d-inline-flex align-items-center" data-clipboard="@env.OnionUrl">
|
||||
<img src="~/img/icons/Onion_Color.svg" height="24" class="mr-2" asp-append-version="true" />
|
||||
Copy Tor URL
|
||||
</a>
|
||||
<div class="text-center">
|
||||
<a href="@env.OnionUrl" target="_onion" class="btn btn-sm btn-outline-onion d-inline-flex align-items-center p-2" data-clipboard="@env.OnionUrl">
|
||||
<img src="~/img/icons/onion-purple.svg" height="20" class="mr-2" asp-append-version="true" />
|
||||
Copy Tor URL
|
||||
</a>
|
||||
</div>
|
||||
}
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
|
@ -42,36 +45,18 @@
|
|||
<fieldset disabled="@(ViewData.ContainsKey("disabled") ? "disabled" : null)" >
|
||||
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
|
||||
<div class="form-group">
|
||||
<div class="input-group">
|
||||
<div class="input-group-prepend">
|
||||
<label for="Email" class="input-group-text">
|
||||
<span class="input-group-addon fa fa-user"></span>
|
||||
</label>
|
||||
</div>
|
||||
<input asp-for="Email" class="form-control" placeholder="Email" required="required"/>
|
||||
</div>
|
||||
<label asp-for="Email"></label>
|
||||
<input asp-for="Email" class="form-control" required />
|
||||
<span asp-validation-for="Email" class="text-danger"></span>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="input-group">
|
||||
<div class="input-group-prepend">
|
||||
<label for="Password" class="input-group-text">
|
||||
<span class="input-group-addon fa fa-lock"></span>
|
||||
</label>
|
||||
</div>
|
||||
<input asp-for="Password" class="form-control" placeholder="Password" required="required"/>
|
||||
</div>
|
||||
<label asp-for="Password"></label>
|
||||
<input asp-for="Password" class="form-control" required />
|
||||
<span asp-validation-for="Password" class="text-danger"></span>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="input-group">
|
||||
<div class="input-group-prepend">
|
||||
<label for="ConfirmPassword" class="input-group-text">
|
||||
<span class="input-group-addon fa fa-lock"></span>
|
||||
</label>
|
||||
</div>
|
||||
<input asp-for="ConfirmPassword" class="form-control" placeholder="Repeat password" required="required"/>
|
||||
</div>
|
||||
<label asp-for="ConfirmPassword"></label>
|
||||
<input asp-for="ConfirmPassword" class="form-control" required />
|
||||
<span asp-validation-for="ConfirmPassword" class="text-danger"></span>
|
||||
</div>
|
||||
@if (ViewData["AllowIsAdmin"] is true)
|
||||
|
@ -82,17 +67,22 @@
|
|||
<span asp-validation-for="IsAdmin" class="text-danger"></span>
|
||||
</div>
|
||||
}
|
||||
<div class="form-group">
|
||||
<div class="form-group mt-4">
|
||||
<button type="submit" class="btn btn-primary btn-block btn-lg" id="RegisterButton">Create account</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</form>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
Already have an account?
|
||||
<a id="Login" class="btn btn-secondary ml-3" asp-action="Login" asp-route-returnurl="@ViewData["ReturnUrl"]">Login</a>
|
||||
<p class="text-center mt-2 mb-0">
|
||||
<a id="Login" style="font-size:1.15rem" asp-action="Login" asp-route-returnurl="@ViewData["ReturnUrl"]">Log in</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row justify-content-center mt-5">
|
||||
<div class="col">
|
||||
<partial name="_BTCPaySupporters"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -1,8 +1,18 @@
|
|||
@{
|
||||
ViewData["Headline"] = "404 - Page not found";
|
||||
ViewData["Title"] = "404 - Page not found";
|
||||
}
|
||||
|
||||
<p class="lead-login text-center">
|
||||
<div class="row justify-content-center mb-2">
|
||||
<div class="col text-center">
|
||||
<a asp-controller="Home" asp-action="Index">
|
||||
<img src="~/img/btcpay-logo.svg" alt="BTCPay Server" class="mb-4" height="70" asp-append-version="true"/>
|
||||
</a>
|
||||
|
||||
<h1 class="h2 mb-3">@ViewData["Title"]</h1>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="lead text-center">
|
||||
This is like searching for a person more beautiful than <a href="https://twitter.com/NicolasDorier" target="_blank">Nicolas Dorier</a>.
|
||||
<br /><br />
|
||||
<a href="https://twitter.com/NicolasDorier" target="_blank">
|
||||
|
@ -13,3 +23,9 @@
|
|||
<br /><br />
|
||||
You can always try <a href="/">navigating back to home</a>.
|
||||
</p>
|
||||
|
||||
<div class="row justify-content-center mt-5">
|
||||
<div class="col">
|
||||
<partial name="_BTCPaySupporters"/>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,8 +1,18 @@
|
|||
@{
|
||||
ViewData["Headline"] = "429 - Too Many Requests";
|
||||
ViewData["Title"] = "429 - Too Many Requests";
|
||||
}
|
||||
|
||||
<p class="lead-login text-center">
|
||||
<div class="row justify-content-center mb-2">
|
||||
<div class="col text-center">
|
||||
<a asp-controller="Home" asp-action="Index">
|
||||
<img src="~/img/btcpay-logo.svg" alt="BTCPay Server" class="mb-4" height="70" asp-append-version="true"/>
|
||||
</a>
|
||||
|
||||
<h1 class="h2 mb-3">@ViewData["Title"]</h1>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="lead text-center">
|
||||
Please send requests slower. Or face the wrath of <a href="https://twitter.com/r0ckstardev" target="_blank">Vin Diesel</a>.
|
||||
<br /><br />
|
||||
<a href="https://twitter.com/r0ckstardev" target="_blank">
|
||||
|
@ -13,3 +23,9 @@
|
|||
<br /><br />
|
||||
Slowly <a href="/">navigate back to home</a>.
|
||||
</p>
|
||||
|
||||
<div class="row justify-content-center mt-5">
|
||||
<div class="col">
|
||||
<partial name="_BTCPaySupporters"/>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,8 +1,18 @@
|
|||
@{
|
||||
ViewData["Headline"] = "500 - Internal Server Error";
|
||||
ViewData["Title"] = "500 - Internal Server Error";
|
||||
}
|
||||
|
||||
<p class="lead-login text-center">
|
||||
<div class="row justify-content-center mb-2">
|
||||
<div class="col text-center">
|
||||
<a asp-controller="Home" asp-action="Index">
|
||||
<img src="~/img/btcpay-logo.svg" alt="BTCPay Server" class="mb-4" height="70" asp-append-version="true"/>
|
||||
</a>
|
||||
|
||||
<h1 class="h2 mb-3">@ViewData["Title"]</h1>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="lead text-center">
|
||||
Whoops, something really went wrong! <a href="https://twitter.com/mrkukks">Mr Kukks</a> is so sorry.
|
||||
<br /><br />
|
||||
<a href="https://twitter.com/mrkukks" target="_blank">
|
||||
|
@ -13,3 +23,9 @@
|
|||
<br /><br />
|
||||
<a href="/">Navigate back to home</a>.
|
||||
</p>
|
||||
|
||||
<div class="row justify-content-center mt-5">
|
||||
<div class="col">
|
||||
<partial name="_BTCPaySupporters"/>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,15 +1,25 @@
|
|||
@using System.Net
|
||||
@model int?
|
||||
@{
|
||||
ViewData["Headline"] = "Generic Error occurred";
|
||||
ViewData["Title"] = "Generic Error occurred";
|
||||
if (Model.HasValue)
|
||||
{
|
||||
var httpCode = (HttpStatusCode)Model.Value;
|
||||
ViewData["Headline"] = $"{(int)httpCode} - {httpCode.ToString()}";
|
||||
ViewData["Title"] = $"{(int)httpCode} - {httpCode.ToString()}";
|
||||
}
|
||||
}
|
||||
|
||||
<p class="lead-login text-center">
|
||||
<div class="row justify-content-center mb-2">
|
||||
<div class="col text-center">
|
||||
<a asp-controller="Home" asp-action="Index">
|
||||
<img src="~/img/btcpay-logo.svg" alt="BTCPay Server" class="mb-4" height="70" asp-append-version="true"/>
|
||||
</a>
|
||||
|
||||
<h1 class="h2 mb-3">@ViewData["Title"]</h1>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p class="lead text-center">
|
||||
Generic error occurred, HTTP Code: @Model
|
||||
<br /><br />
|
||||
Consult server log for more details.
|
||||
|
@ -17,3 +27,9 @@
|
|||
<a href="/">Navigate back to home</a>.
|
||||
<br /><br />
|
||||
</p>
|
||||
|
||||
<div class="row justify-content-center mt-5">
|
||||
<div class="col">
|
||||
<partial name="_BTCPaySupporters"/>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,73 +1,44 @@
|
|||
<style>
|
||||
.lead-h {
|
||||
font-family: Montserrat;
|
||||
font-style: normal;
|
||||
margin-bottom: 30px;
|
||||
font-weight: 600;
|
||||
font-size: 14px;
|
||||
line-height: 18px;
|
||||
/* identical to box height, or 129% */
|
||||
letter-spacing: 0.1em;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
</style>
|
||||
|
||||
<h3 class="lead-h text-center mb-3">
|
||||
BTCPayServer Supporters
|
||||
<a href="https://foundation.btcpayserver.org/" target="_blank">
|
||||
<span class="fa fa-question-circle-o" title="More information..."></span>
|
||||
</a>
|
||||
</h3>
|
||||
<div class="row justify-content-center">
|
||||
<div class="figure p-3">
|
||||
<a href="https://kraken.com" target="_blank">
|
||||
<img src="~/img/kraken.svg" alt="Sponsor Kraken" height="75" asp-append-version="true"/>
|
||||
<h5 class="text-center font-weight-normal mb-2">
|
||||
Our Supporters
|
||||
</h5>
|
||||
<div class="row justify-content-center mb-2">
|
||||
<div class="p-3 text-center">
|
||||
<a href="https://kraken.com" target="_blank" class="text-muted small">
|
||||
<img src="~/img/kraken.svg" alt="Sponsor Kraken" height="50" asp-append-version="true"/>
|
||||
<span class="d-block mt-3">Kraken</span>
|
||||
</a>
|
||||
<div class="figure-caption text-center">
|
||||
<a href="https://kraken.com" class="text-muted small" target="_blank">Kraken</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="figure p-3">
|
||||
<a href="https://twitter.com/sqcrypto" target="_blank">
|
||||
<img src="~/img/squarecrypto.svg" alt="Sponsor Square Crypto" height="75" asp-append-version="true"/>
|
||||
<div class="p-3 text-center">
|
||||
<a href="https://twitter.com/sqcrypto" target="_blank" class="text-muted small">
|
||||
<img src="~/img/squarecrypto.svg" alt="Sponsor Square Crypto" height="50" asp-append-version="true"/>
|
||||
<span class="d-block mt-3">Square Crypto</span>
|
||||
</a>
|
||||
<div class="figure-caption text-center">
|
||||
<a href="https://twitter.com/sqcrypto" class="text-muted small" target="_blank">Square Crypto</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="figure p-3">
|
||||
<a href="https://www.btse.com" target="_blank">
|
||||
<img src="~/img/btse.svg" alt="Sponsor BTSE" height="75" asp-append-version="true"/>
|
||||
<div class="p-3 text-center">
|
||||
<a href="https://www.btse.com" target="_blank" class="text-muted small">
|
||||
<img src="~/img/btse.svg" alt="Sponsor BTSE" height="50" asp-append-version="true"/>
|
||||
<span class="d-block mt-3">BTSE</span>
|
||||
</a>
|
||||
<div class="figure-caption text-center">
|
||||
<a href="https://www.btse.com/" class="text-muted small" target="_blank">BTSE</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="figure p-3">
|
||||
<a href="https://www.dglab.com/en/" target="_blank">
|
||||
<img src="~/img/dglab.svg" alt="Sponsor DG lab" height="75" asp-append-version="true"/>
|
||||
<div class="p-3 text-center">
|
||||
<a href="https://www.dglab.com/en/" target="_blank" class="text-muted small">
|
||||
<img src="~/img/dglab.svg" alt="Sponsor DG lab" height="50" asp-append-version="true"/>
|
||||
<span class="d-block mt-3">DG Lab</span>
|
||||
</a>
|
||||
<div class="figure-caption text-center">
|
||||
<a href="https://www.dglab.com/en/" class="text-muted small" target="_blank">DG Lab</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="figure p-3">
|
||||
<a href="https://www.okcoin.com/" target="_blank">
|
||||
<img src="~/img/okcoin.svg" alt="Sponsor OKCoin" height="75" asp-append-version="true"/>
|
||||
<div class="p-3 text-center">
|
||||
<a href="https://www.okcoin.com/" target="_blank" class="text-muted small">
|
||||
<img src="~/img/okcoin.svg" alt="Sponsor OKCoin" height="50" asp-append-version="true"/>
|
||||
<span class="d-block mt-3">OKCoin</span>
|
||||
</a>
|
||||
<div class="figure-caption text-center">
|
||||
<a href="https://www.okcoin.com/" class="text-muted small" target="_blank">OKCoin</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="figure p-3">
|
||||
<a href="https://acinq.co/" target="_blank">
|
||||
<img src="~/img/acinq-logo.svg" alt="Sponsor ACINQ" height="75" asp-append-version="true"/>
|
||||
<div class="p-3 text-center">
|
||||
<a href="https://acinq.co/" target="_blank" class="text-muted small">
|
||||
<img src="~/img/acinq-logo.svg" alt="Sponsor ACINQ" height="50" asp-append-version="true"/>
|
||||
<span class="d-block mt-3">ACINQ</span>
|
||||
</a>
|
||||
<div class="figure-caption text-center">
|
||||
<a href="https://acinq.co/" class="text-muted small" target="_blank">ACINQ</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row justify-content-center mt-3">
|
||||
<a href="https://foundation.btcpayserver.org" target="_blank" class="text-secondary text-center">View all supporters</a>
|
||||
</div>
|
||||
<p class="text-center">
|
||||
<a href="https://foundation.btcpayserver.org" target="_blank">View all supporters</a>
|
||||
</p>
|
||||
|
|
|
@ -21,52 +21,14 @@
|
|||
padding: 0 2rem;
|
||||
}
|
||||
|
||||
.head-logo {
|
||||
height: 70px;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
.lead-title {
|
||||
font-family: Montserrat;
|
||||
font-style: normal;
|
||||
font-weight: bold;
|
||||
font-size: 24px;
|
||||
line-height: 1.2;
|
||||
max-width: 17em;
|
||||
letter-spacing: .1em;
|
||||
}
|
||||
|
||||
.lead-login {
|
||||
font-family: Montserrat;
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-size: 16px;
|
||||
line-height: 1.8;
|
||||
letter-spacing: 0.1em;
|
||||
}
|
||||
|
||||
@@media screen and (min-width: 768px) {
|
||||
.content-wrapper {
|
||||
padding: 75px 0;
|
||||
}
|
||||
|
||||
.col-head {
|
||||
text-align: left;
|
||||
flex-direction: row;
|
||||
}
|
||||
|
||||
.lead-title {
|
||||
font-size: 34px;
|
||||
}
|
||||
|
||||
.lead-login {
|
||||
font-size: 18px;
|
||||
}
|
||||
|
||||
.head-logo {
|
||||
height: 80px;
|
||||
margin: 0 30px 0 0;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
@ -74,28 +36,8 @@
|
|||
<section class="content-wrapper">
|
||||
<!-- Dummy navbar-brand, hackish way to keep test AssertNoError passing -->
|
||||
<div class="navbar-brand d-none"></div>
|
||||
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col col-head">
|
||||
<a asp-controller="Home" asp-action="Index">
|
||||
<img src="~/img/btcpay-logo.svg" alt="BTCPay Server" class="head-logo" asp-append-version="true"/>
|
||||
</a>
|
||||
<h1 class="lead-title text-uppercase m-0">@ViewData["Headline"]</h1>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr class="primary my-4 d-block" />
|
||||
|
||||
@RenderBody()
|
||||
|
||||
<hr class="primary my-5 d-block" />
|
||||
|
||||
<div class="row justify-content-center">
|
||||
<div class="col">
|
||||
<partial name="_BTCPaySupporters"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
@await Html.PartialAsync("_ValidationScriptsPartial")
|
||||
|
|
1
BTCPayServer/wwwroot/img/icons/onion-purple.svg
Normal file
1
BTCPayServer/wwwroot/img/icons/onion-purple.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg width="61" height="91" xmlns="http://www.w3.org/2000/svg"><g fill="#7E4798" fill-rule="nonzero"><path d="M34.9 6.8l-2.4 9.6C35.9 9.6 41.4 4.5 47.7 0c-4.6 5.3-8.8 10.6-11.3 16C40.7 9.9 46.5 6.6 53 4.3 44.3 12 37.4 20.4 32.2 28.7L28 26.9c.7-6.7 3.2-13.5 6.9-20.1z"/><path d="M31.7 28.3l2.9 1.5c-.3 1.9.1 6.1 2 7.1 8.4 5.2 16.2 10.8 19.3 16.5 11 19.9-7.7 38.4-24 36.6 8.8-6.5 11.4-19.9 8.1-34.6-1.3-5.7-3.4-10.9-7.1-16.8-1.6-2.7-1-6.3-1.2-10.3z"/><g><path d="M28.5 37.8c-.6 3.1-1.3 8.7-4 10.8-1.1.8-2.3 1.6-3.5 2.4-4.9 3.3-9.7 6.4-11.9 14.3-.5 1.7-.1 3.5.3 5.2 1.2 4.9 4.6 10.1 7.3 13.2 0 .1.5.5.5.6 2.2 2.6 2.9 3.4 11.3 5.3l-.2.9c-5.1-1.3-9.2-2.6-11.9-5.6 0-.1-.5-.5-.5-.5-2.8-3.2-6.3-8.6-7.5-13.7-.5-2-.9-3.6-.3-5.7 2.3-8.2 7.3-11.5 12.3-14.9 1.1-.7 2.5-1.4 3.6-2.3 2.3-1.5 3.4-6.2 4.5-10z"/><path d="M30.7 50.8c.1 3.5-.3 5.3.6 7.8.5 1.5 2.4 3.5 2.9 5.5.7 2.6 1.5 5.5 1.5 7.3 0 2-.1 5.8-1 9.8-.7 3.3-2.2 6.2-4.8 7.8-2.7-.5-5.8-1.5-7.6-3.1-3.6-3.1-6.7-8.3-7.1-12.8-.3-3.7 3.1-9.2 7.9-11.9 4-2.4 5-5 5.9-9.4-1.2 3.8-2.4 6.9-6.3 9-5.7 3-8.6 7.9-8.3 12.7.4 6.1 2.8 10.2 7.6 13.5 2 1.4 5.8 2.9 8.2 3.3V90c1.8-.3 4.1-3.3 5.3-7.2 1-3.6 1.4-8.1 1.3-11-.1-1.7-.8-5.3-2.2-8.6-.7-1.8-1.9-3.6-2.6-4.9-.9-1.5-.9-4.3-1.3-7.5z"/><path d="M30.1 64.5c.1 2.4 1 5.4 1.4 8.5.3 2.3.2 4.6.1 6.6-.1 2.3-.8 6.5-1.9 8.6-1-.5-1.4-1-2.1-1.8-.8-1.1-1.4-2.3-1.9-3.6-.4-1-.9-2.2-1.1-3.5-.3-2-.2-5.2 2.1-8.4 1.8-2.6 2.2-2.8 2.8-5.7-.8 2.6-1.4 2.9-3.3 5.1-2.1 2.4-2.4 6-2.4 8.9 0 1.2.5 2.6 1 3.8.5 1.3 1 2.7 1.7 3.7 1.1 1.6 2.5 2.6 3.2 2.7v-.1c1.3-1.5 2.1-2.9 2.4-4.4.3-1.8.4-3.5.6-5.6.2-1.8.1-4.1-.4-6.5-.6-3-1.7-6.1-2.2-8.3z"/><path d="M30.5 35c.1 3.5.3 10 1.3 12.6.3.9 2.8 4.7 4.5 9.4 1.2 3.2 1.5 6.2 1.7 7.1.8 3.8-.2 10.3-1.5 16.4-.7 3.3-3 7.4-5.6 9l-.5.9c1.5-.1 5.1-3.6 6.4-8.1 2.2-7.5 3-11 2-19.4-.1-.8-.5-3.6-1.8-6.5-1.9-4.5-4.6-8.8-4.9-9.7-.7-1.4-1.5-7.6-1.6-11.7z"/><path d="M31.7 28.6c-.2 3.6-.2 6.4.4 9.1.7 2.9 4.5 7.1 6.1 11.9 3 9.2 2.2 21.2.1 30.5-.8 3.3-4.6 8.1-8.5 9.6l2.8.7c1.5-.1 5.5-3.8 7.1-8 2.5-6.7 3-14.6 2-23-.1-.8-1.4-8-2.7-11-1.8-4.5-4.7-7.7-5.7-10.5-.8-2.1-1.1-7.7-.6-8.8l-1-.5z"/></g><path d="M51.7 46.3c-2.9-2.6-6.5-4.8-10.3-6.9-1.7-.9-6.9-5-5.1-10.8l-13.1-5.4-.9.7c4.4 7.9 2.1 12.1-.1 13.5-4.4 3-10.8 6.8-13.9 10.1C2.2 53.8.4 59.8 1 67.6c.6 10.1 7.9 18.5 17.8 21.8 4.3 1.4 8.3 1.6 12.7 1.6 7.1 0 14.5-1.9 19.8-6.3 5.7-4.7 9-11.8 9-19.1 0-7.3-3.1-14.3-8.6-19.3zm-1.9 36.9c-4.9 4-13.7 6.8-18.4 6.6-5.2-.3-10.3-1.1-14.8-3.3C8.7 82.7 3.5 74.4 3.1 67.7 2.4 54 9 50.1 15.1 45.1c3.4-2.8 8.2-4.2 10.9-9.2.5-1.1.8-3.5.2-6-.3-.9-1.5-3.9-2-4.6l9.8 4.3c-1.2 4.5 2.5 9.2 5.5 10.9 3 1.7 7.7 4.9 10.6 7.5 5.1 4.5 7.7 10.9 7.7 17.6 0 6.7-2.8 13.3-8 17.6z"/></g></svg>
|
After Width: | Height: | Size: 2.6 KiB |
|
@ -195,15 +195,32 @@ pre {
|
|||
background: none;
|
||||
}
|
||||
|
||||
.btn-onion {
|
||||
color: #fff;
|
||||
background-color: #59316B;
|
||||
border-color: #59316B;
|
||||
.account-form {
|
||||
max-width: 36em;
|
||||
}
|
||||
|
||||
.btn-onion:focus,
|
||||
.btn-onion.focus {
|
||||
box-shadow: 0 0 0 0.2rem #9065a1;
|
||||
.btn-outline-onion {
|
||||
background-image: none;
|
||||
background-color: transparent;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
.btn-outline-onion:hover {
|
||||
color: #fff;
|
||||
background-color: #7D4698;
|
||||
}
|
||||
|
||||
.btn-outline-onion:focus,
|
||||
.btn-outline-onion.focus {
|
||||
color: #fff;
|
||||
background-color: #7D4698;
|
||||
box-shadow: 0 0 0 0.2rem #e6d5ee;
|
||||
}
|
||||
|
||||
.btn-outline-onion:hover img,
|
||||
.btn-outline-onion:focus img,
|
||||
.btn-outline-onion.focus img {
|
||||
filter: contrast(0) brightness(200%);
|
||||
}
|
||||
|
||||
[class*="field-validation"]:not(:empty) {
|
||||
|
|
|
@ -39,6 +39,10 @@
|
|||
filter: none;
|
||||
}
|
||||
|
||||
.btn-outline-onion img {
|
||||
filter: contrast(0) brightness(200%) !important;
|
||||
}
|
||||
|
||||
.list-group-item-action,
|
||||
.list-group-item-action:hover {
|
||||
color: var(--btcpay-body-color);
|
||||
|
|
Loading…
Add table
Reference in a new issue