Pretty up design
This commit is contained in:
parent
0eb06dcf9a
commit
35a61859b2
8 changed files with 113 additions and 47 deletions
|
@ -39,9 +39,24 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
.auth-background {
|
.auth-background {
|
||||||
background: linear-gradient(#23d160e0, #23d160e0), url(/static/images/jordan-harrison-1208586-unsplash.jpg);
|
background: linear-gradient(#30cfd0e0, #330867e0), url(/static/images/louis-reed-wSTCaQpiLtc-unsplash.jpg);
|
||||||
background-position: 50%;
|
background-position: 50%;
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
background-size: cover;
|
background-size: cover;
|
||||||
background-attachment: fixed;
|
background-attachment: fixed;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.seperate-header {
|
||||||
|
background: linear-gradient(180deg, rgba(0, 0, 0, 0) calc(50% - 1px), rgba(192, 192, 192, 1) calc(50%), rgba(0, 0, 0, 0) calc(50% + 1px));
|
||||||
|
overflow: visible;
|
||||||
|
white-space: nowrap;
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 15px;
|
||||||
|
margin-top: 5px;
|
||||||
|
}
|
||||||
|
.seperate-header p {
|
||||||
|
background-color: #fff;
|
||||||
|
display: inline-block;
|
||||||
|
padding: 20px;
|
||||||
|
line-height: 1.2em;
|
||||||
|
}
|
|
@ -1,3 +0,0 @@
|
||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:64b68f6ecba68970d1ca4384db7b694f9691929c3da5031dbd4dd4aff494f840
|
|
||||||
size 36118
|
|
3
assets/static/images/louis-reed-wSTCaQpiLtc-unsplash.jpg
Normal file
3
assets/static/images/louis-reed-wSTCaQpiLtc-unsplash.jpg
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:03c2fc403dc49e601e599b9ae474d38b21497d0a40c9663ebb31e39d257c248e
|
||||||
|
size 32777
|
|
@ -5,14 +5,15 @@
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.8.0/css/bulma.min.css"
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.9.0/css/bulma.min.css"
|
||||||
integrity="sha256-D9M5yrVDqFlla7nlELDaYZIpXfFWDytQtiV+TaH6F1I=" crossorigin="anonymous" />
|
integrity="sha256-aPeK/N8IHpHsvPBCf49iVKMdusfobKo2oxF8lRruWJg=" crossorigin="anonymous" />
|
||||||
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/material-design-icons/3.0.1/iconfont/material-icons.min.css" integrity="sha512-mRuH7OxetZB1XiSaKZ2fxENKgxVvx3ffpzX0FUcaP6GBqAuqOLc8YiC/3EVTUVt5p5mIRT5D9i4LitZUQKWNCg==" crossorigin="anonymous" />
|
||||||
<link rel="stylesheet" href="{{ static "css/style.css" }}">
|
<link rel="stylesheet" href="{{ static "css/style.css" }}">
|
||||||
<title>Log In</title>
|
<title>Log In</title>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div class="hero is-success is-fullheight auth-background">
|
<div class="hero is-primary is-fullheight auth-background">
|
||||||
<div class="hero-body">
|
<div class="hero-body">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="columns">
|
<div class="columns">
|
||||||
|
@ -25,29 +26,31 @@
|
||||||
</div>
|
</div>
|
||||||
{{- end }}
|
{{- end }}
|
||||||
<div class="content box">
|
<div class="content box">
|
||||||
<h2 class="has-text-centered is-size-3">{{ i18n "de_DE" "Log in" }}</h2>
|
<h3 class="has-text-centered is-size-3 has-text-weight-light">{{ i18n "de_DE" "Log in" }}</h3>
|
||||||
<form class="form" method="POST" action="{{ url "login" }}">
|
<form class="form" method="POST" action="{{ url "login" }}">
|
||||||
<div class="field is-horizontal">
|
<div class="field is-horizontal">
|
||||||
<div class="field-label">
|
|
||||||
<label for="" class="label">username</label>
|
|
||||||
</div>
|
|
||||||
<div class="field-body">
|
<div class="field-body">
|
||||||
<div class="field">
|
<div class="field">
|
||||||
<div class="control">
|
<div class="control has-icons-left">
|
||||||
<input id="" class="input" type="text" name="" autofocus="autofocus">
|
<input id="" placeholder="Email" class="input" type="text" name="" autofocus="autofocus">
|
||||||
|
<span class="icon is-small is-left">
|
||||||
|
<i class="material-icons">mail_outline</i>
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="field is-horizontal">
|
<div class="field">
|
||||||
<div class="field-label">
|
|
||||||
<label for="" class="label">password</label>
|
|
||||||
</div>
|
|
||||||
<div class="field-body">
|
<div class="field-body">
|
||||||
<div class="field">
|
<div class="field">
|
||||||
<div class="control"><input type="password" name="" id="" class="input">
|
<div class="control has-icons-left">
|
||||||
|
<input placeholder="Password" type="password" name="" id="" class="input">
|
||||||
|
<span class="icon is-small is-left">
|
||||||
|
<i class="material-icons">lock_outline</i>
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
<p class="has-text-right"><a>Forgot password?</a></p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -61,19 +64,27 @@
|
||||||
<input type="hidden" name="response_type" value="">
|
<input type="hidden" name="response_type" value="">
|
||||||
<input type="hidden" name="duration" value="">
|
<input type="hidden" name="duration" value="">
|
||||||
<input type="hidden" name="csrf_token" value="">
|
<input type="hidden" name="csrf_token" value="">
|
||||||
<div class="field is-grouped is-grouped-right">
|
<div class="field">
|
||||||
<p class="control">
|
<button class="button is-medium is-fullwidth is-primary" value="authorize"
|
||||||
<button class="button is-medium is-fullwidth is-success" value="authorize"
|
|
||||||
type="submit">
|
type="submit">
|
||||||
Log in
|
Log in
|
||||||
</button>
|
</button>
|
||||||
</p>
|
</div>
|
||||||
|
<div class="seperate-header">
|
||||||
|
<p class="has-text-centered">Or</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field">
|
||||||
|
<button class="button is-medium is-fullwidth is-dark" value="authorize"
|
||||||
|
type="submit">
|
||||||
|
Log in with external
|
||||||
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<div class="has-text-light-grey has-text-centered">
|
<div class="has-text-light-grey has-text-centered">
|
||||||
Don't have an account?
|
Don't have an account?
|
||||||
<a class="has-text-white has-text-weight-bold" href="{{ url "register" }}">Sign Up</a>
|
<a class="has-text-white has-text-weight-bold" href="{{ url "signup" }}">Sign Up</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -5,34 +5,57 @@
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.8.0/css/bulma.min.css"
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.9.0/css/bulma.min.css"
|
||||||
integrity="sha256-D9M5yrVDqFlla7nlELDaYZIpXfFWDytQtiV+TaH6F1I=" crossorigin="anonymous" />
|
integrity="sha256-aPeK/N8IHpHsvPBCf49iVKMdusfobKo2oxF8lRruWJg=" crossorigin="anonymous" />
|
||||||
<link rel="stylesheet" href="{{ static "css/style.css" }}">
|
<link rel="stylesheet" href="{{ static "css/style.css" }}">
|
||||||
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/material-design-icons/3.0.1/iconfont/material-icons.min.css" integrity="sha512-mRuH7OxetZB1XiSaKZ2fxENKgxVvx3ffpzX0FUcaP6GBqAuqOLc8YiC/3EVTUVt5p5mIRT5D9i4LitZUQKWNCg==" crossorigin="anonymous" />
|
||||||
<title>Log In</title>
|
<title>Log In</title>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div class="hero is-success is-fullheight auth-background">
|
<div class="hero is-primary is-fullheight auth-background">
|
||||||
<div class="hero-body">
|
<div class="hero-body">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="columns">
|
<div class="columns">
|
||||||
<div
|
<div class="column is-one-half-desktop is-offset-one-quarter-desktop is-half-tablet is-offset-one-quarter-tablet">
|
||||||
class="column is-one-third-desktop is-offset-one-third-desktop is-half-tablet is-offset-one-quarter-tablet">
|
|
||||||
<div class="content box">
|
<div class="content box">
|
||||||
<h2 class="has-text-centered is-size-3">Create Account</h2>
|
<h2 class="has-text-centered is-size-3 has-text-weight-light">Sign up</h2>
|
||||||
<form class="form" method="POST" action="{{ url "/register" }}">
|
<form class="form" method="POST" action="{{ url "/signup" }}">
|
||||||
<div class="field is-horizontal">
|
|
||||||
<div class="field-label is-normal">
|
|
||||||
<label for="" class="label">email</label>
|
|
||||||
</div>
|
|
||||||
<div class="field-body">
|
|
||||||
<div class="field">
|
<div class="field">
|
||||||
<div class="control"><input type="text" name="email" id="" class="input">
|
<div class="control has-icons-left">
|
||||||
</div>
|
<input type="text" name="name" id="name" class="input" placeholder="Your display name">
|
||||||
<p class="help">The invitation link will be sent to this address</p>
|
<span class="icon is-small is-left">
|
||||||
|
<i class="material-icons">person_outline</i>
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="field">
|
||||||
|
<div class="control has-icons-left">
|
||||||
|
<input type="text" name="email" id="email" class="input" placeholder="Email">
|
||||||
|
<span class="icon is-small is-left">
|
||||||
|
<i class="material-icons">mail_outline</i>
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="field mb-3">
|
||||||
|
<div class="control has-icons-left">
|
||||||
|
<input type="password" name="password" id="password" class="input" placeholder="Password">
|
||||||
|
<span class="icon is-small is-left">
|
||||||
|
<i class="material-icons">lock_outline</i>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<p class="help">Password must be minimum 8 characters, and should contain capital letters, numbers and special characters.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<label class="checkbox mb-3">
|
||||||
|
<input type="checkbox">
|
||||||
|
I agree to the <a href="#">terms and conditions</a>
|
||||||
|
</label>
|
||||||
|
<label class="checkbox mb-5">
|
||||||
|
<input type="checkbox">
|
||||||
|
I would like to receive email updates from this project. I can unsubscribe anytime
|
||||||
|
</label>
|
||||||
|
|
||||||
|
|
||||||
<input type="hidden" name="client_id" value="">
|
<input type="hidden" name="client_id" value="">
|
||||||
<input type="hidden" name="redirect_uri" value="">
|
<input type="hidden" name="redirect_uri" value="">
|
||||||
|
@ -41,16 +64,30 @@
|
||||||
<input type="hidden" name="response_type" value="">
|
<input type="hidden" name="response_type" value="">
|
||||||
<input type="hidden" name="duration" value="">
|
<input type="hidden" name="duration" value="">
|
||||||
<input type="hidden" name="csrf_token" value="">
|
<input type="hidden" name="csrf_token" value="">
|
||||||
<div class="field is-grouped is-grouped-right">
|
<div class="field">
|
||||||
<p class="control">
|
<p class="control">
|
||||||
<button class="button is-medium is-fullwidth is-success" value="authorize"
|
<button class="button is-medium is-fullwidth is-primary" value="authorize"
|
||||||
type="submit">
|
type="submit">
|
||||||
Request invitation
|
Sign up now
|
||||||
</button>
|
</button>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="seperate-header">
|
||||||
|
<p classLog in="has-text-centered">Or</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="field">
|
||||||
|
<button class="button is-medium is-fullwidth is-dark" value="authorize"
|
||||||
|
type="submit">
|
||||||
|
Sign up with external
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="has-text-light-grey has-text-centered">
|
||||||
|
Already have an account?
|
||||||
|
<a class="has-text-white has-text-weight-bold" href="{{ url "login" }}">Log In</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
1
go.mod
1
go.mod
|
@ -17,6 +17,7 @@ require (
|
||||||
github.com/mitchellh/go-homedir v1.1.0 // indirect
|
github.com/mitchellh/go-homedir v1.1.0 // indirect
|
||||||
github.com/pkg/errors v0.9.1
|
github.com/pkg/errors v0.9.1
|
||||||
github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749
|
github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749
|
||||||
|
github.com/shurcooL/vfsgen v0.0.0-20200627165143-92b8a710ab6c // indirect
|
||||||
github.com/smartystreets/goconvey v1.6.4 // indirect
|
github.com/smartystreets/goconvey v1.6.4 // indirect
|
||||||
golang.org/x/crypto v0.0.0-20200709230013-948cd5f35899
|
golang.org/x/crypto v0.0.0-20200709230013-948cd5f35899
|
||||||
gopkg.in/ini.v1 v1.57.0 // indirect
|
gopkg.in/ini.v1 v1.57.0 // indirect
|
||||||
|
|
2
go.sum
2
go.sum
|
@ -268,6 +268,8 @@ github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdh
|
||||||
github.com/shopspring/decimal v0.0.0-20180709203117-cd690d0c9e24/go.mod h1:M+9NzErvs504Cn4c5DxATwIqPbtswREoFCre64PpcG4=
|
github.com/shopspring/decimal v0.0.0-20180709203117-cd690d0c9e24/go.mod h1:M+9NzErvs504Cn4c5DxATwIqPbtswREoFCre64PpcG4=
|
||||||
github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749 h1:bUGsEnyNbVPw06Bs80sCeARAlK8lhwqGyi6UT8ymuGk=
|
github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749 h1:bUGsEnyNbVPw06Bs80sCeARAlK8lhwqGyi6UT8ymuGk=
|
||||||
github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749/go.mod h1:ZY1cvUeJuFPAdZ/B6v7RHavJWZn2YPVFQ1OSXhCGOkg=
|
github.com/shurcooL/httpfs v0.0.0-20190707220628-8d4bc4ba7749/go.mod h1:ZY1cvUeJuFPAdZ/B6v7RHavJWZn2YPVFQ1OSXhCGOkg=
|
||||||
|
github.com/shurcooL/vfsgen v0.0.0-20200627165143-92b8a710ab6c h1:XLPw6rny9Vrrvrzhw8pNLrC2+x/kH0a/3gOx5xWDa6Y=
|
||||||
|
github.com/shurcooL/vfsgen v0.0.0-20200627165143-92b8a710ab6c/go.mod h1:TrYk7fJVaAttu97ZZKrO9UbRa8izdowaMIZcxYMbVaw=
|
||||||
github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
|
github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
|
||||||
github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q=
|
github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q=
|
||||||
github.com/sirupsen/logrus v1.4.2 h1:SPIRibHv4MatM3XXNO2BJeFLZwZ2LvZgfQ5+UNI2im4=
|
github.com/sirupsen/logrus v1.4.2 h1:SPIRibHv4MatM3XXNO2BJeFLZwZ2LvZgfQ5+UNI2im4=
|
||||||
|
|
|
@ -3,8 +3,8 @@ package web
|
||||||
import (
|
import (
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
"github.com/go-chi/chi"
|
|
||||||
"bitmask.me/skeleton/internal/app"
|
"bitmask.me/skeleton/internal/app"
|
||||||
|
"github.com/go-chi/chi"
|
||||||
)
|
)
|
||||||
|
|
||||||
func runHTTP(listenAddr string, h http.Handler) error {
|
func runHTTP(listenAddr string, h http.Handler) error {
|
||||||
|
|
Loading…
Reference in a new issue