lib/lita/handlers/onewheel_election_cnn.rb in lita-onewheel-election-cnn-3.2.0 vs lib/lita/handlers/onewheel_election_cnn.rb in lita-onewheel-election-cnn-3.3.0

- old
+ new

@@ -19,10 +19,15 @@ route /^e\s+(.*)$/i, :election_by_state, command: true + route /^ansielection$/i, + :ansielection, + command: true, + help: {'ansielection' => 'pretty colors'} + def election(response) Lita.logger.debug 'Getting election data' results = JSON.parse(RestClient.get('http://data.cnn.com/ELECTION/2016/full/P.full.json')) response.reply "United States 2016 Presidential Election, #{results['races'][0]['pctsrep']}% reporting." @@ -120,9 +125,32 @@ states[search_state.upcase] else Lita.logger.debug "Returning #{search_state}" search_state end + end + + def ansielection(response) + results = JSON.parse(RestClient.get('http://data.cnn.com/ELECTION/2016/full/P.full.json')) + + reds = 0 + blues = 0 + results['candidates'].each do |candidate| + if candidate['lname'] == 'Clinton' + blues = candidate['evotes'] / 10 + end + if candidate['lname'] == 'Trump' + reds = candidate['evotes'] / 10 + end + end + + reply = '' + extras = 54 - blues - reds + blues.times { reply += 'b' } + extras.times { reply += '-'} + reds.times { reply += 'r' } + + response.reply reply end Lita.register_handler(self) end end