replaced 4xl text with 3xl (#1572)

This commit is contained in:
Rob Beeston
2024-12-23 14:21:12 -08:00
committed by GitHub
parent cb2b340ecd
commit 37ae1a1e6f
27 changed files with 473 additions and 587 deletions

View File

@@ -31,7 +31,7 @@
}
h2 {
@apply text-slate dark:text-white;
@apply text-4xl;
@apply text-3xl;
@apply my-5;
}
h3 {

View File

@@ -1,4 +1,4 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load i18n %}
@@ -6,57 +6,54 @@
{% load account socialaccount %}
{% load static %}
{% block head_title %}{% trans "Log In" %}{% endblock %}
{% block head_title %}
{% trans 'Log In' %}
{% endblock %}
{% block body_id %}id="authpages"{% endblock %}
{% block body_id %}
id="authpages"
{% endblock %}
{% block content %}
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="md:pt-11 md:mt-11 w-full bg-white dark:bg-charcoal mx-auto rounded py-6 px-3">
<div class="md:w-full">
{% if contributor_account_redirect_message %}
<div role="alert" class="py-2 px-3 mb-3 text-center rounded-sm bg-yellow-200/70">
<div role="alert" class="py-2 px-3 mb-3 text-center rounded-sm bg-yellow-200/70">
<p class="p-0 m-0">
<i class="fas fa-exclamation-circle"></i>
{{ contributor_account_redirect_message }}
<i class="fas fa-exclamation-circle"></i>
{{ contributor_account_redirect_message }}
</p>
</div>
{% endif %}
<h1 class="text-4xl text-center">{% trans "Log In" %}</h1>
<p class="mt-0 text-center">{% blocktrans %}If you have not created an account yet, please
<a href="{{ signup_url }}" class="text-sky-600 dark:text-sky-300 hover:text-orange dark:hover:text-orange">sign up</a> first.{% endblocktrans %}
</div>
{% endif %}
<h1 class="text-3xl text-center">{% trans 'Log In' %}</h1>
<p class="mt-0 text-center">
{% blocktrans %}If you have not created an account yet, please
<a href="{{ signup_url }}" class="text-sky-600 dark:text-sky-300 hover:text-orange dark:hover:text-orange">sign up</a> first.{% endblocktrans %}
</p>
</div>
<div class="w-full">
<div class="w-full md:flex md:divide-x divide-gray-200 space-y-11 md:space-y-0">
<div class="socialaccount_ballot w-full md:w-1/2">
{% get_providers as socialaccount_providers %}
{% if socialaccount_providers %}
{% blocktrans with site.name as site_name %}
<h2 class="text-xl text-center mb-11">Log in with one of your existing third party accounts</h2>
<h2 class="text-xl text-center mb-11">Log in with one of your existing third party accounts</h2>
{% endblocktrans %}
<div class="socialaccount_ballot">
<div class="space-y-6 w-full text-center">
{% include "socialaccount/snippets/provider_list.html" with process="login" %}
{% include 'socialaccount/snippets/provider_list.html' with process='login' %}
</div>
{% include "socialaccount/snippets/login_extra.html" %}
{% include 'socialaccount/snippets/login_extra.html' %}
</div>
{% endif %}
</div>
<div class="w-full md:w-1/2">
<h2 class="text-xl text-center items-center">
Or Log In with Email <span x-cloak class="text-xs bg-emerald-400 text-slate rounded px-1 ml-2" x-show="providerMatchesLastLogin('email')">Last Log In</span>
</h2>
<h2 class="text-xl text-center items-center">Or Log In with Email <span x-cloak class="text-xs bg-emerald-400 text-slate rounded px-1 ml-2" x-show="providerMatchesLastLogin('email')">Last Log In</span></h2>
<form class="login" method="POST" action="{% url 'account_login' %}">
<div class="mx-auto space-y-4 w-2/3" id="signup_form">
{% csrf_token %}
@@ -64,16 +61,17 @@
<!-- Display non-field errors -->
{% if form.non_field_errors %}
{% for error in form.non_field_errors %}
<div class="py-1 px-3 text-white bg-red-600">
{{ error }}
</div>
<div class="py-1 px-3 text-white bg-red-600">{{ error }}</div>
{% endfor %}
{% endif %}
{% for field in form.visible_fields %}
<div>
<label class="text-xs uppercase text-slate dark:text-white/70" for="{{ field.id_for_label }}">{{ field.label }}{% if field.widget_type == 'checkbox' %}&nbsp;&nbsp;{% endif %}
{% render_field field placeholder="" %}
<label class="text-xs uppercase text-slate dark:text-white/70" for="{{ field.id_for_label }}">
{{ field.label }}{% if field.widget_type == 'checkbox' %}
&nbsp;&nbsp;
{% endif %}
{% render_field field placeholder='' %}
</label>
{% if field.help_text %}
<small>{{ field.help_text }}</small>
@@ -82,13 +80,12 @@
{% endfor %}
{% if redirect_field_value %}
<input type="hidden" name="{{ redirect_field_name }}" value="{{ redirect_field_value }}"/>
<input type="hidden" name="{{ redirect_field_name }}" value="{{ redirect_field_value }}" />
{% endif %}
<div class="flex justify-between mb-4">
<a class="text-sky-600 dark:text-sky-300 hover:text-orange dark:hover:text-orange" href="{% url 'account_reset_password' %}">{% trans "Forgot Password?" %}</a>
<button type="submit"
class="py-3 px-8 text-sm text-base font-medium text-white uppercase rounded-md border md:py-1 md:px-4 md:text-lg bg-orange hover:bg-orange/80 border-orange dark:bg-slate dark:hover:bg-charcoal dark:text-white hover:drop-shadow-md">{% trans "Log in" %}</button>
<a class="text-sky-600 dark:text-sky-300 hover:text-orange dark:hover:text-orange" href="{% url 'account_reset_password' %}">{% trans 'Forgot Password?' %}</a>
<button type="submit" class="py-3 px-8 text-sm text-base font-medium text-white uppercase rounded-md border md:py-1 md:px-4 md:text-lg bg-orange hover:bg-orange/80 border-orange dark:bg-slate dark:hover:bg-charcoal dark:text-white hover:drop-shadow-md">{% trans 'Log in' %}</button>
</div>
</div>
</form>
@@ -97,5 +94,4 @@
</div>
</div>
</div>
{% endblock %}

View File

@@ -1,37 +1,39 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load i18n %}
{% load account %}
{% block head_title %}{% trans "Password Reset" %}{% endblock %}
{% block head_title %}
{% trans 'Password Reset' %}
{% endblock %}
{% block content %}
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="md:pt-11 md:mt-11 w-full bg-white dark:bg-charcoal mx-auto rounded py-6 px-3">
<div class="md:w-full text-center">
<h1 class="text-4xl">{% trans "Password Reset" %}</h1>
<h1 class="text-3xl">{% trans 'Password Reset' %}</h1>
{% if user.is_authenticated %}
{% include "account/snippets/already_logged_in.html" %}
{% include 'account/snippets/already_logged_in.html' %}
{% endif %}
<p>{% trans "Forgot your password? Enter your e-mail address below, and we'll send you an e-mail allowing you to reset it." %}</p>
<p>
{% trans "Forgot your password? Enter your e-mail address below, and we'll send you an e-mail allowing you to reset it." %}
</p>
<form method="POST" action="{% url 'account_reset_password' %}" class="password_reset text-left">
{% csrf_token %}
<div class="mx-auto w-full md:w-1/2">
{{ form.as_p }}
{% csrf_token %}
<div class="mx-auto w-full md:w-1/2">
{{ form.as_p }}
<div class="my-3 text-center">
<button type="submit"
class="py-3 px-8 text-sm text-base font-medium text-white uppercase rounded-md border md:py-1 md:px-4 md:text-lg bg-orange hover:bg-orange/80 border-orange dark:bg-slate dark:hover:bg-charcoal dark:text-white hover:drop-shadow-md">
{% trans 'Reset My Password' %}
</button>
</div>
<div class="my-3 text-center">
<button type="submit" class="py-3 px-8 text-sm text-base font-medium text-white uppercase rounded-md border md:py-1 md:px-4 md:text-lg bg-orange hover:bg-orange/80 border-orange dark:bg-slate dark:hover:bg-charcoal dark:text-white hover:drop-shadow-md">{% trans 'Reset My Password' %}</button>
</div>
</div>
</form>
<p class="mt-6">{% blocktrans %}Please contact us if you have any trouble resetting your password.{% endblocktrans %}</p>
<p class="mt-6">
{% blocktrans %}Please contact us if you have any trouble resetting your password.{% endblocktrans %}
</p>
</div>
</div>
</div>

