@@ -17,26 +17,38 @@ window.onload = async (event) => {
1717 const formTitle = document . getElementById ( "card-questionnary-details-title" ) ;
1818 formTitle . innerHTML = patientLib . getFormTitle ( questionaryId ) ;
1919 const dateInput = document . getElementById ( "form-date" ) ;
20- dateInput . value = new Date ( ) . toISOString ( ) . split ( "T" ) [ 0 ] ; // format YYYY-MM-DD
20+ dateInput . value = dateToDayStr ( new Date ( ) ) ;
2121 dateInput . onfocusout = function ( ) {
2222 const date = dateInput . valueAsDate ;
2323 console . log ( "## Focus Out Date" , date ) ;
24- refreshAll ( date ) ;
24+ refreshAll ( dateToDayStr ( date ) ) ;
2525 } ;
2626
27- refreshAll ( dateInput . valueAsDate ) ;
27+ refreshAll ( dateToDayStr ( dateInput . valueAsDate ) ) ;
2828} ;
2929
30- async function refreshAll ( date ) {
31- console . log ( "## Refresh Form Date:" , date ) ;
30+ function dateToDayStr ( date ) {
31+ return date . toISOString ( ) . split ( "T" ) [ 0 ] ; // format YYYY-MM-DD
32+ }
33+
34+ // expose refreshAll for date links
35+ window . refreshClick = refreshClick ;
36+ function refreshClick ( dateStr ) {
37+ const dateInput = document . getElementById ( "form-date" ) ;
38+ dateInput . value = dateStr ;
39+ refreshAll ( dateStr ) ;
40+ }
41+
42+ async function refreshAll ( dateStr ) {
43+ console . log ( "## Refresh Form Date:" , dateStr ) ;
3244 const { questionaryId, formKey } = navData ;
3345 // -- content
3446 console . log ( ) ;
3547 const formData = await patientLib . getFormContent (
3648 questionaryId ,
3749 formKey
3850 ) ;
39- const tableRow = await refreshDataTable ( date ) ;
51+ const tableRow = await refreshDataTable ( dateStr ) ;
4052 console . log ( '## tableRow' , tableRow ) ;
4153
4254 // HACKY WAY TO ADD EXISTNG CONTENT SHOULD BE DONE IN LIB
@@ -49,12 +61,12 @@ async function refreshAll(date) {
4961
5062 updateFormContent ( formData ) ;
5163 document . getElementById ( "submit-button-list" ) . onclick = function ( ) {
52- submitForm ( formData , date ) ;
64+ submitForm ( formData , dateStr ) ;
5365 } ;
5466}
5567
56- async function refreshDataTable ( date ) {
57- const currentDateStr = date . toISOString ( ) . split ( "T" ) [ 0 ] ; // format YYYY-MM-DD ;
68+ async function refreshDataTable ( currentDateStr ) {
69+ console . log ( '>> refreshTable' , currentDateStr ) ;
5870 let currentValue = { } ;
5971 const { questionaryId, formKey } = navData ;
6072 const tableData = await patientLib . getHistoricalContent (
@@ -78,11 +90,11 @@ async function refreshDataTable(date) {
7890 const row = table . insertRow ( - 1 ) ;
7991 if ( currentDateStr === data . dateStr ) {
8092 currentValue = data ;
81- row . style . backgroundColor = 'grey' ;
93+ row . style . backgroundColor = '#D3D3D3' ; // light grey
8294 }
8395
8496 const cellDate = row . insertCell ( - 1 ) ;
85- cellDate . innerHTML = data . dateStr ;
97+ cellDate . innerHTML = `<A HREF="javascript:refreshClick(' ${ data . dateStr } ')"> ${ data . dateStr } </A>` ;
8698 for ( const th of tableData . tableHeaders ) {
8799 const cell = row . insertCell ( - 1 ) ;
88100 const v = data [ th . fieldId ] ?. value ;
0 commit comments