Browse Source

fixed crud for pro access and pro rates

Josh 4 years ago
parent
commit
fd36510bb2
23 changed files with 681 additions and 43 deletions
  1. 24 0
      app/Http/Controllers/client_pro_access_Controller.php
  2. 49 0
      app/Http/Controllers/client_pro_access_SINGLE_Controller.php
  3. 12 0
      app/Http/Controllers/pro_rates_SINGLE_Controller.php
  4. 8 1
      app/Http/Controllers/pros_SINGLE_Controller.php
  5. 27 17
      generatecv/tree.txt
  6. 5 0
      resources/views/admin/client_pro_access/actions.blade.php
  7. 56 0
      resources/views/admin/client_pro_access/index.blade.php
  8. 3 0
      resources/views/admin/client_pro_access/info.blade.php
  9. 1 0
      resources/views/admin/client_pro_access/subs.blade.php
  10. 20 0
      resources/views/admin/client_pro_access/view.blade.php
  11. 41 0
      resources/views/admin/client_pro_access_SINGLE/ACTION_deactivate.blade.php
  12. 41 0
      resources/views/admin/client_pro_access_SINGLE/ACTION_reactivate.blade.php
  13. 41 0
      resources/views/admin/client_pro_access_SINGLE/ACTION_updateDeactivationMemo.blade.php
  14. 41 0
      resources/views/admin/client_pro_access_SINGLE/ACTION_updateReactivationMemo.blade.php
  15. 45 0
      resources/views/admin/client_pro_access_SINGLE/ACTION_updateReason.blade.php
  16. 41 0
      resources/views/admin/client_pro_access_SINGLE/SUB_dashboard.blade.php
  17. 3 1
      resources/views/admin/pro_rates/actions.blade.php
  18. 41 0
      resources/views/admin/pro_rates_SINGLE/ACTION_deactivate.blade.php
  19. 41 0
      resources/views/admin/pro_rates_SINGLE/ACTION_reactivate.blade.php
  20. 60 0
      resources/views/admin/pros_SINGLE/ACTION_pro_accessAddNew.blade.php
  21. 55 1
      resources/views/admin/pros_SINGLE/SUB_pro_access.blade.php
  22. 7 7
      resources/views/layouts/generated-links.blade.php
  23. 19 16
      routes/generated.php

+ 24 - 0
app/Http/Controllers/client_pro_access_Controller.php

