Class: Spree::Api::V2::Organizer::TicketsController

Inherits:
BaseController
  • Object
show all
Defined in:
app/controllers/spree/api/v2/organizer/tickets_controller.rb

Instance Method Summary collapse

Methods inherited from BaseController

#render_serialized_payload

Instance Method Details

#createObject



30
31
32
33
34
35
36
37
38
39
40
# File 'app/controllers/spree/api/v2/organizer/tickets_controller.rb', line 30

def create
  resource = Spree::Product.new(product_params)
  resource.stores << @store
  resource.taxons << @event

  if resource.save
    render_serialized_payload(201) { serialize_resource(resource) }
  else
    render_error_payload(resource.errors.full_messages.to_sentence, 400)
  end
end

#destroyObject



52
53
54
55
56
57
58
59
60
# File 'app/controllers/spree/api/v2/organizer/tickets_controller.rb', line 52

def destroy
  resource = Spree::Product.find(params[:id])

  if resource.destroy
    render_serialized_payload { serialize_resource(resource) }
  else
    render_error_payload(resource.errors.full_messages.to_sentence, 400)
  end
end

#indexObject



9
10
11
12
13
14
15
16
17
18
19
20
# File 'app/controllers/spree/api/v2/organizer/tickets_controller.rb', line 9

def index
  event = Spree::Taxon.find(params[:event_id])

  resource = event.products.page(params[:page]).per(params[:per_page])

  render_serialized_payload do
    collection_serializer.new(
      resource,
      collection_options(resource)
    ).serializable_hash
  end
end

#showObject



22
23
24
25
26
27
28
# File 'app/controllers/spree/api/v2/organizer/tickets_controller.rb', line 22

def show
  resource = Spree::Product.find(params[:id])

  render_serialized_payload do
    Spree::V2::Organizer::TicketSerializer.new(resource).serializable_hash
  end
end

#updateObject



42
43
44
45
46
47
48
49
50
# File 'app/controllers/spree/api/v2/organizer/tickets_controller.rb', line 42

def update
  resource = Spree::Product.find(params[:id])

  if resource.update(product_params)
    render_serialized_payload { serialize_resource(resource) }
  else
    render_error_payload(resource.errors.full_messages.to_sentence, 400)
  end
end