diff options
author | tkimia <tkimia@purdue.edu> | 2014-04-07 01:07:17 -0400 |
---|---|---|
committer | tkimia <tkimia@purdue.edu> | 2014-04-07 01:07:17 -0400 |
commit | 0bb3311d90d74e80e6624897a56ab4e5641a2c76 (patch) | |
tree | 2fd70a27d67ed60cad43196c9f04c91e1056139a /app | |
parent | c524bba025ffd09044ce35efc85ee720f3179111 (diff) | |
parent | 315f3f87a060bc6c47a98a54c397ddb25e84bfc5 (diff) |
Merge branch 'master' of https://github.com/LukeShu/leaguer
Diffstat (limited to 'app')
-rw-r--r-- | app/controllers/matches_controller.rb | 52 | ||||
-rw-r--r-- | app/models/tournament.rb | 22 | ||||
-rw-r--r-- | app/models/user.rb | 2 | ||||
-rw-r--r-- | app/views/matches/show.html.erb | 20 |
4 files changed, 73 insertions, 23 deletions
diff --git a/app/controllers/matches_controller.rb b/app/controllers/matches_controller.rb index 1d4ee27..93b5514 100644 --- a/app/controllers/matches_controller.rb +++ b/app/controllers/matches_controller.rb @@ -22,24 +22,20 @@ class MatchesController < ApplicationController tournament_matches_path(@tournament) end - def get_riot_info - if signed_in? + def get_riot_info + if signed_in? + pull = "Kaceytron" #current user information - response = HTTParty.get("https://prod.api.pvp.net/api/lol/na/v1.3/summoner/by-name/#{current_user.user_name}?api_key=ad539f86-22fd-474d-9279-79a7a296ac38") + response = HTTParty.get("https://prod.api.pvp.net/api/lol/na/v1.3/summoner/by-name/#{pull.downcase}?api_key=ad539f86-22fd-474d-9279-79a7a296ac38") - id = response["#{current_user.user_name.downcase}"]['id'] + id = response["#{pull.downcase}"]['id'] #recent game information - recent = HTTParty.get("https://prod.api.pvp.net/api/lol/na/v1.3/game/by-summoner/#{response["#{current_user.user_name.downcase}"]['id']}/recent?api_key=ad539f86-22fd-474d-9279-79a7a296ac38") + recent = HTTParty.get("https://prod.api.pvp.net/api/lol/na/v1.3/game/by-summoner/#{response["#{pull.downcase}"]['id']}/recent?api_key=ad539f86-22fd-474d-9279-79a7a296ac38") game_id = recent["games"][0]["gameId"] - #remote_user_id = 6651654651354 - #remove_user_name = TeslasMind - #How to Add - #how do I access - #members of most recent game id's player1 = recent["games"][0]["fellowPlayers"][0]["summonerId"] player2 = recent["games"][0]["fellowPlayers"][1]["summonerId"] @@ -122,8 +118,8 @@ class MatchesController < ApplicationController @purp = purple @blue = blue - end #end if - end #end def + end #end if + end #end def # GET /matches/1 # GET /matches/1.json @@ -151,7 +147,10 @@ class MatchesController < ApplicationController if (@match.status == 1) @scores = @match.scores end - + file_blue = "blue.yaml" + file_purple = "purple.yaml" + @blue2 = YAML.load_file(file_blue) + @purp2 = YAML.load_file(file_purple) end @@ -186,13 +185,36 @@ class MatchesController < ApplicationController @match.status = 2; respond_to do |format| if @match.save - format.html { redirect_to tournament_match_path(@tournament, @match), notice: 'Scores submitted' } + format.html { redirect_to tournament_match_path(@tournament, @match), notice: 'Scores Submitted' } format.json { head :no_content } else format.html { redirect_to @tournament, notice: "You don't have permission to start this match." } format.json { render json: "Permission denied", status: :forbidden } end - end + end + when "finish" + @match.status = 3 + respond_to do |format| + if @match.save + format.html { redirect_to tournament_match_path(@tournament, @match), notice: 'Peer Review Submitted' } + format.json { head :no_content } + else + format.html { redirect_to @tournament, notice: "You don't have permission to start this match." } + format.json { render json: "Permission denied", status: :forbidden } + end + end + when "reset" + @match.status = 0 + respond_to do |format| + if @match.save + format.html { redirect_to tournament_match_path(@tournament, @match), notice: 'Match Status Reset to 0' } + format.json { head :no_content } + else + format.html { redirect_to @tournament, notice: "You don't have permission to start this match." } + format.json { render json: "Permission denied", status: :forbidden } + end + end + else respond_to do |format| format.html { redirect_to @tournament, notice: "Invalid action", status: :unprocessable_entity } diff --git a/app/models/tournament.rb b/app/models/tournament.rb index fdcdba2..3e85744 100644 --- a/app/models/tournament.rb +++ b/app/models/tournament.rb @@ -16,6 +16,14 @@ class Tournament < ActiveRecord::Base end class Preferences + @vartypes = { + :true_false => 0, + :integer => 1, + :string => 2, + :select => 3, + :range => 4 + } + def initialize(tournament) @tournament = tournament end @@ -29,15 +37,23 @@ class Tournament < ActiveRecord::Base end end - def []=(preference, value) + def []=(preference, val) p = @tournament.preferences_raw.find_by_name(preference) if p.nil? - # TODO: create it + TournamentPreference.create( tournament_id: @tournament.id, vartype: get_type(val), name: preference, value: val ) else - p.value = value + p.value = val end end + def get_type(val) { + return vartypes[:true_false] if val == "true" or val == "false" + return vartypes[:range] if /\d+-\d+/ =~ val + return vartypes[:integer] if /\d+/ =~ val + return vartypes[:select] if /,/ =~ val + return vartypes[:string] + } + def keys @tournament.preferences_raw.all.collect { |x| x.name } end diff --git a/app/models/user.rb b/app/models/user.rb index 0446b35..3407355 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -111,7 +111,7 @@ class User < ActiveRecord::Base # VALID_USER_NAME checks to make sure a user's user_name # is in the proper format. - VALID_USER_NAME_REG = /\A[a-zA-Z0-9\-]+\z/ + VALID_USER_NAME_REG = /\A[a-zA-Z0-9 _\-]+\z/ # The following lines put a user account through a series of # validations in order to make sure all of their information diff --git a/app/views/matches/show.html.erb b/app/views/matches/show.html.erb index 109aa70..cd30926 100644 --- a/app/views/matches/show.html.erb +++ b/app/views/matches/show.html.erb @@ -26,6 +26,7 @@ Note:- The change of status from 1 to 2 is coming from League Data Pull (RIOT API) --> + <% if (@match.status== 0) || !@tournament.players.include?(current_user) %> <% @match.teams.each do |team| %> <ol> @@ -37,7 +38,7 @@ <!-- - This is what the Players and the Hosts of the tournament will view when the Match Status is 0 + This is what the Players and the Hosts of the tournament will view when the Match Status is 1 --> <% elsif (@match.status==1) %> <% if @tournament.hosts.include?(current_user) && @scores.empty? %> @@ -87,7 +88,16 @@ <% if team.users.include?(current_user) %> <ol id="boxes" class="sortable"> <% team.users.collect{|u| u.user_name}.each do |k| %> - <li><%= k %></li> + <li><%= k%> + <br> + <% if (@tournament.game_id == 1) %> + <%= if @blue2["#{k}"] == nil + "Level: #{@purp2["#{k}"]["level"]} K/D/A: #{@purp2["#{k}"]["championsKilled"]}/#{@purp2["#{k}"]["numDeaths"]}/#{@purp2["#{k}"]["assists"]} Gold:#{@purp2["#{k}"]["goldEarned"]}" + else + "Level: #{@blue2["#{k}"]["level"]} K/D/A: #{@blue2["#{k}"]["championsKilled"]}/#{@blue2["#{k}"]["numDeaths"]}/#{@blue2["#{k}"]["assists"]} Gold:#{@blue2["#{k}"]["goldEarned"]}" + end %> + <% end %> + </li> <% end %> </ol> <% end %> @@ -104,7 +114,7 @@ </p> <% end %> -<% if @tournament.hosts.include?(current_user) %> +<% if @tournament.players.include?(current_user) %> <br /> <div id="host"> <%= form_tag(tournament_match_path(@tournament, @match), method: "put") do %> @@ -118,9 +128,11 @@ <% when 2 %> <input type="hidden" name="update_action" value="finish"> <%= submit_tag("End Match") %> + <% when 3 %> + <input type="hidden" name="update_action" value="reset"> + <%= submit_tag("Reset Status") %> <% end %> <% end %> - </div> <% end %> |