4 Commits

Author SHA1 Message Date
Râu Cao
f2354aeed4 Set a minimum height for content with sidenav
All checks were successful
continuous-integration/drone/push Build is passing
2022-12-21 18:24:49 +07:00
Râu Cao
6a3c0d6ab1 Improve button style 2022-12-21 18:24:23 +07:00
Râu Cao
96cf534d0a Refactor settings routes and menu
Use sub controllers/routes for the sections
2022-12-21 18:11:13 +07:00
Râu Cao
c5fa38fe3d Fix web container start when offline 2022-12-21 17:25:02 +07:00
12 changed files with 48 additions and 18 deletions

View File

@@ -8,6 +8,7 @@ COPY Gemfile /akkounts/Gemfile
COPY Gemfile.lock /akkounts/Gemfile.lock
COPY package.json /akkounts/package.json
RUN bundle install
RUN gem install foreman
RUN npm install -g yarn
RUN yarn install

View File

@@ -6,7 +6,7 @@
.btn-md {
@apply btn;
@apply py-2.5 px-5 shadow-md;
@apply py-3 px-6;
}
.btn-sm {

View File

@@ -1,6 +1,6 @@
<main class="w-full max-w-6xl mx-auto pb-12 px-4 md:px-6 lg:px-8">
<div class="bg-white rounded-lg shadow">
<div class="divide-y divide-gray-200 lg:grid lg:grid-cols-12 lg:divide-y-0 lg:divide-x">
<div class="md:min-h-[50vh] divide-y divide-gray-200 lg:grid lg:grid-cols-12 lg:divide-y-0 lg:divide-x">
<aside class="py-6 sm:py-8 lg:col-span-3">
<nav class="space-y-1">
<%= render partial: @sidenav_partial %>

View File

@@ -0,0 +1,6 @@
class Settings::ProfileController < SettingsController
def index
end
end

View File

@@ -0,0 +1,13 @@
class Settings::SecurityController < SettingsController
def index
end
def reset_password
current_user.send_reset_password_instructions
sign_out current_user
msg = "We have sent you an email with a link to reset your password."
redirect_to check_your_email_path, notice: msg
end
end

View File

@@ -1,13 +1,13 @@
class SettingsController < ApplicationController
before_action :require_user_signed_in
before_action :set_current_section
def index
end
def reset_password
current_user.send_reset_password_instructions
sign_out current_user
msg = "We have sent you an email with a link to reset your password."
redirect_to check_your_email_path, notice: msg
private
def set_current_section
@current_section = :settings
end
end

View File

@@ -1 +0,0 @@
<h2>Settings</h2>

View File

@@ -0,0 +1,9 @@
<%= render HeaderComponent.new(title: "Settings") %>
<%= render MainWithSidenavComponent.new(sidenav_partial: 'shared/sidenav_settings') do %>
<section>
<h3>Profile</h3>
<p class="mb-12">
</p>
</section>
<% end %>

View File

@@ -3,7 +3,7 @@
<%= render MainWithSidenavComponent.new(sidenav_partial: 'shared/sidenav_settings') do %>
<section>
<h3>Password</h3>
<p class="mb-12">Use the following button to request an email with a password reset link:</p>
<p class="mb-8">Use the following button to request an email with a password reset link:</p>
<p>
<%= form_with(url: settings_reset_password_path, method: :post) do %>
<%= submit_tag("Send me a password reset link", class: 'btn-md btn-gray w-full sm:w-auto') %>

View File

@@ -6,5 +6,5 @@
class: main_nav_class(@current_section, :invitations) %>
<%= link_to "Wallet", wallet_path,
class: main_nav_class(@current_section, :wallet) %>
<%= link_to "Settings", security_path,
class: main_nav_class(@current_section, :security) %>
<%= link_to "Settings", settings_profile_path,
class: main_nav_class(@current_section, :settings) %>

View File

@@ -1,9 +1,10 @@
<%= render SidenavLinkComponent.new(
name: "Account", path: "#", icon: "user", disabled: true
name: "Profile", path: settings_profile_path, icon: "user",
active: current_page?(settings_profile_path)
) %>
<%= render SidenavLinkComponent.new(
name: "Password", path: security_path, icon: "key",
active: current_page?(security_path)
name: "Security", path: settings_security_path, icon: "key",
active: current_page?(settings_security_path)
) %>
<%= render SidenavLinkComponent.new(
name: "Security", path: "#", icon: "shield", disabled: true

View File

@@ -10,10 +10,11 @@ Rails.application.routes.draw do
match 'signup/:step', to: 'signup#steps', as: :signup_steps, via: [:get, :post]
post 'signup_validate', to: 'signup#validate'
get 'settings', to: 'settings#index'
post 'settings_reset_password', to: 'settings#reset_password'
get 'security', to: 'security#index'
namespace :settings do
get 'profile', to: 'profile#index'
get 'security', to: 'security#index'
post 'reset_password', to: 'security#reset_password'
end
namespace :contributions do
root to: 'donations#index'