View File

@@ -1,21 +1,25 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load i18n %}
{% load account %}
{% block head_title %}{% trans "Password Reset" %}{% endblock %}
{% block head_title %}
{% trans 'Password Reset' %}
{% endblock %}
{% block content %}
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="md:pt-11 md:mt-11 w-full bg-white dark:bg-charcoal mx-auto rounded py-6 px-3">
<div class="md:w-full text-center">
<h1 class="text-4xl">{% trans "Password Reset" %}</h1>
<h1 class="text-3xl">{% trans 'Password Reset' %}</h1>
{% if user.is_authenticated %}
{% include "account/snippets/already_logged_in.html" %}
{% include 'account/snippets/already_logged_in.html' %}
{% endif %}
<p>{% blocktrans %}We have sent you an e-mail. If you have not received it please check your spam folder. Otherwise contact us if you do not receive it in a few minutes.{% endblocktrans %}</p>
<p>
{% blocktrans %}We have sent you an e-mail. If you have not received it please check your spam folder. Otherwise contact us if you do not receive it in a few minutes.{% endblocktrans %}
</p>
</div>
</div>
</div>

View File

@@ -1,55 +1,61 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load i18n %}
{% block head_title %}{% trans "Change Password" %}{% endblock %}
{% block head_title %}
{% trans 'Change Password' %}
{% endblock %}
{% block content %}
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="md:pt-11 md:mt-11 w-full bg-white dark:bg-charcoal mx-auto rounded py-6 px-3">
<div class="md:w-full text-center">
<h1 class="text-4xl">{% if token_fail %}{% trans "Bad Token" %}{% else %}{% trans "Change Password" %}{% endif %}</h1>
<h1 class="text-3xl">
{% if token_fail %}
{% trans 'Bad Token' %}
{% else %}
{% trans 'Change Password' %}
{% endif %}
</h1>
{% if token_fail %}
{% url 'account_reset_password' as passwd_reset_url %}
<p>{% blocktrans %}The password reset link was invalid, possibly because it has already been used. Please request a <a href="{{ passwd_reset_url }}">new password reset</a>.{% endblocktrans %}</p>
{% url 'account_reset_password' as passwd_reset_url %}
<p>
{% blocktrans %}The password reset link was invalid, possibly because it has already been used. Please request a <a href="{{ passwd_reset_url }}">new password reset</a>.{% endblocktrans %}
</p>
{% else %}
<form method="POST" action="{{ action_url }}">
{% csrf_token %}
<form method="POST" action="{{ action_url }}">
{% csrf_token %}
<div class="mx-auto space-y-4 w-2/3" id="signup_form">
<!-- Display non-field errors -->
{% if form.non_field_errors %}
{% for error in form.non_field_errors %}
<div class="py-1 px-3 text-white bg-red-600">
{{ error }}
</div>
<div class="mx-auto space-y-4 w-2/3" id="signup_form">
<!-- Display non-field errors -->
{% if form.non_field_errors %}
{% for error in form.non_field_errors %}
<div class="py-1 px-3 text-white bg-red-600">{{ error }}</div>
{% endfor %}
{% endif %}
{% for field in form.visible_fields %}
{% if field.errors %}
{% for error in field.errors %}
<div class="text-red-600">{{ error }}</div>
{% endfor %}
{% endif %}
{% for field in form.visible_fields %}
{% if field.errors %}
{% for error in field.errors %}
<div class="text-red-600">{{ error }}</div>
{% endfor %}
<div class="text-left">
<label class="text-xs uppercase text-slate dark:text-white/70">
{{ field.label }}
{{ field }}
</label>
{% if field.help_text %}
<small>{{ field.help_text }}</small>
{% endif %}
<div class="text-left">
<label class="text-xs uppercase text-slate dark:text-white/70">{{ field.label }}
{{ field }}
</label>
{% if field.help_text %}
<small>{{ field.help_text }}</small>
{% endif %}
</div>
{% endfor %}
<div class="my-3 text-center">
<button type="submit"
class="py-3 px-8 text-sm text-base font-medium text-white uppercase rounded-md border md:py-1 md:px-4 md:text-lg bg-orange hover:bg-orange/80 border-orange dark:bg-slate dark:hover:bg-charcoal dark:text-white hover:drop-shadow-md">
{% trans 'change password' %}
</button>
</div>
{% endfor %}
<div class="my-3 text-center">
<button type="submit" class="py-3 px-8 text-sm text-base font-medium text-white uppercase rounded-md border md:py-1 md:px-4 md:text-lg bg-orange hover:bg-orange/80 border-orange dark:bg-slate dark:hover:bg-charcoal dark:text-white hover:drop-shadow-md">{% trans 'change password' %}</button>
</div>
</form>
</div>
</form>
{% endif %}
</div>
</div>

View File

@@ -1,15 +1,19 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load account socialaccount i18n %}
{% block head_title %}{% trans "Change Password" %}{% endblock %}
{% block head_title %}
{% trans 'Change Password' %}
{% endblock %}
{% block content %}
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="md:pt-11 md:mt-11 w-full bg-white dark:bg-charcoal mx-auto rounded py-6 px-3">
<div class="md:w-full text-center">
<h1 class="text-4xl">{% trans "Change Password" %}</h1>
<h1 class="text-3xl">{% trans 'Change Password' %}</h1>
{% url 'account_login' as login_url %}
<p>{% blocktrans %}Your password is now changed. <a href="{{ login_url }}">Log in</a> with your new password.{% endblocktrans %}</p>
<p>
{% blocktrans %}Your password is now changed. <a href="{{ login_url }}">Log in</a> with your new password.{% endblocktrans %}
</p>
</div>
</div>
</div>

View File

