12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- <?php
- namespace App\Http\Controllers;
- use Illuminate\Http\Request;
- use App\Models\Comment;
- use App\Models\Moderate;
- use App\Models\User;
- use App\Events\ValidateComment;
- use App\Events\ModerateComment;
- class CommentController extends Controller
- {
- // Переход по страницам
- public function view_update(Request $request){
- return view('comments.update', [ 'comment' => Comment::where('id', $request->id)->with('post')->with('user')->get()[0],
- 'admins' => User::where('role', 'admin')->orderBy("name")->get(), 'moderates' => Moderate::allComment($request->id) ]);
- }
- // Взаимодействия со страницами
- function insert(Request $request) { // Добавить
- event(new ValidateComment($request));
- $comment = new Comment;
- $comment->post_id = $request->input("id");
- $comment->user_id = $request->input("user");
- $comment->text = $request->input("text");
- $comment->save();
- return back();
- }
- function update(Request $request){ // Изменить
- event(new ValidateComment($request));
- $comment = Comment::find($request->input("id"));
- $comment->text = $request->input("text");
- $comment->save();
- event(new ModerateComment($request));
- return back();
- }
- function delete_by_id($id){
- Moderate::where('post_type', "App\Models\Comment")->where('post_id', $id)->delete();
- Comment::where('id', $id)->delete();
- return back();
- }
- function delete(Request $request){
- Moderate::where('post_type', "App\Models\Comment")->where('post_id', $request->id)->delete();
- Comment::where('id', $request->id)->delete();
- return back();
- }
- }
|