/** * Update the specified resource in storage. * * @param BrandFormRequest $brandForm * @param Brand $brand * @return \Illuminate\Http\RedirectResponse */ public function update(BrandFormRequest $brandForm, Brand $brand) { // may we edit this brand if (!$brand->mayEdit($this->auth_user)) { return Redirect::route('admin.brands.show', $brand->id)->with('message', 'User is not authorized to edit this brand.'); } $input = $brandForm->all(); if ($brandForm->hasFile('logo') && $brandForm->file('logo')->isValid()) { $errors = []; if (!Brand::checkUploadedLogo($brandForm->file('logo'), $errors)) { return Redirect::route('admin.brands.edit', $brand->id)->withErrors(['logo' => $errors]); } // all ok $filesystem = new Filesystem(); $input['logo'] = $filesystem->get($brandForm->file('logo')->getRealPath()); } $brand->update($input); return Redirect::route('admin.brands.show', $brand->id)->with('message', 'Brands has been updated.'); }