2626 */
2727// @ts -ignore 2570 LitcalEvents is defined in admin.php
2828let litcal_events = LitcalEvents ;
29+ let litcal_events_keys = litcal_events . map ( event => event . event_key ) ;
2930
3031/**
3132 * Represents the DateTime format used for displaying full dates in the UTC timezone.
@@ -129,7 +130,7 @@ const sanitizeOnSetValue = {
129130 if ( typeof value !== 'string' ) {
130131 console . warn ( `property ${ prop } of this object must be of type string` ) ;
131132 return ;
132- } else if ( false === Object . keys ( litcal_events ) . includes ( value ) ) {
133+ } else if ( false === litcal_events_keys . includes ( value ) ) {
133134 console . warn ( `property ${ prop } of this object must contain a valid Liturgical Event Key` ) ;
134135 return ;
135136 }
@@ -494,8 +495,9 @@ const rebuildFestivitiesOptions = async (element) => {
494495 const data_1 = await fetch ( API . path ) ;
495496 const json = await data_1 . json ( ) ;
496497 litcal_events = Object . freeze ( json . litcal_events ) ;
498+ litcal_events_keys = litcal_events . map ( event => event . event_key ) ;
497499 let htmlStr = '' ;
498- for ( const [ key , el ] of Object . entries ( litcal_events ) ) {
500+ for ( const el of litcal_events ) {
499501 let dataMonth = '' ;
500502 let dataDay = '' ;
501503 let dataGrade = '' ;
@@ -508,7 +510,7 @@ const rebuildFestivitiesOptions = async (element) => {
508510 if ( el . hasOwnProperty ( "grade" ) ) {
509511 dataGrade = ` data-grade="${ el . grade } "` ;
510512 }
511- htmlStr += `<option value="${ key } "${ dataMonth } ${ dataDay } ${ dataGrade } >${ el . name } (${ el . grade_lcl } )</option>` ;
513+ htmlStr += `<option value="${ el . event_key } "${ dataMonth } ${ dataDay } ${ dataGrade } >${ el . name } (${ el . grade_lcl } )</option>` ;
512514 }
513515 document . querySelector ( '#existingFestivitiesList' ) . innerHTML = htmlStr ;
514516}
@@ -557,8 +559,8 @@ $(document).on('change', '#litCalTestsSelect', async (ev) => {
557559 await rebuildFestivitiesOptions ( document . querySelector ( '#APICalendarSelect' ) ) ;
558560 document . querySelector ( '#existingFestivityName' ) . value = proxiedTest . event_key ;
559561 console . log ( `keys of litcal_events after rebuildFestivitiesOptions:` ) ;
560- console . log ( Object . keys ( litcal_events ) . sort ( ) ) ;
561- AssertionsBuilder . test = litcal_events [ proxiedTest . event_key ] ;
562+ console . log ( litcal_events_keys . sort ( ) ) ;
563+ AssertionsBuilder . test = litcal_events . filter ( el => el . event_key === proxiedTest . event_key ) [ 0 ] ?? null ;
562564 AssertionsBuilder . appliesTo = proxiedTest . applies_to [ calendarType ] ;
563565 }
564566 $ ( '#assertionsContainer' ) . empty ( ) ;
0 commit comments