예제 #1
0
 public function rentSpecific($type)
 {
     if (Auth::check()) {
         //get cars of specific type
         $sectionArray = array();
         if ($type == "Luxury") {
             $cars = Car::where('type', '=', "Luxury")->get();
             array_push($sectionArray, "Luxury");
         } else {
             if ($type == "Standard") {
                 $cars = Car::where('type', '=', "Standard")->get();
                 array_push($sectionArray, "Standard");
             } else {
                 if ($type == "Compact") {
                     $cars = Car::where('type', '=', "Compact")->get();
                     array_push($sectionArray, "Compact");
                 } else {
                     return Redirect::to('/');
                 }
             }
         }
         return view('rental.index', compact('cars', 'sectionArray'));
     } else {
         return Redirect::to('/');
     }
 }
예제 #2
0
 /**
  * Responds to requests to GET /cars
  */
 public function getIndex(Request $request)
 {
     # Get all the cars "owned" by the current logged in user
     # Sort in descending order by id
     $cars = \App\Car::where('user_id', '=', \Auth::id())->orderBy('id', 'DESC')->get();
     return view('cars.index')->with('cars', $cars);
 }
예제 #3
0
 public function updateCar(Request $request, $id)
 {
     if ($id) {
         Car::where('id', $id)->update(['model_id' => $request->input('model_id'), 'make_id' => $request->input('make_id'), 'price' => $request->input('price')]);
         return response()->json(array("status" => "success", "code" => "update"), 200);
     }
     return response()->json(array("status" => "error", "code" => "update"), 404);
 }
예제 #4
0
 /**
  * Run the database seeds.
  *
  * @return void
  */
 public function run()
 {
     $cars = ['GS450h' => ['Sedan', 'Luxury', 'Hybrid'], 'Grand Cherokee' => ['SUV', 'Premium'], 'Accord Hybrid' => ['Sedan', 'Hybrid'], 'IS 350' => ['Sedan'], 'Prius v' => ['Sedan', 'Hybrid'], 'Mirai' => ['Sedan', 'Fuel Cell'], 'Fit' => ['Sedan'], 'B-Class' => ['Sedan', 'Hybrid'], 'Tucson EV' => ['SUV', 'Fuel Cell']];
     # For each car, insert into it its tags from above
     foreach ($cars as $model => $tags) {
         $car = \App\Car::where('model', 'like', $model)->first();
         foreach ($tags as $tagName) {
             $tag = \App\Tag::where('name', 'LIKE', $tagName)->first();
             $car->tags()->save($tag);
         }
     }
 }
예제 #5
0
 public function update(Request $request, $id)
 {
     //
     $car = Car::find($id);
     $imgs = $car->picture;
     $icone = $car->icon_finition;
     if (Input::hasFile('picture')) {
         $tab = json_decode($imgs);
         foreach ($tab as $t) {
             unlink(base_path("uploads/" . $t));
         }
         $images = Input::file('picture');
         $imgs = json_encode($this->getNewImg($images));
         $this->updateManifest();
     }
     if (Input::hasFile('icon_finition')) {
         unlink(base_path("uploads/" . $icone));
         $images = Input::file('icon_finition');
         $imgs = json_encode($this->getNewImg($images));
         $this->updateManifest();
     }
     Car::where('id', $id)->update(['finition' => $request->finition, 'icon_finition' => $icone, 'description' => $request->description, 'consommation' => $request->consommation, 'picture' => $imgs, 'video' => $request->video, 'basic_price' => $request->basic_price, 'test_drive' => $request->test_drive]);
     $tab_new_options = $request->tab_option;
     $tab_old_options = $request->tab_old_option;
     if (!empty($tab_new_options)) {
         $options = explode('-', $tab_new_options);
         //--ADD TO PRICE TABLE
         foreach ($options as $option) {
             if ($option != '0' && is_numeric(intval($option))) {
                 $v = intval($option);
                 $new_price = 'price-' . $option;
                 if (isset($request->{$new_price})) {
                     DB::insert('insert into option_cars (car_id,option_id,option_price) values (?,?,?)', [$id, $v, $request->{$new_price}]);
                 }
             }
         }
     }
     if (!empty($tab_old_options)) {
         $options = explode('-', $tab_old_options);
         //--ADD TO PRICE TABLE
         foreach ($options as $option) {
             if ($option != '0' && is_numeric(intval($option))) {
                 $v = intval($option);
                 $new_price = 'price-' . $option;
                 if (isset($request->{$new_price})) {
                     OptionCar::where('car_id', $id)->where('option_id', $option)->update(['option_price' => $request->{$new_price}]);
                 }
             }
         }
     }
     return redirect(route('carEdit', $id));
 }