@@ -1,179 +1,139 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load i18n %}
{% load widget_tweaks %}
{% load account socialaccount %}
{% block head_title %}{% trans "Sign Up" %}{% endblock %}
{% block head_title %}
{% trans 'Sign Up' %}
{% endblock %}
{% block body_id %}id="authpages"{% endblock %}
{% block body_id %}
id="authpages"
{% endblock %}
{% block content %}
<style lang="css">
.disabledLink {
border: 1px solid transparent !important;
pointer-events: none;
background-color: #ddd !important;
color: #fff !important;
}
<style lang="css">
.disabledLink {
border: 1px solid transparent !important;
pointer-events: none;
background-color: #ddd !important;
color: #fff !important;
}
.dark .disabledLink {
border: 1px solid transparent !important;
pointer-events: none;
background-color: rgb(5 26 38 / var(--tw-bg-opacity)) !important;
color: rgb(23 42 52 / var(--tw-bg-opacity)) !important;
}
</style>
.dark .disabledLink {
border: 1px solid transparent !important;
pointer-events: none;
background-color: rgb(5 26 38 / var(--tw-bg-opacity)) !important;
color: rgb(23 42 52 / var(--tw-bg-opacity)) !important;
}
</style>
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div
class="md:pt-11 md:mt-11 w-full bg-white dark:bg-charcoal mx-auto rounded py-6 px-3"
>
<div class="md:w-full">
<h1 class="text-4xl text-center">{% trans "Sign Up" %}</h1>
<p class="mt-0 pb-0 text-center">
{% blocktrans %}Already have an account? Then please
<a
href="{{ login_url }}"
class="text-sky-600 dark:text-sky-300 hover:text-orange dark:hover:text-orange"
>log in</a
>.{% endblocktrans %}
</p>
<div id="jsvalidation" class="flex justify-center w-full pb-1 hidden">
<p class="flex items-center font-bold">
<input
type="checkbox"
class="border-2 border-solid text-sky-600 dark:text-sky-300"
id="readTOS"
onclick="accepted()"
/>
<label for="readTOS">
I have read and accepted the
<a
href="terms-of-use"
target="_blank"
class="text-sky-600 dark:text-sky-300 hover:text-orange dark:hover:text-orange mx-1"
onclick="displayModal('70vh','70vw', '../../terms-of-use/?=noheader')"
>Terms of Use</a
>
for this service.
</label>
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="md:pt-11 md:mt-11 w-full bg-white dark:bg-charcoal mx-auto rounded py-6 px-3">
<div class="md:w-full">
<h1 class="text-3xl text-center">{% trans 'Sign Up' %}</h1>
<p class="mt-0 pb-0 text-center">
{% blocktrans %}Already have an account? Then please
<a href="{{ login_url }}" class="text-sky-600 dark:text-sky-300 hover:text-orange dark:hover:text-orange">log in</a>.{% endblocktrans %}
</p>
</div>
<div id="jsfallback" class="flex justify-center w-full pb-1">
<p class="flex items-center font-bold">
By joining this site, you agree to the
<a
href="terms-of-use"
target="_blank"
class="text-sky-600 dark:text-sky-300 hover:text-orange dark:hover:text-orange mx-1"
>Terms of Use</a
>
for this website.
</p>
</div>
</div>
<div class="w-full">
<div
class="w-full md:flex md:divide-x divide-gray-200 space-y-11 md:space-y-0"
>
<div class="socialaccount_ballot w-full md:w-1/2">
<h2 class="text-xl text-center mb-11">
Sign Up with an existing third party account
</h2>
<div class="space-y-6 w-full text-center">
{% providers_media_js %}
{% include "socialaccount/snippets/provider_list.html" with process="login" %}
{% include "socialaccount/snippets/login_extra.html" %}
</div>
<div id="jsvalidation" class="flex justify-center w-full pb-1 hidden">
<p class="flex items-center font-bold">
<input type="checkbox" class="border-2 border-solid text-sky-600 dark:text-sky-300" id="readTOS" onclick="accepted()" />
<label for="readTOS">
I have read and accepted the
<a href="terms-of-use" target="_blank" class="text-sky-600 dark:text-sky-300 hover:text-orange dark:hover:text-orange mx-1" onclick="displayModal('70vh','70vw', '../../terms-of-use/?=noheader')">Terms of Use</a>
for this service.
</label>
</p>
</div>
<div id="jsfallback" class="flex justify-center w-full pb-1">
<p class="flex items-center font-bold">
By joining this site, you agree to the
<a href="terms-of-use" target="_blank" class="text-sky-600 dark:text-sky-300 hover:text-orange dark:hover:text-orange mx-1">Terms of Use</a>
for this website.
</p>
</div>
</div>
<div class="w-full md:w-1/2">
<h2 class="text-xl text-center">Or Sign Up with Email</h2>
<form
id="signup_form"
method="post"
action="{% url 'account_signup' %}"
>
<div class="mx-auto space-y-4 w-2/3">
{% csrf_token %}
<div class="w-full">
<div class="w-full md:flex md:divide-x divide-gray-200 space-y-11 md:space-y-0">
<div class="socialaccount_ballot w-full md:w-1/2">
<h2 class="text-xl text-center mb-11">Sign Up with an existing third party account</h2>
<div class="space-y-6 w-full text-center">
{% providers_media_js %}
{% include 'socialaccount/snippets/provider_list.html' with process='login' %}
{% include 'socialaccount/snippets/login_extra.html' %}
</div>
</div>
<!-- Display non-field errors -->
{% if form.non_field_errors %}
{% for error in form.non_field_errors %}
<div class="py-1 px-3 text-white bg-red-600">{{ error }}</div>
{% endfor %}
{% endif %}
{% for field in form.visible_fields %}
{% if field.errors %}
{% for error in field.errors %}
<div class="text-red-600">{{ error }}</div>
<div class="w-full md:w-1/2">
<h2 class="text-xl text-center">Or Sign Up with Email</h2>
<form id="signup_form" method="post" action="{% url 'account_signup' %}">
<div class="mx-auto space-y-4 w-2/3">
{% csrf_token %}
<!-- Display non-field errors -->
{% if form.non_field_errors %}
{% for error in form.non_field_errors %}
<div class="py-1 px-3 text-white bg-red-600">{{ error }}</div>
{% endfor %}
{% endif %}
<div>
<label class="text-xs uppercase text-slate dark:text-white/70"
>{{ field.label }} {% render_field field placeholder="" %}
</label>
{% for field in form.visible_fields %}
{% if field.errors %}
{% for error in field.errors %}
<div class="text-red-600">{{ error }}</div>
{% endfor %}
{% endif %}
<div>
<label class="text-xs uppercase text-slate dark:text-white/70">{{ field.label }} {% render_field field placeholder='' %}</label>
{% if field.help_text %}
<small>{{ field.help_text }}</small>
{% if field.help_text %}
<small>{{ field.help_text }}</small>
{% endif %}
</div>
{% endfor %} {% if redirect_field_value %}
<input type="hidden" name="{{ redirect_field_name }}" value="{{ redirect_field_value }}" />
{% endif %}
</div>
{% endfor %} {% if redirect_field_value %}
<input
type="hidden"
name="{{ redirect_field_name }}"
value="{{ redirect_field_value }}"
/>
{% endif %}
</div>
<div class="my-3 text-center">
<button
type="submit"
id="signup"
class="py-3 px-8 text-sm text-base font-medium text-white uppercase rounded-md border md:py-1 md:px-4 md:text-lg bg-orange hover:bg-orange/80 border-orange dark:bg-slate dark:hover:bg-charcoal dark:text-white hover:drop-shadow-md"
>
{% trans "Sign Up" %}
</button>
</div>
</form>
<div class="my-3 text-center">
<button type="submit" id="signup" class="py-3 px-8 text-sm text-base font-medium text-white uppercase rounded-md border md:py-1 md:px-4 md:text-lg bg-orange hover:bg-orange/80 border-orange dark:bg-slate dark:hover:bg-charcoal dark:text-white hover:drop-shadow-md">{% trans 'Sign Up' %}</button>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
function toggleElementsOff(disable) {
const buttonIds = ["gitButton", "googleButton", "id_email", "id_password1", "id_password2", "signup"];
buttonIds.forEach((id) => {
const button = document.getElementById(id);
if (button) {
if (disable) {
button.classList.add("disabledLink");
} else {
button.classList.remove("disabledLink");
<script>
function toggleElementsOff(disable) {
const buttonIds = ['gitButton', 'googleButton', 'id_email', 'id_password1', 'id_password2', 'signup']
buttonIds.forEach((id) => {
const button = document.getElementById(id)
if (button) {
if (disable) {
button.classList.add('disabledLink')
} else {
button.classList.remove('disabledLink')
}
}
}
});
}
})
}
function accepted() {
const tosCheckbox = document.getElementById("readTOS");
toggleElementsOff(!tosCheckbox.checked);
}
window.addEventListener("load", function () {
let nojs = document.getElementById("jsfallback");
let yesjs = document.getElementById("jsvalidation");
nojs.classList.add("hidden");
yesjs.classList.remove("hidden");
toggleElementsOff(true);
});
</script>
function accepted() {
const tosCheckbox = document.getElementById('readTOS')
toggleElementsOff(!tosCheckbox.checked)
}
window.addEventListener('load', function () {
let nojs = document.getElementById('jsfallback')
let yesjs = document.getElementById('jsvalidation')
nojs.classList.add('hidden')
yesjs.classList.remove('hidden')
toggleElementsOff(true)
})
</script>
{% endblock %}

View File

@@ -1,4 +1,4 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load static %}
@@ -12,10 +12,8 @@
{% block content %}
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="py-16 md:w-full">
<h1 class="text-4xl text-center">Boost Moderators</h1>
<p class="mt-0 text-center">
These are some of the collaborative experts behind Boost!
</p>
<h1 class="text-3xl text-center">Boost Moderators</h1>
<p class="mt-0 text-center">These are some of the collaborative experts behind Boost!</p>
</div>
<div class="py-5 my-6 border-t border-b border-slate">
@@ -28,9 +26,7 @@
<div>
<h3>In Memoriam</h3>
<p>
Once a part of Boost, always a part of Boost. We appreciate these special individuals contributions.
</p>
<p>Once a part of Boost, always a part of Boost. We appreciate these special individuals contributions.</p>
<div class="grid grid-rows-5 grid-flow-col gap-4 text-sm">
<div>
<img src="{% static 'img/fpo/memoriam.png' %}" />

