summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortkimia <tkimia@purdue.edu>2014-04-26 19:16:19 -0400
committertkimia <tkimia@purdue.edu>2014-04-26 19:16:19 -0400
commit96dd3fbe302eec54b34678e098d3b59710b09b5f (patch)
tree95138a74c0abe598d5f205f24067b6fd746b141b
parent10749a6242bec56586b71f4e8b886eddc9edc499 (diff)
prelim bracket control
-rw-r--r--app/controllers/brackets_controller.rb10
-rw-r--r--app/models/user.rb4
-rw-r--r--app/views/brackets/new.html.erb4
-rw-r--r--app/views/common/_show_tournament.html.erb7
-rw-r--r--config/routes.rb8
5 files changed, 22 insertions, 11 deletions
diff --git a/app/controllers/brackets_controller.rb b/app/controllers/brackets_controller.rb
index fe43ca9..ebd0c6b 100644
--- a/app/controllers/brackets_controller.rb
+++ b/app/controllers/brackets_controller.rb
@@ -12,11 +12,6 @@ class BracketsController < ApplicationController
def show
end
- # GET /brackets/new
- def new
- @bracket = Bracket.new
- end
-
# GET /brackets/1/edit
def edit
end
@@ -29,7 +24,7 @@ class BracketsController < ApplicationController
respond_to do |format|
if @bracket.save
format.html { redirect_to @bracket, notice: 'Bracket was successfully created.' }
- format.json { render action: 'show', status: :created, location: @bracket }
+ format.json { render action: 'edit', status: :created, location: @bracket }
else
format.html { render action: 'new' }
format.json { render json: @bracket.errors, status: :unprocessable_entity }
@@ -64,11 +59,12 @@ class BracketsController < ApplicationController
private
# Use callbacks to share common setup or constraints between actions.
def set_bracket
+ @tournament = Tournament.find(params[:tournament_id])
@bracket = Bracket.find(params[:id])
end
# Never trust parameters from the scary internet, only allow the white list through.
def bracket_params
- params.require(:bracket).permit(:user_id, :tournament_id, :name)
+ params.fetch(:bracket, {}).permit(:user_id, :tournament_id, :name)
end
end
diff --git a/app/models/user.rb b/app/models/user.rb
index d87f988..b2c7862 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -74,6 +74,10 @@ class User < ActiveRecord::Base
:edit_permissions => (2**19),
:edit_server => (2**20),
+
+ :create_bracket => (2**21),
+ :edit_bracket => (2**22),
+ :delete_bracket => (2**23)
}
end
diff --git a/app/views/brackets/new.html.erb b/app/views/brackets/new.html.erb
index c379c15..91d0033 100644
--- a/app/views/brackets/new.html.erb
+++ b/app/views/brackets/new.html.erb
@@ -1,5 +1,3 @@
<h1>New bracket</h1>
-<%= render 'form' %>
-
-<%= link_to 'Back', brackets_path %>
+<%= link_to 'Back', tournament_brackets_path %>
diff --git a/app/views/common/_show_tournament.html.erb b/app/views/common/_show_tournament.html.erb
index 0f60fad..fb31420 100644
--- a/app/views/common/_show_tournament.html.erb
+++ b/app/views/common/_show_tournament.html.erb
@@ -29,6 +29,13 @@
<% else %>
<p style="margin-top:10px;"> You've signed up for this tournament! </p>
<% end %>
+ <%= form_tag(tournament_brackets_path(target), method: "post") do %>
+ <%= label :user_id, nil, style: "display: none;" %>
+ <%= text_field_tag :user_id, current_user.id, style: "display: none;" %>
+ <%= label :tournament_id, nil, style: "display: none;" %>
+ <%= text_field_tag :tournament_id, target.id, style: "display: none;" %>
+ <%= submit_tag("Make Bracket") %>
+ <% end %>
<% end %>
</div>
</div> \ No newline at end of file
diff --git a/config/routes.rb b/config/routes.rb
index d7807f0..a4df5b4 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -1,5 +1,4 @@
Leaguer::Application.routes.draw do
- resources :brackets
resources :sessions, only: [:new, :create, :destroy]
@@ -15,6 +14,7 @@ Leaguer::Application.routes.draw do
resources :tournaments do
resources :matches, only: [:index, :show, :update]
+ resources :brackets
end
resource :server, only: [:show, :edit, :update]
@@ -33,6 +33,12 @@ Leaguer::Application.routes.named_routes.module.module_eval do
def match_url(match, options={})
tournament_match_url(match.tournament_stage.tournament, match, options)
end
+ def bracket_path(bracket, options={})
+ tournament_bracket_path(bracket.tournament, bracket, options)
+ end
+ def bracket_url(bracket, options={})
+ tournament_bracket_url(bracket.tournament, bracket, options)
+ end
end
if false