Merge 3eeba6cbb0 into 798998b73f
This commit is contained in:
commit
b7b0ab6d50
4 changed files with 31 additions and 2 deletions
|
|
@ -36,6 +36,14 @@ module Admin
|
||||||
|
|
||||||
def edit; end
|
def edit; end
|
||||||
|
|
||||||
|
def confirm
|
||||||
|
if @user.confirm
|
||||||
|
redirect_to admin_users_path, notice: "Confirmed #{@user.name}'s email (#{@user.email})!"
|
||||||
|
else
|
||||||
|
redirect_to admin_users_path, error: "Could not confirm #{@user.name}'s email (#{@user.email}). #{@user.errors.full_messages.join('. ')}."
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
def user_params
|
def user_params
|
||||||
|
|
|
||||||
|
|
@ -27,6 +27,7 @@
|
||||||
confirmed
|
confirmed
|
||||||
- else
|
- else
|
||||||
unconfirmed
|
unconfirmed
|
||||||
|
= link_to 'Confirm', confirm_admin_user_path(user), method: :patch, class: 'btn btn-xs btn-success'
|
||||||
%td
|
%td
|
||||||
= user.email
|
= user.email
|
||||||
%td
|
%td
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,12 @@ Osem::Application.routes.draw do
|
||||||
resources :users, except: [:new, :index, :create, :destroy]
|
resources :users, except: [:new, :index, :create, :destroy]
|
||||||
|
|
||||||
namespace :admin do
|
namespace :admin do
|
||||||
resources :users
|
resources :users do
|
||||||
|
member do
|
||||||
|
patch :confirm
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
resources :comments, only: [:index]
|
resources :comments, only: [:index]
|
||||||
resources :conference do
|
resources :conference do
|
||||||
resource :contact, except: [:index, :new, :create, :show, :destroy]
|
resource :contact, except: [:index, :new, :create, :show, :destroy]
|
||||||
|
|
|
||||||
|
|
@ -2,8 +2,23 @@ require 'spec_helper'
|
||||||
|
|
||||||
feature User do
|
feature User do
|
||||||
|
|
||||||
shared_examples 'admin ability' do
|
let(:admin) { create(:admin) }
|
||||||
|
|
||||||
|
shared_examples 'admin ability' do
|
||||||
|
scenario 'manually confirm unconfirmed users', feature: true, js: true do
|
||||||
|
sign_in admin
|
||||||
|
user = create(:user, confirmed_at: nil)
|
||||||
|
expect(user.confirmed?).to be false
|
||||||
|
visit admin_users_path
|
||||||
|
|
||||||
|
within('tr', text: user.name) do
|
||||||
|
expect(page.has_content?('unconfirmed')).to be true
|
||||||
|
click_link 'Confirm'
|
||||||
|
end
|
||||||
|
|
||||||
|
user.reload
|
||||||
|
expect(user.confirmed?).to be true
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
describe 'admin' do
|
describe 'admin' do
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue