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); }