model = $model; } public function getAll() { return $this->model::all(); } public function get($uuid) { return $this->model::where("uuid", $uuid)->first(); } public function edit($request) { //get member to edit $member = $this->get($request->id); //save new avi if available $publicPath = '../public/'; $refPath = 'assets/images/members/' . $member->uuid; if ($request->hasfile("fresh_avi")) { $file = $request->fresh_avi; if (!is_dir($publicPath . $refPath)) { mkdir($publicPath . $refPath, 0755, true); } $filename = urlencode($file->getClientOriginalName()); $file->move($publicPath . $refPath, $filename); $freshAvi = '/' . $refPath . '/' . $filename; $member->avatar = $freshAvi; } $member->handle = $request->handle; $member->email = $request->email; $member->pronoun = $request->pronouns; $member->role = $request->role; $member->active = $request->status; if ($member->save()) { return ['status' => true, 'message' => "Member Editited"]; } else { return ['status' => false, 'message' => "Member Not Editited"]; } } public function add($request) { $password = []; if ($request->fresh_pass === $request->fresh_pass_confirm) { $password = Hash::make($request->fresh_pass); } else { return ['status' => false, 'message' => "Passwords Do Not Match"]; } $newFriend = $this->model::create([ 'uuid' => Uuid::uuid4(), 'avatar' => 'default-member-avatar', 'handle' => $request->handle, 'email' => $request->email, 'pronoun' => $request->pronouns, 'role' => $request->role, 'active' => $request->status, 'password' => $password, 'created_at' => Carbon::now(), 'last_login' => Carbon::now(), ]); if ($newFriend) { return ['status' => true, 'message' => "New Friend Made!"]; } else { return ['status' => false, 'message' => "Uh oh, New Friend Delay!"]; } } public function editProfile($request) { //get member to edit $member = $this->get($request->id); //save new avi if available $publicPath = '../public/'; $refPath = 'assets/images/members/' . $member->uuid; if ($request->hasfile("fresh_avi")) { $file = $request->fresh_avi; if (!is_dir($publicPath . $refPath)) { mkdir($publicPath . $refPath, 0755, true); } $filename = urlencode($file->getClientOriginalName()); $file->move($publicPath . $refPath, $filename); $freshAvi = '/' . $refPath . '/' . $filename; $member->avatar = $freshAvi; } //changing password if (isset($request->fresh_pass) && $request->fresh_pass !== '') { if ($request->fresh_pass === $request->fresh_pass_confirm) { $member->password = Hash::make($request->fresh_pass); } else { return ['status' => false, 'message' => "Passwords Do Not Match"]; } } $member->handle = $request->handle; $member->email = $request->email; $member->pronoun = $request->pronouns; if ($member->save()) { return ['status' => true, 'message' => "Profile Editited"]; } else { return ['status' => false, 'message' => "Profile Not Editited"]; } } }