示例#1
0
 public function poiAction()
 {
     $this->_helper->layout->disableLayout();
     $this->_helper->viewRenderer->setNoRender(true);
     echo "<pre>";
     $filename = "data/lonelyplanet-london-gapdaemon.xml";
     $xml_parser = new Base_Xml_Parser(null, $filename);
     $destinationName = $xml_parser->Data['destination_name'];
     //----insert into continent
     $continent_id = 0;
     $continentM = new Application_Model_Continent();
     $continent = $continentM->fetchRow("name='{$destinationName}'");
     if (false !== $continent) {
         $continent_id = $continent->getId();
     }
     //--------------------------
     //----insert into country
     $country_id = 0;
     $countryM = new Application_Model_Country();
     $country = $countryM->fetchRow("name='{$destinationName}'");
     if (false !== $country) {
         $country_id = $country->getId();
     }
     //-------------------------------
     ///------insert into city
     $city_id = 0;
     $cityM = new Application_Model_City();
     $city = $cityM->fetchRow("name='{$destinationName}'");
     if (false !== $city) {
         $city_id = $city->getId();
     }
     //------------------------
     if ($city_id > 0) {
         //it is city
         $locationType = "city";
         $locationId = $city_id;
     } else {
         if ($country_id > 0) {
             //it is country
             $locationType = "country";
             $locationId = $country_id;
         } else {
             if ($continent_id > 0) {
                 //it is continent
                 $locationType = "continent";
                 $locationId = $continent_id;
             } else {
                 //create a place/city and get the reference id/location id
                 ///------insert into city
                 $city_id = 0;
                 $cityM = new Application_Model_City();
                 $cityM->setName($destinationName);
                 $cityM->setCountryId(0);
                 $city_id = $cityM->save();
                 //------------------------
                 $locationType = "other";
                 $locationId = $city_id;
             }
         }
     }
     error_reporting(E_ALL & ~E_NOTICE);
     foreach ($xml_parser->Data['pois']['poi'] as $poi) {
         $poiM = new Application_Model_Poi();
         $poiM->setLocationId($locationId)->setLocationType($locationType)->setName($poi['poi_name'])->setAddress(serialize($poi['address_parts']['address_part']))->setPostcode($poi['address_postcode'])->setTelfaxs(serialize($poi['telfaxs']['telfax']))->setEmail($poi['poi_email'])->setWeb($poi['poi_web'])->setTransportModes(serialize($poi['transport_modes']['transport_mode']))->setPriceRange($poi['price_range'])->setReviewFull($poi['review_full']['p'])->setReviewSummary($poi['review_summary']['p'])->setBookable($poi['bookable']['value'])->setXCoordinate($poi['feature_x_coord'])->setYCoordinate($poi['feature_y_coord'])->setFeatureId($poi['feature_id'])->setKeywords(serialize($poi['keywords']['keyword']));
         $poiM->save();
     }
 }
示例#2
0
文件: Poi.php 项目: riteshsahu1981/we
 private function setModel($row)
 {
     //$parent=$row->findParentRow('Application_Model_DbTable_Destination','Continent');
     $model = new Application_Model_Poi();
     $model->setId($row->id)->setLocationId($row->location_id)->setLocationType($row->location_type)->setName($row->name)->setAddress($row->address)->setPostcode($row->postcode)->setTelfaxs($row->telfaxs)->setEmail($row->email)->setWeb($row->web)->setTransportModes($row->transport_modes)->setPriceRange($row->price_range)->setReviewFull($row->review_full)->setReviewSummary($row->review_summary)->setBookable($row->bookable)->setXCoordinate($row->x_coordinate)->setYCoordinate($row->y_coordinate)->setFeatureId($row->feature_id)->setKeywords($row->keywords)->setAddedon($row->addedon)->setUpdatedon($row->updatedon);
     return $model;
 }