admins can resend invitations
This commit is contained in:
parent
f0ba62be59
commit
435451bc5b
3 changed files with 15 additions and 6 deletions
|
|
@ -1,7 +1,7 @@
|
|||
class AdminsController < ApplicationController
|
||||
before_filter :authenticate_user!
|
||||
before_filter :redirect_unless_admin
|
||||
|
||||
before_filter :redirect_unless_admin
|
||||
|
||||
def user_search
|
||||
user = params[:user] || {}
|
||||
user = user.delete_if {|key, value| value.blank? }
|
||||
|
|
@ -17,7 +17,10 @@ class AdminsController < ApplicationController
|
|||
end
|
||||
|
||||
def admin_inviter
|
||||
Invitation.create_invitee(:service => 'email', :identifier => params[:identifier])
|
||||
opts = {:service => 'email', :identifier => params[:identifier]}
|
||||
existing_user = Invitation.find_existing_user('email', params[:identifier])
|
||||
opts.merge!(:existing_user => existing_user) if existing_user
|
||||
Invitation.create_invitee(opts)
|
||||
flash[:notice] = "invitation sent to #{params[:identifier]}"
|
||||
redirect_to '/admins/user_search'
|
||||
end
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ require 'spec_helper'
|
|||
describe AdminsController do
|
||||
render_views
|
||||
before do
|
||||
@user = Factory :user
|
||||
@user = Factory :user
|
||||
sign_in :user, @user
|
||||
end
|
||||
|
||||
|
|
@ -54,11 +54,18 @@ describe AdminsController do
|
|||
end
|
||||
|
||||
describe '#admin_inviter' do
|
||||
it 'invites a user' do
|
||||
it 'invites a new user' do
|
||||
Invitation.should_receive(:create_invitee).with(:service => 'email', :identifier => 'bob@moms.com')
|
||||
get :admin_inviter, :identifier => 'bob@moms.com'
|
||||
response.should be_redirect
|
||||
end
|
||||
it 'passes an existing user to create_invitee' do
|
||||
Factory.create(:user, :email => 'bob@moms.com')
|
||||
bob = User.where(:email => 'bob@moms.com').first
|
||||
Invitation.should_receive(:find_existing_user).with('email', 'bob@moms.com').and_return(bob)
|
||||
Invitation.should_receive(:create_invitee).with(:service => 'email', :identifier => 'bob@moms.com', :existing_user => bob)
|
||||
get :admin_inviter, :identifier => 'bob@moms.com'
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@ ENV["RAILS_ENV"] ||= 'test'
|
|||
require File.join(File.dirname(__FILE__), '..', 'config', 'environment') unless defined?(Rails)
|
||||
require 'helper_methods'
|
||||
require 'rspec/rails'
|
||||
puts require 'rspec'
|
||||
require 'webmock/rspec'
|
||||
require 'factory_girl'
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue