GuestController.php 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Lib\Backend;
  4. use App\Models\Meeting;
  5. use App\Models\MeetingParticipant;
  6. use Illuminate\Http\Request;
  7. use App\Models\Pro;
  8. use Illuminate\Support\Facades\Cookie;
  9. use Illuminate\Support\Facades\DB;
  10. class GuestController extends Controller
  11. {
  12. public function join(Request $request) {
  13. return view('join');
  14. }
  15. public function processJoin(Request $request) {
  16. $api = new Backend();
  17. try {
  18. $apiResponse = $api->post('client/createAsGuest', [
  19. 'nameFirst' => $request->post('nameFirst'),
  20. 'nameLast' => $request->post('nameLast'),
  21. 'dob' => $request->post('dob'),
  22. 'medicareNumber' => $request->post('medicareNumber'),
  23. 'cellNumber' => $request->post('cellNumber'),
  24. 'emailAddress' => $request->post('emailAddress'),
  25. ]);
  26. $data = json_decode($apiResponse->getContents());
  27. if (!property_exists($data, 'success') || !$data->success) {
  28. return back()->with('message', $data->message)
  29. ->withInput($request->input());
  30. }
  31. Cookie::queue('sessionKey', $data->data->sessionKey);
  32. Cookie::queue('clientUid', $data->data->clientUid);
  33. return redirect('/client/dashboard');
  34. } catch (\Exception $e) {
  35. return redirect()->back()->with('message', $e->getMessage());
  36. }
  37. }
  38. public function checkin(Request $request) {
  39. return view('checkin');
  40. }
  41. public function meet(Request $request) {
  42. return view('meet', [
  43. 'guest' => true
  44. ]);
  45. }
  46. public function dashboard(Request $request) {
  47. $clientUid = $request->cookie('clientUid');
  48. $client = DB::table('client')->where('uid', $clientUid)->first();
  49. return view('client-dashboard', [
  50. "client" => $client
  51. ]);
  52. }
  53. public function getCheckinToken(Request $request, $uid) {
  54. $client = DB::table('client')->where('uid', $uid)->first();
  55. return json_encode([
  56. "data" => $client->check_in_token
  57. ]);
  58. }
  59. }