Ordered pref tables so that the smallest margin of vicotry appears first and the...
[selectricity] / app / views / common / _pref_tables.rhtml
index 567873b594652cb624a32ed3faeb6d6d503a84b0..3a53144068b601556d16b79f12d516fed90535ea 100644 (file)
@@ -2,7 +2,6 @@
 <% voters = @election.voters.size %>
 <% matrix = @election.ssd_result.matrix %>
 <% victories = @election.ssd_result.victories_and_ties %>
-
 <p>Each number in the table below shows how many times the candidate on
 the left beat the matching candidate on the top. The winner is on the
 top of the left column.</p>
@@ -47,13 +46,16 @@ parenthesis.</p>
   <% candidates.each do |victor| %>
   <tr>
     <th><%= white_list(@names[victor]) %></th>
-       <% victories[victor].keys.each do |loser| %>
-       <% margin = victories[victor][loser]%>
-       <td><%= white_list(@names[loser]) %> 
-           <% if margin == 0%>
+<!-- This is a pretty logic heavy section - think about trying to move it to 
+       backend eventually. Change the order of first and second to change the order 
+       that things are sorted in. -->
+       <% sorted = victories[victor].sort { |first,second| first[1] <=> second[1] }%>
+       <% sorted.each do |loserpair| %>
+       <td><%= white_list(@names[loserpair[0]]) %> 
+           <% if loserpair[1] == 0%>
                  Tied!
                <% else -%>
-                 (<%= margin%>)
+                 (<%= loserpair[1] %>)
                <% end -%>
        </td>
        <% end -%>
@@ -62,3 +64,4 @@ parenthesis.</p>
 </table>
 </div>
 
+

Benjamin Mako Hill || Want to submit a patch?