瀏覽代碼

updated tree

Josh Kamau 5 年之前
父節點
當前提交
19e23e3a50

+ 13 - 0
app/Http/Controllers/clients_SINGLE_Controller.php

@@ -392,6 +392,13 @@ class clients_SINGLE_Controller extends Controller
 		return response()->view('pro/clients_SINGLE/SUB_dashboard', compact('record', 'result_clients', 'result_pros', 'result_facilities', 'result_relationships'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
 	}
 
+	// GET /clients/view/{uid}/SUB_measurements
+	public function SUB_measurements(Request $request, $uid) {
+		$record = DB::table('client')->where('uid', $uid)->first();
+		$subRecords = DB::table('measurement')->where('client_id', $record->id)->get();
+		return response()->view('pro/clients_SINGLE/SUB_measurements', compact('record', 'subRecords'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+
 	// GET /clients/view/{uid}/SUB_med_profile
 	public function SUB_med_profile(Request $request, $uid) {
 		$record = DB::table('client')->where('uid', $uid)->first();
@@ -490,6 +497,12 @@ class clients_SINGLE_Controller extends Controller
 		return response()->view('pro/clients_SINGLE/SUB_audit_log', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
 	}
 
+	// GET /clients/view/{uid}/ACTION_measurementsAddNew
+	public function ACTION_measurementsAddNew(Request $request, $uid) {
+		$record = DB::table('client')->where('uid', $uid)->first();
+		return response()->view('pro/clients_SINGLE/ACTION_measurementsAddNew', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+
 	// GET /clients/view/{uid}/ACTION_med_profileAddNew
 	public function ACTION_med_profileAddNew(Request $request, $uid) {
 		$record = DB::table('client')->where('uid', $uid)->first();

+ 24 - 0
app/Http/Controllers/measurements_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 measurements_Controller extends Controller
+{
+    public $selfName = 'measurements_Controller';
+
+	// GET /measurements
+	public function index(Request $request) {
+		$records = DB::table('measurement')->get();
+		$result_clients = DB::select("select id, concat(name_first, ' ', name_last) as name_display from client");
+		return response()->view('pro/measurements/index', compact('records', 'result_clients'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+
+	// GET /measurements/view/{uid}
+	public function view(Request $request, $uid) {
+		return redirect("/measurements/view/$uid/SUB_dashboard");
+	}
+}

+ 31 - 0
app/Http/Controllers/measurements_SINGLE_Controller.php

@@ -0,0 +1,31 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use Illuminate\Http\Request;
+use Illuminate\Support\Facades\DB;
+use Illuminate\Support\Facades\Auth;
+
+class measurements_SINGLE_Controller extends Controller
+{
+    public $selfName = 'measurements_SINGLE_Controller';
+
+	// GET /measurements/view/{uid}/ACTION_updateBasic
+	public function ACTION_updateBasic(Request $request, $uid) {
+		$record = DB::table('measurement')->where('uid', $uid)->first();
+		return response()->view('pro/measurements_SINGLE/ACTION_updateBasic', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+
+	// GET /measurements/view/{uid}/ACTION_remove
+	public function ACTION_remove(Request $request, $uid) {
+		$record = DB::table('measurement')->where('uid', $uid)->first();
+		return response()->view('pro/measurements_SINGLE/ACTION_remove', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+
+	// GET /measurements/view/{uid}/SUB_dashboard
+	public function SUB_dashboard(Request $request, $uid) {
+		$record = DB::table('measurement')->where('uid', $uid)->first();
+		$result_clients = DB::select("select id, concat(name_first, ' ', name_last) as name_display from client");
+		return response()->view('pro/measurements_SINGLE/SUB_dashboard', compact('record', 'result_clients'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+}

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

@@ -142,6 +142,18 @@ class pros_SINGLE_Controller extends Controller
 		return response()->view('admin/pros_SINGLE/ACTION_setIsEnrolledAsMcpToFalse', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
 	}
 
+	// GET /pros/view/{uid}/ACTION_setIsVideoVisitAssistantToTrue
+	public function ACTION_setIsVideoVisitAssistantToTrue(Request $request, $uid) {
+		$record = DB::table('pro')->where('uid', $uid)->first();
+		return response()->view('admin/pros_SINGLE/ACTION_setIsVideoVisitAssistantToTrue', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+
+	// GET /pros/view/{uid}/ACTION_setIsVideoVisitAssistantToFalse
+	public function ACTION_setIsVideoVisitAssistantToFalse(Request $request, $uid) {
+		$record = DB::table('pro')->where('uid', $uid)->first();
+		return response()->view('admin/pros_SINGLE/ACTION_setIsVideoVisitAssistantToFalse', compact('record'), session('message') ? 500 : 200)->header('Content-Type', 'text/html');
+	}
+
 	// GET /pros/view/{uid}/ACTION_removeProfilePicture
 	public function ACTION_removeProfilePicture(Request $request, $uid) {
 		$record = DB::table('pro')->where('uid', $uid)->first();

+ 29 - 0
generatecv/tree.txt

@@ -363,6 +363,14 @@ PRO
                 !col:rmm_pro_id:RMM Pro:~pros:name_display:id,=,$rmm_pro_id:all
                 !col:rd_pro_id:RD Pro:~pros:name_display:id,=,$rd_pro_id:all
                 !nal:
+            measurements
+                id=measurement.client_id=>/measurements/view/UID
+                !inc:label,value,effective_date
+                add_new:measurement=>/measurements/view/UID
+                    clientUid:hidden=uid
+                    label
+                    value:number
+                    effectiveDate:date
             med_profile
                 id=client_info_line.client_id=>/med_profiles/view/UID
                 !inc:id,category,content_text,content_detail
@@ -537,6 +545,22 @@ PRO
         SUB
             dashboard
                 !grp:Relationship details:id,created_at,is_active,reactivated_at,reactivation_memo,email_address,english_level,ethnicities,home_address,is_black_oraa,is_hispanic,mailing_address,name_first,name_last,name_maiden,name_middle,name_prefix,name_previous,name_suffix,organization_name,other_languages,phone_home,phone_memo,phone_mobile,phone_work,preferred_language,race,relationship_memo,relationship_to_client,specific_races,created_by_session_id,deactivated_by_session_id,reactivated_by_session_id,client_id,contact_client_id_id,contact_client_id
+    measurements|measurement|view|icon:file-alt
+        !inc:id,client_id,label,value,effective_date
+        !qry:clients:select id, concat(name_first, ' ', name_last) as name_display from client
+        !col:client_id:Client:~clients:name_display:id,=,$client_id:all
+    measurements/view/{uid}
+        ACTIONS
+            updateBasic
+                label=label
+                value:number=value
+                effectiveDate:date=effective_date
+            remove
+        SUB
+            dashboard
+                !qry:clients:select id, concat(name_first, ' ', name_last) as name_display from client
+                !grp:Measurement details:client_id,label,value,effective_date,is_removed
+                !col:client_id:Client:~clients:name_display:id,=,$client_id:all
     erx|action_item:action_item_category='RX'|view|icon:file-signature
     erx/view/{uid}
         ACTIONS
@@ -958,6 +982,8 @@ ADMIN
             setIsEnrolledAsHcpToFalse
             setIsEnrolledAsMcpToTrue
             setIsEnrolledAsMcpToFalse
+            setIsVideoVisitAssistantToTrue
+            setIsVideoVisitAssistantToFalse
             removeProfilePicture
             updateW9Detail
                 w9Detail=w9detail
@@ -984,6 +1010,7 @@ ADMIN
                 !grp:Driving License:is_driver_license_complete,driver_license_file_path,driver_license_state,driver_license_issue_date,driver_license_expiration_date:Update Driving License:circle=>/pros/view/$uid/ACTION_updateDriverLicenseInfo
                 !grp:SSN:ssn:Update SSN:circle=>/pros/view/$uid/ACTION_updateSsn
                 !grp:W9:isw9complete,w9detail:Update W9:circle=>/pros/view/$uid/ACTION_updateW9Detail
+                !grp:Video Visit Assistant:is_video_visit_assistant
                 !grp:Contract:is_contract_complete,signed_contract_pdf_file_path:Update Contract:circle=>/pros/view/$uid/ACTION_updateSignedContractPdf
                 !act:cell_number:sendCellNumberConfirmationMessage:circle=>/pros/view/$uid/ACTION_sendCellNumberConfirmationMessage
                 !act:is_cell_number_confirmation_pending:confirmCellNumberWithConfirmationToken:circle=>/pros/view/$uid/ACTION_confirmCellNumberWithConfirmationToken
@@ -1002,6 +1029,8 @@ ADMIN
                 !act:is_enrolled_as_mcp:setIsEnrolledAsMcpToFalse:circle:if:is_enrolled_as_mcp=>/pros/view/$uid/ACTION_setIsEnrolledAsMcpToFalse
                 !act:is_enrolled_as_mcp:setIsEnrolledAsMcpToTrue:circle:if-not:is_enrolled_as_mcp=>/pros/view/$uid/ACTION_setIsEnrolledAsMcpToTrue
                 !act:profile_picture_base64:removeProfilePicture:circle=>/pros/view/$uid/ACTION_removeProfilePicture
+                !act:is_video_visit_assistant:setIsVideoVisitAssistantToFalse:circle:if:is_video_visit_assistant=>/pros/view/$uid/ACTION_removeProfilePicture
+                !act:is_video_visit_assistant:setIsVideoVisitAssistantToFalse:circle:if-not:is_video_visit_assistant=>/pros/view/$uid/ACTION_removeProfilePicture
                 !nal:
             my_payment_schedule
                 id=pro_rate.pro_id=>/pro_rates/view/UID

+ 2 - 0
resources/views/admin/pros/actions.blade.php

@@ -20,6 +20,8 @@
 <a up-modal=".form-contents" up-width="800" up-history="false" href='/pros/view/<?= $record->uid ?>/ACTION_setIsEnrolledAsHcpToFalse' class='d-block btn btn-sm btn-default mb-3'>Set Is Enrolled As Hcp To False</a>
 <a up-modal=".form-contents" up-width="800" up-history="false" href='/pros/view/<?= $record->uid ?>/ACTION_setIsEnrolledAsMcpToTrue' class='d-block btn btn-sm btn-default mb-3'>Set Is Enrolled As Mcp To True</a>
 <a up-modal=".form-contents" up-width="800" up-history="false" href='/pros/view/<?= $record->uid ?>/ACTION_setIsEnrolledAsMcpToFalse' class='d-block btn btn-sm btn-default mb-3'>Set Is Enrolled As Mcp To False</a>
+<a up-modal=".form-contents" up-width="800" up-history="false" href='/pros/view/<?= $record->uid ?>/ACTION_setIsVideoVisitAssistantToTrue' class='d-block btn btn-sm btn-default mb-3'>Set Is Video Visit Assistant To True</a>
+<a up-modal=".form-contents" up-width="800" up-history="false" href='/pros/view/<?= $record->uid ?>/ACTION_setIsVideoVisitAssistantToFalse' class='d-block btn btn-sm btn-default mb-3'>Set Is Video Visit Assistant To False</a>
 <a up-modal=".form-contents" up-width="800" up-history="false" href='/pros/view/<?= $record->uid ?>/ACTION_removeProfilePicture' class='d-block btn btn-sm btn-default mb-3'>Remove Profile Picture</a>
 <a up-modal=".form-contents" up-width="800" up-history="false" href='/pros/view/<?= $record->uid ?>/ACTION_updateW9Detail' class='d-block btn btn-sm btn-default mb-3'>Update W9Detail</a>
 <a up-modal=".form-contents" up-width="800" up-history="false" href='/pros/view/<?= $record->uid ?>/ACTION_updateSignedContractPdf' class='d-block btn btn-sm btn-default mb-3'>Update Signed Contract Pdf</a>

+ 38 - 0
resources/views/admin/pros_SINGLE/ACTION_setIsVideoVisitAssistantToFalse.blade.php

@@ -0,0 +1,38 @@
+@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>Set Is Video Visit Assistant To False</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/pro/setIsVideoVisitAssistantToFalse">
+        <input type="hidden" name="_success" value="{{route('pros-view', ['uid' => $record->uid])}}">
+        <input type="hidden" name="_return" value="{{route('pros_SINGLE-ACTION_setIsVideoVisitAssistantToFalse', ['uid' => $record->uid])}}">
+        
+        <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-view', ['uid' => $record->uid])}}" class="btn btn-sm btn-default px-5" up-close>Cancel</a>
+        </div>
+    </form>
+
+    </div></div>
+
+@endsection

+ 38 - 0
resources/views/admin/pros_SINGLE/ACTION_setIsVideoVisitAssistantToTrue.blade.php

@@ -0,0 +1,38 @@
+@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>Set Is Video Visit Assistant To True</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/pro/setIsVideoVisitAssistantToTrue">
+        <input type="hidden" name="_success" value="{{route('pros-view', ['uid' => $record->uid])}}">
+        <input type="hidden" name="_return" value="{{route('pros_SINGLE-ACTION_setIsVideoVisitAssistantToTrue', ['uid' => $record->uid])}}">
+        
+        <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-view', ['uid' => $record->uid])}}" class="btn btn-sm btn-default px-5" up-close>Cancel</a>
+        </div>
+    </form>
+
+    </div></div>
+
+@endsection

+ 16 - 0
resources/views/admin/pros_SINGLE/SUB_dashboard.blade.php

@@ -251,6 +251,22 @@
     </table>
 </div>
 
+<div class="table-responsive p-0 bg-white table-sm mb-3">
+    <table class="table table-hover text-nowrap table-striped border-left border-right border-bottom">
+        <thead>
+        <tr>
+            <th colspan="2" class="px-2">Video Visit Assistant
+                <span class="ml-auto"><!-- __GROUP_ACTION__ --></span>
+            </th>
+        </tr>
+        </thead>
+        <tbody>
+            <tr><td class="w-25 px-2 text-secondary border-right">Is Video Visit Assistant</td><td class="w-75 px-2 font-weight-bold"><?= $record->is_video_visit_assistant ?>@if( $record->is_video_visit_assistant) <a up-modal=".form-contents" up-width="800" up-history="false" href='/pros/view/<?= $record->uid ?>/ACTION_removeProfilePicture' title='setIsVideoVisitAssistantToFalse' class='mx-2 font-weight-normal text-primary text-xs'><i class='fa fa-circle'></i>&nbsp;<span>Set Is Video Visit Assistant To False</span></a> @endif
+@if(! $record->is_video_visit_assistant) <a up-modal=".form-contents" up-width="800" up-history="false" href='/pros/view/<?= $record->uid ?>/ACTION_removeProfilePicture' title='setIsVideoVisitAssistantToFalse' class='mx-2 font-weight-normal text-primary text-xs'><i class='fa fa-circle'></i>&nbsp;<span>Set Is Video Visit Assistant To False</span></a> @endif</td></tr>
+        </tbody>
+    </table>
+</div>
+
 <div class="table-responsive p-0 bg-white table-sm mb-3">
     <table class="table table-hover text-nowrap table-striped border-left border-right border-bottom">
         <thead>

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

@@ -26,6 +26,13 @@
 	</a>
 </li>
 
+<li class='nav-item'>
+	<a href='/measurements' class='nav-link {{ (isset(request()->route()->getController()->selfName) && strpos(request()->route()->getController()->selfName, 'measurements') === 0 ? 'active' : '') }} '>
+		<i class='nav-icon fa fa-file-alt'></i>
+		<p>Measurements</p>
+	</a>
+</li>
+
 <li class='nav-item'>
 	<a href='/erx' class='nav-link {{ (isset(request()->route()->getController()->selfName) && strpos(request()->route()->getController()->selfName, 'erx') === 0 ? 'active' : '') }} '>
 		<i class='nav-icon fa fa-file-signature'></i>

+ 1 - 0
resources/views/pro/clients/subs.blade.php

@@ -1,4 +1,5 @@
 <a href='/clients/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>
+<a href='/clients/view/<?= $record->uid ?>/SUB_measurements' class='d-block px-3 py-2 border-bottom stag-sublink {{ request()->route()->getActionMethod() === 'SUB_measurements' ? 'bg-secondary text-white font-weight-bold' : '' }}'>Measurements</a>
 <a href='/clients/view/<?= $record->uid ?>/SUB_med_profile' class='d-block px-3 py-2 border-bottom stag-sublink {{ request()->route()->getActionMethod() === 'SUB_med_profile' ? 'bg-secondary text-white font-weight-bold' : '' }}'>Med Profile</a>
 <a href='/clients/view/<?= $record->uid ?>/SUB_med_profile_log' class='d-block px-3 py-2 border-bottom stag-sublink {{ request()->route()->getActionMethod() === 'SUB_med_profile_log' ? 'bg-secondary text-white font-weight-bold' : '' }}'>Med Profile Log</a>
 <a href='/clients/view/<?= $record->uid ?>/SUB_pro_access' class='d-block px-3 py-2 border-bottom stag-sublink {{ request()->route()->getActionMethod() === 'SUB_pro_access' ? 'bg-secondary text-white font-weight-bold' : '' }}'>Pro Access</a>

+ 50 - 0
resources/views/pro/clients_SINGLE/ACTION_measurementsAddNew.blade.php

@@ -0,0 +1,50 @@
+@extends('pro.clients.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>Measurements 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/measurement/create">
+        <input type="hidden" name="_success" value="{{route('clients_SINGLE-SUB_measurements', ['uid' => $record->uid])}}">
+        <input type="hidden" name="_return" value="{{route('clients_SINGLE-ACTION_measurementsAddNew', ['uid' => $record->uid])}}">
+        <input class='form-control' type='hidden' name='clientUid' value='{{ old('clientUid') ? old('clientUid') : $record->uid }}' >
+<div class='form-group mb-3'>
+<label class='control-label'>Label </label>
+<input class='form-control' type='text' name='label' value='{{ old('label') ? old('label') : '' }}' >
+</div>
+<div class='form-group mb-3'>
+<label class='control-label'>Value </label>
+<input class='form-control' type='number' name='value' value='{{ old('value') ? old('value') : '' }}' >
+</div>
+<div class='form-group mb-3'>
+<label class='control-label'>Effective Date </label>
+<input class='form-control' type='date' name='effectiveDate' value='{{ old('effectiveDate') ? old('effectiveDate') : '' }}' >
+</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('clients_SINGLE-SUB_measurements', ['uid' => $record->uid])}}" class="btn btn-sm btn-default px-5" up-close>Cancel</a>
+        </div>
+    </form>
+
+    </div></div>
+
+@endsection

+ 38 - 0
resources/views/pro/clients_SINGLE/SUB_measurements.blade.php

@@ -0,0 +1,38 @@
+@extends('pro.clients.view')
+@section('content-inner')
+
+    <div class="pb-3">
+
+        <h5 class='my-3 d-flex stag-heading stag-heading-sub'>
+            <div>Measurements</div>
+            <div class="ml-auto">
+                <a class="btn btn-primary btn-sm" up-modal=".form-contents" up-width="800" up-history="false" href="{{route('clients_SINGLE-ACTION_measurementsAddNew', ['uid' => $record->uid])}}"><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>Label</th>
+<th>Value</th>
+<th>Effective Date</th>
+                </tr>
+                </thead>
+                <tbody>
+                @foreach($subRecords as $subRecord)
+                    <tr>
+                        <td><a href="/measurements/view/{{ $subRecord->uid }}"><i class="fas fa-share-square"></i></a></td>
+<td><?= $subRecord->label ?></td>
+<td><?= $subRecord->value ?></td>
+<td><?= $subRecord->effective_date ?></td>
+                    </tr>
+                @endforeach
+                </tbody>
+            </table>
+        </div>
+
+    </div>
+
+@endsection

+ 2 - 0
resources/views/pro/measurements/actions.blade.php

@@ -0,0 +1,2 @@
+<a up-modal=".form-contents" up-width="800" up-history="false" href='/measurements/view/<?= $record->uid ?>/ACTION_updateBasic' class='d-block btn btn-sm btn-default mb-3'>Update Basic</a>
+<a up-modal=".form-contents" up-width="800" up-history="false" href='/measurements/view/<?= $record->uid ?>/ACTION_remove' class='d-block btn btn-sm btn-default mb-3'>Remove</a>

+ 36 - 0
resources/views/pro/measurements/index.blade.php

@@ -0,0 +1,36 @@
+@extends('layouts.pro-logged-in')
+@section('content')
+
+    <h3 class="d-flex my-3 px-3 stag-heading stag-heading-index">
+        <div>Measurements: 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>Client</th>
+<th>Label</th>
+<th>Value</th>
+<th>Effective Date</th>
+            </tr>
+            </thead>
+            <tbody>
+            @foreach($records as $record)
+                <tr>
+<td><a href="/measurements/view/<?= $record->uid ?>"><i class="fas fa-share-square"></i></a></td>
+<td><?= value_from_rs($result_clients, 'name_display', [['id', '=', $record->client_id], ], 'all'); ?></td>
+<td><?= $record->label ?></td>
+<td><?= $record->value ?></td>
+<td><?= $record->effective_date ?></td>
+                </tr>
+            @endforeach
+            </tbody>
+        </table>
+    </div>
+
+@endsection

+ 3 - 0
resources/views/pro/measurements/info.blade.php

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

+ 1 - 0
resources/views/pro/measurements/subs.blade.php

@@ -0,0 +1 @@
+<a href='/measurements/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/pro/measurements/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('pro/measurements/info')</div>
+        <div class="d-flex align-items-stretch">
+            <div class="inner-side-nav">
+                <div class="border-right h-100">
+                    @include('pro/measurements/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

+ 38 - 0
resources/views/pro/measurements_SINGLE/ACTION_remove.blade.php

@@ -0,0 +1,38 @@
+@extends('pro.measurements.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>Remove</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/measurement/remove">
+        <input type="hidden" name="_success" value="{{route('measurements-view', ['uid' => $record->uid])}}">
+        <input type="hidden" name="_return" value="{{route('measurements_SINGLE-ACTION_remove', ['uid' => $record->uid])}}">
+        
+        <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('measurements-view', ['uid' => $record->uid])}}" class="btn btn-sm btn-default px-5" up-close>Cancel</a>
+        </div>
+    </form>
+
+    </div></div>
+
+@endsection

+ 49 - 0
resources/views/pro/measurements_SINGLE/ACTION_updateBasic.blade.php

@@ -0,0 +1,49 @@
+@extends('pro.measurements.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 Basic</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/measurement/updateBasic">
+        <input type="hidden" name="_success" value="{{route('measurements-view', ['uid' => $record->uid])}}">
+        <input type="hidden" name="_return" value="{{route('measurements_SINGLE-ACTION_updateBasic', ['uid' => $record->uid])}}">
+        <div class='form-group mb-3'>
+<label class='control-label'>Label </label>
+<input class='form-control' type='text' name='label' value='{{ old('label') ? old('label') : $record->label }}' >
+</div>
+<div class='form-group mb-3'>
+<label class='control-label'>Value </label>
+<input class='form-control' type='number' name='value' value='{{ old('value') ? old('value') : $record->value }}' >
+</div>
+<div class='form-group mb-3'>
+<label class='control-label'>Effective Date </label>
+<input class='form-control' type='date' name='effectiveDate' value='{{ old('effectiveDate') ? old('effectiveDate') : $record->effective_date }}' >
+</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('measurements-view', ['uid' => $record->uid])}}" class="btn btn-sm btn-default px-5" up-close>Cancel</a>
+        </div>
+    </form>
+
+    </div></div>
+
+@endsection

+ 36 - 0
resources/views/pro/measurements_SINGLE/SUB_dashboard.blade.php

@@ -0,0 +1,36 @@
+@extends('pro.measurements.view')
+@section('content-inner')
+
+    <div class="row mt-3">
+    <div class="col-8">
+
+        <div class="table-responsive p-0 bg-white table-sm mb-3">
+    <table class="table table-hover text-nowrap table-striped border-left border-right border-bottom">
+        <thead>
+        <tr>
+            <th colspan="2" class="px-2">Measurement details
+                <span class="ml-auto"><!-- __GROUP_ACTION__ --></span>
+            </th>
+        </tr>
+        </thead>
+        <tbody>
+            <tr><td class="w-25 px-2 text-secondary border-right">Client</td><td class="w-75 px-2 font-weight-bold"><?= value_from_rs($result_clients, 'name_display', [['id', '=', $record->client_id], ], 'all'); ?></td></tr>
+<tr><td class="w-25 px-2 text-secondary border-right">Label</td><td class="w-75 px-2 font-weight-bold"><?= $record->label ?></td></tr>
+<tr><td class="w-25 px-2 text-secondary border-right">Value</td><td class="w-75 px-2 font-weight-bold"><?= $record->value ?></td></tr>
+<tr><td class="w-25 px-2 text-secondary border-right">Effective Date</td><td class="w-75 px-2 font-weight-bold"><?= $record->effective_date ?></td></tr>
+<tr><td class="w-25 px-2 text-secondary border-right">Is Removed</td><td class="w-75 px-2 font-weight-bold"><?= $record->is_removed ?></td></tr>
+        </tbody>
+    </table>
+</div>
+
+
+    </div>
+    <div class="col-4">
+        <div class="border-left h-100 pl-3">
+            @include('pro/measurements/actions')
+        </div>
+    </div>
+</div>
+
+
+@endsection

+ 17 - 0
routes/generated.php

@@ -79,6 +79,7 @@ Route::prefix('/clients/view/{uid}')->group(function () {
 	Route::get('ACTION_updateWhyNotEnrolledInRm', 'clients_SINGLE_Controller@ACTION_updateWhyNotEnrolledInRm')->name('clients_SINGLE-ACTION_updateWhyNotEnrolledInRm');
 	Route::get('ACTION_updateEquipmentInfo', 'clients_SINGLE_Controller@ACTION_updateEquipmentInfo')->name('clients_SINGLE-ACTION_updateEquipmentInfo');
 	Route::get('SUB_dashboard', 'clients_SINGLE_Controller@SUB_dashboard')->name('clients_SINGLE-SUB_dashboard');
+	Route::get('SUB_measurements', 'clients_SINGLE_Controller@SUB_measurements')->name('clients_SINGLE-SUB_measurements');
 	Route::get('SUB_med_profile', 'clients_SINGLE_Controller@SUB_med_profile')->name('clients_SINGLE-SUB_med_profile');
 	Route::get('SUB_med_profile_log', 'clients_SINGLE_Controller@SUB_med_profile_log')->name('clients_SINGLE-SUB_med_profile_log');
 	Route::get('SUB_pro_access', 'clients_SINGLE_Controller@SUB_pro_access')->name('clients_SINGLE-SUB_pro_access');
@@ -93,6 +94,7 @@ Route::prefix('/clients/view/{uid}')->group(function () {
 	Route::get('SUB_mcp_updates', 'clients_SINGLE_Controller@SUB_mcp_updates')->name('clients_SINGLE-SUB_mcp_updates');
 	Route::get('SUB_ally_updates', 'clients_SINGLE_Controller@SUB_ally_updates')->name('clients_SINGLE-SUB_ally_updates');
 	Route::get('SUB_audit_log', 'clients_SINGLE_Controller@SUB_audit_log')->name('clients_SINGLE-SUB_audit_log');
+	Route::get('ACTION_measurementsAddNew', 'clients_SINGLE_Controller@ACTION_measurementsAddNew')->name('clients_SINGLE-ACTION_measurementsAddNew');
 	Route::get('ACTION_med_profileAddNew', 'clients_SINGLE_Controller@ACTION_med_profileAddNew')->name('clients_SINGLE-ACTION_med_profileAddNew');
 	Route::get('ACTION_pro_accessAddNew', 'clients_SINGLE_Controller@ACTION_pro_accessAddNew')->name('clients_SINGLE-ACTION_pro_accessAddNew');
 	Route::get('ACTION_notesAddNew', 'clients_SINGLE_Controller@ACTION_notesAddNew')->name('clients_SINGLE-ACTION_notesAddNew');
@@ -129,6 +131,19 @@ Route::prefix('/relationships/view/{uid}')->group(function () {
 	Route::get('SUB_dashboard', 'relationships_SINGLE_Controller@SUB_dashboard')->name('relationships_SINGLE-SUB_dashboard');
 });
 
+// --- pro: measurements --- //
+Route::prefix('/measurements')->group(function () {
+	Route::get('', 'measurements_Controller@index')->name('measurements-index');
+	Route::get('view/{uid}', 'measurements_Controller@view')->name('measurements-view');
+});
+
+// --- pro: measurements_SINGLE --- //
+Route::prefix('/measurements/view/{uid}')->group(function () {
+	Route::get('ACTION_updateBasic', 'measurements_SINGLE_Controller@ACTION_updateBasic')->name('measurements_SINGLE-ACTION_updateBasic');
+	Route::get('ACTION_remove', 'measurements_SINGLE_Controller@ACTION_remove')->name('measurements_SINGLE-ACTION_remove');
+	Route::get('SUB_dashboard', 'measurements_SINGLE_Controller@SUB_dashboard')->name('measurements_SINGLE-SUB_dashboard');
+});
+
 // --- pro: erx --- //
 Route::prefix('/erx')->group(function () {
 	Route::get('', 'erx_Controller@index')->name('erx-index');
@@ -352,6 +367,8 @@ Route::prefix('/pros/view/{uid}')->group(function () {
 	Route::get('ACTION_setIsEnrolledAsHcpToFalse', 'pros_SINGLE_Controller@ACTION_setIsEnrolledAsHcpToFalse')->name('pros_SINGLE-ACTION_setIsEnrolledAsHcpToFalse');
 	Route::get('ACTION_setIsEnrolledAsMcpToTrue', 'pros_SINGLE_Controller@ACTION_setIsEnrolledAsMcpToTrue')->name('pros_SINGLE-ACTION_setIsEnrolledAsMcpToTrue');
 	Route::get('ACTION_setIsEnrolledAsMcpToFalse', 'pros_SINGLE_Controller@ACTION_setIsEnrolledAsMcpToFalse')->name('pros_SINGLE-ACTION_setIsEnrolledAsMcpToFalse');
+	Route::get('ACTION_setIsVideoVisitAssistantToTrue', 'pros_SINGLE_Controller@ACTION_setIsVideoVisitAssistantToTrue')->name('pros_SINGLE-ACTION_setIsVideoVisitAssistantToTrue');
+	Route::get('ACTION_setIsVideoVisitAssistantToFalse', 'pros_SINGLE_Controller@ACTION_setIsVideoVisitAssistantToFalse')->name('pros_SINGLE-ACTION_setIsVideoVisitAssistantToFalse');
 	Route::get('ACTION_removeProfilePicture', 'pros_SINGLE_Controller@ACTION_removeProfilePicture')->name('pros_SINGLE-ACTION_removeProfilePicture');
 	Route::get('ACTION_updateW9Detail', 'pros_SINGLE_Controller@ACTION_updateW9Detail')->name('pros_SINGLE-ACTION_updateW9Detail');
 	Route::get('ACTION_updateSignedContractPdf', 'pros_SINGLE_Controller@ACTION_updateSignedContractPdf')->name('pros_SINGLE-ACTION_updateSignedContractPdf');