Class: Spree::AddressesController
Instance Method Summary
collapse
#account_link, #api_tokens, #cart_link, #ensure_cart, #forbidden, #unauthorized
Instance Method Details
#create ⇒ Object
11
12
13
14
15
16
17
18
19
|
# File 'app/controllers/spree/addresses_controller.rb', line 11
def create
@address = try_spree_current_user.addresses.build(address_params)
if @address.save
flash[:notice] = I18n.t(:successfully_created, scope: :address_book)
redirect_to spree.account_path
else
render action: 'new'
end
end
|
#destroy ⇒ Object
50
51
52
53
54
55
|
# File 'app/controllers/spree/addresses_controller.rb', line 50
def destroy
@address.destroy
flash[:notice] = Spree.t(:successfully_removed, scope: :address_book)
redirect_to(request.env['HTTP_REFERER'] || addresses_path) unless request.xhr?
end
|
#edit ⇒ Object
21
22
23
|
# File 'app/controllers/spree/addresses_controller.rb', line 21
def edit
session['spree_user_return_to'] = request.env['HTTP_REFERER']
end
|
#index ⇒ Object
7
8
9
|
# File 'app/controllers/spree/addresses_controller.rb', line 7
def index
@addresses = try_spree_current_user.addresses
end
|
#new ⇒ Object
25
26
27
|
# File 'app/controllers/spree/addresses_controller.rb', line 25
def new
@address = Spree::Address.default
end
|
#update ⇒ Object
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
# File 'app/controllers/spree/addresses_controller.rb', line 29
def update
if @address.editable?
if @address.update(address_params)
flash[:notice] = Spree.t(:successfully_updated, scope: :address_book)
redirect_back_or_default(addresses_path)
else
render :edit
end
else
new_address = @address.clone
new_address.attributes = address_params
@address.update_attribute(:deleted_at, Time.current)
if new_address.save
flash[:notice] = Spree.t(:successfully_updated, scope: :address_book)
redirect_back_or_default(addresses_path)
else
render :edit
end
end
end
|