|
@@ -0,0 +1,102 @@
|
|
|
+<?php
|
|
|
+ $intakeDataFields = [
|
|
|
+ 'height' => 'Height',
|
|
|
+ 'weight' => 'Weight',
|
|
|
+ 'last_vitamin_d' => 'Last Vitamin D',
|
|
|
+ 'ethnicity' => 'Ethnicity',
|
|
|
+ 'hypertension' => 'Hypertension',
|
|
|
+ 'diabetes' => 'Diabetes',
|
|
|
+ 'copd' => 'COPD',
|
|
|
+ 'arthritis' => 'Arthritis',
|
|
|
+ ];
|
|
|
+ $patientCanvasData = json_decode($patient->canvas_data ?? null);
|
|
|
+ $patientIntakeData = null;
|
|
|
+ if($patientCanvasData && @$patientCanvasData->INTAKE_DATA){
|
|
|
+ $patientIntakeData = @$patientCanvasData->INTAKE_DATA;
|
|
|
+ }
|
|
|
+?>
|
|
|
+
|
|
|
+<div id="grid-patient-intake-data-form" visit-moe moe relative wide class="ml-2 hide-inside-popup">
|
|
|
+ <a start show>
|
|
|
+ <i class="fa fa-edit"></i>
|
|
|
+ </a>
|
|
|
+ <form id="gridPatientIntakeDataForm" url="/api/client/updateCanvasData" class="mcp-theme-1" right>
|
|
|
+ <div id="gridPatientIntakeFormSection">
|
|
|
+ <div class="bg-light p-2 font-weight-bold mb-2">Update Patient Intake Data</div>
|
|
|
+ <input type="hidden" name="uid" value="{{$patient->uid}}">
|
|
|
+ <input type="hidden" name="key" value="INTAKE_DATA">
|
|
|
+ <input type="hidden" name="data">
|
|
|
+ <div class="row">
|
|
|
+ @foreach($intakeDataFields as $key=>$label)
|
|
|
+ <div class="col-md-6 mb-2">
|
|
|
+ <label class="text-secondary text-sm font-weight-bold">{{ $label }}</label>
|
|
|
+ <input name="{{$key}}" class="form-control" value="{{ $patientIntakeData ? @$patientIntakeData->{$key}:'' }}" />
|
|
|
+ </div>
|
|
|
+ @endforeach
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="mb-2">
|
|
|
+ <button submit class="btn btn-sm btn-primary mr-1">Submit</button>
|
|
|
+ <button cancel class="btn btn-sm btn-default border">
|
|
|
+ Cancel
|
|
|
+ </button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </form>
|
|
|
+</div>
|
|
|
+
|
|
|
+<script>
|
|
|
+ (function() {
|
|
|
+ function init() {
|
|
|
+ (function($){
|
|
|
+ var patientDataIntake = {
|
|
|
+ form: null,
|
|
|
+ data:{},
|
|
|
+ showForm: false,
|
|
|
+ patientIntakeData: <?= json_encode($patientIntakeData) ?>,
|
|
|
+ initOnInputChange: function(){
|
|
|
+ var self = this;
|
|
|
+ self.form.find('input').change(function(evt){
|
|
|
+ var input = evt.target;
|
|
|
+ var name = input.name;
|
|
|
+ var value = input.value;
|
|
|
+ self.data[name] = value;
|
|
|
+ self.updateJsonStringValue();
|
|
|
+ });
|
|
|
+ },
|
|
|
+ updateJsonStringValue: function(){
|
|
|
+ var self = this;
|
|
|
+ self.form.find('input[name=data]').val(JSON.stringify(self.data));
|
|
|
+ },
|
|
|
+ toggleForm: function(){
|
|
|
+ var target = $('#gridPatientIntakeFormSection');
|
|
|
+ var table = $('#gridPatientIntakeDataDisplay');
|
|
|
+ if(this.showForm){
|
|
|
+ target.removeClass('d-none');
|
|
|
+ table.addClass('d-none');
|
|
|
+ }else{
|
|
|
+ target.addClass('d-none');
|
|
|
+ table.removeClass('d-none');
|
|
|
+ }
|
|
|
+ },
|
|
|
+ setDefaultData: function(){
|
|
|
+ var self = this;
|
|
|
+ if(!this.patientIntakeData) return;
|
|
|
+ for(var f in this.patientIntakeData){
|
|
|
+ var value = this.patientIntakeData[f];
|
|
|
+ self.data[f] = value;
|
|
|
+ }
|
|
|
+ self.updateJsonStringValue();
|
|
|
+ },
|
|
|
+ init: function(){
|
|
|
+ this.form = $('#gridPatientIntakeDataForm');
|
|
|
+ this.initOnInputChange();
|
|
|
+ this.setDefaultData();
|
|
|
+ }
|
|
|
+ };
|
|
|
+ patientDataIntake.init();
|
|
|
+ })(jQuery);
|
|
|
+ }
|
|
|
+ addMCInitializer('grid-patient-intake-data-form', init, '#grid-patient-intake-data-form');
|
|
|
+ })();
|
|
|
+</script>
|