diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/sampling/manual.html.erb | 14 | ||||
-rw-r--r-- | lib/sampling/manual.rb | 7 | ||||
-rw-r--r-- | lib/sampling/peer_review.html.erb | 2 | ||||
-rw-r--r-- | lib/sampling/peer_review.rb | 10 | ||||
-rw-r--r-- | lib/scoring/winner_takes_all.rb | 4 |
5 files changed, 25 insertions, 12 deletions
diff --git a/lib/sampling/manual.html.erb b/lib/sampling/manual.html.erb index cf873b4..b783506 100644 --- a/lib/sampling/manual.html.erb +++ b/lib/sampling/manual.html.erb @@ -1 +1,13 @@ -<!-- TODO --> +<% if @tournament.hosts.include? @current_user %> + <input type="hidden" name="update_action" value="finish" > + <% @match.teams.each do |team| %> + <label> + <input type="radio", name="winner", value="<%= team.id %>" > + <%= "Team #{team.id} Won" %> + </label> + <% end %> + <br> + <input type="submit", value="Finish match" > +<% else %> + <p>The match is running; the host has yet to post the scores of the match.</p> +<% end %> diff --git a/lib/sampling/manual.rb b/lib/sampling/manual.rb index a190bd2..4e86925 100644 --- a/lib/sampling/manual.rb +++ b/lib/sampling/manual.rb @@ -4,7 +4,7 @@ module Sampling return true end - def can_get?(setting_name) + def self.can_get?(setting_name) return 1 end @@ -31,15 +31,16 @@ module Sampling end def render_user_interaction(user) + @tournament = @match.tournament_stage.tournament @current_user = user @users = @match.users @stats = @match.stats_from(self.class) require 'erb' - erb_filename = File.join(__FILE__.sub(/\.rb$/, '.svg.erb')) + erb_filename = File.join(__FILE__.sub(/\.rb$/, '.html.erb')) erb = ERB.new(File.read(erb_filename)) erb.filename = erb_filename - return erb.result.html_safe + return erb.result(binding).html_safe end def handle_user_interaction(user, sampling_params) diff --git a/lib/sampling/peer_review.html.erb b/lib/sampling/peer_review.html.erb index e744936..a0b9c4d 100644 --- a/lib/sampling/peer_review.html.erb +++ b/lib/sampling/peer_review.html.erb @@ -18,7 +18,7 @@ <%# TODO: display more statistics %> </li><% end %> </ol> - <%= submit_tag("Submit peer evaluation", :onsubmit => "score_peers()") %> + <input type="submit" value="Submit peer evaluation", onsubmit="score_peers()") > <% else %> <p>Still waiting for peer feedback from the following users: <ul><% @feedbacks_missing.each do |user| %> diff --git a/lib/sampling/peer_review.rb b/lib/sampling/peer_review.rb index 4577542..1aabe34 100644 --- a/lib/sampling/peer_review.rb +++ b/lib/sampling/peer_review.rb @@ -5,7 +5,7 @@ module Sampling end def self.can_get?(setting_name) - return setting_name.start_with?("feedback_from_") + return setting_name.start_with?("feedback_from_") ? 2 : 0 end def self.uses_remote? @@ -36,10 +36,10 @@ module Sampling @feedbacks_missing = get_feedbacks_missing(match) require 'erb' - erb_filename = File.join(__FILE__.sub(/\.rb$/, '.svg.erb')) + erb_filename = File.join(__FILE__.sub(/\.rb$/, '.html.erb')) erb = ERB.new(File.read(erb_filename)) erb.filename = erb_filename - return erb.result.html_safe + return erb.result(binding).html_safe end def handle_user_interaction(reviewing_user, params) @@ -74,14 +74,14 @@ module Sampling def self.get_feedbacks_missing(match) require 'set' - ret = Set.new() + ret = Set.new feedback = get_feedbacks(match) users = get_users(match) feedback.each do |feedback| (users - feedback.keys).each do |user| - ret.push(user) + ret.add(user) end end diff --git a/lib/scoring/winner_takes_all.rb b/lib/scoring/winner_takes_all.rb index bf95781..57ddae6 100644 --- a/lib/scoring/winner_takes_all.rb +++ b/lib/scoring/winner_takes_all.rb @@ -1,13 +1,13 @@ module Scoring module WinnerTakesAll def self.stats_needed - return [] + return ["win"] end def self.score(match, interface) scores = {} match.players.each do |player| - scores[player.user_name] = score_user(match.win?(player)) + scores[player.user_name] = score_user(player.statistics.where(:match => match, :name => "win").value) end scores end |