X-Git-Url: https://projects.mako.cc/source/selectricity/blobdiff_plain/66e774fa70c7ec116de558b0b4c4c07cd9d0e270..ad088c1324d08a65f6f5336bedf7a88a8a8950e7:/app/models/selectricity_service.rb diff --git a/app/models/selectricity_service.rb b/app/models/selectricity_service.rb deleted file mode 100644 index add5ab9..0000000 --- a/app/models/selectricity_service.rb +++ /dev/null @@ -1,69 +0,0 @@ -require 'action_controller/integration' - -class SelectricityService < ActionWebService::Base - web_service_api SelectricityAPI - def cast_quickvote(election_name, voter_id, vote_list) - election = QuickVote.ident_to_quickvote election_name - if election - voter = QuickVoter.new - voter.election = election - voter.ipaddress = "XMLRPC Request" - voter.session_id = "XMLRPC:#{voter_id}" - voter.vote=Vote.new - voter.vote.votes=vote_list[0] - voter.vote.time = Time.now - voter.save! - voter.vote.confirm! - voter.save! - end - end - def quickvote_candidate_ids_to_names(shortname, id_list) - qv=QuickVote.ident_to_quickvote(shortname) - candidates={} - return [] unless qv - qv.results - qv.candidates.each {|c| candidates[c.id] = c} - results=[] - id_list.each { |id| - name=candidates[id] - if name - results << name - else - results << "" - end - } - results - end - def get_quickvote_results(shortname) - #TODO: Validate shortname - qv=QuickVote.ident_to_quickvote(shortname) - result=VoteResultStruct.new - result.errors=[] - unless qv - result.errors << "No quickvote with name #{shortname} found!" - return result - end - qv.results - result.plurality_winners=qv.plurality_result.winners - result.approval_winners=qv.approval_result.winners - result.condorcet_winners=qv.condorcet_result.winners - result.ssd_winners=qv.ssd_result.winners - result.borda_winners=qv.borda_result.winners - result - end - def get_quickvote_candidate_map(shortname) - qv=QuickVote.ident_to_quickvote(shortname) - result=CandidateMap.new - result.errors=[] - unless qv - result.errors << "No quickvote with name #{shortname} found!" - return result - end - candidates={} - qv.candidates.each {|c| candidates[c.id] = c.name} - result.candidate_ids=candidates.keys - result.candidate_names=candidates.values - result - end - -end