Example #1
0
 /**
  * POST /api/login
  */
 public function login()
 {
     // Get all data send in post
     $loginFormData = Request::all();
     // Create rules for the validator
     $validator = Validator::make($loginFormData, ['user_email' => 'required|email', 'user_password' => 'required']);
     // If validator fails return a 404 response
     if ($validator->fails()) {
         return Response::json(['status_code' => 404, 'errors' => $validator->errors()->all()], 404);
     }
     $user = User::where('email', '=', strtolower($loginFormData['user_email']))->first();
     if (!$user) {
         return Response::json(['status_code' => 404, 'errors' => ['Votre compte est introuvable dans notre base de donnée.']], 404);
     } else {
         if ($user->activated == 0) {
             return Response::json(['status_code' => 404, 'errors' => ["Merci d'activer votre compte."]], 404);
         } else {
             if (!Hash::check($loginFormData['user_password'], $user->password)) {
                 return Response::json(['status_code' => 404, 'errors' => ["Votre mot de passe est incorrect."]], 404);
             }
         }
     }
     $room = Room::find($user->room_id);
     $partner = User::find($user->is_partner ? $room->user_id : $room->partner_id);
     if ($partner->activated == 0) {
         return Response::json(['status_code' => 404, 'errors' => ["Le compte de votre partenaire n'a pas été activé."]], 404);
     }
     // Success
     return Response::json(['status_code' => 200, 'success' => "Login success", 'data' => ['me' => $user, 'partner' => $partner, 'room' => $room]]);
 }
 public function saveReservation(Request $request)
 {
     $reservation = new Reservation();
     if (!$request->input('locator_id') || !Locator::find($request->input('locator_id'))) {
         return response('Lokator nie został sprecyzowany', 500)->header('Content-Type', 'text/html; charset=utf-8');
     }
     if (!$request->input('rooms')) {
         return response('Pokoje nie zostały sprecyzowane', 500)->header('Content-Type', 'text/html; charset=utf-8');
     }
     foreach ($request->input('rooms') as $room) {
         if (!Room::find($room)) {
             return response('Pokój o numerze ' . $room . ' nie jest zdefiniowany w bazie danych.', 500)->header('Content-Type', 'text/html; charset=utf-8');
         }
     }
     $reservation->locator_id = $request->input('locator_id');
     $reservation->reservation_time = date('Y-m-d H:i:sZ', time());
     $reservation->since = $request->input('since');
     $reservation->till = $request->input('till');
     $reservation->is_paid = $request->input('is_paid');
     $reservation->dinners_count = $request->input('dinners_count');
     $reservation->people_count = $request->input('people_count');
     $reservation->save();
     $reservation->rooms()->sync($request->input('rooms'));
     $reservation->save();
     return response()->json($reservation);
 }