View File

@@ -1,4 +1,4 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load static %}
@@ -12,10 +12,8 @@
{% block content %}
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="py-16 md:w-full">
<h1 class="text-4xl text-center">Boost People</h1>
<p class="mt-0 text-center">
These are some of the collaborative experts behind Boost!
</p>
<h1 class="text-3xl text-center">Boost People</h1>
<p class="mt-0 text-center">These are some of the collaborative experts behind Boost!</p>
</div>
<div class="py-5 my-6 border-t border-b border-slate">
@@ -28,9 +26,7 @@
<div>
<h3>In Memoriam</h3>
<p>
Once a part of Boost, always a part of Boost. We appreciate these special individuals contributions.
</p>
<p>Once a part of Boost, always a part of Boost. We appreciate these special individuals contributions.</p>
<div class="grid grid-rows-5 grid-flow-col gap-4 text-sm">
<div>
<img src="{% static 'img/fpo/memoriam.png' %}" />

View File

@@ -1,24 +1,15 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load static %}
{% block content %}
<div class="py-0 px-3 mb-3 md:px-0">
<div class="flex py-8 py-16 my-5 border-b border-slate">
<div class="w-1/2">
<h1 class="text-4xl">Dave Abrahams</h1>
<p>
Dave Abrahams is a founding member and moderator of Boost, and an active member of the wider open-source community.
He has been an ANSI/ISO C++ committee member since 1996, and has worked in the software industry since 1988. In
2001 He founded Boost Consulting (now Boostpro Computing) , a company dedicated to providing professional support
and development services for the Boost C++ libraries and associated tools.
</p>
<h1 class="text-3xl">Dave Abrahams</h1>
<p>Dave Abrahams is a founding member and moderator of Boost, and an active member of the wider open-source community. He has been an ANSI/ISO C++ committee member since 1996, and has worked in the software industry since 1988. In 2001 He founded Boost Consulting (now Boostpro Computing) , a company dedicated to providing professional support and development services for the Boost C++ libraries and associated tools.</p>
<p>
Dave often shows up at C++ standards committee meetings on a bicycle. He lives in Somerville, Massachusetts
with his family.
</p>
<p>Dave often shows up at C++ standards committee meetings on a bicycle. He lives in Somerville, Massachusetts with his family.</p>
<div class="flex space-x-4">
<span class="inline-block">Follow:</span>
@@ -30,7 +21,6 @@
<div class="w-1/2">
<img class="float-right rounded-lg" src="{% static 'img/fpo/dave_abrahams.jpg' %}" />
</div>
</div>
<div class="block flex my-16">
@@ -41,7 +31,5 @@
<a href="#" class="py-2 px-4 text-sm font-medium uppercase rounded-md border border-slate text-orange">Next ></a>
</div>
</div>
</div>
{% endblock %}

View File

@@ -1,15 +1,17 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% block title %}Boost Calendar{% endblock %}
{% block title %}
Boost Calendar
{% endblock %}
{% block content_wrapper %}
<div class="flex justify-center items-center mb-4">
<h1 class="text-4xl">Boost Calendar</h1>
</div>
<div class="container px-4 my-8 mx-auto">
<div class="flex justify-center items-center mb-4">
<h1 class="text-3xl">Boost Calendar</h1>
</div>
<div class="container px-4 my-8 mx-auto">
<div class="section-body">
<p>Below is a community maintained calendar of Boost related events. The release managers try to keep the release related portion of the calendar up to date.</p>
<iframe src="https://www.google.com/calendar/embed?src={{ boost_calendar }}&amp;ctz=America/Chicago" class="c1" width="100%" height="600" frameborder="0" scrolling="no"></iframe>
<p>Below is a community maintained calendar of Boost related events. The release managers try to keep the release related portion of the calendar up to date.</p>
<iframe src="https://www.google.com/calendar/embed?src={{ boost_calendar }}&amp;ctz=America/Chicago" class="c1" width="100%" height="600" frameborder="0" scrolling="no"></iframe>
</div>
</div>
</div>
{% endblock %}

View File

