예제 #1
0
 /**
  * Display a listing of the resource.
  *
  * @return \Illuminate\Http\Response
  */
 public function index()
 {
     sweetalert_message()->top_message(trans("front_home.order_cancel"));
     //     	return $this->user->descorders();
     return view('frontend.home.quickorder.index')->withuser($this->user);
     //     	->withFlashSuccess("error");
     //     	->withMessage(trans('front_home.qorder_intro'));
 }
예제 #2
0
 /**
  * Handle an incoming request.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  \Closure  $next
  * @return mixed
  */
 public function handle($request, Closure $next)
 {
     /* if cart is empty, route to menu page */
     if (!Cart::count()) {
         sweetalert_message()->n_overlay(trans("menus.empty_order"), 'Invalid Order');
         return redirect()->route('home.menu.index');
     }
     return $next($request);
 }
예제 #3
0
 public function saveordertime(Request $request)
 {
     if (!$request->input('ordertime')) {
         sweetalert_message()->n_overlay('Please choose a valid time', 'Invalid Time');
         return redirect()->route('home.pick.details');
     } else {
         $request->session()->put('ordertime', $request->input('ordertime'));
         if ($request->session()->has('ordertime')) {
             return redirect()->route('home.menu.index');
         }
     }
 }
예제 #4
0
 /**
  * Handle an incoming request.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  \Closure  $next
  * @return mixed
  */
 public function handle($request, Closure $next)
 {
     /* if session expired, then route to home page. */
     //     	if((!$request->session()->has('pickup_deatils'))||(!$request->session()->has('ordertime'))){
     if (!$request->session()->has('ordertype') || !$request->session()->has('ordertime')) {
         sweetalert_message()->n_overlay(trans("menus.session.expire"), 'Session Expire');
         return redirect()->route('home');
     }
     //     	/* if cart is empty, route to menu page */
     //     	if(!Cart::count()){
     //     		sweetalert_message()->n_overlay(trans("menus.empty_order"),'Invalid Order');
     //     		return redirect()->route('home.menu.index');
     //     	}
     return $next($request);
 }
예제 #5
0
 public function placeorder(Request $request)
 {
     if ($request->session()->get('ordertime') != "ASAP") {
         $shiptime = Carbon::createFromTimestamp($request->session()->get('ordertime'))->toDateTimeString();
     } else {
         $shiptime = Carbon::now();
     }
     $paymentflat = 1;
     $data = ['ordernumber' => date('Ymd') . random_int(100000, 999999), 'total' => $this->totalprice, 'totaldue' => $this->totalprice, 'status' => '1', 'ordertype' => $request->session()->get('ordertype'), 'name' => $request->session()->get('user_details')['name'], 'email' => $request->session()->get('user_details')['email'], 'phonenumber' => $request->session()->get('user_details')['phone'], 'paymentflag' => $paymentflat, 'staff_id' => 1, 'paymentmethod_id' => $request->session()->get('paymentmethod'), 'paymenttime' => Carbon::now(), 'shiptime' => $shiptime, 'useraddress_id' => $request->ip(), 'shipmethod' => 'take away', 'message' => $request->input('message')];
     $order = Orders::create($data);
     foreach ($this->cart as $item) {
         $order->dishes()->attach($item->id, array('amount' => $item->qty, 'price' => $item->price, 'total' => $item->price * $item->qty));
     }
     if ($request->session()->get('ordertype') == 'delivery') {
         $address = new Address(['address' => $request->session()->get('user_details')['address'], 'suburb' => $request->session()->get('user_details')['suburb'], 'city' => $request->session()->get('user_details')['city']]);
         // 			$address->address = $request->session()->get('user_details')['address'];
         // 			$address->suburb = $request->session()->get('user_details')['suburb'];
         // 			$address->city = $request->session()->get('user_details')['city'];
         // 			$user_address = ['address'=>$request->session()->get('user_details')['address'],
         // 						'suburb'=>$request->session()->get('user_details')['suburb'],
         // 						'city'=>$request->session()->get('user_details')['city']
         // 			];
         // 			$address = Address::create($user_address);
         $order->address()->save($address);
     }
     if (!Auth::guest()) {
         // 			dd($this->user);
         $this->user->attachorder($order);
     }
     event(new OrderReceipt($order));
     event(new OrderPrinter($order));
     event(new DashboardOrder());
     /* clear shopping cart		 */
     Cart::clean();
     sweetalert_message()->top_message(trans("front_home.order_cancel"));
     Mail::queue('emails.order.receipt', compact('order'), function ($message) use($order) {
         $message->from(env('MAIL_USERNAME'))->to($order->email)->subject('Noodle Canteen Receipt');
     });
     return view('frontend.home.payment.ordercreated')->withOrder($order);
 }