adds account section to management
for now it only has the option to delete account
This commit is contained in:
19
app/controllers/management/account_controller.rb
Normal file
19
app/controllers/management/account_controller.rb
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
class Management::AccountController < Management::BaseController
|
||||||
|
|
||||||
|
before_action :check_verified_user
|
||||||
|
|
||||||
|
def show
|
||||||
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
def check_verified_user
|
||||||
|
unless current_user.level_two_or_three_verified?
|
||||||
|
redirect_to management_document_verifications_path, alert: t("management.account.alert.unverified_user")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def current_user
|
||||||
|
managed_user
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
@@ -13,6 +13,13 @@
|
|||||||
<% end %>
|
<% end %>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
<li <%= "class=active" if controller_name == "account" %>>
|
||||||
|
<%= link_to management_account_path do %>
|
||||||
|
<span class="icon-user"></span>
|
||||||
|
<%= t("management.menu.edit_user_accounts") %>
|
||||||
|
<% end %>
|
||||||
|
</li>
|
||||||
|
|
||||||
<li <%= "class=active" if controller_name == "proposals" and action_name == "new" %>>
|
<li <%= "class=active" if controller_name == "proposals" and action_name == "new" %>>
|
||||||
<%= link_to new_management_proposal_path do %>
|
<%= link_to new_management_proposal_path do %>
|
||||||
<span class="icon-proposals"></span>
|
<span class="icon-proposals"></span>
|
||||||
|
|||||||
3
app/views/management/account/show.html.erb
Normal file
3
app/views/management/account/show.html.erb
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<h2><%= t("management.account.show.title") %></h2>
|
||||||
|
|
||||||
|
<%= render 'management/users/erase_user_account' %>
|
||||||
@@ -1,6 +1,11 @@
|
|||||||
---
|
---
|
||||||
en:
|
en:
|
||||||
management:
|
management:
|
||||||
|
account:
|
||||||
|
alert:
|
||||||
|
unverified_user: No verified user logged in yet
|
||||||
|
show:
|
||||||
|
title: User account
|
||||||
account_info:
|
account_info:
|
||||||
change_user: Change user
|
change_user: Change user
|
||||||
document_number_label: 'Document number:'
|
document_number_label: 'Document number:'
|
||||||
@@ -45,6 +50,7 @@ en:
|
|||||||
support_spending_proposals: Support spending proposals
|
support_spending_proposals: Support spending proposals
|
||||||
title: Management
|
title: Management
|
||||||
users: Users
|
users: Users
|
||||||
|
edit_user_accounts: Edit user account
|
||||||
permissions:
|
permissions:
|
||||||
create_proposals: Create proposals
|
create_proposals: Create proposals
|
||||||
debates: Engage in debates
|
debates: Engage in debates
|
||||||
|
|||||||
@@ -1,6 +1,11 @@
|
|||||||
---
|
---
|
||||||
es:
|
es:
|
||||||
management:
|
management:
|
||||||
|
account:
|
||||||
|
alert:
|
||||||
|
unverified_user: Solo se pueden editar cuentas de usuarios verificados
|
||||||
|
show:
|
||||||
|
title: Cuenta de usuario
|
||||||
account_info:
|
account_info:
|
||||||
change_user: Cambiar usuario
|
change_user: Cambiar usuario
|
||||||
document_number_label: 'Número de documento:'
|
document_number_label: 'Número de documento:'
|
||||||
@@ -45,6 +50,7 @@ es:
|
|||||||
support_spending_proposals: Apoyar propts. de inversión
|
support_spending_proposals: Apoyar propts. de inversión
|
||||||
title: Gestión
|
title: Gestión
|
||||||
users: Usuarios
|
users: Usuarios
|
||||||
|
edit_user_accounts: Editar cuenta de usuario
|
||||||
permissions:
|
permissions:
|
||||||
create_proposals: Crear nuevas propuestas
|
create_proposals: Crear nuevas propuestas
|
||||||
debates: Participar en debates
|
debates: Participar en debates
|
||||||
|
|||||||
@@ -220,6 +220,8 @@ Rails.application.routes.draw do
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
resource :account, controller: "account", only: [:show]
|
||||||
|
|
||||||
get 'sign_in', to: 'sessions#create'
|
get 'sign_in', to: 'sessions#create'
|
||||||
|
|
||||||
resource :session, only: [:create, :destroy]
|
resource :session, only: [:create, :destroy]
|
||||||
|
|||||||
32
spec/features/management/account_spec.rb
Normal file
32
spec/features/management/account_spec.rb
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
feature 'Account' do
|
||||||
|
|
||||||
|
background do
|
||||||
|
login_as_manager
|
||||||
|
end
|
||||||
|
|
||||||
|
scenario "Should not allow unverified users to create spending proposals" do
|
||||||
|
user = create(:user)
|
||||||
|
login_managed_user(user)
|
||||||
|
|
||||||
|
click_link "Edit user account"
|
||||||
|
|
||||||
|
expect(page).to have_content "No verified user logged in yet"
|
||||||
|
end
|
||||||
|
|
||||||
|
scenario 'Delete a user account', :js do
|
||||||
|
user = create(:user, :level_two)
|
||||||
|
login_managed_user(user)
|
||||||
|
|
||||||
|
visit management_account_path
|
||||||
|
|
||||||
|
click_link "Delete user"
|
||||||
|
click_link "Delete account"
|
||||||
|
|
||||||
|
expect(page).to have_content "User account deleted."
|
||||||
|
|
||||||
|
expect(user.reload.erase_reason).to eq "Deleted by manager: JJB042"
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
@@ -1,11 +1,13 @@
|
|||||||
require 'rails_helper'
|
require 'rails_helper'
|
||||||
|
|
||||||
feature 'users' do
|
feature 'Users' do
|
||||||
|
|
||||||
|
background do
|
||||||
|
login_as_manager
|
||||||
|
end
|
||||||
|
|
||||||
scenario 'Create a level 3 user from scratch' do
|
scenario 'Create a level 3 user from scratch' do
|
||||||
|
|
||||||
login_as_manager
|
|
||||||
|
|
||||||
visit management_document_verifications_path
|
visit management_document_verifications_path
|
||||||
fill_in 'document_verification_document_number', with: '1234'
|
fill_in 'document_verification_document_number', with: '1234'
|
||||||
click_button 'Check'
|
click_button 'Check'
|
||||||
@@ -44,7 +46,6 @@ feature 'users' do
|
|||||||
|
|
||||||
scenario 'Delete a level 2 user account from document verification page', :js do
|
scenario 'Delete a level 2 user account from document verification page', :js do
|
||||||
level_2_user = create(:user, :level_two, document_number: 13579)
|
level_2_user = create(:user, :level_two, document_number: 13579)
|
||||||
login_as_manager
|
|
||||||
|
|
||||||
visit management_document_verifications_path
|
visit management_document_verifications_path
|
||||||
fill_in 'document_verification_document_number', with: '13579'
|
fill_in 'document_verification_document_number', with: '13579'
|
||||||
|
|||||||
Reference in New Issue
Block a user