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 %>
|
||||
</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" %>>
|
||||
<%= link_to new_management_proposal_path do %>
|
||||
<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:
|
||||
management:
|
||||
account:
|
||||
alert:
|
||||
unverified_user: No verified user logged in yet
|
||||
show:
|
||||
title: User account
|
||||
account_info:
|
||||
change_user: Change user
|
||||
document_number_label: 'Document number:'
|
||||
@@ -45,6 +50,7 @@ en:
|
||||
support_spending_proposals: Support spending proposals
|
||||
title: Management
|
||||
users: Users
|
||||
edit_user_accounts: Edit user account
|
||||
permissions:
|
||||
create_proposals: Create proposals
|
||||
debates: Engage in debates
|
||||
|
||||
@@ -1,6 +1,11 @@
|
||||
---
|
||||
es:
|
||||
management:
|
||||
account:
|
||||
alert:
|
||||
unverified_user: Solo se pueden editar cuentas de usuarios verificados
|
||||
show:
|
||||
title: Cuenta de usuario
|
||||
account_info:
|
||||
change_user: Cambiar usuario
|
||||
document_number_label: 'Número de documento:'
|
||||
@@ -45,6 +50,7 @@ es:
|
||||
support_spending_proposals: Apoyar propts. de inversión
|
||||
title: Gestión
|
||||
users: Usuarios
|
||||
edit_user_accounts: Editar cuenta de usuario
|
||||
permissions:
|
||||
create_proposals: Crear nuevas propuestas
|
||||
debates: Participar en debates
|
||||
|
||||
@@ -220,6 +220,8 @@ Rails.application.routes.draw do
|
||||
end
|
||||
end
|
||||
|
||||
resource :account, controller: "account", only: [:show]
|
||||
|
||||
get 'sign_in', to: 'sessions#create'
|
||||
|
||||
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'
|
||||
|
||||
feature 'users' do
|
||||
feature 'Users' do
|
||||
|
||||
background do
|
||||
login_as_manager
|
||||
end
|
||||
|
||||
scenario 'Create a level 3 user from scratch' do
|
||||
|
||||
login_as_manager
|
||||
|
||||
visit management_document_verifications_path
|
||||
fill_in 'document_verification_document_number', with: '1234'
|
||||
click_button 'Check'
|
||||
@@ -44,7 +46,6 @@ feature 'users' do
|
||||
|
||||
scenario 'Delete a level 2 user account from document verification page', :js do
|
||||
level_2_user = create(:user, :level_two, document_number: 13579)
|
||||
login_as_manager
|
||||
|
||||
visit management_document_verifications_path
|
||||
fill_in 'document_verification_document_number', with: '13579'
|
||||
|
||||
Reference in New Issue
Block a user