PracticeManagementController.php 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Models\AppSession;
  4. use App\Models\Client;
  5. use Illuminate\Http\Request;
  6. class PracticeManagementController extends Controller
  7. {
  8. public function dashboard(Request $request)
  9. {
  10. return view('app.practice-management.dashboard');
  11. }
  12. public function rates(Request $request)
  13. {
  14. return view('app.practice-management.rates');
  15. }
  16. public function previousBills(Request $request)
  17. {
  18. return view('app.practice-management.previous-bills');
  19. }
  20. public function financialTransactions(Request $request)
  21. {
  22. return view('app.practice-management.financial-transactions');
  23. }
  24. public function pendingBillsToSign(Request $request)
  25. {
  26. return view('app.practice-management.pending-bills-to-sign');
  27. }
  28. public function HR(Request $request)
  29. {
  30. return view('app.practice-management.hr');
  31. }
  32. public function directDepositSettings(Request $request)
  33. {
  34. return view('app.practice-management.direct-deposit-settings');
  35. }
  36. public function w9(Request $request)
  37. {
  38. return view('app.practice-management.w9');
  39. }
  40. public function contract(Request $request)
  41. {
  42. return view('app.practice-management.contract');
  43. }
  44. // video call page (RHS)
  45. // generic call handle (no uid)
  46. // specific call handle (uid of client)
  47. public function meet(Request $request, $uid = false) {
  48. $session = AppSession::where('session_key', $request->cookie('sessionKey'))->first();
  49. $pro = $session ? $session->pro() : null;
  50. $client = !empty($uid) ? Client::where('uid', $uid)->first() : null;
  51. return view('app.video.call', compact('session', 'pro', 'client'));
  52. }
  53. // ajax ep used by the video page
  54. // this is needed bcoz meet() is used not
  55. // just for the client passed to the view
  56. public function getOpentokSessionKey(Request $request, $uid) {
  57. $client = Client::where('uid', $uid)->first();
  58. return json_encode(["data" => $client ? $client->opentok_session_id : '']);
  59. }
  60. }