Author: humbedooh
Date: Wed Mar 25 12:33:58 2015
New Revision: 1669105

URL: http://svn.apache.org/r1669105
Log:
allow vote plugins to parse fields themselves.
prepare for COP voting

Modified:
    steve/trunk/pysteve/www/cgi-bin/rest_admin.py

Modified: steve/trunk/pysteve/www/cgi-bin/rest_admin.py
URL: 
http://svn.apache.org/viewvc/steve/trunk/pysteve/www/cgi-bin/rest_admin.py?rev=1669105&r1=1669104&r2=1669105&view=diff
==============================================================================
--- steve/trunk/pysteve/www/cgi-bin/rest_admin.py (original)
+++ steve/trunk/pysteve/www/cgi-bin/rest_admin.py Wed Mar 25 12:33:58 2015
@@ -156,6 +156,11 @@ else:
                                         for entry in c:
                                             candidates.append({'name': 
entry.strip(), 'statement': s[z] if len(s) > z else ""})
                                             z += 1
+                                    # HACK: If candidate parsing is 
outsourced, let's do that instead (primarily for COP)
+                                    voteType = election.getVoteType({'type': 
form.getvalue('type')})
+                                    if 'parsers' in voteType and 'candidates' 
in voteType['parsers']:
+                                        candidates = 
voteType['parsers']['candidates'](form.getvalue('candidates'))
+                                        
                                     f.write(json.dumps({
                                         'title': form.getvalue('title'),
                                         'description': 
form.getvalue('description'),
@@ -259,6 +264,12 @@ else:
                                                 statements.append(entry)
                                         if field == "seconds":
                                             val = [x.strip() for x in 
val.split("\n")]
+                                            
+                                        # HACK: If field  parsing is 
outsourced, let's do that instead (primarily for COP)
+                                        voteType = election.getVoteType(js)
+                                        if 'parsers' in voteType and field in 
voteType['parsers']:
+                                            val = 
voteType['parsers'][field](form.getvalue(field))
+                                            
                                         js[field] = val
                                 with open(issuepath + ".json", "w") as f:
                                     f.write(json.dumps(js))


Reply via email to