public function save($data, $product = null)
{
$publicId = isset($data['public_id']) ? $data['public_id'] : false;
if ($product) {
// do nothing
} elseif ($publicId) {
$product = Product::scope($publicId)->firstOrFail();
\Log::warning('Entity not set in product repo save');
} else {
$product = Product::createNew();
}
$product->fill($data);
$product->save();
return $product;
}
/** * @param UpdateProductRequest $request * @param $publicId * @return \Illuminate\Http\Response */ public function update(UpdateProductRequest $request, $publicId) { if ($request->action) { return $this->handleAction($request); } $data = $request->input(); $data['public_id'] = $publicId; $product = $this->productRepo->save($data, $request->entity()); return $this->itemResponse($product); }