class Spree::UsersController
Public Instance Methods
create()
click to toggle source
# File lib/controllers/frontend/spree/users_controller.rb, line 14 def create @user = Spree::User.new(user_params) if @user.save if current_order session[:guest_token] = nil end redirect_back_or_default(root_url) else render :new end end
show()
click to toggle source
# File lib/controllers/frontend/spree/users_controller.rb, line 10 def show @orders = @user.orders.complete.order('completed_at desc') end
update()
click to toggle source
# File lib/controllers/frontend/spree/users_controller.rb, line 28 def update if @user.update(user_params) spree_current_user.reload redirect_url = spree.account_url if params[:user][:password].present? # this logic needed b/c devise wants to log us out after password changes if Spree::Auth::Config[:signout_after_password_change] redirect_url = spree.login_url else bypass_sign_in(@user) end end redirect_to redirect_url, notice: I18n.t('spree.account_updated') else render :edit end end
Private Instance Methods
accurate_title()
click to toggle source
# File lib/controllers/frontend/spree/users_controller.rb, line 62 def accurate_title I18n.t('spree.my_account') end
load_object()
click to toggle source
# File lib/controllers/frontend/spree/users_controller.rb, line 53 def load_object @user ||= Spree::User.find_by(id: spree_current_user&.id) authorize! params[:action].to_sym, @user end
user_params()
click to toggle source
# File lib/controllers/frontend/spree/users_controller.rb, line 49 def user_params params.require(:user).permit(Spree::PermittedAttributes.user_attributes | [:email]) end