예제 #6
0
 /**
  * Show the form for creating a new resource.
  *
  * @return Response
  */
 public function form($type)
 {
     $requesters = Requester::all();
     $allowances = Allowance::all();
     $drivers = User::where('user_type_id', 4)->get();
     $cars = Car::where('status', 3)->get();
     if ($type == 1) {
         $uDts = User::where('user_type_id', 1)->get();
         $match = ['user_type_id' => 1, 'subtype' => 3];
         $uReport = User::where($match)->get();
         $gDts = Group::where('type', 1)->get();
         return view('admin.ots.formdt', compact('requesters', 'allowances', 'uDts', 'gDts', 'uReport', 'drivers', 'cars'));
     } elseif ($type == 2) {
         $gAsrs = Group::where('type', 2)->get();
         $uAsrs = User::where('user_type_id', 2)->get();
         return view('admin.ots.formAsr', compact('requesters', 'allowances', 'uAsrs', 'gAsrs', 'drivers', 'cars', 'jefe'));
     } elseif ($type == 3) {
         $uDts = User::where('user_type_id', 1)->get();
         $match = ['user_type_id' => 1, 'subtype' => 3];
         $uReport = User::where($match)->get();
         $gDts = Group::where('type', 1)->get();
         return view('admin.ots.formBch', compact('requesters', 'allowances', 'uDts', 'gDts', 'uReport', 'drivers', 'cars'));
     }
 }
예제 #7
0
 public function getCar()
 {
     $query = Input::get('name');
     $searchValues = preg_split('/\\s+/', $query);
     // split on 1+ whitespace
     $res = Car::where(function ($q) use($searchValues) {
         foreach ($searchValues as $value) {
             $q->orWhere('brand', 'like', "%{$value}%")->orWhere('plates', 'like', "%{$value}%")->orWhere('description', 'like', "%{$value}%");
         }
     })->get();
     return response()->json($res);
 }