@@ -1,115 +1,55 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load static %}
{% block content %}
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="py-16 md:w-full">
<h1 class="text-4xl">Donate to the Boost C++ Libraries</h1>
<h1 class="text-3xl">Donate to the Boost C++ Libraries</h1>
<p>
According to <a class="text-orange" href="https://www.openhub.net/p/boost/estimated_cost">OpenHub's
Boost page</a>, as of August 2014 there are 14.2 million lines
of code in Boost. Given the high quality of coding needed to
pass Boost's community review process, and the extensive unit
and functional testing required, a cost of US$20/line is not
unreasonable. By that metric, the Boost C++ Libraries would
cost US$284 million to rewrite from scratch in a commercial
organization.
According to <a class="text-orange" href="https://www.openhub.net/p/boost/estimated_cost">OpenHub's Boost page</a>, as of August 2014 there are 14.2 million lines of code in Boost. Given the high quality of coding needed to pass Boost's community review process, and the extensive unit and functional testing required, a cost of US$20/line is not unreasonable. By that metric, the Boost C++ Libraries would cost US$284 million to rewrite from scratch in a commercial organization.
</p>
<p>
If you want more of the same, please donate generously. We
will use donations to fund Boost infrastructure, help finance
<a class="text-orange" href="http://cppnow.org/">the annual C++ Now conference</a>,
and help fund students to work on Boost code without having to
worry as much about finding the time or money to do so. You
should be aware we may also use donations for any other purpose
the Boost steering committee feels appropriate.
If you want more of the same, please donate generously. We will use donations to fund Boost infrastructure, help finance
<a class="text-orange" href="http://cppnow.org/">the annual C++ Now conference</a>, and help fund students to work on Boost code without having to worry as much about finding the time or money to do so. You should be aware we may also use donations for any other purpose the Boost steering committee feels appropriate.
</p>
{% include "donate/_donate-button.html" %}
{% include 'donate/_donate-button.html' %}
<h3>Why ask for donations for the first time in fifteen years?</h3>
<p>
Boost was not generated, for the most part, by any
commercial organization. It is available in the public interest
as one of the purest forms of open source: its license,
<a class="text-orange" href="{% static 'license.txt' %}">the Boost
Software License</a>, is highly permissive and allows
unrestricted commercial use. Most of the code was written,
documented, and tested in the spare and family time of some of
the very best C++ engineers in the world, many of whom are also
involved in the ISO C++ standardization process. Many of the
additions to the C++ 11 standard library started life in the
Boost libraries, and so will many of the additions and changes
to the next C++ standard library.
Boost was not generated, for the most part, by any commercial organization. It is available in the public interest as one of the purest forms of open source: its license,
<a class="text-orange" href="{% static 'license.txt' %}">the Boost Software License</a>, is highly permissive and allows unrestricted commercial use. Most of the code was written, documented, and tested in the spare and family time of some of the very best C++ engineers in the world, many of whom are also involved in the ISO C++ standardization process. Many of the additions to the C++ 11 standard library started life in the Boost libraries, and so will many of the additions and changes to the next C++ standard library.
</p>
<p>
Yet, for its first fifteen years, Boost has never asked for
donations of money from its users. So why begin now?
</p>
<p>Yet, for its first fifteen years, Boost has never asked for donations of money from its users. So why begin now?</p>
<p>
As Boost grows, more time and resources are being spent on
dealing with the size and complexity of Boost, especially as
libraries are transitioned to make full use of the new language
features in C++ 11/14. If you wish to support those efforts to
bring more Boost libraries into first tier support for the
latest generation of C++, please donate generously.
</p>
<p>As Boost grows, more time and resources are being spent on dealing with the size and complexity of Boost, especially as libraries are transitioned to make full use of the new language features in C++ 11/14. If you wish to support those efforts to bring more Boost libraries into first tier support for the latest generation of C++, please donate generously.</p>
{% include "donate/_donate-button.html" %}
{% include 'donate/_donate-button.html' %}
<h3>Why you should donate with a recurring monthly donation</h3>
<p>
Boost has participated in <a class="text-orange" href="https://en.wikipedia.org/wiki/Google_Summer_of_Code">Google's
Summer of Code</a> since 2007. This is an annual student open-source programming stipend program lasting three months during
which experienced Boost developers mentor students who work on
improving Boost libraries, usually in all the boring, thankless
stuff none of us like to do. The problem with the three month
duration is that the student is only just getting familiar
enough with the Boost libraries to ramp up their
productivity and rate of output when the program ends. This
leads to these outcomes:
Boost has participated in <a class="text-orange" href="https://en.wikipedia.org/wiki/Google_Summer_of_Code">Google's Summer of Code</a> since 2007. This is an annual student open-source programming stipend program lasting three months during which experienced Boost developers mentor students who work on improving Boost libraries, usually in all the boring, thankless stuff none of us like to do. The problem with the three month duration is that the student is only just getting familiar enough with the Boost libraries to ramp up their productivity and rate of output when the program ends. This leads to these outcomes:
</p>
<ul>
<li>We don't reap the full rewards of what we should given
the substantial investment in mentoring our developers invest
into students each year.</li>
<li>We don't reap the full rewards of what we should given the substantial investment in mentoring our developers invest into students each year.</li>
<li>The student is just getting into the Boost libraries when
they need to return to concentrating on their studies, and
often back to the part time work needed to finance the high
expense of university study nowadays.</li>
<li>The student is just getting into the Boost libraries when they need to return to concentrating on their studies, and often back to the part time work needed to finance the high expense of university study nowadays.</li>
<li>Students, when they graduate, get pulled into the
development of proprietary rather than open-source software,
or they end up gravitating to one of the many open source
projects much better at running a student-to-developer
pipeline than Boost historically has been.</li>
<li>Students, when they graduate, get pulled into the development of proprietary rather than open-source software, or they end up gravitating to one of the many open source projects much better at running a student-to-developer pipeline than Boost historically has been.</li>
</ul>
<p>
Whatever the case, Boost is not benefiting as it should from
enthusiastic students with great ideas about where C++ should
go next, and we hope that <em>you</em> can help us change
that.
</p>
<p>
So, if you or your company or organization has benefited
from the Boost C++ Libraries, or you would like to assist
promising young C++ engineers develop their talents to the
full, please strongly consider making a regular monthly
donation to Boost! Please donate generously. Thank you in
advance!
Whatever the case, Boost is not benefiting as it should from enthusiastic students with great ideas about where C++ should go next, and we hope that <em>you</em> can help us change that.
</p>
<p>So, if you or your company or organization has benefited from the Boost C++ Libraries, or you would like to assist promising young C++ engineers develop their talents to the full, please strongly consider making a regular monthly donation to Boost! Please donate generously. Thank you in advance!</p>
</div>
</div>
{% endblock %}

View File

