diff options
author | Max Kanat-Alexander <mkanat@bugzilla.org> | 2010-02-16 00:22:55 +0100 |
---|---|---|
committer | Max Kanat-Alexander <mkanat@bugzilla.org> | 2010-02-16 00:22:55 +0100 |
commit | 120b63d507a3316666b25494bc890a024948aef8 (patch) | |
tree | 0a96e60d6316cc8471b066def8b1e1273f38e4ab /extensions/Voting/template | |
parent | 7802dbcf7bedcc09e5f1052ceb1ba82347a124b7 (diff) | |
download | bugzilla-120b63d507a3316666b25494bc890a024948aef8.tar.gz bugzilla-120b63d507a3316666b25494bc890a024948aef8.tar.xz |
Bug 372979: Make voting into an extension
r=mkanat, a=mkanat, a=LpSolit
Diffstat (limited to 'extensions/Voting/template')
19 files changed, 944 insertions, 0 deletions
diff --git a/extensions/Voting/template/en/default/hook/account/prefs/email-relationships.html.tmpl b/extensions/Voting/template/en/default/hook/account/prefs/email-relationships.html.tmpl new file mode 100644 index 000000000..0bd81eae1 --- /dev/null +++ b/extensions/Voting/template/en/default/hook/account/prefs/email-relationships.html.tmpl @@ -0,0 +1,22 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Everything Solved, Inc. + # Portions created by the Initial Developer are Copyright (C) 2010 + # the Initial Developer. All Rights Reserved. + # + # Contributor(s): + # Max Kanat-Alexander <mkanat@bugzilla.org> + #%] + +[% relationships.push({ id = constants.REL_VOTER, description = "Voter" }) %] +[% no_added_removed.push(constants.REL_VOTER) %] diff --git a/extensions/Voting/template/en/default/hook/admin/products/edit-common-rows.html.tmpl b/extensions/Voting/template/en/default/hook/admin/products/edit-common-rows.html.tmpl new file mode 100644 index 000000000..fbbda3ea0 --- /dev/null +++ b/extensions/Voting/template/en/default/hook/admin/products/edit-common-rows.html.tmpl @@ -0,0 +1,60 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Everything Solved, Inc. + # Portions created by the Initial Developer are Copyright (C) 2010 + # the Initial Developer. All Rights Reserved. + # + # Contributor(s): + # Max Kanat-Alexander <mkanat@bugzilla.org> + #%] + +[% DEFAULT + product.maxvotesperbug = constants.DEFAULT_VOTES_PER_BUG + product.votesperuser = 0 + product.votestoconfirm = 0 +%] + +<tr> + <th align="right">Maximum votes per person:</th> + <td><input size="5" maxlength="5" name="votesperuser" id="votesperuser" + value="[% product.votesperuser FILTER html %]"> + </td> +</tr> + +<tr> + <th align="right"> + Maximum votes a person can put on a single [% terms.bug %]: + </th> + <td><input size="5" maxlength="5" name="maxvotesperbug" id="maxvotesperbug" + value="[% product.maxvotesperbug FILTER html %]"> + </td> +</tr> + +<tr id="votes_to_confirm_container" + [%- ' class="bz_default_hidden"' IF !product.allows_unconfirmed %]> + <th align="right"> + Confirm [% terms.abug %] if it gets this many votes: + </th> + <td> + <input size="3" maxlength="5" name="votestoconfirm" id="votestoconfirm" + value="[% product.votestoconfirm FILTER html %]"> + <br>(Setting this to 0 disables auto-confirming [% terms.bugs %] + by vote.) + <script type="text/javascript"> + YAHOO.util.Event.addListener('allows_unconfirmed', 'change', + function() { bz_toggleClass('votes_to_confirm_container', + 'bz_default_hidden'); }); + </script> + </td> +</tr> + diff --git a/extensions/Voting/template/en/default/hook/admin/products/updated-changes.html.tmpl b/extensions/Voting/template/en/default/hook/admin/products/updated-changes.html.tmpl new file mode 100644 index 000000000..876c51187 --- /dev/null +++ b/extensions/Voting/template/en/default/hook/admin/products/updated-changes.html.tmpl @@ -0,0 +1,102 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Everything Solved, Inc. + # Portions created by the Initial Developer are Copyright (C) 2010 + # the Initial Developer. All Rights Reserved. + # + # Contributor(s): + # Max Kanat-Alexander <mkanat@bugzilla.org> + #%] + +[% SET checkvotes = 0 %] + +[% IF changes.votesperuser.defined %] + <p> + Updated votes per user from + [%+ changes.votesperuser.0 FILTER html %] to + [%+ product.votesperuser FILTER html %]. + </p> + [% checkvotes = 1 %] +[% END %] + +[% IF changes.maxvotesperbug.defined %] + <p> + Updated maximum votes per [% terms.bug %] from + [%+ changes.maxvotesperbug.0 FILTER html %] to + [%+ product.maxvotesperbug FILTER html %]. + </p> + [% checkvotes = 1 %] +[% END %] + +[% IF changes.votestoconfirm.defined %] + <p> + Updated number of votes needed to confirm a [% terms.bug %] from + [%+ changes.votestoconfirm.0 FILTER html %] to + [%+ product.votestoconfirm FILTER html %]. + </p> + [% checkvotes = 1 %] +[% END %] + +[%# Note that this display of changed votes and/or confirmed bugs is + not very scalable. We could have a _lot_, and we just list them all. + One day we should limit this perhaps, or have a more scalable display %] + +[% IF checkvotes %] + <hr> + + <p>Checking existing votes in this product for anybody who now + has too many votes for [% terms.abug %]...<br> + [% IF changes.too_many_votes.size %] + [% FOREACH detail = changes.too_many_votes %] + →removed votes for [% terms.bug %] <a href="show_bug.cgi?id= + [%- detail.id FILTER url_quote %]"> + [%- detail.id FILTER html %]</a> from [% detail.name FILTER html %]<br> + [% END %] + [% ELSE %] + →there were none. + [% END %] + </p> + + <p>Checking existing votes in this product for anybody + who now has too many total votes...<br> + [% IF changes.too_many_total_votes.size %] + [% FOREACH detail = changes.too_many_total_votes %] + →removed votes for [% terms.bug %] <a href="show_bug.cgi?id= + [%- detail.id FILTER url_quote %]"> + [%- detail.id FILTER html %]</a> from [% detail.name FILTER html %]<br> + [% END %] + [% ELSE %] + →there were none. + [% END %] + </p> + + <p>Checking unconfirmed [% terms.bugs %] in this product for any which now have + sufficient votes...<br> + [% IF changes.confirmed_bugs.size %] + [% FOREACH id = changes.confirmed_bugs %] + + [%# This is INCLUDED instead of PROCESSED to avoid variables getting + overwritten, which happens otherwise %] + [% INCLUDE bug/process/results.html.tmpl + type = 'votes' + mailrecipients = { 'changer' => user.login } + header_done = 1 + id = id + %] + [% END %] + [% ELSE %] + →there were none. + [% END %] + </p> + +[% END %] diff --git a/extensions/Voting/template/en/default/hook/admin/sanitycheck/messages-statuses.html.tmpl b/extensions/Voting/template/en/default/hook/admin/sanitycheck/messages-statuses.html.tmpl new file mode 100644 index 000000000..afb81d34c --- /dev/null +++ b/extensions/Voting/template/en/default/hook/admin/sanitycheck/messages-statuses.html.tmpl @@ -0,0 +1,40 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Everything Solved, Inc. + # Portions created by the Initial Developer are Copyright (C) 2010 + # the Initial Developer. All Rights Reserved. + # + # Contributor(s): + # Max Kanat-Alexander <mkanat@bugzilla.org> + #%] + +[% IF san_tag == "voting_cache_rebuild_fix" %] + <a href="sanitycheck.cgi?rebuild_vote_cache=1">Click here to + rebuild the vote cache</a> + +[% ELSIF san_tag == "voting_cache_alert" %] + Bad vote cache for [% PROCESS bug_link bug_id = id %] + +[% ELSIF san_tag == "voting_count_start" %] + Checking cached vote counts. + +[% ELSIF san_tag == "voting_count_alert" %] + Bad vote sum for [% terms.bug %] [%+ id FILTER html %]. + +[% ELSIF san_tag == "voting_cache_rebuild_start" %] + OK, now rebuilding vote cache. + +[% ELSIF san_tag == "voting_cache_rebuild_end" %] + Vote cache has been rebuilt + +[% END %] diff --git a/extensions/Voting/template/en/default/hook/admin/users/confirm-delete-warn_safe.html.tmpl b/extensions/Voting/template/en/default/hook/admin/users/confirm-delete-warn_safe.html.tmpl new file mode 100644 index 000000000..f799f1254 --- /dev/null +++ b/extensions/Voting/template/en/default/hook/admin/users/confirm-delete-warn_safe.html.tmpl @@ -0,0 +1,38 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Everything Solved, Inc. + # Portions created by the Initial Developer are Copyright (C) 2010 + # the Initial Developer. All Rights Reserved. + # + # Contributor(s): + # Max Kanat-Alexander <mkanat@bugzilla.org> + #%] + +[% IF votes %] + <li> + [% otheruser.login FILTER html %] has voted on + [% IF votes == 1 %] + [%+ terms.abug %] + [% ELSE %] + [%+ votes %] [%+ terms.bugs %] + [% END %]. + + If you delete the user account, + [% IF votes == 1 %] + this vote + [% ELSE %] + these votes + [% END %] + will be deleted along with the user account. + </li> +[% END %] diff --git a/extensions/Voting/template/en/default/hook/bug/edit-after_importance.html.tmpl b/extensions/Voting/template/en/default/hook/bug/edit-after_importance.html.tmpl new file mode 100644 index 000000000..7952442da --- /dev/null +++ b/extensions/Voting/template/en/default/hook/bug/edit-after_importance.html.tmpl @@ -0,0 +1,41 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Everything Solved, Inc. + # Portions created by the Initial Developer are Copyright (C) 2010 + # the Initial Developer. All Rights Reserved. + # + # Contributor(s): + # Max Kanat-Alexander <mkanat@bugzilla.org> + #%] +[% IF bug.product_obj.votesperuser %] + <style type="text/css"> + #votes_container { white-space: nowrap; } + </style> + + <span id="votes_container"> + [% IF bug.votes %] + with + <a href="page.cgi?id=voting/bug.html?bug_id= + [%- bug.id FILTER url_quote %]"> + [%- bug.votes %] + [% IF bug.votes == 1 %] + vote + [% ELSE %] + votes + [% END %]</a> + [% END %] + (<a href="page.cgi?id=voting/user.html&bug_id= + [%- bug.id FILTER url_quote %]#vote_ + [%- bug.id FILTER url_quote %]">vote</a>) + </span> +[% END %] diff --git a/extensions/Voting/template/en/default/hook/bug/format_comment-type.txt.tmpl b/extensions/Voting/template/en/default/hook/bug/format_comment-type.txt.tmpl new file mode 100644 index 000000000..ebba6fcab --- /dev/null +++ b/extensions/Voting/template/en/default/hook/bug/format_comment-type.txt.tmpl @@ -0,0 +1,23 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Everything Solved, Inc. + # Portions created by the Initial Developer are Copyright (C) 2010 + # the Initial Developer. All Rights Reserved. + # + # Contributor(s): + # Max Kanat-Alexander <mkanat@bugzilla.org> + #%] + +[% IF comment.type == constants.CMT_POPULAR_VOTES %] +*** This [% terms.bug %] has been confirmed by popular vote. *** +[% END %] diff --git a/extensions/Voting/template/en/default/hook/bug/process/header-title.html.tmpl b/extensions/Voting/template/en/default/hook/bug/process/header-title.html.tmpl new file mode 100644 index 000000000..a4530653b --- /dev/null +++ b/extensions/Voting/template/en/default/hook/bug/process/header-title.html.tmpl @@ -0,0 +1,24 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Everything Solved, Inc. + # Portions created by the Initial Developer are Copyright (C) 2010 + # the Initial Developer. All Rights Reserved. + # + # Contributor(s): + # Max Kanat-Alexander <mkanat@bugzilla.org> + #%] + +[% IF title_tag == "change_votes" %] + [% title = "Change Votes" %] +[% END %] + diff --git a/extensions/Voting/template/en/default/hook/bug/process/results-title.html.tmpl b/extensions/Voting/template/en/default/hook/bug/process/results-title.html.tmpl new file mode 100644 index 000000000..ae0d465dc --- /dev/null +++ b/extensions/Voting/template/en/default/hook/bug/process/results-title.html.tmpl @@ -0,0 +1,21 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Everything Solved, Inc. + # Portions created by the Initial Developer are Copyright (C) 2010 + # the Initial Developer. All Rights Reserved. + # + # Contributor(s): + # Max Kanat-Alexander <mkanat@bugzilla.org> + #%] + +[% title.votes = "$Link confirmed by number of votes" %] diff --git a/extensions/Voting/template/en/default/hook/global/field-descs-end.none.tmpl b/extensions/Voting/template/en/default/hook/global/field-descs-end.none.tmpl new file mode 100644 index 000000000..2fd798084 --- /dev/null +++ b/extensions/Voting/template/en/default/hook/global/field-descs-end.none.tmpl @@ -0,0 +1,22 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Everything Solved, Inc. + # Portions created by the Initial Developer are Copyright (C) 2010 + # the Initial Developer. All Rights Reserved. + # + # Contributor(s): + # Max Kanat-Alexander <mkanat@bugzilla.org> + #%] + +[% field_descs.votes = "Votes" %] + diff --git a/extensions/Voting/template/en/default/hook/global/reason-descs-end.none.tmpl b/extensions/Voting/template/en/default/hook/global/reason-descs-end.none.tmpl new file mode 100644 index 000000000..3a1f5a189 --- /dev/null +++ b/extensions/Voting/template/en/default/hook/global/reason-descs-end.none.tmpl @@ -0,0 +1,23 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Everything Solved, Inc. + # Portions created by the Initial Developer are Copyright (C) 2010 + # the Initial Developer. All Rights Reserved. + # + # Contributor(s): + # Max Kanat-Alexander <mkanat@bugzilla.org> + #%] + +[% reason_descs.${constants.REL_VOTER} = "You voted for the ${terms.bug}." %] +[% watch_reason_descs.${constants.REL_VOTER} = + "You are watching a voter for the ${terms.bug}." %] diff --git a/extensions/Voting/template/en/default/hook/global/user-error-errors.html.tmpl b/extensions/Voting/template/en/default/hook/global/user-error-errors.html.tmpl new file mode 100644 index 000000000..c2ff70728 --- /dev/null +++ b/extensions/Voting/template/en/default/hook/global/user-error-errors.html.tmpl @@ -0,0 +1,55 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Everything Solved, Inc. + # Portions created by the Initial Developer are Copyright (C) 2010 + # the Initial Developer. All Rights Reserved. + # + # Contributor(s): + # Max Kanat-Alexander <mkanat@bugzilla.org> + #%] + +[% IF error == "voting_must_be_nonnegative" %] + [% title = "Votes Must Be Non-negative" %] + [% admindocslinks = {'voting.html' => 'Setting up the voting feature'} %] + Only use non-negative numbers for your [% terms.bug %] votes. + +[% ELSIF error == "voting_product_illegal_votes" %] + [% title = "Votes Must Be Non-negative" %] + [% admindocslinks = {'voting.html' => 'Setting up the voting feature'} %] + '[% votes FILTER html %]' is an invalid value for the + <em> + [% IF field == "votesperuser" %] + Votes Per User + [% ELSIF field == "maxvotesperbug" %] + Maximum Votes Per [% terms.Bug %] + [% ELSIF field == "votestoconfirm" %] + Votes To Confirm + [% END %] + </em> field, which should contain a non-negative number. + +[% ELSIF error == "voting_too_many_votes_for_bug" %] + [% title = "Illegal Vote" %] + [% admindocslinks = {'voting.html' => 'Setting up the voting feature'} %] + You may only use at most [% max FILTER html %] votes for a single + [%+ terms.bug %] in the + <tt>[% product FILTER html %]</tt> product, but you are trying to + use [% votes FILTER html %]. + +[% ELSIF error == "voting_too_many_votes_for_product" %] + [% title = "Illegal Vote" %] + [% admindocslinks = {'voting.html' => 'Setting up the voting feature'} %] + You tried to use [% votes FILTER html %] votes in the + <tt>[% product FILTER html %]</tt> product, which exceeds the maximum of + [%+ max FILTER html %] votes for this product. + +[% END %] diff --git a/extensions/Voting/template/en/default/hook/search/form-email_numbering_end.html.tmpl b/extensions/Voting/template/en/default/hook/search/form-email_numbering_end.html.tmpl new file mode 100644 index 000000000..5acfff14c --- /dev/null +++ b/extensions/Voting/template/en/default/hook/search/form-email_numbering_end.html.tmpl @@ -0,0 +1,31 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Everything Solved, Inc. + # Portions created by the Initial Developer are Copyright (C) 2010 + # the Initial Developer. All Rights Reserved. + # + # Contributor(s): + # Max Kanat-Alexander <mkanat@bugzilla.org> + #%] + +<tr> + <td align="right"> + <label for="votes">Only [% terms.bugs %] with at least</label>: + </td> + <td> + <input name="votes" id="votes" size="3" + value="[% default.votes.0 FILTER html %]"> votes + <input type="hidden" name="votes_type" value="greaterthaneq"> + </td> +</tr> + diff --git a/extensions/Voting/template/en/default/hook/search/search-report-select-rep_fields.html.tmpl b/extensions/Voting/template/en/default/hook/search/search-report-select-rep_fields.html.tmpl new file mode 100644 index 000000000..ca74f6d2d --- /dev/null +++ b/extensions/Voting/template/en/default/hook/search/search-report-select-rep_fields.html.tmpl @@ -0,0 +1,21 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Everything Solved, Inc. + # Portions created by the Initial Developer are Copyright (C) 2010 + # the Initial Developer. All Rights Reserved. + # + # Contributor(s): + # Max Kanat-Alexander <mkanat@bugzilla.org> + #%] + +[% rep_fields.push('votes') %] diff --git a/extensions/Voting/template/en/default/pages/voting.html.tmpl b/extensions/Voting/template/en/default/pages/voting.html.tmpl new file mode 100644 index 000000000..99026c0d5 --- /dev/null +++ b/extensions/Voting/template/en/default/pages/voting.html.tmpl @@ -0,0 +1,69 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Terry Weissman <terry@mozilla.org> + # Gervase Markham <gerv@gerv.net> + #%] + +[% PROCESS global/variables.none.tmpl %] +[% INCLUDE global/header.html.tmpl title = "Voting" %] + +<p>[% terms.Bugzilla %] has a "voting" feature. Each product allows users to +have a certain number of votes. (Some products may not allow any, which means +you can't vote on things in those products at all.) With your vote, you +indicate which [% terms.bugs %] you think are the most important and +would like to see fixed. Note that voting is nowhere near as effective +as providing a fix yourself.</p> + +<p>Depending on how the administrator has configured the relevant product, +you may be able to vote for the same [% terms.bug %] more than once. +Remember that you have a limited number of votes. When weighted voting +is allowed and a limited number of votes are available to you, you will +have to decide whether you want to distribute your votes among a large +number of [% terms.bugs %] indicating your minimal interest or focus on +a few [% terms.bugs %] indicating your strong support for them. +</p> + +<p>To look at votes:</p> + +<ul> + <li>Go to the query page. Do a normal query, but enter 1 in the "At least + ___ votes" field. This will show you items that match your query that + have at least one vote.</li> +</ul> + +<p>To vote for [% terms.abug %]:</p> + +<ul> + <li>Bring up the [% terms.bug %] in question.</li> + + <li>Click on the "(vote)" link that appears on the right of the "Importance" + fields. (If no such link appears, then voting may not be allowed in + this [% terms.bug %]'s product.)</li> + + <li>Indicate how many votes you want to give this [% terms.bug %]. This page + also displays how many votes you've given to other [% terms.bugs %], so you + may rebalance your votes as necessary.</li> +</ul> + +<p>You will automatically get email notifying you of any changes that occur +on [% terms.bugs %] you vote for.</p> + +<p>You may review your votes at any time by clicking on the "<a href= +"page.cgi?id=voting/user.html">My Votes</a>" link in the page footer.</p> + +[% INCLUDE global/footer.html.tmpl %] diff --git a/extensions/Voting/template/en/default/pages/voting/bug.html.tmpl b/extensions/Voting/template/en/default/pages/voting/bug.html.tmpl new file mode 100644 index 000000000..03434a505 --- /dev/null +++ b/extensions/Voting/template/en/default/pages/voting/bug.html.tmpl @@ -0,0 +1,61 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Gervase Markham <gerv@gerv.net> + # Max Kanat-Alexander <mkanat@bugzilla.org> + #%] + +[%# INTERFACE: + # bug: Bugzilla::Bug that we are listing the votes for. + # users: list of hashes. May be empty. Each hash has two members: + # login_name: string. The login name of the user whose vote is attached + # vote_count: integer. The number of times that user has votes for this bug. + #%] + +[% PROCESS global/variables.none.tmpl %] + +[% PROCESS global/header.html.tmpl + title = "Show Votes" + subheader = "$terms.Bug $bug.id" FILTER bug_link(bug) + %] + +[% total = 0 %] +<table cellspacing="4"> + <tr> + <th>Who</th> + <th>Number of votes</th> + </tr> + + [% FOREACH voter = users %] + [% total = total + voter.vote_count %] + <tr> + <td> + <a href="page.cgi?id=voting/user.html&user_id= + [%- voter.id FILTER url_quote %]"> + [% voter.login_name FILTER email FILTER html %] + </a> + </td> + <td align="right"> + [% voter.vote_count FILTER html %] + </td> + </tr> + [% END %] +</table> + +<p>Total votes: [% total FILTER html %]</p> + +[% PROCESS global/footer.html.tmpl %] diff --git a/extensions/Voting/template/en/default/pages/voting/user.html.tmpl b/extensions/Voting/template/en/default/pages/voting/user.html.tmpl new file mode 100644 index 000000000..800079224 --- /dev/null +++ b/extensions/Voting/template/en/default/pages/voting/user.html.tmpl @@ -0,0 +1,185 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Gervase Markham <gerv@gerv.net> + #%] + +[%# INTERFACE: + # voting_user: hash containing a 'login' field + # + # products: list of hashes containing details of products relating to + # voting: + # name: name of product + # bugs: list of bugs the user has voted for + # bug_ids: list of bug ids the user has voted for + # onevoteonly: one or more votes allowed per bug? + # total: users current vote count for the product + # maxvotes: max votes allowed for a user in this product + # maxperbug: max votes per bug allowed for a user in this product + # + # this_bug: Bugzilla::Bug; if the user is voting for a bug, this is the bug + # + # canedit: boolean; Should the votes be presented in a form, or readonly? + # + # all_bug_ids: List of all bug ids the user has voted for, across all products + #%] + +[% PROCESS global/variables.none.tmpl %] + +[% IF !header_done %] + [% subheader = voting_user.login FILTER html %] + [% IF canedit %] + [% title = "Change Votes" %] + [% IF this_bug %] + [%# We .select and .focus the input so it works for textbox and + checkbox %] + [% onload = "document.forms['voting_form'].bug_" _ this_bug.id _ + ".select();document.forms['voting_form'].bug_" _ this_bug.id _ + ".focus()" %] + [% END %] + [% ELSE %] + [% title = "Show Votes" %] + [% END %] + [% PROCESS global/header.html.tmpl + style_urls = [ "extensions/Voting/web/style.css" ] + %] +[% ELSE %] + <hr> +[% END %] + +[% IF votes_recorded %] + <p> + <font color="red"> + The changes to your votes have been saved. + </font> + </p> +[% ELSE %] + <br> +[% END %] + +[% IF products.size %] + <form name="voting_form" method="post" action="page.cgi?id=voting/user.html"> + <input type="hidden" name="action" value="vote"> + <table cellspacing="4"> + <tr> + <td></td> + <th>Votes</th> + <th>[% terms.Bug %] #</th> + <th>Summary</th> + </tr> + + [% onevoteproduct = 0 %] + [% multivoteproduct = 0 %] + [% FOREACH product = products %] + [% IF product.onevoteonly %] + [% onevoteproduct = 1 %] + [% ELSE %] + [% multivoteproduct = 1 %] + [% END %] + <tr> + <th>[% product.name FILTER html %]</th> + <td colspan="2" ><a href="buglist.cgi?bug_id= + [%- product.bug_ids.join(",") FILTER url_quote %]">([% terms.bug %] list)</a> + </td> + <td> + [% IF product.maxperbug < product.maxvotes AND + product.maxperbug > 1 %] + <font size="-1"> + (Note: only [% product.maxperbug %] vote + [% "s" IF product.maxperbug != 1 %] allowed per [% terms.bug %] in + this product.) + </font> + [% END %] + </td> + </tr> + + [% FOREACH bug = product.bugs %] + <tr [% IF bug.id == this_bug.id && canedit %] + class="bz_bug_being_voted_on" [% END %]> + <td>[% IF bug.id == this_bug.id && canedit %]Enter New Vote here → + [%- END %]</td> + <td align="right"><a name="vote_[% bug.id %]"> + [% IF canedit %] + [% IF product.onevoteonly %] + <input type="checkbox" name="[% bug.id %]" value="1" + [% " checked" IF bug.count %] id="bug_[% bug.id %]"> + [% ELSE %] + <input name="[% bug.id %]" value="[% bug.count %]" + size="2" id="bug_[% bug.id %]"> + [% END %] + [% ELSE %] + [% bug.count %] + [% END %] + </a></td> + <td align="center"> + [% bug.id FILTER bug_link(bug) FILTER none %] + </td> + <td> + [% bug.summary FILTER html %] + (<a href="page.cgi?id=voting/bug.html&bug_id=[% bug.id %]">Show Votes</a>) + </td> + </tr> + [% END %] + + <tr> + <td></td> + <td colspan="3">[% product.total %] vote + [% "s" IF product.total != 1 %] used out of [% product.maxvotes %] + allowed. + <br> + <br> + </td> + </tr> + [% END %] + </table> + + [% IF canedit %] + <input type="submit" value="Change My Votes" id="change"> or + <a href="buglist.cgi?bug_id=[% all_bug_ids.join(",") FILTER url_quote %]">view all + as [% terms.bug %] list</a> + <br> + <br> + To change your votes, + [% IF multivoteproduct %] + type in new numbers (using zero to mean no votes) + [% " or " IF onevoteproduct %] + [% END %] + [% IF onevoteproduct %] + change the checkbox + [% END %] + and then click <b>Change My Votes</b>. + [% ELSE %] + <a href="buglist.cgi?bug_id=[% all_bug_ids.join(",") FILTER url_quote %]">View all + as [% terms.bug %] list</a> + [% END %] + </form> +[% ELSE %] + <p> + [% IF canedit %] + You are + [% ELSE %] + This user is + [% END %] + currently not voting on any [% terms.bugs %]. + </p> +[% END %] + +<p> + <a href="page.cgi?id=voting.html">Help with voting</a>. +</p> + +[% PROCESS global/footer.html.tmpl %] diff --git a/extensions/Voting/template/en/default/voting/delete-all.html.tmpl b/extensions/Voting/template/en/default/voting/delete-all.html.tmpl new file mode 100644 index 000000000..82ddc3596 --- /dev/null +++ b/extensions/Voting/template/en/default/voting/delete-all.html.tmpl @@ -0,0 +1,51 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Gervase Markham <gerv@gerv.net> + #%] + +[%# INTERFACE: + # This template has no interface. + #%] + +[% PROCESS global/variables.none.tmpl %] + +[% PROCESS global/header.html.tmpl + title = "Remove your votes?" + %] + +<p> + You are about to remove all of your [% terms.bug %] votes. Are you sure you wish to + remove your vote from every [% terms.bug %] you've voted on? +</p> + +<form action="page.cgi?id=voting/user.html" method="post"> + <input type="hidden" name="action" value="vote"> + <p> + <input type="radio" name="delete_all_votes" value="1"> + Yes, delete all my votes + </p> + <p> + <input type="radio" name="delete_all_votes" value="0" checked="checked"> + No, go back and review my votes + </p> + <p> + <input type="submit" id="vote" value="Submit"> + </p> +</form> + +[% PROCESS global/footer.html.tmpl %] diff --git a/extensions/Voting/template/en/default/voting/votes-removed.txt.tmpl b/extensions/Voting/template/en/default/voting/votes-removed.txt.tmpl new file mode 100644 index 000000000..bfb37c90d --- /dev/null +++ b/extensions/Voting/template/en/default/voting/votes-removed.txt.tmpl @@ -0,0 +1,55 @@ +[%# The contents of this file are subject to the Mozilla Public + # License Version 1.1 (the "License"); you may not use this file + # except in compliance with the License. You may obtain a copy of + # the License at http://www.mozilla.org/MPL/ + # + # Software distributed under the License is distributed on an "AS + # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or + # implied. See the License for the specific language governing + # rights and limitations under the License. + # + # The Original Code is the Bugzilla Bug Tracking System. + # + # The Initial Developer of the Original Code is Netscape Communications + # Corporation. Portions created by Netscape are + # Copyright (C) 1998 Netscape Communications Corporation. All + # Rights Reserved. + # + # Contributor(s): Emmanuel Seyman <eseyman@linagora.com> + #%] + +[% PROCESS global/variables.none.tmpl %] + +From: [% Param('mailfrom') %] +To: [% to %] +Subject: [% terms.Bug %] [%+ bugid %] Some or all of your votes have been removed. +X-Bugzilla-Type: voteremoved + +Some or all of your votes have been removed from [% terms.bug %] [%+ bugid %]. + +You had [% votesold FILTER html %] [%+ IF votesold == 1 %]vote[% ELSE %]votes[% END +%] on this [% terms.bug %], but [% votesremoved FILTER html %] have been removed. + +[% IF votesnew %] +You still have [% votesnew FILTER html %] [%+ IF votesnew == 1 %]vote[% ELSE %]votes[% END %] on this [% terms.bug %]. +[% ELSE %] +You have no more votes remaining on this [% terms.bug %]. +[% END %] + +Reason: +[% IF reason == "votes_bug_moved" %] + This [% terms.bug %] has been moved to a different product. + +[% ELSIF reason == "votes_too_many_per_bug" %] + The rules for voting on this product has changed; + you had too many votes for a single [% terms.bug %]. + +[% ELSIF reason == "votes_too_many_per_user" %] + The rules for voting on this product has changed; you had + too many total votes, so all votes have been removed. +[% END %] + + + +[% urlbase %]show_bug.cgi?id=[% bugid %] + |