summaryrefslogtreecommitdiff
path: root/app/controllers/tournaments_controller.rb
diff options
context:
space:
mode:
authorAndrewMurrell <amurrel@purdue.edu>2014-04-27 20:39:17 -0400
committerAndrewMurrell <amurrel@purdue.edu>2014-04-27 20:39:17 -0400
commitfbdb313c53b836deb1b4151169b32656fd1f70da (patch)
treea2444e326d7a737ee5c8bbcd149afa16481796de /app/controllers/tournaments_controller.rb
parentc87dbe49d521683900c20a9425a96467fa631489 (diff)
parent9d0be853cef35412c0bfe92c80502fd9da7947f1 (diff)
Merge branch 'master' of http://github.com/LukeShu/leaguer
Diffstat (limited to 'app/controllers/tournaments_controller.rb')
-rw-r--r--app/controllers/tournaments_controller.rb17
1 files changed, 14 insertions, 3 deletions
diff --git a/app/controllers/tournaments_controller.rb b/app/controllers/tournaments_controller.rb
index 9c8ad7a..2e854a2 100644
--- a/app/controllers/tournaments_controller.rb
+++ b/app/controllers/tournaments_controller.rb
@@ -31,6 +31,17 @@ class TournamentsController < ApplicationController
# GET /tournaments/new
def new
@tournament = Tournament.new(tournament_attribute_params)
+ if @tournament.game
+ @tournament.game.settings.each do |game_setting|
+ @tournament.tournament_settings.build(
+ name: game_setting.name,
+ value: game_setting.value,
+ vartype: game_setting.vartype,
+ type_opt: game_setting.type_opt,
+ description: game_setting.description,
+ display_order: game_setting.display_order)
+ end
+ end
end
# GET /tournaments/1/edit
@@ -46,17 +57,17 @@ class TournamentsController < ApplicationController
ok = true
begin
ActiveRecord::Base.transaction do
- ok &= @tournament.save
ok &= @tournament.update(tournament_setting_params)
ok &= @tournament.hosts.push(current_user)
for i in 1..(params[:num_stages].to_i) do
begin
- ok &= @tournament.stages.create(tournament_stage_params(i))
+ ok &= @tournament.stages.build(tournament_stage_params(i))
rescue ActionController::ParameterMissing => e
ok = false
- @tournament.errors.add("stages[#{i}]", "Stage #{i} not set")
+ @tournament.errors.add("stages[#{i}]", "needs to be set")
end
end
+ ok &= @tournament.save
end
rescue ActiveRecord::RecordNotUnique => e
ok = false