From: Date: Mon, 16 Oct 2006 17:36:51 +0000 (-0400) Subject: A series of cosmetic improvements to quickvoting and to the general X-Git-Url: https://projects.mako.cc/source/selectricity-live/commitdiff_plain/e565b1cd14149c5edc0106407f79e4ae12b56f10?ds=inline A series of cosmetic improvements to quickvoting and to the general layout. --- diff --git a/app/views/quickvote/_candidate_list.rhtml b/app/views/quickvote/_candidate_list.rhtml index 5c76d62..f4f1c06 100644 --- a/app/views/quickvote/_candidate_list.rhtml +++ b/app/views/quickvote/_candidate_list.rhtml @@ -9,7 +9,8 @@ <% end %> <%= form_remote_tag :update => 'candlist', - :url => { :action => 'add_candidate' } %> + :url => { :action => 'add_candidate' }, + :complete => "Field.focus('ajax_newcandidate')" %>

<%= text_field "ajax", "newcandidate", :size => 40 %> <%= submit_tag "Add(+)" %> diff --git a/app/views/quickvote/index.rhtml b/app/views/quickvote/index.rhtml index bb0b5a4..eb37845 100644 --- a/app/views/quickvote/index.rhtml +++ b/app/views/quickvote/index.rhtml @@ -24,7 +24,7 @@ <% else %>

Drag and drop the items on the following list until they are in order -from most preferred at the top to least preferred at the +from most preferred at the top to least preferred at the bottom. When you are done, press confirm to record your vote.

diff --git a/app/views/quickvote/results.rhtml b/app/views/quickvote/results.rhtml index e3644c8..fe2b09a 100644 --- a/app/views/quickvote/results.rhtml +++ b/app/views/quickvote/results.rhtml @@ -27,41 +27,127 @@

Winners

-

Condorcet (w/ Cloneproof SSD) Results

+

Schulze Method Results

<%= render :partial => 'result', :object => @ssd_result %> + +
About the Schulze Method + +

The <%= link_to "Schulze method", +"http://en.wikipedia.org/wiki/Schulze_method" %> is a preferential +voting system. It is based on the Condorcet method but includes a set of +methods for resolving "circular" defeats.

+ +

The Schulze method is also known as Schwartz Sequential Dropping +(SSD), Cloneproof Schwartz Sequential Dropping (CSSD), Beatpath Method, +Beatpath Winner, Path Voting, and Path Winner.

+
+

Plurality Results

<%= render :partial => 'result', :object => @plurality_result %> + +
About Plurality Voting + +

<%= link_to "Plurality voting", +"http://en.wikipedia.org/wiki/Plurality_electoral_system" %> selects the +winner who has received the most "number one" votes, regardless of +whether or not he or she has a majority of votes.

+ +

Plurality voting is also variously referred to as, "first past the +post," "winner-take-all," "majoritarian" or "simple majority" +voting.

+ +

Approval Result

-

(Assuming top two choices are "approved.")

+

(This algorithm assumes that top two choices are "approved.")

<%= render :partial => 'result', :object => @approval_result %> + +
About Approval Voting + +

<%= link_to "Approval voting", +"http://en.wikipedia.org/wiki/Approval_voting" %> is a voting system in +which each voter can vote for as many or as few candidates as the voter +chooses. Approval voting is a limited form of range voting, where the +range that voters are allowed to express is extremely constrained: +accept or not.

+ +
+

Simple Condorcet Results

<%= render :partial => 'result', :object => @condorcet_result %> + +
About Simple Cordorcet Voting + +

<%= link_to "Condorcet", +"http://en.wikipedia.org/wiki/Condorcet_method" %> allows voters to rank +candidates in order of preference. If there is a choice whom voters +prefer to each other choice when compared to one at a time, that choice +will be the winner.

+ +

There is a family of Condorcet methods. This method is referred to as +"Simple Condorcet" to distinguish it from the Schulze method which is +another Condorcet system.

+ +

Borda Count Results

<%= render :partial => 'result', :object => @borda_result %> + +
About Borda Count + +

<%= link_to "Borda count", +"http://en.wikipedia.org/wiki/Borda_count" %> +is an election method in which voters rank +candidates in order of preference. The Borda count determines the winner +of an election by giving each candidate a certain number of points +corresponding to the position in which he or she is ranked by each +voter. Once all votes have been counted the candidate with the most +points is the winner.

+

Instant Runoff (IRV) Results

<%= render :partial => 'result', :object => @runoff_result %> + +
About Instant Runoff Voting + +

<%= link_to "Instant runoff voting", +"http://en.wikipedia.org/wiki/Instant_Runoff_Voting" %> is an electoral +system in which voters rank candidates in order of preference. In an IRV +election, if no candidate receives an overall majority of first +preferences the candidates with fewest votes are eliminated one by one, +and their votes transferred according to their second and third +preferences (and so on), until one candidate achieves a majority.

+ +

Instant-runoff voting (IRV) is also known as the Alternative Vote (AV) and +by several other names.

+ +
+

Voters

- +
diff --git a/app/views/quickvote/success.rhtml b/app/views/quickvote/success.rhtml index 93d6882..d793a7a 100644 --- a/app/views/quickvote/success.rhtml +++ b/app/views/quickvote/success.rhtml @@ -1,5 +1,5 @@ <% -%> -

Your QuickVote Was Created

+

QuickVote Created

Please direct voters to:

@@ -7,10 +7,10 @@ <%= quickvote_url( :votename => @quickvote.name ) -%> -

This vote will close on <%= @quickvote.enddate %>

+

This vote will end on <%= @quickvote.enddate.strftime('%A, %B %d, %Y') %>

