Merge pull request #2110 from wairbut-m2c/aperez-remove-valuator-role

Add option to unassign Valuator role
This commit is contained in:
BertoCQ
2017-11-21 16:34:16 +01:00
committed by GitHub
8 changed files with 33 additions and 10 deletions

View File

@@ -19,6 +19,11 @@ class Admin::ValuatorsController < Admin::BaseController
redirect_to admin_valuators_path redirect_to admin_valuators_path
end end
def destroy
@valuator.destroy
redirect_to admin_valuators_path
end
def summary def summary
@valuators = Valuator.order(spending_proposals_count: :desc) @valuators = Valuator.order(spending_proposals_count: :desc)
end end

View File

@@ -43,7 +43,7 @@ module Abilities
can [:search, :create, :index, :destroy], ::Administrator can [:search, :create, :index, :destroy], ::Administrator
can [:search, :create, :index, :destroy], ::Moderator can [:search, :create, :index, :destroy], ::Moderator
can [:search, :create, :index, :summary], ::Valuator can [:search, :create, :index, :destroy, :summary], ::Valuator
can [:search, :create, :index, :destroy], ::Manager can [:search, :create, :index, :destroy], ::Manager
can [:search, :index], ::User can [:search, :index], ::User

View File

@@ -1,6 +1,6 @@
<h2><%= t("admin.valuators.index.title") %></h2> <h2><%= t("admin.valuators.index.title") %></h2>
<%= render 'admin/shared/user_search', url: search_admin_valuators_path %> <%= render "admin/shared/user_search", url: search_admin_valuators_path %>
<div id="valuators"> <div id="valuators">
<% if @valuators.any? %> <% if @valuators.any? %>
@@ -11,16 +11,13 @@
<th scope="col"><%= t("admin.valuators.index.name") %></th> <th scope="col"><%= t("admin.valuators.index.name") %></th>
<th scope="col"><%= t("admin.valuators.index.email") %></th> <th scope="col"><%= t("admin.valuators.index.email") %></th>
<th scope="col"><%= t("admin.valuators.index.description") %></th> <th scope="col"><%= t("admin.valuators.index.description") %></th>
<th scope="col"><%= t("admin.actions.actions") %></th>
</thead> </thead>
<tbody> <tbody>
<% @valuators.each do |valuator| %> <% @valuators.each do |valuator| %>
<tr> <tr>
<td> <td><%= valuator.name %></td>
<%= valuator.name %> <td><%= valuator.email %></td>
</td>
<td>
<%= valuator.email %>
</td>
<td> <td>
<% if valuator.description.present? %> <% if valuator.description.present? %>
<%= valuator.description %> <%= valuator.description %>
@@ -28,6 +25,12 @@
<%= t("admin.valuators.index.no_description") %> <%= t("admin.valuators.index.no_description") %>
<% end %> <% end %>
</td> </td>
<td>
<%= link_to t("admin.valuators.valuator.delete"),
admin_valuator_path(valuator),
method: :delete,
class: "button hollow alert expanded" %>
</td>
</tr> </tr>
<% end %> <% end %>
</tbody> </tbody>

View File

@@ -29,7 +29,12 @@
<%= t("admin.valuators.index.no_description") %> <%= t("admin.valuators.index.no_description") %>
<% end %> <% end %>
<td> <td>
<% unless user.valuator? %> <% if user.valuator? %>
<%= link_to t("admin.valuators.valuator.delete"),
admin_valuator_path(user),
method: :delete,
class: "button hollow alert expanded" %>
<% else %>
<%= form_for Valuator.new(user: user), url: admin_valuators_path do |f| %> <%= form_for Valuator.new(user: user), url: admin_valuators_path do |f| %>
<%= f.text_field :description, <%= f.text_field :description,
label: false, label: false,

View File

@@ -483,6 +483,7 @@ en:
valuator: valuator:
description_placeholder: 'Description (optional)' description_placeholder: 'Description (optional)'
add: Add to valuators add: Add to valuators
delete: Delete
search: search:
title: 'Valuators: User search' title: 'Valuators: User search'
summary: summary:

View File

@@ -483,6 +483,7 @@ es:
valuator: valuator:
description_placeholder: 'Descripción (opcional)' description_placeholder: 'Descripción (opcional)'
add: Añadir como evaluador add: Añadir como evaluador
delete: Borrar
search: search:
title: 'Evaluadores: Búsqueda de usuarios' title: 'Evaluadores: Búsqueda de usuarios'
summary: summary:

View File

@@ -272,7 +272,7 @@ Rails.application.routes.draw do
get :search, on: :collection get :search, on: :collection
end end
resources :valuators, only: [:index, :create] do resources :valuators, only: [:index, :create, :destroy] do
get :search, on: :collection get :search, on: :collection
get :summary, on: :collection get :summary, on: :collection
end end

View File

@@ -29,6 +29,14 @@ feature 'Admin valuators' do
end end
end end
scenario 'Delete Valuator' do
click_link 'Delete'
within('#valuators') do
expect(page).to_not have_content(@valuator.name)
end
end
context 'Search' do context 'Search' do
background do background do