Example #3
0
 public function delete_room($room_id)
 {
     $room = Room::find($room_id);
     $url = "manage/bases/" . $room->base->id;
     $room->delete();
     return redirect($url);
 }
 /**
  * Execute the console command.
  *
  * @return mixed
  */
 public function handle()
 {
     $this->info($this->argument('room'));
     $room = Room::find($this->argument('room'));
     $room->heatingsince = Carbon::now();
     $room->save();
     $process = new Process('php /var/www/artisan temperatures:check');
     $process->run();
 }
 /**
  * Update the specified resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function update(Request $request, $buildingId, $roomId)
 {
     $this->validate($request, ['name' => 'required|max:255', 'room_sn' => 'required|max:255', 'water_degree' => 'required|numeric', 'electric_degree' => 'required|numeric'], ['required' => 'The :attribute field is required', 'numeric' => 'The :attribute field must be numeric', 'max' => 'The length of :attribute can not bigger than 255']);
     //
     $room = Room::find($roomId);
     $input = $request->all();
     $room->fill($input);
     if (!$room->save()) {
         abort(500, 'Could not save building');
     }
     return $room;
 }
Example #6
0
 public function update($roomId)
 {
     $request = json_decode(request()->getContent());
     $rules = array('name' => 'required', 'capacity' => 'required', 'status' => 'required');
     $validation = Validator::make((array) $request, $rules);
     if ($validation->fails()) {
         return response()->json(array('error' => true, 'message' => $validation->errors()->all(), 200));
     }
     $room = Room::find($roomId);
     $room->name = $request->name;
     $room->capacity = abs($request->capacity);
     $room->status = $request->status;
     $updated = $room->save();
     return response()->json(array('error' => !$updated, 'rooms' => $room->toArray()), $updated ? 200 : 500);
 }
 public function updateRoom(Request $request, $number)
 {
     $room = Room::find($number);
     if (!$room) {
         return response('Pokój nie został odnaleziony.', 404)->header('Content-Type', 'text/html; charset=utf-8');
     }
     if ($request->input('number')) {
         $room->number = $request->input('number');
     }
     if ($request->input('capacity')) {
         $room->capacity = $request->input('capacity');
     }
     $room->save();
     return response()->json($room);
 }
Example #8
0
 /**
  * Get the validation rules that apply to the request.
  *
  * @return array
  */
 public function rules()
 {
     $room = Room::find($this->rooms);
     switch ($this->method()) {
         case 'GET':
         case 'DELETE':
             return [];
         case 'POST':
             return ['building_id' => 'required|integer', 'code' => 'required|unique:rooms|max:20', 'name' => 'required|max:254', 'capacity' => 'integer|min:5'];
         case 'PUT':
         case 'PATCH':
             return ['building_id' => 'required|integer', 'code' => "required|unique:rooms,code,{$room->id}|max:20", 'name' => 'required|max:254', 'capacity' => 'integer|min:5'];
         default:
             break;
     }
 }
 /**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store(Request $request)
 {
     $input = $request->all();
     $currentOccupants = [];
     $rooms = Room::all();
     $reservations_count = Reservation::where('room_id', $input['room_id'])->where('status', 'accepted')->where('start_date', '<=', [$input['start_date']])->where('end_date', '>=', [$input['end_date']])->count();
     $room = Room::find($input['room_id']);
     foreach ($rooms as $index => $roomz) {
         $currentOccupants[$index] = Reservation::where('room_id', $roomz->id)->where('status', 'accepted')->where('start_date', '<=', [$input['start_date']])->where('end_date', '>=', [$input['end_date']])->count();
     }
     $all_table = Room::where('availability', 'vacant')->get();
     if ($reservations_count == $room->pax) {
         return view('reservations.error')->with(compact('input', 'all_table', 'currentOccupants'));
     }
     $person = new Person();
     $person->unique_id = $this->quickRandom();
     $person->first_name = $request->input('first_name');
     $person->last_name = $request->input('last_name');
     $person->address = $request->input('address');
     $person->email = $request->input('email');
     $person->phone = $request->input('phone');
     if ($person->save()) {
         $reservation = new Reservation();
         $reservation->person_id = $person->id;
         $reservation->status = Reservation::STATUS_PENDING;
         $reservation->price = Room::find((int) $request->input('room_id'))->price;
         $reservation->notes = $request->input('notes');
         $reservation->start_date = $request->input('start_date');
         $reservation->end_date = $request->input('end_date');
         $reservation->room_id = (int) $request->input('room_id');
         if ($reservation->save()) {
             return view('reservations.confirmation');
             //TODO redirect to a page with success message
         } else {
             return 'Fail reservation';
             //TODO redirect to a page with error message
         }
     } else {
         return 'Fail Person';
         //TODO redirect to a page with error message
     }
 }
 public function updateTimeoff(Request $request, $number)
 {
     $timeoff = Timeoff::find($number);
     if (!$timeoff) {
         return response('Przerwa techniczna nie została odnaleziona.', 404)->header('Content-Type', 'text/html; charset=utf-8');
     }
     if ($request->input('room_id') && !Room::find($request->input('room_id'))) {
         return response('Pokój, któgo przerwa dotyczy nie istnieje w bazie.', 500);
     }
     if ($request->input('room_id')) {
         $timeoff->room_id = $request->input('room_id');
     }
     if ($request->input('since')) {
         $timeoff->since = $request->input('since');
     }
     if ($request->input('till')) {
         $timeoff->till = $request->input('till');
     }
     $timeoff->save();
     return response()->json($timeoff);
 }
Example #11
0
 /**
  * Remove the specified resource from storage.
  *
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function destroy($id, Request $request)
 {
     $this->validate($request, ['room_id' => 'required|numeric', 'water_degree' => 'required|numeric', 'electric_degree' => 'required|numeric'], ['required' => 'The :attribute field is required', 'numeric' => 'The :attribute field must be numeric']);
     $deleteInput = $request->all();
     $room = Room::find($deleteInput['room_id']);
     $contract = Contract::find($id);
     $feeplancount = FeePlan::where("rent_id", $id)->where('status', 0)->count();
     if ($feeplancount > 0) {
         $ret['status'] = -1;
         $ret['desc'] = '该租户还有欠款为付清,无法终止合同。如中途退出,请联系主管,先走特殊费用终止流程!';
         return $ret;
     } else {
         try {
             DB::beginTransaction();
             $room['water_degree'] = $deleteInput['water_degree'];
             $room['electric_degree'] = $deleteInput['electric_degree'];
             if (!$room->save()) {
                 abort(500, 'Destroy failed');
             }
             $contract['end_water_degree'] = $deleteInput['water_degree'];
             $contract['end_electric_degree'] = $deleteInput['electric_degree'];
             $realendtime = new \DateTime();
             $realEndTimeStr = $realendtime->format('Y-m-d');
             $contract['real_end_time'] = $realEndTimeStr;
             if (!$contract->save()) {
                 abort(500, 'Destroy failed');
             }
             DB::commit();
         } catch (Exception $exception) {
             DB::rollBack();
             abort(500, 'Destroy failed');
         }
         $ret['status'] = Contract::destroy($id);
         return $ret;
     }
 }
Example #12
0
 public function store_class(Requests\CreateClassFormRequest $request)
 {
     if ($request->id == -1) {
         $class = new StudyClass();
     } else {
         $class = StudyClass::find($request->id);
     }
     $class->datestart = date('Y-m-d', strtotime($request->datestart));
     $class->name = $request->name;
     $class->room_id = $request->room_id;
     $class->base_id = Room::find($class->room_id)->base->id;
     $class->description = $request->description;
     $class->gen_id = $request->gen_id;
     $class->target = $request->target;
     $class->regis_target = $request->regis_target;
     $class->course_id = $request->course_id;
     $class->teaching_assistant_id = $request->teaching_assistant_id;
     $class->teacher_id = $request->teacher_id;
     $class->study_time = $request->study_time;
     $class->status = $request->status == null ? 0 : 1;
     $class->save();
     return redirect('manage/classes');
 }
Example #13
0
 /**
  * Responds to requests to POST /rooms/delete/
  */
 public function postDoDelete(Request $request)
 {
     $this->validate($request, ['delete_id' => 'required|integer']);
     $user = \Auth::user();
     $delete_room = \App\Room::find($request->delete_id);
     $reservations = \App\Reservation::where('room_id', $delete_room->id)->get();
     $timeslots = \App\Timeslot::where('room_id', $delete_room->id)->get();
     if ($user->user_role == 'admin') {
         foreach ($reservations as $reservation) {
             $reservation->delete();
         }
         foreach ($timeslots as $timeslot) {
             $timeslot->delete();
         }
         $delete_room->delete();
         \Session::flash('flash_message', $delete_room->room_name . ' has been deleted.');
         return redirect('/rooms');
     } else {
         \Session::flash('flash_message', 'You don&#39;t have the previlege to delete this room.');
         return redirect('/rooms');
     }
 }
 /**
  * Update the specified resource in storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function update($id)
 {
     //
     $v = Validator::make(Request::all(), ['name' => 'required|max:50', 'spot_id' => 'required', 'event_id' => 'required']);
     if ($v->fails()) {
         return redirect()->back()->withErrors($v->errors())->withInput();
     } else {
         $id = Request::get('id');
         $room = Room::find($id);
         $room->name = Request::get('name');
         $room->desc = Request::get('desc');
         $room->spot_id = Request::get('spot_id');
         $room->event_id = Request::get('event_id');
         $room->save();
         return redirect('rooms');
     }
 }
 /**
  * save room update details
  *
  * @param Request $request
  */
 public function admin_save_room_update_details(Request $request)
 {
     $room = Room::find($request->input('id'));
     $room->room_num = $request->input('rnum');
     $room->room_size = $request->input('rsize');
     //$room->sequence_num = $request->input('max');
     $room->room_type_id = $request->input('rtype');
     $room->status = $request->input('rstatus');
     $room->remarks = $request->input('rremarks');
     $room->save();
 }
