コード例 #1
0
ファイル: PagesController.php プロジェクト: tok3/publisher
 /**
  * @param PagesEditCreateRequest $request
  * @param Page $pages
  * @param $id
  * @return \Illuminate\Http\RedirectResponse
  */
 public function update(PagesEditCreateRequest $request, Page $pages, Image $_image, $id)
 {
     $page = $pages->find($id);
     if (is_array($request->tag_list)) {
         $this->syncTags($page, $request->tag_list);
     }
     $images = $request->file('images');
     if ($request->hasFile('images') && is_array($images)) {
         foreach ($images as $usage => $img) {
             if (is_object($img) && $img->isValid()) {
                 // check if images are already stored
                 $image = $_image->where('usage', $usage)->where('page_id', $id)->first();
                 if (isset($image->name)) {
                     unlink(\Config::get('tok3-publisher.images_dir', 'images/tok3-publisher/') . $image->name);
                 } else {
                     $image = new Image();
                     $image->page_id = $id;
                 }
                 //$img_filename = md5(time() . $id . $usage) . '.' . $img->guessExtension();
                 $img_filename = time() . '_' . $id . '_' . $usage . '.' . $img->guessExtension();
                 $img->move(\Config::get('tok3-publisher.images_dir', 'images/tok3-publisher/'), $img_filename);
                 $image->origin_name = $img->getClientOriginalName();
                 $image->usage = $usage;
                 $image->name = $img_filename;
                 $image->mime = $img->getClientMimeType();
                 $image->save();
             }
         }
     }
     $page->update($request->page);
     return back();
 }