@@ -0,0 +1,24 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\DB;
+use Illuminate\Support\Facades\Auth;
+
+class client_pro_access_Controller extends Controller
+{
+    public $selfName = 'client_pro_access_Controller';
+    public $dashboardName = 'dashboard';
+
+	// GET /client_pro_access
+	public function index(Request $request) {
+		$records = DB::table('client_pro_access')->get();
+		return response()->view('admin/client_pro_access/index', compact('records'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+
+	// GET /client_pro_access/view/{uid}
+	public function view(Request $request, $uid) {
+		return redirect("/client_pro_access/view/$uid/SUB_dashboard");
+	}
+}

+ 49 - 0
app/Http/Controllers/client_pro_access_SINGLE_Controller.php

@@ -0,0 +1,49 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\DB;
+use Illuminate\Support\Facades\Auth;
+
+class client_pro_access_SINGLE_Controller extends Controller
+{
+    public $selfName = 'client_pro_access_SINGLE_Controller';
+    public $dashboardName = 'dashboard';
+
+	// GET /client_pro_access/view/{uid}/ACTION_updateReason
+	public function ACTION_updateReason(Request $request, $uid) {
+		$record = DB::table('client_pro_access')->where('uid', $uid)->first();
+		return response()->view('admin/client_pro_access_SINGLE/ACTION_updateReason', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+
+	// GET /client_pro_access/view/{uid}/ACTION_deactivate
+	public function ACTION_deactivate(Request $request, $uid) {
+		$record = DB::table('client_pro_access')->where('uid', $uid)->first();
+		return response()->view('admin/client_pro_access_SINGLE/ACTION_deactivate', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+
+	// GET /client_pro_access/view/{uid}/ACTION_updateDeactivationMemo
+	public function ACTION_updateDeactivationMemo(Request $request, $uid) {
+		$record = DB::table('client_pro_access')->where('uid', $uid)->first();
+		return response()->view('admin/client_pro_access_SINGLE/ACTION_updateDeactivationMemo', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+
+	// GET /client_pro_access/view/{uid}/ACTION_reactivate
+	public function ACTION_reactivate(Request $request, $uid) {
+		$record = DB::table('client_pro_access')->where('uid', $uid)->first();
+		return response()->view('admin/client_pro_access_SINGLE/ACTION_reactivate', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+
+	// GET /client_pro_access/view/{uid}/ACTION_updateReactivationMemo
+	public function ACTION_updateReactivationMemo(Request $request, $uid) {
+		$record = DB::table('client_pro_access')->where('uid', $uid)->first();
+		return response()->view('admin/client_pro_access_SINGLE/ACTION_updateReactivationMemo', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+
+	// GET /client_pro_access/view/{uid}/SUB_dashboard
+	public function SUB_dashboard(Request $request, $uid) {
+		$record = DB::table('client_pro_access')->where('uid', $uid)->first();
+		return response()->view('admin/client_pro_access_SINGLE/SUB_dashboard', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+}

+ 12 - 0
app/Http/Controllers/pro_rates_SINGLE_Controller.php

@@ -17,6 +17,18 @@ class pro_rates_SINGLE_Controller extends Controller
 		return response()->view('admin/pro_rates_SINGLE/ACTION_updateAmount', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
 	}
 
+	// GET /pro_rates/view/{uid}/ACTION_reactivate
+	public function ACTION_reactivate(Request $request, $uid) {
+		$record = DB::table('pro_rate')->where('uid', $uid)->first();
+		return response()->view('admin/pro_rates_SINGLE/ACTION_reactivate', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+
+	// GET /pro_rates/view/{uid}/ACTION_deactivate
+	public function ACTION_deactivate(Request $request, $uid) {
+		$record = DB::table('pro_rate')->where('uid', $uid)->first();
+		return response()->view('admin/pro_rates_SINGLE/ACTION_deactivate', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+
 	// GET /pro_rates/view/{uid}/SUB_dashboard
 	public function SUB_dashboard(Request $request, $uid) {
 		$record = DB::table('pro_rate')->where('uid', $uid)->first();

+ 8 - 1
app/Http/Controllers/pros_SINGLE_Controller.php

@@ -231,7 +231,8 @@ class pros_SINGLE_Controller extends Controller
 	// GET /pros/view/{uid}/SUB_pro_access
 	public function SUB_pro_access(Request $request, $uid) {
 		$record = DB::table('pro')->where('uid', $uid)->first();
-		return response()->view('admin/pros_SINGLE/SUB_pro_access', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+		$subRecords = DB::table('client_pro_access')->where('pro_id', $record->id)->get();
+		return response()->view('admin/pros_SINGLE/SUB_pro_access', compact('record', 'subRecords'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
 	}
 
 	// GET /pros/view/{uid}/SUB_mcp_updates
@@ -305,4 +306,10 @@ class pros_SINGLE_Controller extends Controller
 		$record = DB::table('pro')->where('uid', $uid)->first();
 		return response()->view('admin/pros_SINGLE/ACTION_my_payment_scheduleAddNew', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
 	}
+
+	// GET /pros/view/{uid}/ACTION_pro_accessAddNew
+	public function ACTION_pro_accessAddNew(Request $request, $uid) {
+		$record = DB::table('pro')->where('uid', $uid)->first();
+		return response()->view('admin/pros_SINGLE/ACTION_pro_accessAddNew', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
 }

+ 27 - 17
generatecv/tree.txt

@@ -827,23 +827,6 @@ PRO
             dashboard
                 !grp:Med Profile Details:id,category,content_text,content_detail
     med_profile_line_updates|client_info_line_update|icon:window-restore
-    pro_access|client_pro_access|view|icon:arrow-alt-circle-right
-    pro_access/view/{uid}
-        ACTIONS
-            updateReason
-                reasonCategory=reason_category
-                reasonDetail=reason_detail
-            deactivate
-                memo
-            updateDeactivationMemo
-                memo=deactivation_memo
-            reactivate
-                memo
-            updateReactivationMemo
-                memo=reactivation_memo
-        SUB
-            dashboard
-                !grp:Bill Details:id,created_at,type,uid,bill_service_type,cm_expected_payment_amount,cm_or_rm,cm_payment_amount,code,collected_amount,effective_date,has_cm_been_paid,has_hcp_been_paid,has_rme_been_paid,has_rmm_been_paid,hcp_expected_payment_amount,hcp_payment_amount,is_cancelled,is_signed_by_cm,is_signed_by_hcp,is_signed_by_rme,is_signed_by_rmm,is_submitted,marked_cancelled_at,marked_submitted_at,modifier,number_of_units,reason1,reason2,reason3,reason3plus,rme_expected_payment_amount,rme_payment_amount,rmm_expected_payment_amount,rmm_payment_amount,service_location,signed_by_cm_at,signed_by_hcp_at,signed_by_rme_at,signed_by_rmm_at,created_by_session_id,care_month_id,client_id,cm_payment_pro_transaction_id,cm_pro_id,hcp_payment_pro_transaction_id,hcp_pro_id,marked_cancelled_by_session_id,marked_submitted_by_session_id,note_id,note_ally_id,rme_payment_pro_transaction_id,rme_pro_id,rmm_payment_pro_transaction_id,rmm_pro_id,signed_by_cm_session_id,signed_by_hcp_session_id,signed_by_rme_session_id,signed_by_rmm_session_id
     mcp_updates|client_mcp_update|icon:user-edit
     ally_updates|client_ally_update|icon:user-edit
 #   audit_log :: coming soon
@@ -1045,6 +1028,13 @@ ADMIN
                     amount:number
             clients
             pro_access
+                id=client_pro_access.pro_id=>/pro_access/view/UID
+                add_new:client_pro_access=>/pro_access/view/UID
+                    proUid:hidden=uid
+                    clientUid:record:client:uid,name_first
+                    reasonCategory
+                    reasonMemo
+                    reasonDetail
             mcp_updates
             ally_updates
             erx
@@ -1061,6 +1051,26 @@ ADMIN
         ACTIONS
             updateAmount
                 newAmount:number=amount
+            reactivate
+                memo
+            deactivate
+                memo
+        SUB
+            dashboard
+    client_pro_access|client_pro_access|view|icon:key
+    client_pro_access/view/{uid}
+        ACTIONS
+            updateReason
+                reasonCategory=reason_category
+                reasonDetail=reason_memo
+            deactivate
+                memo
+            updateDeactivationMemo
+                memo=deactivation_memo
+            reactivate
+                memo
+            updateReactivationMemo
+                memo=reactivation_memo
         SUB
             dashboard
     section_templates|section_template|add|icon:user-md

+ 5 - 0
resources/views/admin/client_pro_access/actions.blade.php

@@ -0,0 +1,5 @@
+<a up-modal=".form-contents" up-preload up-delay="25" up-width="800" up-history="false" href='/client_pro_access/view/<?= $record->uid ?>/ACTION_updateReason?optimised=1' class='d-block btn btn-sm btn-default mb-3'>Update Reason</a>
+<a up-modal=".form-contents" up-preload up-delay="25" up-width="800" up-history="false" href='/client_pro_access/view/<?= $record->uid ?>/ACTION_deactivate?optimised=1' class='d-block btn btn-sm btn-default mb-3'>Deactivate</a>
+<a up-modal=".form-contents" up-preload up-delay="25" up-width="800" up-history="false" href='/client_pro_access/view/<?= $record->uid ?>/ACTION_updateDeactivationMemo?optimised=1' class='d-block btn btn-sm btn-default mb-3'>Update Deactivation Memo</a>
+<a up-modal=".form-contents" up-preload up-delay="25" up-width="800" up-history="false" href='/client_pro_access/view/<?= $record->uid ?>/ACTION_reactivate?optimised=1' class='d-block btn btn-sm btn-default mb-3'>Reactivate</a>
+<a up-modal=".form-contents" up-preload up-delay="25" up-width="800" up-history="false" href='/client_pro_access/view/<?= $record->uid ?>/ACTION_updateReactivationMemo?optimised=1' class='d-block btn btn-sm btn-default mb-3'>Update Reactivation Memo</a>

+ 56 - 0
resources/views/admin/client_pro_access/index.blade.php

@@ -0,0 +1,56 @@
+@extends('layouts.pro-logged-in')
+@section('content')
+
+    <h3 class="d-flex my-3 px-3 stag-heading stag-heading-index">
+        <div>Client Pro Access: List</div>
+        <div class="ml-auto">
+            <!-- _ADD_NEW_LINK_ -->
+        </div>
+    </h3>
+
+    <div class="table-responsive p-0 bg-white border stag-table stag-table-index">
+        <table class="table table-hover text-nowrap table-striped">
+            <thead>
+            <tr>
+<th>&nbsp;</th>
+<th>Created At</th>
+<th>Type</th>
+<th>Deactivated At</th>
+<th>Deactivation Memo</th>
+<th>Is Active</th>
+<th>Reactivated At</th>
+<th>Reactivation Memo</th>
+<th>Reason Category</th>
+<th>Reason Memo</th>
+<th>Created By Session Id</th>
+<th>Deactivated By Session Id</th>
+<th>Reactivated By Session Id</th>
+<th>Client Id</th>
+<th>Pro Id</th>
+            </tr>
+            </thead>
+            <tbody>
+            @foreach($records as $record)
+                <tr>
+<td><a href="/client_pro_access/view/<?= $record->uid ?>"><i class="fas fa-share-square"></i></a></td>
+<td><?= friendly_date_time($record->created_at) ?></td>
+<td><?= $record->type ?></td>
+<td><?= friendly_date_time($record->deactivated_at) ?></td>
+<td><?= $record->deactivation_memo ?></td>
+<td><?= $record->is_active ?></td>
+<td><?= friendly_date_time($record->reactivated_at) ?></td>
+<td><?= $record->reactivation_memo ?></td>
+<td><?= $record->reason_category ?></td>
+<td><?= $record->reason_memo ?></td>
+<td><?= $record->created_by_session_id ?></td>
+<td><?= $record->deactivated_by_session_id ?></td>
+<td><?= $record->reactivated_by_session_id ?></td>
+<td><?= $record->client_id ?></td>
+<td><?= $record->pro_id ?></td>
+                </tr>
+            @endforeach
+            </tbody>
+        </table>
+    </div>
+
+@endsection

+ 3 - 0
resources/views/admin/client_pro_access/info.blade.php

@@ -0,0 +1,3 @@
+<h4 class="d-flex my-3 px-3 stag-heading stag-heading-info">
+    <div>Client Pro Access: Single [<?= $record->uid ?>]</div>
+</h4>

+ 1 - 0
resources/views/admin/client_pro_access/subs.blade.php

@@ -0,0 +1 @@
+<a href='/client_pro_access/view/<?= $record->uid ?>/SUB_dashboard' class='d-block px-3 py-2 border-bottom stag-sublink {{ request()->route()->getActionMethod() === 'SUB_dashboard' ? 'bg-secondary text-white font-weight-bold' : '' }}{{ strpos(request()->route()->getActionMethod(), 'ACTION_') === 0 ? 'bg-secondary text-white font-weight-bold' : '' }}'>Dashboard</a>

+ 20 - 0
resources/views/admin/client_pro_access/view.blade.php

@@ -0,0 +1,20 @@
+@extends('layouts.pro-logged-in')
+@section('content')
+
+    <div class="card rounded-0">
+        <div class="border-bottom bg-light">@include('admin/client_pro_access/info')</div>
+        <div class="d-flex align-items-stretch">
+            <div class="inner-side-nav">
+                <div class="border-right h-100">
+                    @include('admin/client_pro_access/subs')
+                </div>
+            </div>
+            <div class="flex-grow-1 px-3 pb-3 mb-3 inner-content">
+                <div>
+                    @yield('content-inner')
+                </div>
+            </div>
+        </div>
+    </div>
+
+@endsection

+ 41 - 0
resources/views/admin/client_pro_access_SINGLE/ACTION_deactivate.blade.php

@@ -0,0 +1,41 @@
+@extends('admin.client_pro_access.view')
+@section('content-inner')
+
+    <div class="form-contents"><div class="failed-form-contents">
+
+    <h4 class="d-flex m-0 p-3 stag-heading stag-heading-modal">
+        <div>Deactivate</div>
+        <div class="ml-auto">
+            <a class="text-secondary" href="#" up-close>
+                <i class="fa fa-times"></i>
+            </a>
+        </div>
+    </h4>
+
+    <form action="/post-to-api"
+          up-target="#main-content" up-history="false" up-fail-target=".failed-form-contents" up-reveal="false"
+          method="post" enctype="multipart/form-data"
+          class="border-top px-3 pt-3 pb-1 custom-submit">
+        @csrf
+
+        @if (session('message'))
+            <div class="alert alert-danger">{{ session('message') }}</div>
+        @endif
+
+        <input type="hidden" name="_uid" value="{{ $record->uid }}">
+        <input type="hidden" name="_api" value="/api/clientProAccess/deactivate">
+        <input type="hidden" name="_success" value="{{route('client_pro_access-view', ['uid' => $record->uid])}}">
+        <input type="hidden" name="_return" value="{{route('client_pro_access_SINGLE-ACTION_deactivate', ['uid' => $record->uid])}}">
+        <div class='form-group mb-3'>
+<label class='control-label'>Memo </label>
+<input class='form-control' type='text' name='memo' value='{{ old('memo') ? old('memo') : '' }}' >
+</div>
+        <div class="form-group mb-3 d-flex justify-content-center">
+            <button class="btn btn-sm btn-primary mr-3 px-5">Submit</button>
+            <a href="{{route('client_pro_access-view', ['uid' => $record->uid])}}" class="btn btn-sm btn-default px-5" up-close>Cancel</a>
+        </div>
+    </form>
+
+    </div></div>
+
+@endsection

+ 41 - 0
resources/views/admin/client_pro_access_SINGLE/ACTION_reactivate.blade.php

@@ -0,0 +1,41 @@
+@extends('admin.client_pro_access.view')
+@section('content-inner')
+
+    <div class="form-contents"><div class="failed-form-contents">
+
+    <h4 class="d-flex m-0 p-3 stag-heading stag-heading-modal">
+        <div>Reactivate</div>
+        <div class="ml-auto">
+            <a class="text-secondary" href="#" up-close>
+                <i class="fa fa-times"></i>
+            </a>
+        </div>
+    </h4>
+
+    <form action="/post-to-api"
+          up-target="#main-content" up-history="false" up-fail-target=".failed-form-contents" up-reveal="false"
+          method="post" enctype="multipart/form-data"
+          class="border-top px-3 pt-3 pb-1 custom-submit">
+        @csrf
+
+        @if (session('message'))
+            <div class="alert alert-danger">{{ session('message') }}</div>
+        @endif
+
+        <input type="hidden" name="_uid" value="{{ $record->uid }}">
+        <input type="hidden" name="_api" value="/api/clientProAccess/reactivate">
+        <input type="hidden" name="_success" value="{{route('client_pro_access-view', ['uid' => $record->uid])}}">
+        <input type="hidden" name="_return" value="{{route('client_pro_access_SINGLE-ACTION_reactivate', ['uid' => $record->uid])}}">
+        <div class='form-group mb-3'>
+<label class='control-label'>Memo </label>
+<input class='form-control' type='text' name='memo' value='{{ old('memo') ? old('memo') : '' }}' >
+</div>
+        <div class="form-group mb-3 d-flex justify-content-center">
+            <button class="btn btn-sm btn-primary mr-3 px-5">Submit</button>
+            <a href="{{route('client_pro_access-view', ['uid' => $record->uid])}}" class="btn btn-sm btn-default px-5" up-close>Cancel</a>
+        </div>
+    </form>
+
+    </div></div>
+
+@endsection

+ 41 - 0
resources/views/admin/client_pro_access_SINGLE/ACTION_updateDeactivationMemo.blade.php

@@ -0,0 +1,41 @@
+@extends('admin.client_pro_access.view')
+@section('content-inner')
+
+    <div class="form-contents"><div class="failed-form-contents">
+
+    <h4 class="d-flex m-0 p-3 stag-heading stag-heading-modal">
+        <div>Update Deactivation Memo</div>
+        <div class="ml-auto">
+            <a class="text-secondary" href="#" up-close>
+                <i class="fa fa-times"></i>
+            </a>
+        </div>
+    </h4>
+
+    <form action="/post-to-api"
+          up-target="#main-content" up-history="false" up-fail-target=".failed-form-contents" up-reveal="false"
+          method="post" enctype="multipart/form-data"
+          class="border-top px-3 pt-3 pb-1 custom-submit">
+        @csrf
+
+        @if (session('message'))
+            <div class="alert alert-danger">{{ session('message') }}</div>
+        @endif
+
+        <input type="hidden" name="_uid" value="{{ $record->uid }}">
+        <input type="hidden" name="_api" value="/api/clientProAccess/updateDeactivationMemo">
+        <input type="hidden" name="_success" value="{{route('client_pro_access-view', ['uid' => $record->uid])}}">
+        <input type="hidden" name="_return" value="{{route('client_pro_access_SINGLE-ACTION_updateDeactivationMemo', ['uid' => $record->uid])}}">
+        <div class='form-group mb-3'>
+<label class='control-label'>Memo </label>
+<input class='form-control' type='text' name='memo' value='{{ old('memo') ? old('memo') : $record->deactivation_memo }}' >
+</div>
+        <div class="form-group mb-3 d-flex justify-content-center">
+            <button class="btn btn-sm btn-primary mr-3 px-5">Submit</button>
+            <a href="{{route('client_pro_access-view', ['uid' => $record->uid])}}" class="btn btn-sm btn-default px-5" up-close>Cancel</a>
+        </div>
+    </form>
+
+    </div></div>
+
+@endsection

+ 41 - 0
resources/views/admin/client_pro_access_SINGLE/ACTION_updateReactivationMemo.blade.php

@@ -0,0 +1,41 @@
+@extends('admin.client_pro_access.view')
+@section('content-inner')
+
+    <div class="form-contents"><div class="failed-form-contents">
+
+    <h4 class="d-flex m-0 p-3 stag-heading stag-heading-modal">
+        <div>Update Reactivation Memo</div>
+        <div class="ml-auto">
+            <a class="text-secondary" href="#" up-close>
+                <i class="fa fa-times"></i>
+            </a>
+        </div>
+    </h4>
+
+    <form action="/post-to-api"
+          up-target="#main-content" up-history="false" up-fail-target=".failed-form-contents" up-reveal="false"
+          method="post" enctype="multipart/form-data"
+          class="border-top px-3 pt-3 pb-1 custom-submit">
+        @csrf
+
+        @if (session('message'))
+            <div class="alert alert-danger">{{ session('message') }}</div>
+        @endif
+
+        <input type="hidden" name="_uid" value="{{ $record->uid }}">
+        <input type="hidden" name="_api" value="/api/clientProAccess/updateReactivationMemo">
+        <input type="hidden" name="_success" value="{{route('client_pro_access-view', ['uid' => $record->uid])}}">
+        <input type="hidden" name="_return" value="{{route('client_pro_access_SINGLE-ACTION_updateReactivationMemo', ['uid' => $record->uid])}}">
+        <div class='form-group mb-3'>
+<label class='control-label'>Memo </label>
+<input class='form-control' type='text' name='memo' value='{{ old('memo') ? old('memo') : $record->reactivation_memo }}' >
+</div>
+        <div class="form-group mb-3 d-flex justify-content-center">
+            <button class="btn btn-sm btn-primary mr-3 px-5">Submit</button>
+            <a href="{{route('client_pro_access-view', ['uid' => $record->uid])}}" class="btn btn-sm btn-default px-5" up-close>Cancel</a>
+        </div>
+    </form>
+
+    </div></div>
+
+@endsection

+ 45 - 0
resources/views/admin/client_pro_access_SINGLE/ACTION_updateReason.blade.php

@@ -0,0 +1,45 @@
+@extends('admin.client_pro_access.view')
+@section('content-inner')
+
+    <div class="form-contents"><div class="failed-form-contents">
+
+    <h4 class="d-flex m-0 p-3 stag-heading stag-heading-modal">
+        <div>Update Reason</div>
+        <div class="ml-auto">
+            <a class="text-secondary" href="#" up-close>
+                <i class="fa fa-times"></i>
+            </a>
+        </div>
+    </h4>
+
+    <form action="/post-to-api"
+          up-target="#main-content" up-history="false" up-fail-target=".failed-form-contents" up-reveal="false"
+          method="post" enctype="multipart/form-data"
+          class="border-top px-3 pt-3 pb-1 custom-submit">
+        @csrf
+
+        @if (session('message'))
+            <div class="alert alert-danger">{{ session('message') }}</div>
+        @endif
+
+        <input type="hidden" name="_uid" value="{{ $record->uid }}">
+        <input type="hidden" name="_api" value="/api/clientProAccess/updateReason">
+        <input type="hidden" name="_success" value="{{route('client_pro_access-view', ['uid' => $record->uid])}}">
+        <input type="hidden" name="_return" value="{{route('client_pro_access_SINGLE-ACTION_updateReason', ['uid' => $record->uid])}}">
+        <div class='form-group mb-3'>
+<label class='control-label'>Reason Category </label>
+<input class='form-control' type='text' name='reasonCategory' value='{{ old('reasonCategory') ? old('reasonCategory') : $record->reason_category }}' >
+</div>
+<div class='form-group mb-3'>
+<label class='control-label'>Reason Detail </label>
+<input class='form-control' type='text' name='reasonDetail' value='{{ old('reasonDetail') ? old('reasonDetail') : $record->reason_memo }}' >
+</div>
+        <div class="form-group mb-3 d-flex justify-content-center">
+            <button class="btn btn-sm btn-primary mr-3 px-5">Submit</button>
+            <a href="{{route('client_pro_access-view', ['uid' => $record->uid])}}" class="btn btn-sm btn-default px-5" up-close>Cancel</a>
+        </div>
+    </form>
+
+    </div></div>
+
+@endsection

+ 41 - 0
resources/views/admin/client_pro_access_SINGLE/SUB_dashboard.blade.php

@@ -0,0 +1,41 @@
+@extends('admin.client_pro_access.view')
+@section('content-inner')
+
+    <div class="row mt-3">
+    <div class="col-8">
+
+        <div class="table-responsive p-0 bg-white table-sm stag-table border-top">
+            <table class="table table-hover text-nowrap table-striped border-left border-right border-bottom">
+                <thead>
+                <tr>
+                    <th colspan="2" class="px-2">Record Details</th>
+                </tr>
+                </thead>
+                <tbody>
+                <?php foreach($record as $k => $v): ?>
+                    <?php
+                    if($k === 'id' || $k === 'uid') continue;
+                    $displayValue = $record->$k;
+                    if(substr($k, -3) === '_at') {
+                        $displayValue = friendly_date_time($record->$k);
+                    }
+                    ?>
+                    <tr>
+                        <td class="px-2 text-secondary border-right w-50">{{ ucwords(str_replace("_", " ", $k)) }}</td>
+                        <td class="px-2 font-weight-bold w-50">{{ $displayValue }}</td>
+                    </tr>
+                <?php endforeach; ?>
+                </tbody>
+            </table>
+        </div>
+
+    </div>
+    <div class="col-4">
+        <div class="border-left h-100 pl-3">
+            @include('admin/client_pro_access/actions')
+        </div>
+    </div>
+</div>
+
+
+@endsection

+ 3 - 1
resources/views/admin/pro_rates/actions.blade.php

@@ -1 +1,3 @@
-<a up-modal=".form-contents" up-preload up-delay="25" up-width="800" up-history="false" href='/pro_rates/view/<?= $record->uid ?>/ACTION_updateAmount?optimised=1' class='d-block btn btn-sm btn-default mb-3'>Update Amount</a>
+<a up-modal=".form-contents" up-preload up-delay="25" up-width="800" up-history="false" href='/pro_rates/view/<?= $record->uid ?>/ACTION_updateAmount?optimised=1' class='d-block btn btn-sm btn-default mb-3'>Update Amount</a>
+<a up-modal=".form-contents" up-preload up-delay="25" up-width="800" up-history="false" href='/pro_rates/view/<?= $record->uid ?>/ACTION_reactivate?optimised=1' class='d-block btn btn-sm btn-default mb-3'>Reactivate</a>
+<a up-modal=".form-contents" up-preload up-delay="25" up-width="800" up-history="false" href='/pro_rates/view/<?= $record->uid ?>/ACTION_deactivate?optimised=1' class='d-block btn btn-sm btn-default mb-3'>Deactivate</a>

+ 41 - 0
resources/views/admin/pro_rates_SINGLE/ACTION_deactivate.blade.php

@@ -0,0 +1,41 @@
+@extends('admin.pro_rates.view')
+@section('content-inner')
+
+    <div class="form-contents"><div class="failed-form-contents">
+
+    <h4 class="d-flex m-0 p-3 stag-heading stag-heading-modal">
+        <div>Deactivate</div>
+        <div class="ml-auto">
+            <a class="text-secondary" href="#" up-close>
+                <i class="fa fa-times"></i>
+            </a>
+        </div>
+    </h4>
+
+    <form action="/post-to-api"
+          up-target="#main-content" up-history="false" up-fail-target=".failed-form-contents" up-reveal="false"
+          method="post" enctype="multipart/form-data"
+          class="border-top px-3 pt-3 pb-1 custom-submit">
+        @csrf
+
+        @if (session('message'))
+            <div class="alert alert-danger">{{ session('message') }}</div>
+        @endif
+
+        <input type="hidden" name="_uid" value="{{ $record->uid }}">
+        <input type="hidden" name="_api" value="/api/proRate/deactivate">
+        <input type="hidden" name="_success" value="{{route('pro_rates-view', ['uid' => $record->uid])}}">
+        <input type="hidden" name="_return" value="{{route('pro_rates_SINGLE-ACTION_deactivate', ['uid' => $record->uid])}}">
+        <div class='form-group mb-3'>
+<label class='control-label'>Memo </label>
+<input class='form-control' type='text' name='memo' value='{{ old('memo') ? old('memo') : '' }}' >
+</div>
+        <div class="form-group mb-3 d-flex justify-content-center">
+            <button class="btn btn-sm btn-primary mr-3 px-5">Submit</button>
+            <a href="{{route('pro_rates-view', ['uid' => $record->uid])}}" class="btn btn-sm btn-default px-5" up-close>Cancel</a>
+        </div>
+    </form>
+
+    </div></div>
+
+@endsection

+ 41 - 0
resources/views/admin/pro_rates_SINGLE/ACTION_reactivate.blade.php

@@ -0,0 +1,41 @@
+@extends('admin.pro_rates.view')
+@section('content-inner')
+
+    <div class="form-contents"><div class="failed-form-contents">
+
+    <h4 class="d-flex m-0 p-3 stag-heading stag-heading-modal">
+        <div>Reactivate</div>
+        <div class="ml-auto">
+            <a class="text-secondary" href="#" up-close>
+                <i class="fa fa-times"></i>
+            </a>
+        </div>
+    </h4>
+
+    <form action="/post-to-api"
+          up-target="#main-content" up-history="false" up-fail-target=".failed-form-contents" up-reveal="false"
+          method="post" enctype="multipart/form-data"
+          class="border-top px-3 pt-3 pb-1 custom-submit">
+        @csrf
+
+        @if (session('message'))
+            <div class="alert alert-danger">{{ session('message') }}</div>
+        @endif
+
+        <input type="hidden" name="_uid" value="{{ $record->uid }}">
+        <input type="hidden" name="_api" value="/api/proRate/reactivate">
+        <input type="hidden" name="_success" value="{{route('pro_rates-view', ['uid' => $record->uid])}}">
+        <input type="hidden" name="_return" value="{{route('pro_rates_SINGLE-ACTION_reactivate', ['uid' => $record->uid])}}">
+        <div class='form-group mb-3'>
+<label class='control-label'>Memo </label>
+<input class='form-control' type='text' name='memo' value='{{ old('memo') ? old('memo') : '' }}' >
+</div>
+        <div class="form-group mb-3 d-flex justify-content-center">
+            <button class="btn btn-sm btn-primary mr-3 px-5">Submit</button>
+            <a href="{{route('pro_rates-view', ['uid' => $record->uid])}}" class="btn btn-sm btn-default px-5" up-close>Cancel</a>
+        </div>
+    </form>
+
+    </div></div>
+
+@endsection

+ 60 - 0
resources/views/admin/pros_SINGLE/ACTION_pro_accessAddNew.blade.php

@@ -0,0 +1,60 @@
+@extends('admin.pros.view')
+@section('content-inner')
+
+    <div class="form-contents"><div class="failed-form-contents">
+
+    <h4 class="d-flex m-0 p-3 stag-heading stag-heading-modal">
+        <div>Pro Access Add New</div>
+        <div class="ml-auto">
+            <a class="text-secondary" href="#" up-close>
+                <i class="fa fa-times"></i>
+            </a>
+        </div>
+    </h4>
+
+    <form action="/post-to-api"
+          up-target="#main-content" up-history="false" up-fail-target=".failed-form-contents" up-reveal="false"
+          method="post" enctype="multipart/form-data"
+          class="border-top px-3 pt-3 pb-1 custom-submit">
+        @csrf
+
+        @if (session('message'))
+            <div class="alert alert-danger">{{ session('message') }}</div>
+        @endif
+
+        <input type="hidden" name="_uid" value="{{ $record->uid }}">
+        <input type="hidden" name="_api" value="/api/clientProAccess/create">
+        <input type="hidden" name="_success" value="{{route('pros_SINGLE-SUB_pro_access', ['uid' => $record->uid])}}">
+        <input type="hidden" name="_return" value="{{route('pros_SINGLE-ACTION_pro_accessAddNew', ['uid' => $record->uid])}}">
+        <input class='form-control' type='hidden' name='proUid' value='{{ old('proUid') ? old('proUid') : $record->uid }}' >
+<div class='form-group mb-3'>
+<label class='control-label'>Client </label>
+<select class='form-control' name='clientUid' value='{{ old('clientUid') ? old('clientUid') : '' }}' >
+<option value=''>-- Select --</option>
+<?php $dbOptions = \Illuminate\Support\Facades\DB::table('client')->get(); ?>
+<?php foreach($dbOptions as $o): ?>
+<option <?= $o->uid === (old('clientUid') ? old('clientUid') : '') ? 'selected' : '' ?> value='<?= $o->uid ?>'><?= $o->name_first ?> (<?= $o->uid ?>)</option>
+<?php endforeach; ?>
+</select>
+</div>
+<div class='form-group mb-3'>
+<label class='control-label'>Reason Category </label>
+<input class='form-control' type='text' name='reasonCategory' value='{{ old('reasonCategory') ? old('reasonCategory') : '' }}' >
+</div>
+<div class='form-group mb-3'>
+<label class='control-label'>Reason Memo </label>
+<input class='form-control' type='text' name='reasonMemo' value='{{ old('reasonMemo') ? old('reasonMemo') : '' }}' >
+</div>
+<div class='form-group mb-3'>
+<label class='control-label'>Reason Detail </label>
+<input class='form-control' type='text' name='reasonDetail' value='{{ old('reasonDetail') ? old('reasonDetail') : '' }}' >
+</div>
+        <div class="form-group mb-3 d-flex justify-content-center">
+            <button class="btn btn-sm btn-primary mr-3 px-5">Submit</button>
+            <a href="{{route('pros_SINGLE-SUB_pro_access', ['uid' => $record->uid])}}" class="btn btn-sm btn-default px-5" up-close>Cancel</a>
+        </div>
+    </form>
+
+    </div></div>
+
+@endsection

+ 55 - 1
resources/views/admin/pros_SINGLE/SUB_pro_access.blade.php

@@ -1,6 +1,60 @@
 @extends('admin.pros.view')
 @section('content-inner')
 
-    <h5 class='py-3 border-bottom'>Pro Access</h5>Controller: <b>pros_SINGLE</b><br>Action: <b>SUB_pro_access()</b><br>View: <b>admin/pros_SINGLE/SUB_pro_access.blade.php</b><br><br>
+    <div class="pb-3">
+
+        <h5 class='my-3 d-flex stag-heading stag-heading-sub'>
+            <div>Pro Access</div>
+            <div class="ml-auto">
+                <a class="btn btn-primary btn-sm" up-modal=".form-contents" up-preload up-delay="25" up-width="800" up-history="false" href="{{route('pros_SINGLE-ACTION_pro_accessAddNew', ['uid' => $record->uid])}}?optimised=1"><i class='fa fa-plus-circle' aria-hidden='true'></i> Add New</a>
+            </div>
+        </h5>
+
+        <div class="table-responsive p-0 bg-white border stag-table stag-table-sub">
+            <table class="table table-hover text-nowrap">
+                <thead>
+                <tr>
+                    <th>&nbsp;</th>
+<th>Created At</th>
+<th>Type</th>
+<th>Deactivated At</th>
+<th>Deactivation Memo</th>
+<th>Is Active</th>
+<th>Reactivated At</th>
+<th>Reactivation Memo</th>
+<th>Reason Category</th>
+<th>Reason Memo</th>
+<th>Created By Session Id</th>
+<th>Deactivated By Session Id</th>
+<th>Reactivated By Session Id</th>
+<th>Client Id</th>
+<th>Pro Id</th>
+                </tr>
+                </thead>
+                <tbody>
+                @foreach($subRecords as $subRecord)
+                    <tr>
+                        <td><a href="/pro_access/view/{{ $subRecord->uid }}"><i class="fas fa-share-square"></i></a></td>
+<td><?= friendly_date_time($subRecord->created_at) ?></td>
+<td><?= $subRecord->type ?></td>
+<td><?= friendly_date_time($subRecord->deactivated_at) ?></td>
+<td><?= $subRecord->deactivation_memo ?></td>
+<td><?= $subRecord->is_active ?></td>
+<td><?= friendly_date_time($subRecord->reactivated_at) ?></td>
+<td><?= $subRecord->reactivation_memo ?></td>
+<td><?= $subRecord->reason_category ?></td>
+<td><?= $subRecord->reason_memo ?></td>
+<td><?= $subRecord->created_by_session_id ?></td>
+<td><?= $subRecord->deactivated_by_session_id ?></td>
+<td><?= $subRecord->reactivated_by_session_id ?></td>
+<td><?= $subRecord->client_id ?></td>
+<td><?= $subRecord->pro_id ?></td>
+                    </tr>
+                @endforeach
+                </tbody>
+            </table>
+        </div>
+
+    </div>
 
 @endsection

+ 7 - 7
resources/views/layouts/generated-links.blade.php

@@ -89,13 +89,6 @@
 	</a>
 </li>
 
-<li class='nav-item'>
-	<a href='/pro_access' class='nav-link {{ (isset(request()->route()->getController()->selfName) && strpos(request()->route()->getController()->selfName, 'pro_access') === 0 ? 'active' : '') }} '>
-		<i class='nav-icon fa fa-arrow-alt-circle-right'></i>
-		<p>Pro Access</p>
-	</a>
-</li>
-
 <li class='nav-item'>
 	<a href='/mcp_updates' class='nav-link {{ (isset(request()->route()->getController()->selfName) && strpos(request()->route()->getController()->selfName, 'mcp_updates') === 0 ? 'active' : '') }} '>
 		<i class='nav-icon fa fa-user-edit'></i>
@@ -131,6 +124,13 @@
 	</a>
 </li>
 
+<li class='nav-item'>
+	<a href='/client_pro_access' class='nav-link {{ (isset(request()->route()->getController()->selfName) && strpos(request()->route()->getController()->selfName, 'client_pro_access') === 0 ? 'active' : '') }} '>
+		<i class='nav-icon fa fa-key'></i>
+		<p>Client Pro Access</p>
+	</a>
+</li>
+
 <li class='nav-item'>
 	<a href='/section_templates' class='nav-link {{ (isset(request()->route()->getController()->selfName) && strpos(request()->route()->getController()->selfName, 'section_templates') === 0 ? 'active' : '') }} '>
 		<i class='nav-icon fa fa-user-md'></i>

+ 19 - 16
routes/generated.php

@@ -292,22 +292,6 @@ Route::prefix('/med_profile_line_updates')->group(function () {
 	Route::get('', 'med_profile_line_updates_Controller@index')->name('med_profile_line_updates-index');
 });
 
-// --- pro: pro_access --- //
-Route::prefix('/pro_access')->group(function () {
-	Route::get('', 'pro_access_Controller@index')->name('pro_access-index');
-	Route::get('view/{uid}', 'pro_access_Controller@view')->name('pro_access-view');
-});
-
-// --- pro: pro_access_SINGLE --- //
-Route::prefix('/pro_access/view/{uid}')->group(function () {
-	Route::get('ACTION_updateReason', 'pro_access_SINGLE_Controller@ACTION_updateReason')->name('pro_access_SINGLE-ACTION_updateReason');
-	Route::get('ACTION_deactivate', 'pro_access_SINGLE_Controller@ACTION_deactivate')->name('pro_access_SINGLE-ACTION_deactivate');
-	Route::get('ACTION_updateDeactivationMemo', 'pro_access_SINGLE_Controller@ACTION_updateDeactivationMemo')->name('pro_access_SINGLE-ACTION_updateDeactivationMemo');
-	Route::get('ACTION_reactivate', 'pro_access_SINGLE_Controller@ACTION_reactivate')->name('pro_access_SINGLE-ACTION_reactivate');
-	Route::get('ACTION_updateReactivationMemo', 'pro_access_SINGLE_Controller@ACTION_updateReactivationMemo')->name('pro_access_SINGLE-ACTION_updateReactivationMemo');
-	Route::get('SUB_dashboard', 'pro_access_SINGLE_Controller@SUB_dashboard')->name('pro_access_SINGLE-SUB_dashboard');
-});
-
 // --- pro: mcp_updates --- //
 Route::prefix('/mcp_updates')->group(function () {
 	Route::get('', 'mcp_updates_Controller@index')->name('mcp_updates-index');
@@ -396,6 +380,7 @@ Route::prefix('/pros/view/{uid}')->group(function () {
 	Route::get('SUB_sessions', 'pros_SINGLE_Controller@SUB_sessions')->name('pros_SINGLE-SUB_sessions');
 	Route::get('SUB_audit_log', 'pros_SINGLE_Controller@SUB_audit_log')->name('pros_SINGLE-SUB_audit_log');
 	Route::get('ACTION_my_payment_scheduleAddNew', 'pros_SINGLE_Controller@ACTION_my_payment_scheduleAddNew')->name('pros_SINGLE-ACTION_my_payment_scheduleAddNew');
+	Route::get('ACTION_pro_accessAddNew', 'pros_SINGLE_Controller@ACTION_pro_accessAddNew')->name('pros_SINGLE-ACTION_pro_accessAddNew');
 });
 
 // --- admin: pro_rates --- //
@@ -407,9 +392,27 @@ Route::prefix('/pro_rates')->group(function () {
 // --- admin: pro_rates_SINGLE --- //
 Route::prefix('/pro_rates/view/{uid}')->group(function () {
 	Route::get('ACTION_updateAmount', 'pro_rates_SINGLE_Controller@ACTION_updateAmount')->name('pro_rates_SINGLE-ACTION_updateAmount');
+	Route::get('ACTION_reactivate', 'pro_rates_SINGLE_Controller@ACTION_reactivate')->name('pro_rates_SINGLE-ACTION_reactivate');
+	Route::get('ACTION_deactivate', 'pro_rates_SINGLE_Controller@ACTION_deactivate')->name('pro_rates_SINGLE-ACTION_deactivate');
 	Route::get('SUB_dashboard', 'pro_rates_SINGLE_Controller@SUB_dashboard')->name('pro_rates_SINGLE-SUB_dashboard');
 });
 
+// --- admin: client_pro_access --- //
+Route::prefix('/client_pro_access')->group(function () {
+	Route::get('', 'client_pro_access_Controller@index')->name('client_pro_access-index');
+	Route::get('view/{uid}', 'client_pro_access_Controller@view')->name('client_pro_access-view');
+});
+
+// --- admin: client_pro_access_SINGLE --- //
+Route::prefix('/client_pro_access/view/{uid}')->group(function () {
+	Route::get('ACTION_updateReason', 'client_pro_access_SINGLE_Controller@ACTION_updateReason')->name('client_pro_access_SINGLE-ACTION_updateReason');
+	Route::get('ACTION_deactivate', 'client_pro_access_SINGLE_Controller@ACTION_deactivate')->name('client_pro_access_SINGLE-ACTION_deactivate');
+	Route::get('ACTION_updateDeactivationMemo', 'client_pro_access_SINGLE_Controller@ACTION_updateDeactivationMemo')->name('client_pro_access_SINGLE-ACTION_updateDeactivationMemo');
+	Route::get('ACTION_reactivate', 'client_pro_access_SINGLE_Controller@ACTION_reactivate')->name('client_pro_access_SINGLE-ACTION_reactivate');
+	Route::get('ACTION_updateReactivationMemo', 'client_pro_access_SINGLE_Controller@ACTION_updateReactivationMemo')->name('client_pro_access_SINGLE-ACTION_updateReactivationMemo');
+	Route::get('SUB_dashboard', 'client_pro_access_SINGLE_Controller@SUB_dashboard')->name('client_pro_access_SINGLE-SUB_dashboard');
+});
+
 // --- admin: section_templates --- //
 Route::prefix('/section_templates')->group(function () {
 	Route::get('', 'section_templates_Controller@index')->name('section_templates-index');