/** * Update the specified service in storage. * * @param int $id * @return Response */ public function updateService($service) { // $service = Service::findOrFail($id); $detail = Input::only('highlights', 'summary'); $condition = Input::only('special_condition', 'condition1', 'condition2'); $data = Input::except('highlights', 'special_condition', 'condition1', 'condition2'); $validator = Validator::make($data, Service::$rules); if ($validator->fails()) { return Redirect::back()->withErrors($validator)->withInput(); } if ($service->detail_id) { // update detail service ServiceDetail::where('id', $service->detail_id)->update($detail); } else { // update detail service $serviceDetail = ServiceDetail::create($detail); $data['detail_id'] = $serviceDetail->id; } if ($service->condition_id) { // create condition service ServiceCondition::where('id', $service->condition_id)->update($condition); } else { $serviceCondition = ServiceCondition::create($condition); $data['condition_id'] = $serviceCondition->id; } // set active $data['status'] = 'active'; unset($data['summary']); if ($service->update($data)) { return Redirect::route('service.index')->with('success', Lang::get('site/services/messages.update.success')); } return Redirect::route('service.edit')->with('error', Lang::get('site/services/messages.update.error')); }
/** * Update the specified service in storage. * * @param int $id * @return Response */ public function updateService($id) { $service = Service::findOrFail($id); $detail = Input::only('highlights', 'summary'); $condition = Input::only('special_condition', 'condition1', 'condition2'); $data = Input::except('highlights', 'summary', 'special_condition', 'condition1', 'condition2'); $validator = Validator::make($data, Service::$rules); if ($validator->fails()) { return Redirect::back()->withErrors($validator)->withInput(); } ServiceDetail::where('id', (int) $data['detail_id'])->update($detail); ServiceCondition::where('id', (int) $data['condition_id'])->update($condition); $service->update($data); return Redirect::route('admin.services.index'); }