|
|
@@ -0,0 +1,53 @@ |
|
|
|
require 'rubygems' |
|
|
|
require 'sinatra' |
|
|
|
require 'json' |
|
|
|
require 'rest_client' |
|
|
|
|
|
|
|
get '/' do |
|
|
|
@wards = %w{ Cheam Sutton Stonecot } |
|
|
|
haml :home |
|
|
|
end |
|
|
|
|
|
|
|
get '/wards' do |
|
|
|
@postcode = params[:postcode].strip.upcase |
|
|
|
|
|
|
|
url = "http://www.uk-postcodes.com/postcode/" + @postcode.gsub(/ /, '') + '.json' |
|
|
|
|
|
|
|
result = RestClient.get(url) |
|
|
|
result_ary = JSON.parse(result) |
|
|
|
@district_name = result_ary['administrative']['district']['title'] |
|
|
|
@ward_name = result_ary['administrative']['ward']['title'] |
|
|
|
haml :wards |
|
|
|
end |
|
|
|
|
|
|
|
__END__ |
|
|
|
|
|
|
|
@@layout |
|
|
|
!!! |
|
|
|
%html |
|
|
|
%head |
|
|
|
%title Find My Candidates |
|
|
|
%body |
|
|
|
#main |
|
|
|
%h1 Find My Candidates |
|
|
|
= yield |
|
|
|
#footer |
|
|
|
%hr/ |
|
|
|
%p Design by Adrian Short |
|
|
|
|
|
|
|
@@home |
|
|
|
%form{ :method => 'get', :action => '/wards' } |
|
|
|
%label{ :for => "postcode" } |
|
|
|
Postcode |
|
|
|
%input{ :type => 'text', :name => 'postcode', :size => 10 } |
|
|
|
%input{ :type => 'submit', :value => "Find" } |
|
|
|
- for ward in @wards |
|
|
|
%p= ward |
|
|
|
|
|
|
|
|
|
|
|
@@wards |
|
|
|
%h2 |
|
|
|
#{@ward_name} Ward in #{@district_name} |
|
|
|
%p |
|
|
|
Your postcode is #{@postcode} |
|
|
|
|