@@ -17,7 +17,7 @@
</div>
</div>
<div class="text-center grow flex-col md:ml-6 md:text-left md:w-1/2 flex items-center justify-center px-3 md:px-0">
<h1 class="text-4xl font-extrabold md:text-5xl md:leading-[3.5rem]">
<h1 class="text-3xl font-extrabold md:text-5xl md:leading-[3.5rem]">
<span class="block xl:inline">The <span class="active-link">Boost</span> C++ Libraries are open source, peer-reviewed, portable and free </span>
</h1>
<p class=" pb-0 mt-3 max-w-md text md:text-lg md:mt-5 md:mb-3 md:max-w-3xl">Created by experts to be reliable, skillfully-designed, and well-tested.</p>
@@ -259,7 +259,7 @@
<!-- BOOST LIBRARIES LOGOS AND TESTIMONIALS -->
{# <div>#}
{# <h2 class="text-4xl text-center">Boost Libraries Headline</h2>#}
{# <h2 class="text-3xl text-center">Boost Libraries Headline</h2>#}
{# <div class="grid grid-cols-2 gap-4 justify-between justify-items-center items-center my-16 md:grid-cols-6">#}
{# <img src="{% static 'img/fpo/airbus.svg' %}" alt="airbus" />#}
{# <img src="{% static 'img/fpo/usairforce.svg' %}" alt="air force" />#}

View File

@@ -1,19 +1,19 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load i18n %}
{% block content %}
<div class="py-0 px-3 mb-3 text-center md:py-6 md:px-0">
<h1 class="text-4xl">{% translate "Please confirm your choice below" %}</h1>
<p>
{% blocktrans with entry_title=entry.title %}
Are you sure you want to permanently delete <strong>{{ entry_title }}</strong>?
{% endblocktrans %}
</p>
<div class="py-0 px-3 mb-3 text-center md:py-6 md:px-0">
<h1 class="text-3xl">{% translate 'Please confirm your choice below' %}</h1>
<p>
{% blocktrans with entry_title=entry.title %}Are you sure you want to permanently delete <strong>{{ entry_title }}</strong>?{% endblocktrans %}
</p>
<form method="POST" action="{% url 'news-delete' entry.slug %}">
{% csrf_token %}
<button type="submit" name="delete" class="py-2 px-3 text-white rounded-md bg-orange">{% translate "Yes, Delete" %}</button>
</form>
<p><a href="{% url 'news-detail' entry.slug %}">{% translate "No, take me back!" %}</a></p>
</div>
<form method="POST" action="{% url 'news-delete' entry.slug %}">
{% csrf_token %}
<button type="submit" name="delete" class="py-2 px-3 text-white rounded-md bg-orange">{% translate 'Yes, Delete' %}</button>
</form>
<p>
<a href="{% url 'news-detail' entry.slug %}">{% translate 'No, take me back!' %}</a>
</p>
</div>
{% endblock %}

View File

@@ -1,42 +1,40 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load i18n %}
{% block title %}{% trans "Create News" %}{% endblock %}
{% block title %}
{% trans 'Create News' %}
{% endblock %}
{% block content %}
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="md:w-full">
<h1 class="text-4xl text-center capitalize">{% translate "Create news" %}</h1>
<p class="mt-0 text-center">
Select the kind of news you would like to submit.
</p>
<h1 class="text-3xl text-center capitalize">{% translate 'Create news' %}</h1>
<p class="mt-0 text-center">Select the kind of news you would like to submit.</p>
<div class="divide-y divide-gray-300">
<div class="grid grid-cols-1 md:grid-cols-2 gap-4 py-5 w-[70%] mx-auto">
{% for item in items %}
{# Hide polls for now #}
{% if item.model_name != "Poll" %}
<a href="{% url item.add_url_name %}" class="p-5 font-semibold text-center bg-white rounded-lg dark:text-white dark:bg-slate hover:bg-white/60">
{% if item.model_name == "BlogPost" %}
<i class="mr-3 fas fa-newspaper"></i> Blog Post
{% elif item.model_name == "Poll" %}
<i class="mr-3 fas fa-poll"></i> Poll
{% elif item.model_name == "Video" %}
<i class="mr-3 fas fa-video"></i> Video
{% elif item.model_name == "Link" %}
<i class="mr-3 fas fa-link"></i> Link
{% elif item.model_name == "News" %}
<i class="mr-3 fas fa-bell"></i> News
{% else %}
{{ item.model_name }}
{% endif %}
</a>
{% if item.model_name != 'Poll' %}
<a href="{% url item.add_url_name %}" class="p-5 font-semibold text-center bg-white rounded-lg dark:text-white dark:bg-slate hover:bg-white/60">
{% if item.model_name == 'BlogPost' %}
<i class="mr-3 fas fa-newspaper"></i> Blog Post
{% elif item.model_name == 'Poll' %}
<i class="mr-3 fas fa-poll"></i> Poll
{% elif item.model_name == 'Video' %}
<i class="mr-3 fas fa-video"></i> Video
{% elif item.model_name == 'Link' %}
<i class="mr-3 fas fa-link"></i> Link
{% elif item.model_name == 'News' %}
<i class="mr-3 fas fa-bell"></i> News
{% else %}
{{ item.model_name }}
{% endif %}
</a>
{% endif %}
{% endfor %}
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -1,47 +1,42 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load i18n %}
{% load static %}
{% load text_helpers %}
{% block title %}{{ entry.title }}{% endblock %}
{% block title %}
{{ entry.title }}
{% endblock %}
{% block content %}
<!-- end breadcrumb -->
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="py-8 md:mx-auto md:w-3/4">
<!-- Author or Moderator Actions -->
<div class="space-x-3 text-right">
{% if not entry.is_approved %}
<div class="py-2">
{% if user_can_approve %}
<form method="POST" action="{% url 'news-approve' entry.slug %}">
{% csrf_token %}
<button type="submit" name="approve" class="py-1 px-2 mb-3 text-xs text-white rounded-md border md:text-sm border-orange bg-orange hover:bg-orange/75 dark:bg-charcoal dark:hover:bg-charcoal/75">
{% translate "Approve" %}
</button>
{% if next_url %}
<input type="hidden" name="next" value="{{ next_url }}" />
<div class="py-2">
{% if user_can_approve %}
<form method="POST" action="{% url 'news-approve' entry.slug %}">
{% csrf_token %}
<button type="submit" name="approve" class="py-1 px-2 mb-3 text-xs text-white rounded-md border md:text-sm border-orange bg-orange hover:bg-orange/75 dark:bg-charcoal dark:hover:bg-charcoal/75">{% translate 'Approve' %}</button>
{% if next_url %}
<input type="hidden" name="next" value="{{ next_url }}" />
{% endif %}
</form>
{% else %}
<strong class="text-base text-red-500">{% translate 'Pending Moderation' %}</strong>
{% endif %}
</form>
{% else %}
<strong class="text-base text-red-500">{% translate "Pending Moderation" %}</strong>
{% endif %}
</div>
</div>
{% endif %}
{% if user_can_delete %}
<a href="{% url 'news-delete' entry.slug %}" class="float-right inline-block items-center dark:text-white/50 dark:hover:text-orange text-sm ml-3 mt-2">
<i class="fas fa-trash-alt"></i>
</a>
<a href="{% url 'news-delete' entry.slug %}" class="float-right inline-block items-center dark:text-white/50 dark:hover:text-orange text-sm ml-3 mt-2"><i class="fas fa-trash-alt"></i></a>
{% endif %}
{% if user_can_edit %}
<a href="{% url 'news-update' entry.slug %}" class="float-right inline-block items-center dark:text-white/50 dark:hover:text-orange text-sm ml-3 mt-2">
<i class="fas fa-edit"></i>
</a>
<a href="{% url 'news-update' entry.slug %}" class="float-right inline-block items-center dark:text-white/50 dark:hover:text-orange text-sm ml-3 mt-2"><i class="fas fa-edit"></i></a>
{% endif %}
</div>
<!-- End Actions -->
<h1 class="text-4xl">{{ entry.title }}</h1>
<h1 class="text-3xl">{{ entry.title }}</h1>
<div class="space-x-3 mt-3 flex items-center">
{% if entry.author.image %}
<span class="inline-block h-[30px] w-[30px] overflow-hidden rounded border border-gray-400 dark:border-gray-500">
@@ -55,45 +50,39 @@
{% if entry.author.get_full_name %}
<div class="inline-block p-0 m-0">
{{ entry.author.get_full_name }}<br />
<span class="block py-0 text-xs">{{ entry.publish_at|date:"M jS, Y" }}</span>
<span class="block py-0 text-xs">{{ entry.publish_at|date:'M jS, Y' }}</span>
</div>
{% endif %}
</div>
<div class="block px-6 py-4 my-6 w-full bg-white rounded-lg dark:bg-charcoal">
{% if entry.external_url %}
<p>{{ entry.external_url|escape|urlize }}</p>
<p>{{ entry.external_url|escape|urlize }}</p>
{% endif %}
{% if entry.image %}
<img src="{{ entry.image.url }}" class="mb-2 w-full md:w-[300px] md:float-right md:ml-5 md:mt-1 border border-black">
<img src="{{ entry.image.url }}" class="mb-2 w-full md:w-[300px] md:float-right md:ml-5 md:mt-1 border border-black" />
{% endif %}
{% if entry.news.attachment %}
<a href="{{ entry.news.attachment.url }}" class="text-sky-600 dark:text-sky-300 hover:text-orange dark:hover:text-orange">
{{ entry.news.attachment_filename }}
</a>
<a href="{{ entry.news.attachment.url }}" class="text-sky-600 dark:text-sky-300 hover:text-orange dark:hover:text-orange">{{ entry.news.attachment_filename }}</a>
{% endif %}
<div class="break-words">
{{ entry.content|urlize|url_target_blank:'text-sky-600 dark:text-sky-300 hover:text-orange dark:hover:text-orange'|linebreaks }}
</div>
<div class="break-words">{{ entry.content|urlize|url_target_blank:'text-sky-600 dark:text-sky-300 hover:text-orange dark:hover:text-orange'|linebreaks }}</div>
</div>
</div>
{% if next or prev %}
<div class="flex my-4 md:mx-auto md:w-3/4">
<div class="w-1/2 text-left">
{% if next %}
<a href="{{ next.get_absolute_url }}" class="py-1 px-2 text-xs text-white rounded-md border md:text-sm border-orange bg-orange hover:bg-orange/75 dark:bg-charcoal dark:hover:bg-charcoal/75">Newer Entries</a>
{% endif %}
<div class="flex my-4 md:mx-auto md:w-3/4">
<div class="w-1/2 text-left">
{% if next %}
<a href="{{ next.get_absolute_url }}" class="py-1 px-2 text-xs text-white rounded-md border md:text-sm border-orange bg-orange hover:bg-orange/75 dark:bg-charcoal dark:hover:bg-charcoal/75">Newer Entries</a>
{% endif %}
</div>
<div class="w-1/2 text-right">
{% if prev %}
<a href="{{ prev.get_absolute_url }}" class="py-1 px-2 text-xs text-white rounded-md border md:text-sm border-orange bg-orange hover:bg-orange/75 dark:bg-charcoal dark:hover:bg-charcoal/75">Older Entries</a>
{% endif %}
</div>
</div>
<div class="w-1/2 text-right">
{% if prev %}
<a href="{{ prev.get_absolute_url }}" class="py-1 px-2 text-xs text-white rounded-md border md:text-sm border-orange bg-orange hover:bg-orange/75 dark:bg-charcoal dark:hover:bg-charcoal/75">Older Entries</a>
{% endif %}
</div>
</div>
{% endif %}
</div>
{% endblock %}

View File

@@ -1,11 +1,17 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load i18n %}
{% block content %}
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="md:w-[70%] mx-auto">
<h1 class="mb-11 text-4xl text-center">{% if entry.pk %}{% translate "Update Entry" %}{% else %}{{ add_label }}{% endif %}</h1>
{% include "news/_entry_form.html" %}
<h1 class="mb-11 text-3xl text-center">
{% if entry.pk %}
{% translate 'Update Entry' %}
{% else %}
{{ add_label }}
{% endif %}
</h1>
{% include 'news/_entry_form.html' %}
</div>
</div>
{% endblock %}

View File

@@ -9,7 +9,7 @@
{% block content %}
<div class="py-0 px-0 md:px-4 mt-4 mb-0 w-full md:mb-2">
<div class="md:w-full">
<h1 class="text-4xl px-3 md:px-0">Latest Stories</h1>
<h1 class="text-3xl px-3 md:px-0">Latest Stories</h1>
<div class="md:flex md:space-x-16 px-3 md:px-0">
<div class="md:w-1/2 w-full">

View File

@@ -1,35 +1,35 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load i18n %}
{% load static %}
{% block title %}{% trans "News Moderation Queue" %}{% endblock %}
{% block title %}
{% trans 'News Moderation Queue' %}
{% endblock %}
{% block content %}
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="md:w-full">
<h1 class="text-4xl">{% translate "Latest news pending moderation" %}</h1>
<h1 class="text-3xl">{% translate 'Latest news pending moderation' %}</h1>
<div class="divide-y divide-gray-300">
{% for entry in entry_list %}
<div class="flex py-4">
<div class="py-5 w-1/6">
<h5>{{ entry.publish_at|date:"M jS, Y" }}</h5>
</div>
<div class="w-5/6 text-xl">
<p>
<a class="text-orange hover:text-info-600 focus:text-info-600 active:text-info-700"
href="{{ entry.get_absolute_url }}?next={{ request.path|urlencode }}">
{{ entry.tag|capfirst }}: {{ entry.title }}</a>
{% blocktrans with author_email=entry.author.email %}
by {{ author_email }}
{% endblocktrans %}
</p>
<div class="space-x-8 uppercase">
<div class="flex py-4">
<div class="py-5 w-1/6">
<h5>{{ entry.publish_at|date:'M jS, Y' }}</h5>
</div>
<div class="w-5/6 text-xl">
<p>
<a class="text-orange hover:text-info-600 focus:text-info-600 active:text-info-700" href="{{ entry.get_absolute_url }}?next={{ request.path|urlencode }}">{{ entry.tag|capfirst }}: {{ entry.title }}</a>
{% blocktrans with author_email=entry.author.email %}by {{ author_email }}
{% endblocktrans %}
</p>
<div class="space-x-8 uppercase"></div>
</div>
</div>
</div>
{% empty %}
<p>{% translate "No news pending moderation." %}</p>
<p>
{% translate 'No news pending moderation.' %}
</p>
{% endfor %}
</div>
</div>

View File

@@ -1,15 +1,12 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load static %}
{% block content %}
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="py-16 w-full">
<h1 class="text-4xl text-center">Resources</h1>
<p class="mt-0 text-center">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus non vestibulum velit. Aenean fringilla, arcu sit amet.
</p>
<h1 class="text-3xl text-center">Resources</h1>
<p class="mt-0 text-center">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus non vestibulum velit. Aenean fringilla, arcu sit amet.</p>
</div>
<div class="w-full">
@@ -59,7 +56,6 @@
</div>
</div>
<h3 class="py-2 border-b border-slate">Resource Category</h3>
<div class="grid grid-cols-1 gap-4 my-11 md:grid-cols-2 lg:grid-cols-4">
@@ -94,7 +90,6 @@
</div>
</div>
<h3 class="py-2 border-b border-slate">Resource Category</h3>
<div class="grid grid-cols-1 gap-4 my-11 md:grid-cols-2 lg:grid-cols-4">
@@ -116,9 +111,6 @@
<a href="#" class="text-sm uppercase text-orange">Learn More <span class="text-xs">></span></a>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -23,7 +23,7 @@
<div class="w-5/6">
<div class="py-8 md:w-full" id="overview">
<h1 class="text-4xl">Lambda2</h1>
<h1 class="text-3xl">Lambda2</h1>
<p class="p-0 m-0">Review Dates: March 22, 2021 - March 31, 2021</p>
</div>

View File

@@ -1,4 +1,4 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load static %}
@@ -14,10 +14,8 @@
{% block content %}
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="py-16 space-y-11 md:w-full">
<h1 class="text-4xl text-center">Submit a Review</h1>
<p>
What does this form look like? I don't see mockups or a model definition.
</p>
<h1 class="text-3xl text-center">Submit a Review</h1>
<p>What does this form look like? I don't see mockups or a model definition.</p>
</div>
</div>
{% endblock %}

