UserController.php 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <?php
  2. namespace App\Http\Controllers;
  3. use Illuminate\Http\Request;
  4. use App\Models\User;
  5. use App\Models\Post;
  6. use App\Models\Moderate;
  7. use App\Models\Comment;
  8. class UserController extends Controller
  9. {
  10. // Переход по страницам
  11. public function all(){ return view('users.all', ['users' => User::orderBy("created_at", 'desc')->get()]); }
  12. public function single_user(Request $request){
  13. return view('users.single_user', ['user' => User::where('id', $request->id)->get()[0],
  14. 'posts' => Post::where('user_id', $request->id)->with('user')->get()]);
  15. }
  16. // Взаимодействия со страницами
  17. function insert(Request $request) { // Добавить
  18. if ($request->input("name") != ""){
  19. $user = new User;
  20. $user->name = $request->input("name");
  21. if ($request->input("admin")) $user->role = "admin";
  22. else $user->role = "Null";
  23. $user->save();
  24. }
  25. return back();
  26. }
  27. function delete(Request $request) { // Удаление
  28. $comments = Comment::where('user_id', $request->id)->get();
  29. foreach ($comments as $comment) (new CommentController)->delete_by_id($comment->id);
  30. $posts = Post::where('user_id', $request->id)->get();
  31. foreach ($posts as $post) (new PostController)->delete_by_id($post->id);
  32. User::where('id', $request->id)->delete();
  33. return back();
  34. }
  35. }