user() != null && auth()->user()->fireStationID != null ){ // $users = user::where("fireStationID", auth()->user()->fireStationID)->get(); // $users = DB::table('users')->where("fireStationID", '=', auth()->user()->fireStationID)->get(); $users = DB::table('users')->where("fireStationID", '=', auth()->user()->fireStationID) ->leftJoin('ranks', 'users.degreeID', '=', 'ranks.id') ->leftJoin('unitFunctions', 'users.functionID', '=', 'unitFunctions.id') ->select('users.id','users.name', 'users.surname', 'users.PESEL', 'users.email', 'users.statusID', 'ranks.rank', 'unitFunctions.unitFunction') ->paginate(10); return view("fireFighters", ["users" => $users]); } else{ return view('fireFighters'); } } public function addForm(){ if(auth()->user() != null && auth()->user()->fireStationID != null ){ $fireStation = fireStation::find(auth()->user()->fireStationID); if($fireStation-> creatorID == auth()->user()->id){ //return view('fireFightersAdd'); $ranks = DB::table('ranks')->pluck("rank","id"); $unitFunctions = DB::table('unitFunctions')->pluck("unitFunction","id"); return view('fireFightersAdd',compact('ranks'), compact('unitFunctions')); } else return fireFightersController::create(); } else return view("unit"); } public function editForm($id){ if(auth()->user() != null && auth()->user()->fireStationID != null ){ $userFireStation = auth()->user()->fireStationID; $fireFighterFireStation = DB::table('users')->where("id", $id)->value('fireStationID'); $fireStationCreatorId = DB::table('fireStations')->where("id", $userFireStation)->value('creatorID'); $fireFighter = DB::table('users')->where("id", $id)->first(); if($userFireStation == $fireFighterFireStation && auth()->user()->id == $fireStationCreatorId) { return view('fireFightersEdit', ["fireFighter" => $fireFighter]); } else{ return "Brak dostepu"; } }else{ return view('unit'); } } public function store(){ $this->validate(request(), [ 'name' => 'required|alpha|min:3|max:45', 'surname' => 'required|alpha|min:3|max:45', 'PESEL' => new Pesel, 'phoneNumber' => 'required|digits:9', 'email' => 'required|email|unique:users', 'rank' => 'required', 'unitFunction' => 'required', ], [ 'required' => ':attribute jest wymagany(e).', 'min' => ':attribute musi mieć przynajmniej :min znaki.', 'max' => ':attribute musi mieć nie więcej niż :max znaków.', 'alpha' => ':attribute może zawierać tylko litery.', 'alpha_num' => ':attribute może zawierać tylko litery i cyfry.', 'digits' => ':attribute musi składać się z :digits cyfr.', 'unique' =>':attribute jest już zajęty.', 'confirmed' =>':attribute się nie zgadza.', 'email' => 'Niepoprawny adres e-mail.' ]); $request = request(); $user = User::create([ 'password' => '123', 'email' => $request-> email, 'name' => $request-> name, 'surname' => $request-> surname, 'PESEL' => $request-> PESEL, 'phoneNumber' => $request-> phoneNumber, 'functionID' => $request-> unitFunction, 'degreeID' => $request-> rank, 'number' => 'ABC123', 'fireStationID' => auth()->user()->fireStationID, 'creatorID' => auth()->user()-> id, 'changingID' => auth()->user()-> id ]); return fireFightersController::create(); } public function update(){ $this->validate(request(), [ 'name' => 'required|alpha|min:3|max:45', 'surname' => 'required|alpha|min:3|max:45', 'PESEL' => new Pesel, 'phoneNumber' => 'required|digits:9', ], [ 'required' => ':attribute jest wymagany(e).', 'min' => ':attribute musi mieć przynajmniej :min znaki.', 'max' => ':attribute musi mieć nie więcej niż :max znaków.', 'alpha' => ':attribute może zawierać tylko litery.', 'alpha_num' => ':attribute może zawierać tylko litery i cyfry.', 'digits' => ':attribute musi składać się z :digits cyfr.', 'unique' =>':attribute jest już zajęty.', 'confirmed' =>':attribute się nie zgadza.', 'email' => 'Niepoprawny adres e-mail.' ]); $request = request(); $fireFighter = User::find( $request->userID); $fireFighter-> name = $request->name; $fireFighter-> surname = $request->surname; $fireFighter-> PESEL = $request->PESEL; $fireFighter-> phoneNumber = $request->phoneNumber; $fireFighter->save(); return fireFightersController::create(); } }