47 lines
1.1 KiB
Ruby
47 lines
1.1 KiB
Ruby
class ApiInvitedUsersController < ApiController
|
|
|
|
# have to be signed in currently to see this screen
|
|
before_filter :api_signed_in_user
|
|
|
|
respond_to :json
|
|
|
|
def index
|
|
@invited_users = InvitedUser.index(current_user)
|
|
end
|
|
|
|
def show
|
|
if InvitedUser::FB_MEDIUM == params[:id]
|
|
@invited_user = current_user.facebook_invite!
|
|
else
|
|
@invited_user = InvitedUser.find(params[:id])
|
|
end
|
|
end
|
|
|
|
def create
|
|
@invited_users = []
|
|
if (emails = params[:emails]).present?
|
|
emails = emails[0...Rails.application.config.max_email_invites_per_request].uniq
|
|
msg = params[:note].blank? ? nil : params[:note].strip
|
|
@invited_users = emails.collect do |ee|
|
|
iu = InvitedUser.new
|
|
iu.sender = current_user
|
|
iu.email = ee.strip
|
|
iu.autofriend = true
|
|
iu.note = msg
|
|
iu.save
|
|
iu
|
|
end
|
|
else
|
|
iu = InvitedUser.new
|
|
iu.sender = current_user
|
|
iu.save
|
|
@invited_users = [iu]
|
|
end
|
|
if err = @invited_users.detect {|iu| iu.errors.any? }
|
|
response.status = :unprocessable_entity
|
|
respond_with err
|
|
end
|
|
end
|
|
|
|
end
|