/** * Update Spec * * @param $id * @param $category * @param $name * @param $descriptions * @param $addImage * @param $removeImage * @return mixed */ public function update($id, $category, $name, $descriptions, $addImage, $removeImage) { $category = Category::findOrFail($category); $spec = Spec::findOrFail($id); try { $spec->category_id = $category->id; $spec->name = strtolower($name); $spec->save(); //cria as traduções foreach ($descriptions as $iso => $value) { $lang = Lang::whereIso($iso)->first(); $this->translationRepositoryInterface->update($lang->id, 'specs', $spec->id, $value); } //adiciona novas imagens if (!empty($addImage)) { $this->mediaRepositoryInterface->updateTable($addImage, 'specs', $spec->id); } if (!empty($removeImage)) { $this->mediaRepositoryInterface->deleteById($removeImage); } } catch (\Exception $e) { \Log::error($e); return false; } return true; }
/** * Update Category * * @param $id * @param $names * @param $parent_id * @return mixed */ public function update($id, $names, $parent_id) { $category = Category::findOrFail($id); if ($category->parent_id != $parent_id) { $category->parent_id = $parent_id; } $aux = false; foreach ($names as $iso => $name) { $lang = Lang::whereIso($iso)->first(); $aux = $this->translationRepositoryInterface->update($lang->id, 'categories', $category->id, strtolower($name)); } return $aux ? $category->save() : false; }