QuickVotes are open to the public but are not publicly listed on the HyperChad site. Voters do not need to log in or authenticate to participate in this election.

-

<%= link_to "Jump to your QuickVote.", quickvote_url( :votename => @quickvote.name ) %>

+

<%= link_to "Jump to QuickVote", quickvote_url( :votename => @quickvote.name ) %>

diff --git a/app/views/quickvote/thanks.rhtml b/app/views/quickvote/thanks.rhtml index 4104612..72cfe61 100644 --- a/app/views/quickvote/thanks.rhtml +++ b/app/views/quickvote/thanks.rhtml @@ -12,9 +12,9 @@ preferences:

Thanks you voting! You can:

    -
  • <%= link_to "Change your vote.", quickaction_url( :votename => @voter.election.name, :action => 'change' ) %>
  • +
  • <%= link_to "Change Your Vote", quickaction_url( :votename => @voter.election.name, :action => 'change' ) %>
  • -
  • <%= link_to "View election results.", quickaction_url( :votename => @voter.election.name, :action => 'results' ) %>
  • +
  • <%= link_to "View Current Results", quickaction_url( :votename => @voter.election.name, :action => 'results' ) %>
diff --git a/public/stylesheets/hc.css b/public/stylesheets/hc.css index 4056f8e..a261573 100644 --- a/public/stylesheets/hc.css +++ b/public/stylesheets/hc.css @@ -10,13 +10,13 @@ body { p, blockquote, ul, ol, dl, dd, li, dir, menu {} h1, h2, h3, h4 { - border-bottom: 1px solid #BD7589; - text-shadow: #999999 0.2em 0.2em 3px; + border-bottom: 1px solid #4D801A; + text-shadow: #4D801A 0.2em 0.2em 3px; } -a:link { font-weight: bold; color: #BD7589; text-decoration: underline; } -a:visited { font-weight: bold; color: #BD7589; text-decoration: underline; } +a:link { font-weight: bold; color: #4D801A; text-decoration: underline; } +a:visited { font-weight: bold; color: #4D801A; text-decoration: underline; } a:hover { color: #FFFFFF; text-decoration: none; background: #0063DC; } a:active { color: #FFFFFF; text-decoration: none; background: #0259C4; } @@ -62,11 +62,14 @@ a:active { color: #FFFFFF; text-decoration: none; background: #0259C4; } padding-top: 5px; padding-bottom: 5px; font-weight: normal; - background: #BD7589; + background: #73BF26; color: #FFFFFF; } -#top h3 { font-size: 30px; } +#top h3 { + border-bottom: 0px; + font-size: 30px; } + #links { text-align : right; } #links a { color: #FFF; font-weight: bold; } #links a:visited { color: #FFF; font-weight: bold; } @@ -120,36 +123,78 @@ a:active { color: #FFFFFF; text-decoration: none; background: #0259C4; } background-color: #ffdfdf; } + + +#xxErrorExplanation h2 { + text-align: left; + font-weight: bold; + padding: 5px 5px 5px 15px; + font-size: 12px; + margin: -7px; + background-color: #c00; + color: #fff; +} + +#xxErrorExplanation p { + color: #333; + margin-bottom: 0; + padding: 5px; +} + +#xxErrorExplanation ul li { + font-size: 12px; + list-style: square; +} + .mainresultbox { - width: 100%; - padding: 7px; - margin-right: 30px; - margin-bottom: 30px; - border-style: dotted; - border-width: 1px; + text-align: center; + width: 850px; + border-width: 2px; + border-style: solid; + border-color: #4D801A; + padding: 7px; + margin-right: 30px; + margin-bottom: 30px; } -.mainresultbox h1 { - text-align: center; +.mainresultbox h3 { + text-align: center; + font-weight: bold; + padding: 5px 5px 5px 15px; + margin: -7px; + background-color: #73BF26; + color: #fff; + border-bottom: 0px; } .resultbox { - width:47%; - float: left; - padding: 7px; - margin-right: 10px; - margin-bottom: 10px; - border-style: dotted; - border-width: 1px; + text-align: center; + width: 400px; + float: left; + border-width: 2px; + border-style: solid; + border-color: #4D801A; + padding: 7px; + margin-right: 30px; + margin-bottom: 30px; } +.resultbox h3 { + text-align: center; + font-weight: bold; + padding: 5px 5px 5px 15px; + margin: -7px; + background-color: #73BF26; + color: #fff; + border-bottom: 0px; +} .clearbox { clear: both; margin: 30px; } li.moveable { - background-color: #EEDCE1; - border:1px solid #BD7589; + background-color: #E5FFCC; + border:1px solid #4D801A; cursor: move; padding: 4px; margin: 4px; @@ -160,3 +205,51 @@ li.moveable { display: float; float: left; } + +.voterbox { + border-spacing: 0px; + border-width: 2px; + border-color: #4D801A; + border-style: solid; +} + +.voterbox th { + border-width: 2px; + border-color: #73BF26; + border-style: solid; + text-align: center; + font-weight: bold; + padding: 5px 5px 5px 15px; + background-color: #73BF26; + color: #fff; +} + +.voterbox td { + border-collapse: collapse; + border-width: 1px; + border-color: #4D801A; + border-style: solid; + + text-align: right; + padding-right: 5px; + padding-left: 5px; +} + +.rbmoreinfo hr { + width: 100%; + height: 10px; + color: #4D801A; +} +.rbmoreinfo h4 { + border: 0px; + font-style: italic; + text-align: center; + font-size: 0.9em; +} + +.rbmoreinfo p { + font-size: 0.8em; + padding-left: 30px; + padding-right: 30px; + text-align: left; +}
IP Address DNS/Host