Class: Renalware::Events::EventsController
Instance Method Summary
collapse
#patient
Instance Method Details
#create ⇒ Object
31
32
33
34
35
36
37
38
39
40
|
# File 'app/controllers/renalware/events/events_controller.rb', line 31
def create
event = new_event_for_patient(event_params)
if CreateEvent.call(event: event, by: current_user)
redirect_to return_url, notice: t(".success", model_name: "event")
else
flash.now[:error] = t(".failed", model_name: "event")
render_new(event)
end
end
|
#destroy ⇒ Object
69
70
71
72
|
# File 'app/controllers/renalware/events/events_controller.rb', line 69
def destroy
load_and_authorize_event_for_edit_or_update.destroy!
redirect_to patient_events_path
end
|
#edit ⇒ Object
54
55
56
|
# File 'app/controllers/renalware/events/events_controller.rb', line 54
def edit
render_edit(load_and_authorize_event_for_edit_or_update)
end
|
#index ⇒ Object
42
43
44
45
46
47
48
49
50
51
52
|
# File 'app/controllers/renalware/events/events_controller.rb', line 42
def index
events_query = EventQuery.new(patient: patient, query: query_params)
events = events_query.call.page(page).per(per_page)
authorize events
events = EventsPresenter.new(patient, events)
render locals: {
events: events,
query: events_query.search
}
end
|
#new ⇒ Object
HTML GET when rendering the new form JS GET after user selects event type, prompting us to return event-specific form fields
26
27
28
29
|
# File 'app/controllers/renalware/events/events_controller.rb', line 26
def new
save_path_to_return_to
render_new(build_new_event)
end
|
#show ⇒ Object
Render a PDF of the event
14
15
16
17
18
19
20
21
22
|
# File 'app/controllers/renalware/events/events_controller.rb', line 14
def show
event = load_and_authorize_event_for_edit_or_update
respond_to do |format|
format.pdf do
pdf = EventPdf.new(EventPdfPresenter.new(event))
send_data pdf.render, type: "application/pdf", disposition: "inline"
end
end
end
|
#update ⇒ Object
58
59
60
61
62
63
64
65
66
67
|
# File 'app/controllers/renalware/events/events_controller.rb', line 58
def update
event = load_and_authorize_event_for_edit_or_update
if UpdateEvent.call(event: event, params: event_params, by: current_user)
redirect_to return_url, notice: t(".success", model_name: "event")
else
flash.now[:error] = failed_msg_for("event type")
render_edit(event)
end
end
|