diff --git a/handlers/handlers.go b/handlers/handlers.go index 799450f0e7813631d8d32ef89e474a1642e85154..a50eb138e524fa4212a0d1315a607f71d7485a1d 100644 --- a/handlers/handlers.go +++ b/handlers/handlers.go @@ -59,7 +59,7 @@ func ReadershipHandler(w http.ResponseWriter, r *http.Request) { } // Fetch countries for the given language - countries, err := services.FetchCountriesByLanguage(language) + countries, err := services.FetchCountriesByLanguage(language) if err != nil { http.Error(w, err.Error(), http.StatusInternalServerError) return @@ -68,7 +68,7 @@ func ReadershipHandler(w http.ResponseWriter, r *http.Request) { // Fetch population data for each country and calculate total readership var readershipDetails []models.ReadershipDetail var totalReadership int64 = 0 - for _, country := range countries.Countries { + for _, country := range countries { // Directly range over countries population, err := services.FetchPopulationByCountryCode(country.ISOCode) if err != nil { http.Error(w, err.Error(), http.StatusInternalServerError) @@ -77,7 +77,7 @@ func ReadershipHandler(w http.ResponseWriter, r *http.Request) { totalReadership += population readershipDetail := models.ReadershipDetail{ - Country: country.Name, + Country: country.Official_Name, ISOCode: country.ISOCode, Books: len(books.Results), Authors: services.CalculateUniqueAuthors(books.Results), @@ -96,13 +96,14 @@ func ReadershipHandler(w http.ResponseWriter, r *http.Request) { json.NewEncoder(w).Encode(readershipDetails) } + func StatusHandler(w http.ResponseWriter, r *http.Request) { status := models.ServiceStatus{ GutendexAPI: services.CheckServiceAvailability("http://129.241.150.113:8000/books/"), LanguageAPI: services.CheckServiceAvailability("http://129.241.150.113:3000/language2countries/"), CountriesAPI: services.CheckServiceAvailability("http://129.241.150.113:8080/v3.1/"), Version: "v1", - Uptime: services.GetUptime(), // Implement GetUptime in your services package + Uptime: services.GetUptime(), // Implement GetUptime in services package } w.Header().Set("Content-Type", "application/json")