View File

@@ -1,57 +1,61 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load i18n %}
{% block head_title %}{% trans "Account Connections" %}{% endblock %}
{% block head_title %}
{% trans 'Account Connections' %}
{% endblock %}
{% block content %}
<div class="my-6 text-center">
<div class="py-6 w-full md:w-1/2 mx-auto">
<h1 class="text-4xl">{% trans "Account Connections" %}</h1>
<div class="my-6 text-center">
<div class="py-6 w-full md:w-1/2 mx-auto">
<h1 class="text-3xl">{% trans 'Account Connections' %}</h1>
{% if form.accounts %}
<p>{% blocktrans %}You can sign in to your account using any of the following third party accounts:{% endblocktrans %}</p>
{% if form.accounts %}
<p>
{% blocktrans %}You can sign in to your account using any of the following third party accounts:{% endblocktrans %}
</p>
<form method="post" action="{% url 'socialaccount_connections' %}">
<div class="mx-auto space-y-4 w-2/3">
{% csrf_token %}
<form method="post" action="{% url 'socialaccount_connections' %}">
<div class="mx-auto space-y-4 w-2/3">
{% csrf_token %}
<fieldset>
{% if form.non_field_errors %}
<div id="errorMsg">{{ form.non_field_errors }}</div>
{% endif %}
<fieldset>
{% if form.non_field_errors %}
<div id="errorMsg">{{ form.non_field_errors }}</div>
{% endif %}
{% for base_account in form.accounts %}
{% with base_account.get_provider_account as account %}
{% for base_account in form.accounts %}
{% with account=base_account.get_provider_account %}
<div>
<label for="id_account_{{ base_account.id }}" class="text-slate dark:text-white/70">
<input id="id_account_{{ base_account.id }}" type="radio" name="account" value="{{ base_account.id }}"/>
<span class="socialaccount_provider {{ base_account.provider }} {{ account.get_brand.id }}">{{account.get_brand.name}}</span>
{{ account }}
</label>
<label for="id_account_{{ base_account.id }}" class="text-slate dark:text-white/70">
<input id="id_account_{{ base_account.id }}" type="radio" name="account" value="{{ base_account.id }}" />
<span class="socialaccount_provider {{ base_account.provider }} {{ account.get_brand.id }}">{{ account.get_brand.name }}</span>
{{ account }}
</label>
</div>
{% endwith %}
{% endfor %}
{% endwith %}
{% endfor %}
<div class="my-4">
<button type="submit" class="py-1 px-2 text-sm text-white rounded border border-orange bg-orange">{% trans 'Remove Connection' %}</button>
<div class="my-4">
<button type="submit" class="py-1 px-2 text-sm text-white rounded border border-orange bg-orange">{% trans 'Remove Connection' %}</button>
</div>
</fieldset>
</div>
</fieldset>
</div>
</form>
</form>
{% else %}
<p class="mt-0 text-center">
{% trans 'You currently have no social network accounts connected to this account.' %}
</p>
{% endif %}
{% else %}
<p class="mt-0 text-center">{% trans 'You currently have no social network accounts connected to this account.' %}</p>
{% endif %}
<h2 class="text-2xl text-center">{% trans 'Add a Third Party Account' %}</h2>
<h2 class="text-2xl text-center">{% trans 'Add a Third Party Account' %}</h2>
<ul class="space-y-4 w-full">
{% include 'socialaccount/snippets/provider_list.html' with process='connect' %}
</ul>
<ul class="space-y-4 w-full">
{% include "socialaccount/snippets/provider_list.html" with process="connect" %}
</ul>
{% include "socialaccount/snippets/login_extra.html" %}
{% include 'socialaccount/snippets/login_extra.html' %}
</div>
</div>
</div>
{% endblock %}

