Compare commits

..

No commits in common. "0af7ee3dd0d99dc95ca2382b804110db8b0ff4f7" and "62956deb1defca39a1ebbba7354b93a9a80fb96b" have entirely different histories.

48 changed files with 149 additions and 405 deletions

View file

@ -7,7 +7,7 @@
{% block content %} {% block content %}
<div class="content-view"> <div class="view-list">
<h2>Membership settings</h2> <h2>Membership settings</h2>
{% if not current_membership %} {% if not current_membership %}
<p>{% trans "You do not have an active membership!" %}</p> <p>{% trans "You do not have an active membership!" %}</p>
@ -28,7 +28,7 @@
{% endif %} {% endif %}
</div> </div>
<div class="content-view"> <div class="view-list">
<h2>Profile settings</h2> <h2>Profile settings</h2>
<form> <form>
<div> <div>

View file

@ -1,4 +1,4 @@
/* Reset */ /* Start reset */
*, *::before, *::after { *, *::before, *::after {
box-sizing: border-box; box-sizing: border-box;
} }
@ -23,17 +23,16 @@ p, h1, h2, h3, h4, h5, h6 {
} }
/* Variables */ /* Variables */
:root { :root {
/* Colors */ /* Colors */
--light : #fff; --light : #fff;
--light-dust : #fcfcfc; --light-dust : #fcfcfc;
--dust : #f1f1f1; --dust : #f1f1f1;
--dark-dust : #bfbfbf; --dark-dust : #bfbfbf;
--fade : #878787; --twilight : #404040;
--twilight : #3c3c3c;
--dark : #2a2a2a; --dark : #2a2a2a;
--custard : #f0dcac; --custard : #f0dcac;
--water : #a8f3f4;
--splash : #4b3aba; --splash : #4b3aba;
/* Sizes */ /* Sizes */
@ -50,26 +49,11 @@ p, h1, h2, h3, h4, h5, h6 {
} }
} }
html, body {
height : 100%;
}
h1, h2, h3, h4, h5, h6 {
font-weight : 600;
color : var(--twilight);
}
a {
font-weight : 500;
}
body { body {
margin : 0; margin : 0;
padding : 0; padding : 0;
background : var(--custard); background : var(--custard);
font-family : Inter; font-family : sans-serif;
font-weight : 400;
line-height : 1.6;
color : var(--dark); color : var(--dark);
} }
@ -132,8 +116,7 @@ aside > div > dl > dt {
clear : left; clear : left;
margin : 0 var(--double-space) 0 0; margin : 0 var(--double-space) 0 0;
width : 180px; width : 180px;
font-weight : 600; font-weight : bold;
color : var(--twilight);
} }
nav { nav {
@ -163,8 +146,6 @@ nav > ol > li > a {
text-decoration : none; text-decoration : none;
color : var(--dark); color : var(--dark);
cursor : pointer; cursor : pointer;
font-weight : 500;
letter-spacing : 0.04em;
} }
nav > ol > li:first-child > a { nav > ol > li:first-child > a {
@ -191,7 +172,7 @@ article > div {
margin-bottom : var(--double-space); margin-bottom : var(--double-space);
} }
div.content-view > h2 { div.view-list > h2 {
margin : 0 0 var(--double-space) 0; margin : 0 0 var(--double-space) 0;
} }
@ -202,8 +183,7 @@ div.services {
flex-wrap: wrap; flex-wrap: wrap;
} }
div.services > div, div.services > div {
div.infobox {
background : var(--light); background : var(--light);
padding : var(--double-space); padding : var(--double-space);
border-radius : 6px; border-radius : 6px;
@ -225,29 +205,21 @@ div.services > div > div.description {
margin-bottom : var(--double-space); margin-bottom : var(--double-space);
} }
div.services > div > div.description > p {
margin-top : var(--half-space);
}
div.services > div > a, div.services > div > a,
a.button,
button { button {
display : block;
color : var(--light); color : var(--light);
background : var(--splash); background : var(--splash);
padding : var(--space) var(--double-space); padding : 6px 12px;
border-radius : 3px; border-radius : 3px;
opacity : 0.9; opacity : 0.9;
cursor : pointer; cursor : pointer;
text-align : center; text-align : center;
border : 0; border : 0;
font-weight : 600; font-weight : bold;
letter-spacing : 0.03em;
text-decoration : none;
} }
div.services > div > a:hover, div.services > div > a:hover,
a.button:hover,
button:hover { button:hover {
opacity : 1.0; opacity : 1.0;
} }
@ -261,8 +233,7 @@ form > div >label {
margin : 0 0 6px; margin : 0 0 6px;
} }
form > div > input[type="text"], form > div > input[type="text"] {
form > div > input[type="password"] {
border : 1px solid var(--twilight); border : 1px solid var(--twilight);
border-radius : 3px; border-radius : 3px;
padding : 6px 12px; padding : 6px 12px;
@ -270,68 +241,6 @@ form > div > input[type="password"] {
width : 100%; width : 100%;
} }
#login {
height : 100%;
display : flex;
align-items : center;
justify-content : center;
}
#loginbox {
border-radius : var(--space);
background : var(--dust);
border : 6px solid white;
width : 800px;
height : 500px;
display : flex;
flex-flow : row;
//justify-content : space-between;
}
#loginbox > div {
padding : var(--double-space);
flex : 1;
}
#loginbox label {
color : var(--twilight);
}
#loginbox > div.login {
display: flex;
flex-flow: column;
justify-content: space-between;
}
#loginbox > div.signup {
border-radius : 0 var(--space) var(--space) 0;
background : var(--water);
display: flex;
flex-flow: column;
align-items: center;
}
#loginbox > div:last-child > * {
flex : 1;
}
#loginbox div.new_here {
margin-top : var(--double-space);
}
#loginbox div.new_here h2 {
margin: var(--double-space) 0;
}
#loginbox button {
width : 100%;
}
#loginbox img {
padding : 0 var(--double-space);
}
footer { footer {
position : fixed; position : fixed;
bottom : 0; bottom : 0;
@ -345,5 +254,5 @@ footer {
} }
span.time_remaining { span.time_remaining {
color : var(--fade); opacity : 0.6;
} }

View file

@ -1,200 +0,0 @@
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 100;
font-display: swap;
src: url("Inter-Thin.woff2?v=3.19") format("woff2"),
url("Inter-Thin.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: italic;
font-weight: 100;
font-display: swap;
src: url("Inter-ThinItalic.woff2?v=3.19") format("woff2"),
url("Inter-ThinItalic.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 200;
font-display: swap;
src: url("Inter-ExtraLight.woff2?v=3.19") format("woff2"),
url("Inter-ExtraLight.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: italic;
font-weight: 200;
font-display: swap;
src: url("Inter-ExtraLightItalic.woff2?v=3.19") format("woff2"),
url("Inter-ExtraLightItalic.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 300;
font-display: swap;
src: url("Inter-Light.woff2?v=3.19") format("woff2"),
url("Inter-Light.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: italic;
font-weight: 300;
font-display: swap;
src: url("Inter-LightItalic.woff2?v=3.19") format("woff2"),
url("Inter-LightItalic.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url("Inter-Regular.woff2?v=3.19") format("woff2"),
url("Inter-Regular.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: italic;
font-weight: 400;
font-display: swap;
src: url("Inter-Italic.woff2?v=3.19") format("woff2"),
url("Inter-Italic.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 500;
font-display: swap;
src: url("Inter-Medium.woff2?v=3.19") format("woff2"),
url("Inter-Medium.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: italic;
font-weight: 500;
font-display: swap;
src: url("Inter-MediumItalic.woff2?v=3.19") format("woff2"),
url("Inter-MediumItalic.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 600;
font-display: swap;
src: url("Inter-SemiBold.woff2?v=3.19") format("woff2"),
url("Inter-SemiBold.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: italic;
font-weight: 600;
font-display: swap;
src: url("Inter-SemiBoldItalic.woff2?v=3.19") format("woff2"),
url("Inter-SemiBoldItalic.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 700;
font-display: swap;
src: url("Inter-Bold.woff2?v=3.19") format("woff2"),
url("Inter-Bold.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: italic;
font-weight: 700;
font-display: swap;
src: url("Inter-BoldItalic.woff2?v=3.19") format("woff2"),
url("Inter-BoldItalic.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 800;
font-display: swap;
src: url("Inter-ExtraBold.woff2?v=3.19") format("woff2"),
url("Inter-ExtraBold.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: italic;
font-weight: 800;
font-display: swap;
src: url("Inter-ExtraBoldItalic.woff2?v=3.19") format("woff2"),
url("Inter-ExtraBoldItalic.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: normal;
font-weight: 900;
font-display: swap;
src: url("Inter-Black.woff2?v=3.19") format("woff2"),
url("Inter-Black.woff?v=3.19") format("woff");
}
@font-face {
font-family: 'Inter';
font-style: italic;
font-weight: 900;
font-display: swap;
src: url("Inter-BlackItalic.woff2?v=3.19") format("woff2"),
url("Inter-BlackItalic.woff?v=3.19") format("woff");
}
/* -------------------------------------------------------
Variable font.
Usage:
html { font-family: 'Inter', sans-serif; }
@supports (font-variation-settings: normal) {
html { font-family: 'Inter var', sans-serif; }
}
*/
@font-face {
font-family: 'Inter var';
font-weight: 100 900;
font-display: swap;
font-style: normal;
font-named-instance: 'Regular';
src: url("Inter-roman.var.woff2?v=3.19") format("woff2");
}
@font-face {
font-family: 'Inter var';
font-weight: 100 900;
font-display: swap;
font-style: italic;
font-named-instance: 'Italic';
src: url("Inter-italic.var.woff2?v=3.19") format("woff2");
}
/* --------------------------------------------------------------------------
[EXPERIMENTAL] Multi-axis, single variable font.
Slant axis is not yet widely supported (as of February 2019) and thus this
multi-axis single variable font is opt-in rather than the default.
When using this, you will probably need to set font-variation-settings
explicitly, e.g.
* { font-variation-settings: "slnt" 0deg }
.italic { font-variation-settings: "slnt" 10deg }
*/
@font-face {
font-family: 'Inter var experimental';
font-weight: 100 900;
font-display: swap;
font-style: oblique 0deg 10deg;
src: url("Inter.var.woff2?v=3.19") format("woff2");
}

View file

@ -4,8 +4,6 @@
{% block non_login_content %} {% block non_login_content %}
<div id="loginbox">
<div class="login">
{% if form.non_field_errors %} {% if form.non_field_errors %}
{% for error in form.non_field_errors %} {% for error in form.non_field_errors %}
<div class="alert alert-danger" role="alert"> <div class="alert alert-danger" role="alert">
@ -13,11 +11,10 @@
</div> </div>
{% endfor %} {% endfor %}
{% endif %} {% endif %}
<h2>Log in</h2>
<form method="post" action=""> <form method="post" action="">
{% csrf_token %} {% csrf_token %}
<div>
<label for="id_username" <label for="id_username"
class="visually-hidden"> class="visually-hidden">
{% trans "E-mail" %} {% trans "E-mail" %}
@ -29,8 +26,7 @@
placeholder="{% trans "E-mail" %}" placeholder="{% trans "E-mail" %}"
required required
autofocus> autofocus>
</div>
<div>
<label for="id_password" class="visually-hidden"> <label for="id_password" class="visually-hidden">
{% trans "Password" %} {% trans "Password" %}
</label> </label>
@ -40,25 +36,23 @@
class="form-control mb-lg-2" class="form-control mb-lg-2"
placeholder="{% trans "Password" %}" placeholder="{% trans "Password" %}"
required> required>
</div>
<div> <button class="w-100 mb-lg-2 btn btn-lg btn-primary"
<button type="submit">{% trans "Sign in" %}</button> type="submit">{% trans "Sign in" %}</button>
</div>
</form> </form>
<div>
<a href="{% url "account_reset_password" %}" <a href="{% url "account_reset_password" %}"
class="w-100 btn btn-lg btn-outline-info"> class="w-100 btn btn-lg btn-outline-info">
{% trans "Forgot password?" %} {% trans "Forgot password?" %}
</a> </a>
</div>
</div> <div class="hr-text">
<div class="signup"> <span>{% trans "Or"|upper %}</span>
<img src="https://data.coop/static/img/logo_da.svg" alt="data.coop logo">
<div class="new_here">
<h2> Are you new here? </h2>
<a class="button" href="{% url "account_signup" %}">{% trans "Become a member" %}</a>
</div>
</div>
</div> </div>
<a class="w-100 btn btn-lg btn-outline-success"
type="submit"
href="{% url "account_signup" %}">
{% trans "Become a member" %}
</a>
{% endblock %} {% endblock %}

View file

@ -5,8 +5,7 @@
{% block head_title %}{% trans "Sign Out" %}{% endblock %} {% block head_title %}{% trans "Sign Out" %}{% endblock %}
{% block content %} {% block content %}
<div class="content-view"> <h1>{% trans "Sign Out" %}</h1>
<h2>{% trans "Sign Out" %}</h2>
<p>{% trans 'Are you sure you want to sign out?' %}</p> <p>{% trans 'Are you sure you want to sign out?' %}</p>
@ -17,6 +16,6 @@
{% endif %} {% endif %}
<button type="submit">{% trans 'Sign Out' %}</button> <button type="submit">{% trans 'Sign Out' %}</button>
</form> </form>
</div>
{% endblock %} {% endblock %}

View file

@ -7,13 +7,76 @@
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content=""> <meta name="description" content="">
<title>Login {{ site.name }}</title> <title>Login {{ site.name }}</title>
<link rel="stylesheet" href="{% static "/fonts/inter.css" %}">
<link rel="stylesheet" href="{% static "/css/style.css" %}"> <link href="{% static "/css/bootstrap.min.css" %}" rel="stylesheet"
crossorigin="anonymous">
<link href="{% static "/css/bootstrap-icons.css" %}" rel="stylesheet"
crossorigin="anonymous">
<style>
html,
body {
height: 100%;
}
body {
display: flex;
align-items: center;
padding-top: 40px;
padding-bottom: 40px;
background-color: #a8f3f4;
}
.form-signin {
width: 100%;
max-width: 330px;
padding: 15px;
margin: auto;
}
.form-signin .checkbox {
font-weight: 400;
}
.form-signin .form-control {
position: relative;
box-sizing: border-box;
height: auto;
padding: 10px;
font-size: 16px;
}
.form-signin .form-control:focus {
z-index: 2;
}
.hr-text {
width: 100%;
text-align: center;
border-bottom: 1px solid #000;
line-height: 0.1em;
margin: 20px 0 20px;
}
.hr-text span {
background: #a8f3f4;
padding: 0 10px;
}
</style>
</head> </head>
<body> <body class="text-center">
<main id="login">
<main class="form-signin">
<img class="mb-4" src="https://data.coop/static/img/logo_da.svg" alt=""
width="260" height="160">
{% block non_login_content %} {% block non_login_content %}
{% endblock %} {% endblock %}
</main> </main>
</body> </body>
</html> </html>

View file

@ -8,13 +8,12 @@
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content=""> <meta name="description" content="">
<title>{% block head_title %}{% endblock %} {{ site.name }}</title> <title>{% block head_title %}{% endblock %} {{ site.name }}</title>
<link rel="stylesheet" href="{% static "/fonts/inter.css" %}">
<link rel="stylesheet" href="{% static "/css/style.css" %}"> <link rel="stylesheet" href="{% static "/css/style.css" %}">
</head> </head>
<body> <body>
<header> <header>
<h1> data.coop membersystem </h1> <h1> data.coop membersystem </h1>
<a class="logout" href="/accounts/logout">Log out</a> <a class="logout" href="/logout">Log out</a>
</header </header
<main> <main>
<aside> <aside>
@ -37,7 +36,7 @@
<ol> <ol>
<li><a href="/">Dashboard</a></li> <li><a href="/">Dashboard</a></li>
<li><a href="/services" class="current">Services</a></li> <li><a href="/services" class="current">Services</a></li>
<li><a href="#">Payment</a></li> <li><a>Payment</a></li>
<li><a href="/membership">Settings</a></li> <li><a href="/membership">Settings</a></li>
</ol> </ol>
</nav> </nav>

View file

@ -3,18 +3,3 @@
{% block head_title %} {% block head_title %}
{% trans "Home" %} {% trans "Home" %}
{% endblock %} {% endblock %}
{% block content %}
<div class="content-view">
<h2>Welcome {{ user }}!</h2>
<p>
Boink?
</p>
<div class="infobox">
<p>
To get started we need you to verify your email!
</p>
<button>Verify email</button>
</div>
</div>
{% endblock %}

View file

@ -1,28 +1,26 @@
{% extends "base.html" %} {% extends "base.html" %}
{% block content %} {% block content %}
<div class="content-view"> <div class="view-list">
<h2>Services you subscribe to</h2> <h2>Services you subscribe to</h2>
<div class="services"> <div class="services">
<div> <div>
<div class="description"> <div class="description">
<h3>Passit</h3> <h3>Passit</h3>
<p>Passit is a service that blabla</p> <p>Passit is a service that blabla</p>
<a href="#">Read more &hellip;</a>
</div> </div>
<a>Unsubscribe</a> <a>Unsubscribe</a>
</div> </div>
</div> </div>
</div> </div>
<div class="content-view"> <div class="view-list">
<h2>Available services</h2> <h2>Available services</h2>
<div class="services"> <div class="services">
<div> <div>
<div class="description"> <div class="description">
<h3>Forgejo</h3> <h3>Forgejo</h3>
<p>Forgejo is a service that blabla</p> <p>Forgejo is a service that blabla</p>
<a href="#">Read more &hellip;</a>
</div> </div>
<a>Subscribe</a> <a>Subscribe</a>
</div> </div>
@ -30,7 +28,6 @@
<div class="description"> <div class="description">
<h3>Mastodon</h3> <h3>Mastodon</h3>
<p>Mastodon is a service where you can write things to people around the world.</p> <p>Mastodon is a service where you can write things to people around the world.</p>
<a href="#">Read more &hellip;</a>
</div> </div>
<a>Subscribe</a> <a>Subscribe</a>
</div> </div>
@ -38,7 +35,6 @@
<div class="description"> <div class="description">
<h3>Matrix</h3> <h3>Matrix</h3>
<p>Matrix is a service that blabla</p> <p>Matrix is a service that blabla</p>
<a href="#">Read more &hellip;</a>
</div> </div>
<a>Subscribe</a> <a>Subscribe</a>
</div> </div>
@ -46,7 +42,6 @@
<div class="description"> <div class="description">
<h3>NextCloud</h3> <h3>NextCloud</h3>
<p>NextCloud is a service that blabla</p> <p>NextCloud is a service that blabla</p>
<a href="#">Read more &hellip;</a>
</div> </div>
<a>Subscribe</a> <a>Subscribe</a>
</div> </div>