Beispiel #1
0
 /**
  * Create a new Poi = 1 SharcPoiDesigner + 1 SharcPoiExperience
  * @param String $objPoi: a json object containing info of both Pois                  
  */
 public static function addNewPoi($objPoi)
 {
     $response = array();
     try {
         //poiDesignerId, name, coordinate, triggerZone, designerID
         $poiDesigner = SharcPoiDesigner::create(array('id' => $objPoi['id'], 'name' => $objPoi['poiDesigner']['name'], 'coordinate' => $objPoi['poiDesigner']['coordinate'], 'triggerZone' => $objPoi['poiDesigner']['triggerZone'], 'designerId' => $objPoi['poiDesigner']['designerId']));
         $result = $poiDesigner->save();
         if (!$result) {
             $response["status"] = ERROR;
             $response["data"] = INTERNAL_SERVER_ERROR;
             return $response;
         }
         $poiExperience = SharcPoiExperience::create(array('id' => $objPoi['id'], 'experienceId' => $objPoi['experienceId'], 'poiDesignerId' => $poiDesigner->id, 'description' => $objPoi['description'], 'typeList' => $objPoi['typeList'], 'eoiList' => $objPoi['eoiList'], 'routeList' => $objPoi['routeList']));
         //$poiExperience->sharcPoiDesigner()->associate(poiDe)
         $result = $poiExperience->save();
         if ($result) {
             //= 1 success
             $response["status"] = SUCCESS;
             //$poiExperience->$poiDesigner
             $response["data"] = $poiExperience->toArray();
         } else {
             //error
             $response["status"] = ERROR;
             $response["data"] = INTERNAL_SERVER_ERROR;
         }
         //update other table e.g. route/event/media
     } catch (Exception $e) {
         $response["status"] = ERROR;
         $response["data"] = Utils::getExceptionMessage($e);
     }
     return $response;
 }