diff --git a/app/views/auth/confirmations/new.html.haml b/app/views/auth/confirmations/new.html.haml
index 4a1bedaa..7a6b19d1 100644
--- a/app/views/auth/confirmations/new.html.haml
+++ b/app/views/auth/confirmations/new.html.haml
@@ -2,6 +2,8 @@
= t('auth.resend_confirmation')
= simple_form_for(resource, as: resource_name, url: confirmation_path(resource_name), html: { method: :post }) do |f|
+ %h2.form-title Resend confirmation instructions
+
= render 'shared/error_messages', object: resource
.fields-group
diff --git a/app/views/auth/passwords/new.html.haml b/app/views/auth/passwords/new.html.haml
index bae5b24b..d5040aae 100644
--- a/app/views/auth/passwords/new.html.haml
+++ b/app/views/auth/passwords/new.html.haml
@@ -2,6 +2,8 @@
= t('auth.reset_password')
= simple_form_for(resource, as: resource_name, url: password_path(resource_name), html: { method: :post }) do |f|
+ %h2.form-title Reset Gab Password
+
= render 'shared/error_messages', object: resource
.fields-group
diff --git a/app/views/auth/registrations/new.html.haml b/app/views/auth/registrations/new.html.haml
index 40d57b67..c094a6c9 100644
--- a/app/views/auth/registrations/new.html.haml
+++ b/app/views/auth/registrations/new.html.haml
@@ -5,6 +5,8 @@
= render partial: 'shared/og'
= simple_form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f|
+ %h2.form-title Sign up for Gab
+
= render 'shared/error_messages', object: resource
- if @invite.present? && @invite.autofollow?
@@ -32,7 +34,7 @@
= f.input :invite_code, as: :hidden
- .fields-group
+ .fields-group-agreement
= f.input :agreement, as: :boolean, wrapper: :with_label, label: t('auth.checkbox_agreement_html', about_tos_path: about_tos_path)
.actions
diff --git a/app/views/auth/sessions/new.html.haml b/app/views/auth/sessions/new.html.haml
index ceb16940..9c00e80b 100644
--- a/app/views/auth/sessions/new.html.haml
+++ b/app/views/auth/sessions/new.html.haml
@@ -5,13 +5,15 @@
= render partial: 'shared/og'
= simple_form_for(resource, as: resource_name, url: session_path(resource_name)) do |f|
+ %h2.form-title Log into Gab
+
.fields-group
- if use_seamless_external_login?
= f.input :email, autofocus: true, wrapper: :with_label, label: t('simple_form.labels.defaults.username_or_email'), input_html: { 'aria-label' => t('simple_form.labels.defaults.username_or_email') }, hint: false
- else
= f.input :email, autofocus: true, wrapper: :with_label, label: t('simple_form.labels.defaults.email'), input_html: { 'aria-label' => t('simple_form.labels.defaults.email') }, hint: false
.fields-group
- = f.input :password, wrapper: :with_label, label: t('simple_form.labels.defaults.password'), input_html: { 'aria-label' => t('simple_form.labels.defaults.password'), :autocomplete => 'off' }, hint: false
+ = f.input :password, wrapper: :with_label, label: t('simple_form.labels.defaults.password'), input_html: { 'aria-label' => t('simple_form.labels.defaults.password'), :autocomplete => 'off' }, hint: false
.actions
= f.button :button, t('auth.login'), type: :submit
diff --git a/app/views/layouts/auth.html.haml b/app/views/layouts/auth.html.haml
index 8ca56b1e..0b14a6c7 100644
--- a/app/views/layouts/auth.html.haml
+++ b/app/views/layouts/auth.html.haml
@@ -1,14 +1,13 @@
- content_for :header_tags do
= javascript_pack_tag 'public', integrity: true, crossorigin: 'anonymous'
- %link(rel='stylesheet' href='/legacy/common.css')
- %link(rel='stylesheet' href='/legacy/default.css')
+ %link(rel='stylesheet' href='/legacy/auth.css')
- content_for :content do
.container
.logo-container
- %h1
+ %h1{:title => 'Gab.com', :aria-level => '1', :role => 'heading'}
= link_to root_path do
- = image_pack_tag 'logo_full.png', alt: 'Gab Social'
+ = image_pack_tag 'logo_full.png', alt: 'Gab Social', height: '48px'
.form-container
= render 'flashes'
diff --git a/public/legacy/auth.css b/public/legacy/auth.css
new file mode 100644
index 00000000..713ca9f4
--- /dev/null
+++ b/public/legacy/auth.css
@@ -0,0 +1,255 @@
+* {
+ font-family: var(--font_family)
+}
+
+.container {
+ display: flex;
+ width: 100%;
+ min-height: 100vh;
+ overflow:hidden;
+ overflow-y:scroll;
+ flex-direction: column;
+ align-items: center;
+ padding-bottom: 20px;
+}
+
+.logo-container {
+ display: flex;
+ width: 100%;
+ margin-top: 1.5rem;
+ align-items: center;
+ justify-content: center;
+}
+
+.logo-container h1 {
+ margin: 0;
+ display: flex;
+ height: 80px;
+ align-items: center;
+}
+
+.form-container {
+ display: flex;
+ padding: 20px;
+ min-width: 360px;
+ max-width: 400px;
+ border-radius: 8px;
+ flex-direction: column;
+ box-shadow: 0 1px 2px rgba(0,0,0,0.2);
+ background-color: white;
+}
+
+@media (min-width:0px) and (max-width:767px) {
+ .form-container {
+ max-width: none !important;
+ min-width: 280px !important;
+ width: 90%;
+ border-radius: 0 !important;
+ }
+}
+
+.simple_form {
+ display: flex;
+ margin: 0;
+ flex-direction: column;
+}
+
+.form-title {
+ display: flex;
+ color: var(--text_color_primary);
+ margin: 0;
+ font-family: var(--font_family);
+ color: var(--color_black);
+ align-items: center;
+ justify-content: center;
+ padding: 10px;
+ margin-bottom: 15px;
+ font-size: 18px;
+ font-weight: 500;
+}
+
+.fields-group {
+ display: flex;
+ width: 100%;
+ margin-bottom: 20px;
+ padding: 0;
+}
+
+.form-footer,
+.actions,
+.fields-group .label_input__wrapper {
+ display: flex;
+ width: 100%;
+ margin: 0;
+ padding: 0;
+}
+
+.fields-group-agreement .with_label,
+.fields-group .with_label {
+ display: flex;
+ width: 100%;
+ margin: 0;
+ padding: 0;
+ flex-direction: column;
+}
+
+.fields-group .with_label .label_input {
+ display: flex;
+ width: 100%;
+ margin: 0;
+ padding: 0;
+ flex-direction: column;
+}
+
+.fields-group .with_label .label_input > label {
+ display: flex;
+ width: 100%;
+ margin: 0;
+ margin-bottom: 5px;
+ padding: 0;
+ font-family: var(--font_family);
+ color: var(--text_color_secondary);
+ font-size: 12px;
+}
+
+abbr {
+ text-decoration: none;
+}
+
+.fields-group .with_label .hint {
+ font-family: var(--font_family);
+ margin-top: 5px;
+ font-size: 12px;
+ color: var(--text_color_secondary);
+}
+
+.fields-group .with_label .error {
+ margin-top: 5px;
+ font-size: 12px;
+ color: red;
+}
+
+.fields-group .with_label .label_input input {
+ display: flex;
+ width: 100%;
+ line-height: 46px;
+ height: 46px;
+ border-radius: 8px;
+ border-width: 1px;
+ outline: none;
+ -webkit-appearance: none;
+ -moz-appearance: none;
+ appearance: none;
+ padding-left: 10px;
+ font-size: 18px;
+ color: var(--text_color_primary);
+ background-color: var(--color_white);
+ border-color: var(--border_color_secondary);
+}
+
+button.btn {
+ display: flex;
+ width: 100%;
+ margin-top: 5px;
+ background-color: var(--color_brand);
+ color: white;
+ -webkit-appearance: none;
+ -moz-appearance: none;
+ appearance: none;
+ line-height: 46px;
+ height: 46px;
+ border-radius: 8px;
+ border: none;
+ font-family: var(--font_family);
+ color: var(--color_white);
+ font-weight: 600;
+ font-size: 18px;
+ text-align: center;
+ align-items: center;
+ justify-content: center;
+ cursor: pointer;
+}
+
+button.btn:hover {
+ background-color: var(--color_brand-dark);
+}
+
+.no-list {
+ display: flex;
+ width: 100%;
+ flex-direction: row;
+ flex-wrap: wrap;
+ justify-content: center;
+ padding: 20px 20px 0 20px;
+ margin-top: 20px;
+ border-top: 1px solid var(--border_color_secondary);
+ list-style: none;
+}
+
+.no-list li {
+ display: flex;
+ padding: 5px 10px;
+ cursor: pointer;
+}
+
+.no-list li a {
+ font-family: var(--font_family);
+ color: var(--text_color_tertiary);
+ font-size: 14px;
+ text-decoration: none;
+}
+
+.fields-group-agreement {
+ display: flex;
+ width: 100%;
+ margin: 0;
+ padding: 0;
+ margin-bottom: 15px;
+}
+
+.fields-group-agreement .with_label .label_input {
+ display: flex;
+ width: 100%;
+ margin: 0;
+ padding: 0;
+ flex-direction: row;
+ align-items: center;
+}
+
+.fields-group-agreement .with_label .label_input label {
+ display: flex;
+ margin: 0;
+ padding: 0;
+ font-family: var(--font_family);
+ color: var(--text_color_secondary);
+ font-size: 14px;
+}
+
+.fields-group-agreement .with_label .label_input label a {
+ font-family: var(--font_family);
+ color: var(--color_brand);
+ margin: 0;
+ padding: 0;
+ margin-left: 5px;
+ font-size: 14px;
+}
+
+.flash-message {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ padding: 10px;
+ text-align: center;
+}
+
+.alert.flash-message {
+ color: red;
+}
+
+.notice.flash-message {
+ color: grey;
+}
+
+.subtle-hint a {
+ color: var(--color_brand);
+}
\ No newline at end of file