1
0
mirror of https://github.com/jcwimer/wrestlingApp synced 2026-03-25 01:14:43 +00:00

Created a weigh in page

This commit is contained in:
2015-06-30 17:59:02 +00:00
parent 5b17c49a20
commit ce2a7b28bc
8 changed files with 106 additions and 3 deletions

View File

@@ -98,4 +98,31 @@ class StaticPagesController < ApplicationController
end
end
end
def weigh_in
if !user_signed_in?
redirect_to root_path
end
if params[:wrestler]
Wrestler.update(params[:wrestler].keys, params[:wrestler].values)
end
if params[:tournament]
@tournament = Tournament.find(params[:tournament])
@tournament_id = @tournament.id
@tournament_name = @tournament.name
end
if @tournament
@weights = Weight.where(tournament_id: @tournament.id)
@weights = @weights.sort_by{|x|[x.max]}
end
if params[:weight]
@weight = Weight.find(params[:weight])
@tournament_id = @weight.tournament_id
@tournament_name = Tournament.find(@tournament_id).name
end
if @weight
@wrestlers = @weight.wrestlers
end
end
end

View File

@@ -83,6 +83,6 @@ class TournamentsController < ApplicationController
# Never trust parameters from the scary internet, only allow the white list through.
def tournament_params
params.require(:tournament).permit(:name, :address, :director, :director_email, :tournament_type)
params.require(:tournament).permit(:name, :address, :director, :director_email, :tournament_type, :weigh_in_ref)
end
end

View File

@@ -102,6 +102,6 @@ class WrestlersController < ApplicationController
# Never trust parameters from the scary internet, only allow the white list through.
def wrestler_params
params.require(:wrestler).permit(:name, :school_id, :weight_id, :seed, :original_seed, :season_win, :season_loss,:criteria,:extra)
params.require(:wrestler).permit(:name, :school_id, :weight_id, :seed, :original_seed, :season_win, :season_loss,:criteria,:extra,:offical_weight)
end
end

View File

@@ -0,0 +1,63 @@
<%= link_to "Back to #{@tournament_name}", "/tournaments/#{@tournament_id}", :class=>"btn btn-default" %>
<br>
<br>
<% if @tournament %>
<% @weights.each do |weight| %>
<%= link_to "#{weight.max}" , "/static_pages/weigh_in?weight=#{weight.id}" %>
<br>
<% end %>
<br>
<% if user_signed_in? %>
<%= form_for(@tournament) do |f| %>
<div class="field">
<%= f.label :weigh_in_ref %><br>
<%= f.text_field :weigh_in_ref %>
</div>
<br>
<%= f.submit 'Submit', :class=>"btn btn-success" %>
<% end %>
<% end %>
<% end %>
<% if @weight %>
<%= link_to "Back to weigh in weights","/static_pages/weigh_in?tournament=#{@tournament_id}", :class=>"btn btn-default" %>
<br><br>
<table class="table table-striped table-bordered">
<thead>
<tr>
<th>Name</th>
<th>School</th>
<th>Seed</th>
<th>Weight Class</th>
<th>Offical Weight</th>
</tr>
</thead>
<tbody>
<%= form_tag @wrestlers_update_path do %>
<% @wrestlers.order("original_seed asc").each do |wrestler| %>
<% if wrestler.weight_id == @weight.id %>
<tr>
<td><%= wrestler.name %></td>
<td><%= School.find(wrestler.school_id).name %></td>
<td><%= wrestler.weight.max %></td>
<td><%= wrestler.original_seed %></td>
<td>
<% if user_signed_in? %>
<%= fields_for "wrestler[]", wrestler do |w| %>
<%= w.number_field :offical_weight, :step => 'any' %>
<% end %>
<% else %>
<%= wrestler.offical_weight %>
<% end %>
</td>
</tr>
<% end %>
<% end %>
</tbody>
</table>
<%= hidden_field_tag :tournament, @tournament_id %>
<% if user_signed_in? %>
<%= submit_tag "Save", :class=>"btn btn-success"%>
<% end %>
<% end %>
<% end %>

View File

@@ -32,6 +32,8 @@
<br>
<% if user_signed_in? %>
<%= link_to "Generate Pool Matches" , "/static_pages/generate_matches?tournament=#{@tournament.id}", data: { confirm: 'Are you sure? This will delete all current matches.' }, :class=>"btn btn-success" %>
<br><br>
<%= link_to "Weigh In Page" , "/static_pages/weigh_in?tournament=#{@tournament.id}", :class=>"btn btn-primary" %>
<br>
<br>
<% end %>

View File

@@ -33,6 +33,9 @@ Wrestling::Application.routes.draw do
get 'static_pages/noMatches'
get 'static_pages/createCustomWeights'
get 'static_pages/generate_matches'
get 'static_pages/weigh_in'
post 'static_pages/weigh_in'
# Example of regular route:
# get 'products/:id' => 'catalog#view'

View File

@@ -0,0 +1,6 @@
class AddOfficalWeightWrestlers < ActiveRecord::Migration
def change
add_column :tournaments, :weigh_in_ref, :text
add_column :wrestlers, :offical_weight, :decimal
end
end

View File

@@ -11,7 +11,7 @@
#
# It's strongly recommended that you check this file into your version control system.
ActiveRecord::Schema.define(version: 20150619142023) do
ActiveRecord::Schema.define(version: 20150630170119) do
create_table "matches", force: :cascade do |t|
t.integer "w1"
@@ -65,6 +65,7 @@ ActiveRecord::Schema.define(version: 20150619142023) do
t.datetime "created_at"
t.datetime "updated_at"
t.text "tournament_type"
t.text "weigh_in_ref"
end
create_table "users", force: :cascade do |t|
@@ -106,6 +107,7 @@ ActiveRecord::Schema.define(version: 20150619142023) do
t.integer "season_loss"
t.string "criteria"
t.boolean "extra"
t.decimal "offical_weight"
end
add_index "wrestlers", ["weight_id"], name: "index_wrestlers_on_weight_id"