Sha256: da9a7c1f9c738f1592bb2b9114fc67baa31263412783fba754338299ba71e6a4
Contents?: true
Size: 969 Bytes
Versions: 9
Compression:
Stored size: 969 Bytes
Contents
module Spree module Api class AddressesController < Spree::Api::BaseController before_filter :find_order def show authorize! :read, @order, params[:order_token] find_address respond_with(@address) end def update authorize! :update, @order, params[:order_token] find_address if @address.update_attributes(params[:address]) respond_with(@address, :default_template => :show) else invalid_resource!(@address) end end private def find_order @order = Spree::Order.find_by_number!(params[:order_id]) end def find_address @address = if @order.bill_address_id == params[:id].to_i @order.bill_address elsif @order.ship_address_id == params[:id].to_i @order.ship_address else raise CanCan::AccessDenied end end end end end
Version data entries
9 entries across 9 versions & 1 rubygems