Extract user creation method if not signed in

related to openSUSE/osem#597

Signed-off-by: Carlos Coelho <carlos@pencillabs.com>
This commit is contained in:
Carlos Coelho 2016-03-04 11:09:14 -03:00
parent 3dc7aaf4ea
commit b58a00b321

View file

@ -26,16 +26,7 @@ class ProposalController < ApplicationController
def create
@url = conference_program_proposal_index_path(@conference.short_title)
unless current_user
@user = User.new(user_params)
if @user.save
sign_in(@user)
else
flash[:error] = "Could not save user: #{@user.errors.full_messages.join(', ')}"
render action: 'new'
return
end
end
create_user_if_not_signed_in
params[:event].delete :user
@ -146,6 +137,19 @@ class ProposalController < ApplicationController
def user_params
params.require(:user).permit(:email, :password, :password_confirmation, :username)
end
def create_user_if_not_signed_in
unless current_user
@user = User.new(user_params)
if @user.save
sign_in(@user)
else
flash[:error] = "Could not save user: #{@user.errors.full_messages.join(', ')}"
render action: 'new'
return
end
end
end
end
# FIXME: Introduce strong_parameters pronto!