Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
59 changes: 58 additions & 1 deletion app/assets/stylesheets/devise.css
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,8 @@ form {
font-weight: 500;
}

.input input[type="email"] {
.input input[type="email"],
.input input[type="password"] {
width: 94%;
padding: 0.75rem;
border: 1px solid #ccc;
Expand Down Expand Up @@ -71,3 +72,59 @@ form {
.submit input[type="submit"]:hover {
background: linear-gradient(to right, #1e40af, #2563eb);
}

.auth-links {
text-align: center;
margin-top: 1.5rem;
}

.auth-links a {
display: block;
color: #1e3a8a;
text-decoration: none;
font-size: 0.95rem;
margin: 0.2rem 0;
transition: color 0.3s ease;
}

.auth-links a:hover {
color: #2563eb;
text-decoration: underline;
}

.oauth-buttons {
display: flex;
justify-content: center;
gap: 1rem;
margin-top: 1.5rem;
}

.oauth-buttons-cancel {
display: flex;
gap: 1rem;
margin-top: 1.5rem;
}

.oauth-buttons button,
.oauth-buttons-cancel button {
padding: 0.5rem 1rem;
border: 1px solid #ccc;
background-color: white;
cursor: pointer;
transition: background-color 0.3s ease;
font-size: 0.9rem;
border-radius: 4px;
}

.oauth-buttons button:hover,
.oauth-buttons-cancel button:hover {
background-color: #f0f0f0;
}

.remember-me {
display: flex;
align-items: center;
gap: 0.5rem;
margin-bottom: 1rem;
font-size: 0.95rem;
}
51 changes: 51 additions & 0 deletions app/views/devise/registrations/edit.html.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
<div class="container">
<div class="auth-container">
<h2 class="auth-title"><%= t("devise.registrations.edit.title")%> <%= resource_name.to_s.humanize %></h2>

<%= form_for(resource, as: resource_name, url: registration_path(resource_name), html: { method: :put }) do |f| %>
<%= render "devise/shared/error_messages", resource: resource %>

<div class="input">
<p><%= f.label :email %></p>
<p><%= f.email_field :email, autofocus: true, autocomplete: "email" %></p>
</div>

<% if devise_mapping.confirmable? && resource.pending_reconfirmation? %>
<div>Currently waiting confirmation for: <%= resource.unconfirmed_email %></div>
<% end %>

<div class="input">
<p><%= f.label :password %> <i><%=t("devise.registrations.edit.leave_blank_if_you_don_t_want_to_change_it") %></i></p>
<p><%= f.password_field :password, autocomplete: "new-password" %></p>
<% if @minimum_password_length %>
<p><em><%= @minimum_password_length %> <%=t("devise.registrations.edit.characters minimum") %></em></p>
<% end %>
</div>

<div class="input">
<p><%= f.label :password_confirmation %></p>
<p><%= f.password_field :password_confirmation, autocomplete: "new-password" %></p>
</div>

<div class="input">
<p><%= f.label :current_password %> <i><%= t("devise.registrations.edit.we_need_your_current_password_to_confirm_your_changes") %></i></p>
<p><%= f.password_field :current_password, autocomplete: "current-password" %></p>
</div>

<div class="submit">
<%= f.submit t("devise.registrations.edit.update") %>
</div>
<% end %>


<h3><%= t("devise.registrations.edit.unhappy") %></h3>
<div class="oauth-buttons-cancel">
<%= button_to t("devise.registrations.edit.cancel_my_account"),
registration_path(resource_name), data: { confirm: "Are you sure?", turbo_confirm: "Are you sure?" }, method: :delete %>
</div>

<div class="auth-links">
<%= link_to t("devise.shared.links.back"), :back %>
</div>
</div>
</div>
34 changes: 34 additions & 0 deletions app/views/devise/registrations/new.html.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
<div class="container">
<div class="auth-container">
<h2 class="auth-title"><%= t("devise.registrations.new.sign_up") %></h2>

<%= form_for(resource, as: resource_name, url: registration_path(resource_name)) do |f| %>
<%= render "devise/shared/error_messages", resource: resource %>

<div class="input">
<p><%= f.label :email %></p>
<p><%= f.email_field :email, autofocus: true, autocomplete: "email" %></p>
</div>

<div class="input">
<p><%= f.label :password %></p>
<% if @minimum_password_length %>
<p><em>(<%= @minimum_password_length %> <%=t("devise.registrations.edit.characters minimum") %>)</em></p>
<% end %>
<p><%= f.password_field :password, autocomplete: "new-password" %></p>
</div>

<div class="input">
<p><%= f.label :password_confirmation %></p>
<p><%= f.password_field :password_confirmation, autocomplete: "new-password" %></p>
</div>

<div class="submit">
<%= f.submit "Sign up" %>
</div>
<% end %>

<%= render "devise/shared/links" %>

</div>
</div>
30 changes: 30 additions & 0 deletions app/views/devise/sessions/new.html.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
<div class="container">
<div class="auth-container">
<h2 class="auth-title"><%= t("devise.sessions.new.sign_in") %></h2>

<%= form_for(resource, as: resource_name, url: session_path(resource_name)) do |f| %>
<div class="input">
<p><%= f.label :email %></p>
<p><%= f.email_field :email, autofocus: true, autocomplete: "email" %></p>
</div>

<div class="input">
<p><%= f.label :password %></p>
<p><%= f.password_field :password, autocomplete: "current-password" %></p>
</div>

<% if devise_mapping.rememberable? %>
<div class="remember-me">
<%= f.check_box :remember_me %>
<%= f.label :remember_me %>
</div>
<% end %>

<div class="submit">
<%= f.submit "Log in" %>
</div>
<% end %>

<%= render "devise/shared/links" %>
</div>
</div>
29 changes: 29 additions & 0 deletions app/views/devise/shared/_links.html.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
<div class="auth-links">
<%- if controller_name != 'sessions' %>
<p><%= link_to t("devise.shared.links.sign_in"), new_session_path(resource_name) %></p>
<% end %>

<%- if devise_mapping.registerable? && controller_name != 'registrations' %>
<p><%= link_to t("devise.shared.links.sign_up"), new_registration_path(resource_name) %></p>
<% end %>

<%- if devise_mapping.recoverable? && controller_name != 'passwords' && controller_name != 'registrations' %>
<p><%= link_to t("devise.shared.links.forgot_your_password"), new_password_path(resource_name) %></p>
<% end %>

<%- if devise_mapping.confirmable? && controller_name != 'confirmations' %>
<p><%= link_to t("devise.shared.links.didn_t_receive_confirmation_instructions"), new_confirmation_path(resource_name) %></p>
<% end %>

<%- if devise_mapping.lockable? && resource_class.unlock_strategy_enabled?(:email) && controller_name != 'unlocks' %>
<p><%= link_to t("devise.shared.links.didn_t_receive_unlock_instructions"), new_unlock_path(resource_name) %></p>
<% end %>
</div>

<div class="oauth-buttons">
<%- if devise_mapping.omniauthable? %>
<%- resource_class.omniauth_providers.each do |provider| %>
<p><%= button_to t("devise.shared.links.sign_in_with_provider"){OmniAuth::Utils.camelize(provider)}, omniauth_authorize_path(resource_name, provider), data: { turbo: false } %></p>
<% end %>
<% end %>
</div>
3 changes: 2 additions & 1 deletion config/locales/pt-BR/devise.yml
Original file line number Diff line number Diff line change
Expand Up @@ -97,11 +97,12 @@ pt-BR:
registrations:
destroyed: Adeus! A sua conta foi cancelada com sucesso. Esperamos vê-lo novamente em breve.
edit:
characters minimum: caracteres mínimos
are_you_sure: Você tem certeza?
cancel_my_account: Cancelar minha conta
currently_waiting_confirmation_for_email: "No momento esperando por: %{email}"
leave_blank_if_you_don_t_want_to_change_it: deixe em branco caso não queira alterá-la
title: Editar %{resource}
title: Editar
unhappy: Não está contente?
update: Atualizar
we_need_your_current_password_to_confirm_your_changes: precisamos da sua senha atual para confirmar suas mudanças
Expand Down