You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@steve.apache.org by hu...@apache.org on 2015/03/22 17:33:13 UTC
svn commit: r1668403 - in /steve/trunk/pytest/www: cgi-bin/rest_admin.py
htdocs/admin/edit_election.html htdocs/js/steve_rest.js
Author: humbedooh
Date: Sun Mar 22 16:33:12 2015
New Revision: 1668403
URL: http://svn.apache.org/r1668403
Log:
allow admins to peek at election by creating a temporary voter ID
Modified:
steve/trunk/pytest/www/cgi-bin/rest_admin.py
steve/trunk/pytest/www/htdocs/admin/edit_election.html
steve/trunk/pytest/www/htdocs/js/steve_rest.js
Modified: steve/trunk/pytest/www/cgi-bin/rest_admin.py
URL: http://svn.apache.org/viewvc/steve/trunk/pytest/www/cgi-bin/rest_admin.py?rev=1668403&r1=1668402&r2=1668403&view=diff
==============================================================================
--- steve/trunk/pytest/www/cgi-bin/rest_admin.py (original)
+++ steve/trunk/pytest/www/cgi-bin/rest_admin.py Sun Mar 22 16:33:12 2015
@@ -398,7 +398,20 @@ else:
response.respond(403, {'message': "You do not have karma to delete this issue"})
else:
response.respond(404, {'message': 'No such election or issue'})
-
+
+ # Get a temp voter ID for peeking
+ elif action == "temp" and electionID:
+ if electionID and election.exists(electionID):
+ basedata = election.getBasedata(electionID)
+ if karma >= 4 or ('owner' in basedata and basedata['owner'] == whoami):
+ voterid, xhash = voter.add(electionID, basedata, whoami + "@stv")
+ response.respond(200, {'id': voterid})
+ else:
+ response.respond(403, {'message': "You do not have karma to peek at this election"})
+ else:
+ response.respond(404, {'message': 'No such election'})
+
+ # Invite folks to the election
elif action == "invite" and karma >= 3:
# invite one or more people to an election
if electionID:
Modified: steve/trunk/pytest/www/htdocs/admin/edit_election.html
URL: http://svn.apache.org/viewvc/steve/trunk/pytest/www/htdocs/admin/edit_election.html?rev=1668403&r1=1668402&r2=1668403&view=diff
==============================================================================
--- steve/trunk/pytest/www/htdocs/admin/edit_election.html (original)
+++ steve/trunk/pytest/www/htdocs/admin/edit_election.html Sun Mar 22 16:33:12 2015
@@ -27,7 +27,7 @@
<a href="javascript:void(location.href='edit_basedata.html'+document.location.search);" class="btn"><img style="vertical-align: middle;" src="/images/icon_edit.png"/> Edit election base data</a>
- <a href="javascript:void(location.href='/election.html'+document.location.search);" class="btn-purple"><img style="vertical-align: middle;" src="/images/icon_view.png"/> View election</a>
+ <a href="javascript:void(peekAtElection());" class="btn-purple"><img style="vertical-align: middle;" src="/images/icon_view.png"/> View election</a>
<br/>
</fieldset>
<form>
Modified: steve/trunk/pytest/www/htdocs/js/steve_rest.js
URL: http://svn.apache.org/viewvc/steve/trunk/pytest/www/htdocs/js/steve_rest.js?rev=1668403&r1=1668402&r2=1668403&view=diff
==============================================================================
--- steve/trunk/pytest/www/htdocs/js/steve_rest.js (original)
+++ steve/trunk/pytest/www/htdocs/js/steve_rest.js Sun Mar 22 16:33:12 2015
@@ -267,6 +267,19 @@ function deleteIssue() {
getJSON("/steve/admin/delete/" + document.location.search.substr(1), election, deleteIssueCallback)
}
+function peekAtElection() {
+ var l = document.location.search.substr(1).split('/');
+ var election = l[0]
+ getJSON("/steve/admin/temp/" + document.location.search.substr(1), election, peekCallback)
+}
+
+function peekCallback(code, response, election) {
+ if (code == 200) {
+ location.href = "/election.html?" + election + "/" + response.id
+ } else {
+ alert(response.message)
+ }
+}
function changeSTVType(type) {
if (type == "yna") {