public function update(Request $request, $id)
 {
     $resource = $this->repository->findById($id);
     if (!$resource) {
         return response()->json(['error' => 'Entity not found'], 404);
     }
     $data = Input::all();
     $this->manager->setEntity($resource);
     $response = $this->manager->update($data);
     if ($response instanceof Entity) {
         return response()->json($response, 200);
     } else {
         if ($response instanceof MessageBag) {
             return response()->json($response, 400);
         }
     }
     return response()->json(['error' => 'Server error. Try Again'], 500);
 }
 public function update($data)
 {
     $response = parent::update($data);
     if ($response instanceof Entity) {
         $response->custom_fields()->delete();
         $custom_fields = [];
         foreach ($this->data['custom_fields'] as $field) {
             $field['field'] = isset($field['name']) ? $field['name'] : '';
             if (!empty($field['field'])) {
                 $field['slug'] = str_slug($field['field']);
                 array_push($custom_fields, new CustomFieldEntity($field));
             }
         }
         $response->custom_fields()->saveMany($custom_fields);
     }
     return $response;
 }