Ejemplo n.º 1
0
 public function executeTo(sfWebRequest $request)
 {
     $this->form = new sfForm();
     if ($request->isMethod('post')) {
         if ($this->validate($request->getParameter('to_address'), '目的地')) {
             $b = new sfWebBrowser();
             $b->get(sfConfig::get('sf_google_geo_url'), array('output' => 'xml', 'sensor' => 'false', 'key' => sfConfig::get('sf_google_key'), 'q' => $request->getParameter('to_address')));
             $xml = new SimpleXMLElement($b->getResponseText());
             if ($this->geoCodeValidate($xml)) {
                 $this->viewList($request, $b, "toConfirm");
             }
         }
     } else {
         if ($request->getParameter('lat') != "" && $request->getParameter('lon') != "") {
             $lon = GpsConverter::dmsToDegree($this->getRequestParameter('lon'));
             $lat = GpsConverter::dmsToDegree($this->getRequestParameter('lat'));
             $b = new sfWebBrowser();
             $b->get(sfConfig::get('sf_google_geo_url'), array('output' => 'xml', 'sensor' => 'false', 'key' => sfConfig::get('sf_google_key'), 'll' => $lat . ',' . $lon));
             $this->viewList($request, $b, "toConfirm");
         }
     }
 }
Ejemplo n.º 2
0
 public function executeTo(sfWebRequest $request)
 {
     $this->form = new sfForm();
     if ($request->isMethod('post')) {
         if ($request->getParameter('to_address') == "") {
             $this->form->getErrorSchema()->addError(new sfValidatorError(new sfValidatorPass(), $this->from_error));
         } else {
             $b = new sfWebBrowser();
             $b->get(sfConfig::get('sf_google_geo_url'), array('output' => 'xml', 'sensor' => 'false', 'key' => sfConfig::get('sf_google_key'), 'q' => $request->getParameter('to_address')));
             $this->viewList($request, $b, "toConfirm");
             return sfView::SUCCESS;
         }
     } else {
         if ($request->getParameter('lat') != "" && $request->getParameter('lon') != "") {
             $lon = GpsConverter::dmsToDegree($this->getRequestParameter('lon'));
             $lat = GpsConverter::dmsToDegree($this->getRequestParameter('lat'));
             $b = new sfWebBrowser();
             $b->get(sfConfig::get('sf_google_geo_url'), array('output' => 'xml', 'sensor' => 'false', 'key' => sfConfig::get('sf_google_key'), 'll' => $lat . ',' . $lon));
             $this->viewList($request, $b, "toConfirm");
             return sfView::SUCCESS;
         }
     }
 }