View File

@@ -1,28 +1,31 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load i18n %}
{% block head_title %}{% trans "Log In" %}{% endblock %}
{% block head_title %}
{% trans 'Log In' %}
{% endblock %}
{% block content %}
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="md:pt-11 md:mt-11 w-full bg-white dark:bg-charcoal mx-auto rounded py-6 px-3">
<div class="md:w-full text-center">
{% if process == "connect" %}
<h1 class="text-4xl">{% blocktrans with provider.name as provider %}Connect {{ provider }}{% endblocktrans %}</h1>
<p>{% blocktrans with provider.name as provider %}You are about to connect a new third party account from {{ provider }}.{% endblocktrans %}</p>
{% if process == 'connect' %}
<h1 class="text-3xl">{% blocktrans with provider.name as provider %}Connect {{ provider }}{% endblocktrans %}</h1>
<p>
{% blocktrans with provider.name as provider %}You are about to connect a new third party account from {{ provider }}.{% endblocktrans %}
</p>
{% else %}
<h1 class="text-4xl">{% blocktrans with provider.name as provider %}Log In with {{ provider }}{% endblocktrans %}</h1>
<p>{% blocktrans with provider.name as provider %}You are about to log in using a third party account from {{ provider }}.{% endblocktrans %}</p>
<h1 class="text-3xl">{% blocktrans with provider.name as provider %}Log In with {{ provider }}{% endblocktrans %}</h1>
<p>
{% blocktrans with provider.name as provider %}You are about to log in using a third party account from {{ provider }}.{% endblocktrans %}
</p>
{% endif %}
<form method="post">
{% csrf_token %}
<button
type="submit"
class="py-3 px-8 text-sm text-base font-medium text-white uppercase rounded-md border md:py-1 md:px-4 md:text-lg bg-orange hover:bg-orange/80 border-orange dark:bg-slate dark:hover:bg-charcoal dark:text-white hover:drop-shadow-md"
>{% trans "Continue" %}</button>
<button type="submit" class="py-3 px-8 text-sm text-base font-medium text-white uppercase rounded-md border md:py-1 md:px-4 md:text-lg bg-orange hover:bg-orange/80 border-orange dark:bg-slate dark:hover:bg-charcoal dark:text-white hover:drop-shadow-md">{% trans 'Continue' %}</button>
</form>
</div>
</div>
</div>
</div>
{% endblock %}

View File

@@ -1,62 +1,64 @@
{% extends "base.html" %}
{% extends 'base.html' %}
{% load i18n %}
{% block head_title %}{% trans "Signup" %}{% endblock %}
{% block head_title %}
{% trans 'Signup' %}
{% endblock %}
{% block content %}
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="md:pt-11 md:mt-11 w-full bg-white dark:bg-charcoal mx-auto rounded py-6 px-3">
<div class="md:w-full text-center">
<h1 class="text-4xl">{% trans "Sign Up" %}</h1>
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="md:pt-11 md:mt-11 w-full bg-white dark:bg-charcoal mx-auto rounded py-6 px-3">
<div class="md:w-full text-center">
<h1 class="text-3xl">{% trans 'Sign Up' %}</h1>
<p>{% blocktrans with provider_name=account.get_provider.name site_name=site.name %}You are about to use your {{provider_name}} account to log in to
{{site_name}}. As a final step, please complete the following form:{% endblocktrans %}</p>
<p>
{% blocktrans with provider_name=account.get_provider.name site_name=site.name %}You are about to use your {{ provider_name }} account to log in to
{{ site_name }}. As a final step, please complete the following form:{% endblocktrans %}
</p>
<form id="signup_form" method="post" action="{% url 'socialaccount_signup' %}" class="w-full md:w-1/2 mx-auto">
{% csrf_token %}
<form id="signup_form" method="post" action="{% url 'socialaccount_signup' %}" class="w-full md:w-1/2 mx-auto">
{% csrf_token %}
<!-- Display non-field errors -->
{% if form.non_field_errors %}
<div class="py-1 px-3 my-3 text-white bg-red-400 rounded">
{% for error in form.non_field_errors %}
<div class="py-1 px-3">
{{ error }}
</div>
{% endfor %}
</div>
{% endif %}
{% for field in form.visible_fields %}
{% if field.errors %}
<!-- Display non-field errors -->
{% if form.non_field_errors %}
<div class="py-1 px-3 my-3 text-white bg-red-400 rounded">
{% for error in field.errors %}
<div class="py-1 px-3">{{ error }}</div>
{% endfor %}
{% for error in form.non_field_errors %}
<div class="py-1 px-3">{{ error }}</div>
{% endfor %}
</div>
{% endif %}
<div class="text-left">
<label class="text-xs uppercase text-slate dark:text-white/70">{{ field.label }}
{{ field }}
</label>
{% if field.help_text %}
<small>{{ field.help_text }}</small>
{% for field in form.visible_fields %}
{% if field.errors %}
<div class="py-1 px-3 my-3 text-white bg-red-400 rounded">
{% for error in field.errors %}
<div class="py-1 px-3">{{ error }}</div>
{% endfor %}
</div>
{% endif %}
</div>
{% endfor %}
{% if redirect_field_value %}
<input type="hidden" name="{{ redirect_field_name }}" value="{{ redirect_field_value }}" />
{% endif %}
<div class="my-3 text-center">
<button type="submit" class="py-3 px-8 text-sm text-base font-medium text-white uppercase rounded-md border md:py-1 md:px-4 md:text-lg bg-orange hover:bg-orange/80 border-orange dark:bg-slate dark:hover:bg-charcoal dark:text-white hover:drop-shadow-md">{% trans "Sign Up" %}</button>
</div>
</form>
<div class="text-left">
<label class="text-xs uppercase text-slate dark:text-white/70">
{{ field.label }}
{{ field }}
</label>
{% if field.help_text %}
<small>{{ field.help_text }}</small>
{% endif %}
</div>
{% endfor %}
{% if redirect_field_value %}
<input type="hidden" name="{{ redirect_field_name }}" value="{{ redirect_field_value }}" />
{% endif %}
<div class="my-3 text-center">
<button type="submit" class="py-3 px-8 text-sm text-base font-medium text-white uppercase rounded-md border md:py-1 md:px-4 md:text-lg bg-orange hover:bg-orange/80 border-orange dark:bg-slate dark:hover:bg-charcoal dark:text-white hover:drop-shadow-md">{% trans 'Sign Up' %}</button>
</div>
</form>
</div>
</div>
</div>
</div>
{# keep this here for postcss <span class="errorlist"></span> #}
{# keep this here for postcss <span class="errorlist"></span> #}
{% endblock %}

View File

@@ -24,7 +24,7 @@
<div class="p-2">
<div class="mb-4">
<h1 class="text-4xl font-extrabold md:text-6xl">
<h1 class="text-3xl font-extrabold md:text-6xl">
<span class="block xl:inline">Homepage header.</span>
</h1>
</div>
@@ -33,7 +33,7 @@
<div class="mt-2 py-2 px-2 space-y-2 w-full bg-white rounded-lg dark:bg-charcoal">
<div class="highlight" style="background: #002b36"><pre style="line-height: 125%;">{% filter force_escape %}
<h1 class="text-4xl font-extrabold md:text-6xl">
<h1 class="text-3xl font-extrabold md:text-6xl">
<span class="block xl:inline">Homepage header.</span>
</h1>
{% endfilter %}</pre></div>

View File

@@ -16,7 +16,7 @@
<div class="py-0 px-3 mb-3 md:py-6 md:px-0">
<div class="py-16 w-full">
<h1 class="text-4xl text-center">Support</h1>
<h1 class="text-3xl text-center">Support</h1>
<p class="mt-0 text-center">
We are here for you! If you need us, we are a click away!
</p>