Esempio n. 1
0
 /**
  * Update the specified resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function update(Requests\PostRequest $request, $id)
 {
     $post = Posts::where('id', $id)->firstOrFail();
     if (!empty($request->file('image')) && $request->file('image')->isValid()) {
         $destinationPath = public_path() . "/images/";
         // upload path
         $extension = $request->file('image')->getClientOriginalExtension();
         // getting image extension
         $fileName = $post->url . '.' . $extension;
         // renameing image
         $request->file('image')->move($destinationPath, $fileName);
         // uploading file to given path
         $post->image = $fileName;
     }
     $post->fill($request->only(['title', 'post']));
     $post->save();
     Posts::findOrFail($id)->tags()->detach();
     $tags = [];
     foreach ($this->getTags($request->input('tags')) as $tag) {
         if (!empty($tag)) {
             $isFind = Tags::where('name', $tag)->get()->count();
             if ($isFind == 0) {
                 $tags[] = new Tags(['name' => $tag]);
             } else {
                 $tags[] = Tags::where('name', $tag)->first();
             }
         }
     }
     $post->tags()->saveMany($tags);
     return back();
 }
 /**
  * Update the specified resource in storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function update($id, Requests\PostsFormRequest $request)
 {
     $post = Posts::findOrFail($id);
     $input = $request->all();
     $input['alias'] = HelperFunctions::str2url($request->title);
     $post->update($input);
     $categories_ids = [];
     foreach ($input['categories_list'] as $value) {
         $category = Categories::findOrNew($value);
         if ($category->exists) {
             array_push($categories_ids, $value);
         } else {
             $category->name = $value;
             $category->save();
             array_push($categories_ids, $category->id);
         }
     }
     $post->categories()->sync($categories_ids);
     $tags_ids = [];
     foreach ($input['tags_list'] as $value) {
         $tag = Tags::findOrNew($value);
         if ($tag->exists) {
             array_push($tags_ids, $value);
         } else {
             $tag->name = $value;
             $tag->save();
             array_push($tags_ids, $tag->id);
         }
     }
     $post->tags()->sync($tags_ids);
     \Session::flash('success', 'Post updated');
     return redirect('/');
 }
 function postComment(Request $request)
 {
     $all = $request->all();
     $validator = Validator::make($all, ['comment' => 'required']);
     if ($validator->fails()) {
         $id = $all['id'];
         $post = Posts::findOrFail($id);
         $page_title = $post->title;
         $data = compact('post', 'page_title');
         return view('posts.show', $data)->withErrors($validator->errors());
     }
     $comment = Purifier::clean($all['comment'], 'markdown');
     $user_id = Auth::user()->id;
     $post_id = $all['id'];
     $post = Comments::create(['comment' => $comment, 'post_id' => $post_id, 'user_id' => $user_id]);
     return redirect(route('getPostShow', $post_id));
 }