with('posts',$posts); } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create() { $categories=PostCategory::get(); $tags=PostTag::get(); $users=User::get(); return view('backend.post.create')->with('users',$users)->with('categories',$categories)->with('tags',$tags); } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { // return $request->all(); $this->validate($request,[ 'title'=>'string|required', 'quote'=>'string|nullable', 'summary'=>'string|required', 'description'=>'string|nullable', 'photo'=>'string|nullable', 'tags'=>'nullable', 'added_by'=>'nullable', 'post_cat_id'=>'required', 'status'=>'required|in:active,inactive' ]); $data=$request->all(); $slug=Str::slug($request->title); $count=Post::where('slug',$slug)->count(); if($count>0){ $slug=$slug.'-'.date('ymdis').'-'.rand(0,999); } $data['slug']=$slug; $tags=$request->input('tags'); if($tags){ $data['tags']=implode(',',$tags); } else{ $data['tags']=''; } // return $data; $status=Post::create($data); if($status){ request()->session()->flash('success','Post Successfully added'); } else{ request()->session()->flash('error','Please try again!!'); } return redirect()->route('post.index'); } /** * Display the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function show($id) { // } /** * Show the form for editing the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function edit($id) { $post=Post::findOrFail($id); $categories=PostCategory::get(); $tags=PostTag::get(); $users=User::get(); return view('backend.post.edit')->with('categories',$categories)->with('users',$users)->with('tags',$tags)->with('post',$post); } /** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update(Request $request, $id) { $post=Post::findOrFail($id); // return $request->all(); $this->validate($request,[ 'title'=>'string|required', 'quote'=>'string|nullable', 'summary'=>'string|required', 'description'=>'string|nullable', 'photo'=>'string|nullable', 'tags'=>'nullable', 'added_by'=>'nullable', 'post_cat_id'=>'required', 'status'=>'required|in:active,inactive' ]); $data=$request->all(); $tags=$request->input('tags'); // return $tags; if($tags){ $data['tags']=implode(',',$tags); } else{ $data['tags']=''; } // return $data; $status=$post->fill($data)->save(); if($status){ request()->session()->flash('success','Post Successfully updated'); } else{ request()->session()->flash('error','Please try again!!'); } return redirect()->route('post.index'); } /** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { $post=Post::findOrFail($id); $status=$post->delete(); if($status){ request()->session()->flash('success','Post successfully deleted'); } else{ request()->session()->flash('error','Error while deleting post '); } return redirect()->route('post.index'); } }