예제 #8
0
 public function purchaseCar()
 {
     $user = Auth::user();
     $radioButton = Input::get('radio');
     if ($radioButton == 'Nissan Micra') {
         $car = Car::where('name', '=', 'Nissan Micra')->first();
         if ($user->money >= $car->price) {
             $user->money -= $car->price;
             $user->assignCar($car);
             $user->save();
             session()->flash('flash_message', 'You bought the item!');
             return redirect('/shop');
         } else {
             session()->flash('flash_message_important', 'Not Enough Money!');
             return redirect('/shop');
         }
     } elseif ($radioButton == 'Peugeot 107') {
         $car = Car::where('name', '=', 'Peugeot 107')->first();
         if ($user->money >= $car->price) {
             $user->money -= $car->price;
             $user->assignCar($car);
             $user->save();
             session()->flash('flash_message', 'You bought the item!');
             return redirect('/shop');
         } else {
             session()->flash('flash_message_important', 'Not Enough Money!');
             return redirect('/shop');
         }
     } elseif ($radioButton == 'Fiat Punto') {
         $car = Car::where('name', '=', 'Fiat Punto')->first();
         if ($user->money >= $car->price) {
             $user->money -= $car->price;
             $user->assignCar($car);
             $user->save();
             session()->flash('flash_message', 'You bought the item!');
             return redirect('/shop');
         } else {
             session()->flash('flash_message_important', 'Not Enough Money!');
             return redirect('/shop');
         }
     } elseif ($radioButton == 'Mini Cooper S') {
         $car = Car::where('name', '=', 'Mini Cooper S')->first();
         if ($user->money >= $car->price) {
             $user->money -= $car->price;
             $user->assignCar($car);
             $user->save();
             session()->flash('flash_message', 'You bought the item!');
             return redirect('/shop');
         } else {
             session()->flash('flash_message_important', 'Not Enough Money!');
             return redirect('/shop');
         }
     } elseif ($radioButton == 'Vauxhall Insignia') {
         $car = Car::where('name', '=', 'Vauxhall Insignia')->first();
         if ($user->money >= $car->price) {
             $user->money -= $car->price;
             $user->assignCar($car);
             $user->save();
             session()->flash('flash_message', 'You bought the item!');
             return redirect('/shop');
         } else {
             session()->flash('flash_message_important', 'Not Enough Money!');
             return redirect('/shop');
         }
     } elseif ($radioButton == 'Audi A3') {
         $car = Car::where('name', '=', 'Audi A3')->first();
         if ($user->money >= $car->price) {
             $user->money -= $car->price;
             $user->assignCar($car);
             $user->save();
             session()->flash('flash_message', 'You bought the item!');
             return redirect('/shop');
         } else {
             session()->flash('flash_message_important', 'Not Enough Money!');
             return redirect('/shop');
         }
     } elseif ($radioButton == 'BMW 1 Series M Sport') {
         $car = Car::where('name', '=', 'BMW 1 Series M Sport')->first();
         if ($user->money >= $car->price) {
             $user->money -= $car->price;
             $user->assignCar($car);
             $user->save();
             session()->flash('flash_message', 'You bought the item!');
             return redirect('/shop');
         } else {
             session()->flash('flash_message_important', 'Not Enough Money!');
             return redirect('/shop');
         }
     } elseif ($radioButton == 'Audi RS7') {
         $car = Car::where('name', '=', 'Audi RS7')->first();
         if ($user->money >= $car->price) {
             $user->money -= $car->price;
             $user->assignCar($car);
             $user->save();
             session()->flash('flash_message', 'You bought the item!');
             return redirect('/shop');
         } else {
             session()->flash('flash_message_important', 'Not Enough Money!');
             return redirect('/shop');
         }
     } elseif ($radioButton == 'Ferrari 599 GTB Fiorano') {
         $car = Car::where('name', '=', 'Ferrari 599 GTB Fiorano')->first();
         if ($user->money >= $car->price) {
             $user->money -= $car->price;
             $user->assignCar($car);
             $user->save();
             session()->flash('flash_message', 'You bought the item!');
             return redirect('/shop');
         } else {
             session()->flash('flash_message_important', 'Not Enough Money!');
             return redirect('/shop');
         }
     } elseif ($radioButton == 'Mercedes-Benz SLR McLaren') {
         $car = Car::where('name', '=', 'Mercedes-Benz SLR McLaren')->first();
         if ($user->money >= $car->price) {
             $user->money -= $car->price;
             $user->assignCar($car);
             $user->save();
             session()->flash('flash_message', 'You bought the item!');
             return redirect('/shop');
         } else {
             session()->flash('flash_message_important', 'Not Enough Money!');
             return redirect('/shop');
         }
     } elseif ($radioButton == 'Bugatti Veyron') {
         $car = Car::where('name', '=', 'Bugatti Veyron')->first();
         if ($user->money >= $car->price) {
             $user->money -= $car->price;
             $user->assignCar($car);
             $user->save();
             session()->flash('flash_message', 'You bought the item!');
             return redirect('/shop');
         } else {
             session()->flash('flash_message_important', 'Not Enough Money!');
             return redirect('/shop');
         }
     } else {
         session()->flash('flash_message_important', 'You Failed To Purchase The Item!!');
         return redirect('/shop');
     }
 }
예제 #9
0
 /**
  * Update a car
  *
  * @param $id, $request
  * @return update result
  */
 public function update($id, $request)
 {
     return Car::where('id', $id)->update($request);
 }
예제 #10
0
 /**
  * Update the specified resource in storage.
  *
  * @param  int  $id
  * @param  CarRequest $request
  * @return Response
  */
 public function update($id, CarRequest $request)
 {
     $car = Car::where('id', '=', $id)->firstOrFail();
     $car->update($request->all());
     return redirect('car');
 }
예제 #11
0
 /**
  * --------------------------------
  * Search Car by Year Model, Manufacturer Name and Manufacturer Code
  * --------------------------------
  * URL: /cars/search/{string}
  * @param $str
  * @return mixed
  *
  */
 public function search($str)
 {
     return Car::where(function ($query) use($str) {
         $query->where('Model_Year', 'LIKE', '%' . $str . '%')->orWhere('Vehicle_Manufacturer_Name', 'LIKE', '%' . $str . '%')->orWhere('Veh_Mfr_Code', 'LIKE', '%' . $str . '%');
     })->get();
 }