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

Added is_public to a tournament to hide lineups and brackets until you're ready to make it public

This commit is contained in:
2023-01-01 23:16:12 -05:00
parent d675337d7a
commit c328bbd91c
15 changed files with 547 additions and 16 deletions

View File

@@ -2,7 +2,7 @@ class SchoolsController < ApplicationController
before_action :set_school, only: [:import_baumspage_roster, :show, :edit, :update, :destroy, :stats]
before_action :check_access_director, only: [:new,:create,:destroy]
before_action :check_access_delegate, only: [:import_baumspage_roster, :update,:edit]
before_action :check_read_access, only: [:show]
def stats
@tournament = @school.tournament
@@ -108,5 +108,9 @@ class SchoolsController < ApplicationController
def check_access_delegate
authorize! :manage, @school
end
def check_read_access
authorize! :read, @school
end
end

View File

@@ -4,6 +4,7 @@ class TournamentsController < ApplicationController
before_action :check_access_destroy, only: [:destroy,:delegate,:remove_delegate]
before_action :check_tournament_errors, only: [:generate_matches]
before_action :check_for_matches, only: [:up_matches,:bracket,:all_brackets]
before_action :check_access_read, only: [:up_matches,:bracket,:all_brackets]
def weigh_in_sheet
@@ -289,7 +290,7 @@ 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, :weigh_in_ref, :user_id, :date, :originalId, :swapId)
params.require(:tournament).permit(:name, :address, :director, :director_email, :tournament_type, :weigh_in_ref, :user_id, :date, :originalId, :swapId, :is_public)
end
#Check for tournament owner
@@ -301,6 +302,10 @@ class TournamentsController < ApplicationController
authorize! :manage, @tournament
end
def check_access_read
authorize! :read, @tournament
end
def check_for_matches
if @tournament
if @tournament.matches.empty? or @tournament.curently_generating_matches == 1

View File

@@ -1,6 +1,7 @@
class WeightsController < ApplicationController
before_action :set_weight, only: [:pool_order, :show, :edit, :update, :destroy,:re_gen]
before_action :check_access, only: [:pool_order, :new,:create,:update,:destroy,:edit, :re_gen]
before_action :check_access_manage, only: [:pool_order, :new,:create,:update,:destroy,:edit, :re_gen]
before_action :check_access_read, only: [:show]
# GET /weights/1
@@ -103,7 +104,7 @@ class WeightsController < ApplicationController
def weight_params
params.require(:weight).permit(:max, :tournament_id, :mat_id)
end
def check_access
def check_access_manage
if params[:tournament]
@tournament = Tournament.find(params[:tournament])
elsif params[:weight]
@@ -114,5 +115,16 @@ class WeightsController < ApplicationController
authorize! :manage, @tournament
end
def check_access_read
if params[:tournament]
@tournament = Tournament.find(params[:tournament])
elsif params[:weight]
@tournament = Tournament.find(params[:weight]["tournament_id"])
elsif @weight
@tournament = @weight.tournament
end
authorize! :read, @tournament
end
end