Example #16
0
 public static function saveCustomerReservationDetails($data)
 {
     //dd($data->all());
     $getReferenceNumber = new Reservation();
     $rooms = explode(',', $data->get('rooms'));
     $customer = Customer::whereEmail($data->get('email'))->first();
     $total_capacity = 0;
     $total_person = $data->get('no_of_adult') + $data->get('no_of_child');
     foreach ((array) $rooms as $rm) {
         $rms = Room::find($rm);
         $categories = Category::find($rms->category_id);
         if (count($categories) > 0) {
             $total_capacity += $categories->max_capacity;
         }
     }
     if ($total_capacity < $total_person) {
         return redirect()->back()->with('message', 'You exceeded the max capacity of the rooms');
     } else {
         if (count($customer) == 0) {
             $customer = new Customer();
             $customer->name = ucfirst(strtolower($data->get('first_name'))) . ' ' . ucfirst(strtolower($data->get('last_name')));
             $customer->address = $data->get('address');
             $customer->email = $data->get('email');
             $customer->contact_number = $data->get('contact');
             if ($customer->save()) {
                 $reservation = new Reservation();
                 $reservation->customer_id = $customer->id;
                 $reservation->reference_number = $getReferenceNumber->getReservationId();
                 $reservation->no_of_child = $data->get('no_of_child');
                 $reservation->no_of_adult = $data->get('no_of_adult');
                 $reservation->period = $data->get('period');
                 $reservation->status = 'RESERVED';
                 if ($reservation->save()) {
                     foreach ((array) $rooms as $room) {
                         $start_date = $data->get('start_date');
                         $end_date = $data->get('end_date');
                         # ROOM VISITOR
                         $start_date = date("Y-m-d", strtotime($start_date));
                         while (strtotime($start_date) < strtotime($end_date)) {
                             $reservation_room = new ReservationRoom();
                             $reservation_room->reservation_id = $reservation->id;
                             $reservation_room->room_id = $room;
                             $reservation_room->date_reserved = $start_date;
                             $reservation_room->save();
                             $start_date = date("Y-m-d", strtotime("+1 day", strtotime($start_date)));
                         }
                     }
                 }
             }
             Mail::send('emails.reservation_reference', ['customer' => $customer, 'reservation' => $reservation], function ($m) use($customer) {
                 $m->from('*****@*****.**', 'Overlook Resort (noreply)');
                 $m->to($customer->email, $customer->full_name())->subject('Here\'s your RESERVATION ID');
             });
             return redirect()->back()->with('message', 'Reservation was successful. We sent your reservation reference in your e-mail');
         }
         $reservation = new Reservation();
         $reservation->customer_id = $customer->id;
         $reservation->reference_number = $reservation->getReservationId();
         $reservation->no_of_child = $data->get('no_of_child');
         $reservation->no_of_adult = $data->get('no_of_adult');
         $reservation->period = $data->get('period');
         $reservation->status = 'Not Paid';
         if ($reservation->save()) {
             foreach ((array) $rooms as $room) {
                 $start_date = $data->get('start_date');
                 $end_date = $data->get('end_date');
                 # ROOM VISITOR
                 $start_date = date("Y-m-d", strtotime($start_date));
                 while (strtotime($start_date) < strtotime($end_date)) {
                     $reservation_room = new ReservationRoom();
                     $reservation_room->reservation_id = $reservation->id;
                     $reservation_room->room_id = $room;
                     $reservation_room->date_reserved = $start_date;
                     $reservation_room->save();
                     $start_date = date("Y-m-d", strtotime("+1 day", strtotime($start_date)));
                 }
             }
         }
         Mail::send('emails.reservation_reference', ['customer' => $customer, 'reservation' => $reservation], function ($m) use($customer) {
             $m->from('*****@*****.**', 'Overlook Resort (noreply)');
             $m->to($customer->email, $customer->full_name())->subject('Here\'s your RESERVATION ID');
         });
         return redirect()->back()->with('message', 'Reservation was successful. We sent your reservation reference in your e-mail');
     }
 }
