GuestController.php 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  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. 'phoneNumber' => $request->post('phoneNumber'),
  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 processCheckin(Request $request) {
  42. $api = new Backend();
  43. try {
  44. $apiResponse = $api->post('session/clientCheckInTokenLogIn', [
  45. 'checkInToken' => $request->post('checkInToken'),
  46. 'dob' => $request->post('dob'),
  47. ]);
  48. $data = json_decode($apiResponse->getContents());
  49. if (!property_exists($data, 'success') || !$data->success) {
  50. return back()->with('message', $data->message)
  51. ->withInput($request->input());
  52. }
  53. Cookie::queue('sessionKey', $data->data->sessionKey);
  54. Cookie::queue('clientUid', $data->data->clientUid);
  55. return redirect('/client/dashboard');
  56. } catch (\Exception $e) {
  57. return redirect()->back()->with('message', $e->getMessage());
  58. }
  59. }
  60. public function meet(Request $request) {
  61. return view('meet', [
  62. 'guest' => true
  63. ]);
  64. }
  65. public function dashboard(Request $request) {
  66. $clientUid = $request->cookie('clientUid');
  67. $client = DB::table('client')->where('uid', $clientUid)->first();
  68. return view('client-dashboard', [
  69. "client" => $client
  70. ]);
  71. }
  72. public function getCheckinToken(Request $request, $uid) {
  73. $client = DB::table('client')->where('uid', $uid)->first();
  74. return json_encode([
  75. "data" => $client->check_in_token
  76. ]);
  77. }
  78. }