HomeController.php 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Events\NewOrder;
  4. use App\Models\Product;
  5. use Illuminate\Support\Facades\Auth;
  6. use Illuminate\Http\Request;
  7. class HomeController extends Controller
  8. {
  9. /**
  10. * Create a new controller instance.
  11. *
  12. * @return void
  13. */
  14. public function __construct()
  15. {
  16. }
  17. /**
  18. * Show the application dashboard.
  19. *
  20. * @return \Illuminate\Contracts\Support\Renderable
  21. */
  22. public function index()
  23. {
  24. $products = Product::all();
  25. return view('root')->with('products', $products);
  26. }
  27. public function order($product_id)
  28. {
  29. $product = Product::where('id', $product_id)->first();
  30. if (!Auth::check() || $product == null) {
  31. return redirect('/');
  32. } else {
  33. return view('order', ['product' => $product, 'user_id' => Auth::id(), 'date' => date("Y-m-d H:i:s")]);
  34. }
  35. }
  36. public function order_send(Request $request)
  37. {
  38. $request->validate([
  39. 'address' => ['required', 'max:128'],
  40. 'product_id' => ['required'],
  41. 'user_id' => ['required'],
  42. 'date' => ['required']
  43. ]);
  44. event(new NewOrder($request));
  45. $product = Product::where('id', $request->product_id)->first();
  46. if (!Auth::check() || $product == null) {
  47. return redirect('/');
  48. } else {
  49. return view('order_send', ['product' => $product]);
  50. }
  51. }
  52. }