Skip to content

Commit fe66870

Browse files
authored
refactor: Cleans update method in rsvps_controller (#305)
* refactor: Cleans update method in rsvps_controller * refactor: Fixes whitespace issue for Hound
1 parent cb16869 commit fe66870

File tree

1 file changed

+24
-17
lines changed

1 file changed

+24
-17
lines changed

app/controllers/rsvps_controller.rb

Lines changed: 24 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -55,23 +55,8 @@ def update
5555
return
5656
end
5757

58-
@questionnaire.acc_status_date = Time.now if @questionnaire.acc_status != params[:questionnaire][:acc_status]
59-
@questionnaire.acc_status = params[:questionnaire][:acc_status]
60-
@questionnaire.acc_status_author_id = current_user.id
61-
62-
new_bus_list_id = params[:questionnaire][:bus_list_id].presence
63-
new_bus_list = new_bus_list_id && BusList.find(new_bus_list_id)
64-
is_joining_bus = new_bus_list.present? && @questionnaire.bus_list != new_bus_list
65-
if is_joining_bus && new_bus_list.full?
66-
if @questionnaire.bus_list_id?
67-
flash[:alert] = "Sorry, that bus is full. You are still signed up for the '#{@questionnaire.bus_list.name}' bus."
68-
else
69-
flash[:alert] = "Sorry, that bus is full. You may need to arrange other plans for transportation."
70-
end
71-
else
72-
@questionnaire.bus_list = new_bus_list
73-
@questionnaire.bus_captain_interest = params[:questionnaire][:bus_captain_interest]
74-
end
58+
update_acc_status
59+
update_bus_list
7560

7661
unless @questionnaire.save
7762
flash[:alert] = @questionnaire.errors.full_message.join(", ")
@@ -91,6 +76,28 @@ def update
9176

9277
private
9378

79+
def update_acc_status
80+
@questionnaire.acc_status_date = Time.now if @questionnaire.acc_status != params[:questionnaire][:acc_status]
81+
@questionnaire.acc_status = params[:questionnaire][:acc_status]
82+
@questionnaire.acc_status_author_id = current_user.id
83+
end
84+
85+
def update_bus_list
86+
new_bus_list_id = params[:questionnaire][:bus_list_id].presence
87+
new_bus_list = new_bus_list_id && BusList.find(new_bus_list_id)
88+
is_joining_bus = new_bus_list.present? && @questionnaire.bus_list != new_bus_list
89+
if is_joining_bus && new_bus_list.full?
90+
if @questionnaire.bus_list_id?
91+
flash[:alert] = "Sorry, that bus is full. You are still signed up for the '#{@questionnaire.bus_list.name}' bus."
92+
else
93+
flash[:alert] = "Sorry, that bus is full. You may need to arrange other plans for transportation."
94+
end
95+
else
96+
@questionnaire.bus_list = new_bus_list
97+
@questionnaire.bus_captain_interest = params[:questionnaire][:bus_captain_interest]
98+
end
99+
end
100+
94101
def rsvp_error_notice
95102
hackathon_name = HackathonConfig['name']
96103
"There was an error submitting your response, please check over your application and try again. Did you accept the #{hackathon_name} Agreement?"

0 commit comments

Comments
 (0)