function store()
 {
     $error = "";
     if (Input::has('places') && Input::has('placeid')) {
         $placesList = Input::get('places');
         $mosqueid = Input::get('placeid');
         try {
             for ($i = count($placesList) - 1; $i >= 0; $i--) {
                 $place = $placesList[$i];
                 $placeExist = GPlace::where('placeid', $place['placeid'])->first();
                 if (!$placeExist) {
                     if ($i < count($placesList) - 1) {
                         $place['parent'] = $placesList[$i + 1]['placeid'];
                         $place['importparent'] = $place['parent'];
                     }
                     GPlace::create($place);
                 }
             }
             $area = $placesList[0]['placeid'];
             $place = GPlace::where('placeid', $area)->first();
             if ($place) {
                 $mosque = GMosque::where('placeid', $mosqueid)->first();
                 $mosque->area = $area;
                 $mosque->save();
                 return Response::json(array('status_code' => 200), 200);
             } else {
                 $error = "Cannot save mosque because place not saved.";
             }
         } catch (\Illuminate\Database\QueryException $e) {
             $error = $e->getMessage();
         } catch (\Exception $e) {
             $error = $e->getMessage();
         }
     } elseif (Input::has('placesupdate')) {
         $placesList = Input::get('placesupdate');
         try {
             for ($i = 0; $i < count($placesList); $i++) {
                 $place = $placesList[$i];
                 $placeExist = GPlace::where('placeid', $place['placeid'])->first();
                 if ($placeExist) {
                     $placeExist['importparent'] = $place['importparent'];
                     $placeExist['importignore'] = $place['importignore'];
                     $placeExist->save();
                 } else {
                     throw new \Exception("place not found: " . $place['placeid']);
                 }
             }
             return Response::json(array('status_code' => 200), 200);
         } catch (\Illuminate\Database\QueryException $e) {
             $error = $e->getMessage();
         } catch (\Exception $e) {
             $error = $e->getMessage();
         }
     }
     return Response::json(array('status_code' => 500, 'error_message' => $error), 500);
 }