Example #17
0
 public function enregistrer()
 {
     if (\Request::ajax()) {
         $salle_id = \Input::get('salle_id');
         $color = \Input::get('color');
         $time = \Input::get('time');
         $dayname = \Input::get('dayname');
         $cr_id = \Input::get('cr_id');
         $mat = \Input::get('matiere');
         $matiere_id = \Input::get('matiere_id');
         $ts = Timesheet::where('time', $time)->where('dayname', $dayname)->where('classroom_id', $cr_id)->where('user_id', \Auth::user()->id)->where('matter_id', '!=', 0)->first();
         if (isset($salle_id) && !empty($salle_id)) {
             if ($ts) {
                 $room = Room::find($salle_id);
                 $yes = DB::table('matter_room')->where('matter_id', $ts->matter_id)->where('room_id', $salle_id)->first();
                 if (!$yes) {
                     $room->matters()->attach([$ts->matter_id]);
                 }
             }
         }
         $livingDaylights = ['lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi'];
         $times = ['08:00:00', '09:00:00', '10:00:00', '11:00:00', '12:00:00', '13:00:00', '14:00:00', '15:00:00', '16:00:00', '17:00:00'];
         if ($dayname == 'lundi') {
             $ts = new Timesheet();
             $ts->lundi = $dayname;
             $ts->classroom_id = $cr_id;
             $ts->user_id = \Auth::user()->id;
             $ts->time = $time;
             $ts->matiere = $mat;
             $ts->matter_id = $matiere_id;
             $ts->color = $color;
             $ts->dayname = $dayname;
             $ts->room_id = $salle_id ?: 0;
             $ts->school_year_id = SchoolYear::getSchoolYearId();
             $ts->save();
         } elseif ($dayname == 'mardi') {
             $ts = new Timesheet();
             $ts->mardi = $dayname;
             $ts->classroom_id = $cr_id;
             $ts->user_id = \Auth::user()->id;
             $ts->time = $time;
             $ts->matiere = $mat;
             $ts->matter_id = $matiere_id;
             $ts->color = $color;
             $ts->dayname = $dayname;
             $ts->room_id = $salle_id ?: 0;
             $ts->school_year_id = SchoolYear::getSchoolYearId();
             $ts->save();
         } elseif ($dayname == 'mercredi') {
             $ts = new Timesheet();
             $ts->mercredi = $dayname;
             $ts->classroom_id = $cr_id;
             $ts->user_id = \Auth::user()->id;
             $ts->time = $time;
             $ts->matiere = $mat;
             $ts->matter_id = $matiere_id;
             $ts->color = $color;
             $ts->dayname = $dayname;
             $ts->room_id = $salle_id ?: 0;
             $ts->school_year_id = SchoolYear::getSchoolYearId();
             $ts->save();
         } elseif ($dayname == 'jeudi') {
             $ts = new Timesheet();
             $ts->jeudi = $dayname;
             $ts->classroom_id = $cr_id;
             $ts->user_id = \Auth::user()->id;
             $ts->time = $time;
             $ts->matiere = $mat;
             $ts->matter_id = $matiere_id;
             $ts->color = $color;
             $ts->dayname = $dayname;
             $ts->room_id = $salle_id ?: 0;
             $ts->school_year_id = SchoolYear::getSchoolYearId();
             $ts->save();
         } elseif ($dayname == 'vendredi') {
             $ts = new Timesheet();
             $ts->vendredi = $dayname;
             $ts->classroom_id = $cr_id;
             $ts->user_id = \Auth::user()->id;
             $ts->time = $time;
             $ts->matiere = $mat;
             $ts->matter_id = $matiere_id;
             $ts->color = $color;
             $ts->dayname = $dayname;
             $ts->room_id = $salle_id ?: 0;
             $ts->school_year_id = SchoolYear::getSchoolYearId();
             $ts->save();
         } elseif ($dayname == 'samedi') {
             $ts = new Timesheet();
             $ts->samedi = $dayname;
             $ts->classroom_id = $cr_id;
             $ts->user_id = \Auth::user()->id;
             $ts->time = $time;
             $ts->matiere = $mat;
             $ts->matter_id = $matiere_id;
             $ts->color = $color;
             $ts->dayname = $dayname;
             $ts->room_id = $salle_id ?: 0;
             $ts->school_year_id = SchoolYear::getSchoolYearId();
             $ts->save();
         }
     }
 }
Example #18
0
 /**
  * Responds to requests to GET /reservation/create
  */
 public function getCreate($room_id)
 {
     $rooms_for_dropdown = \App\Room::roomsForDropdown();
     $room = \App\Room::find($room_id);
     return view('reservations.create')->with('rooms_for_dropdown', $rooms_for_dropdown)->with('room', $room);
 }