From 34ef54f06d5183b463cce0305f649c182edca2b3 Mon Sep 17 00:00:00 2001 From: John D'Orazio Date: Sat, 4 Jun 2022 23:40:20 +0200 Subject: [PATCH] add more data to the metadata endpoint for nations add Missals and WiderRegions for better discovery --- LitCalMetadata.php | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/LitCalMetadata.php b/LitCalMetadata.php index 9cbe98c0..1885d229 100644 --- a/LitCalMetadata.php +++ b/LitCalMetadata.php @@ -27,6 +27,7 @@ $diocesanCalendars = json_decode( $index, true ); $nationalCalendars = []; $diocesanGroups = []; + $nationalCalendarsMetadata = []; foreach( $diocesanCalendars as $key => $value ) { unset( $diocesanCalendars[$key]["path"] ); if( array_key_exists( "group", $value ) && $value !== "" ) { @@ -37,14 +38,25 @@ } if( !array_key_exists($diocesanCalendars[$key]["nation"], $nationalCalendars) ) { $nationalCalendars[$diocesanCalendars[$key]["nation"]] = []; + $nationalCalendarsMetadata[$diocesanCalendars[$key]["nation"]] = [ + "missals" => [], + "widerRegions" => [], + "dioceses" => [] + ]; } $nationalCalendars[$diocesanCalendars[$key]["nation"]][] = $key; + $nationalCalendarsMetadata[$diocesanCalendars[$key]["nation"]]["dioceses"][] = $key; } foreach( $baseNationalCalendars as $nation ) { if( !array_key_exists( $nation, $nationalCalendars ) ) { $nationalCalendars[$nation] = []; } + if( file_exists( "nations/$nation/$nation.json" ) ) { + $nationData = json_decode( file_get_contents( "nations/$nation/$nation.json" ) ); + $nationalCalendarsMetadata[$nation]["missals"] = $nationData->Metadata->Missals; + $nationalCalendarsMetadata[$nation]["widerRegions"][] = $nationData->Metadata->WiderRegion->name; + } } $filterDirResults = ['..', '.', 'index.json']; $dirResults = array_diff( scandir('nations'), $filterDirResults ); @@ -58,6 +70,7 @@ $response = json_encode( [ "LitCalMetadata" => [ "NationalCalendars" => $nationalCalendars, + "NationalCalendarsMetadata" => $nationalCalendarsMetadata, "DiocesanCalendars" => $diocesanCalendars, "DiocesanGroups" => $diocesanGroups, "WiderRegions" => $widerRegionsNames,