#!/usr/bin/perl

use strict;
use CGI;

use Opals::Context;
use Encode;
use LWP::UserAgent;
use HTTP::Request::Common;
use URI::Escape;


#reference: http://developer.yahoo.com/geo/geoplanet/guide/yql-tables.html#geo-places
my $cgi = CGI->new;
my $input = $cgi->Vars();

my $zipPostalCode= $input->{'zip'};
my $url="http://query.yahooapis.com/v1/public/yql?q=select+*+from+geo.places+where+text+=+'$zipPostalCode'";
my $woeid="invalid";
my $userAgent = LWP::UserAgent->new(agent   => 'OPALS',
                                        timeout =>600);
    my $request = HTTP::Request->new(GET =>$url ); 
    my $response = $userAgent->request($request );
    if($response->is_success){
        my $xml =$response->content;

        if($xml =~ m/<woeid>(.*)<\/woeid>/s){
            $woeid=$1;
        }
    }
    print $cgi->header(
        -type    => 'text/html',
        -expires => 'now',
        -charset => 'utf-8',
    ), "{woeid:$woeid}";

