diff --git a/ProjectSourceCode/src/index.js b/ProjectSourceCode/src/index.js index 1146ef6..368187b 100644 --- a/ProjectSourceCode/src/index.js +++ b/ProjectSourceCode/src/index.js @@ -86,6 +86,7 @@ const fetchMatchesData = require('./resources/middleware/navigation-bar/current- app.use(fetchMatchesData); //Middleware to automatically update in-game time abbreviations + const convert_time = require('./resources/middleware/navigation-bar/convert-time'); app.use(convert_time); diff --git a/ProjectSourceCode/src/resources/middleware/league-page/get-current-league-top-scorers.js b/ProjectSourceCode/src/resources/middleware/league-page/get-current-league-top-scorers.js new file mode 100644 index 0000000..72c0f19 --- /dev/null +++ b/ProjectSourceCode/src/resources/middleware/league-page/get-current-league-top-scorers.js @@ -0,0 +1,44 @@ +const axios = require('axios'); + +// Middleware function to fetch leagues data +const fetchLeagueScorerData = async (req, res, next) => { + try { + // Extract league ID from the URL + const leagueID = req.params.leagueID; + + // Make GET request to the API endpoint using the league ID + const response = await axios.get(`http://api.football-data.org/v4/competitions/${leagueID}/scorers?season&limit=20`, { + headers: { + 'X-Auth-Token': '0aa1ed31245d4a36b1ef5a79150324b3', // Add your API key here + }, + }); + + // Extract relevant data from the API response + const scorerData = response.data; + + // Attach the data to res.locals + res.locals.scorers = { + scorers: scorerData.scorers.map(player => ({ + player: { + player_id: player.player.id, + player_name: player.player.name, + }, + team: { + team_id: player.player.id, + team_name: player.team.name, + team_crest: player.team.crest, + }, + games_played: player.playedMatches, + goals: player.goals, + })) + }; + + next(); + } catch (error) { + console.error('Error fetching leagues data:', error); + res.locals.scorers = null; // Set to null if there's an error + next(); // Call next middleware or route handler + } +}; + +module.exports = fetchLeagueScorerData; diff --git a/ProjectSourceCode/src/views/pages/league-page.hbs b/ProjectSourceCode/src/views/pages/league-page.hbs index e2be7d1..7e1bc30 100644 --- a/ProjectSourceCode/src/views/pages/league-page.hbs +++ b/ProjectSourceCode/src/views/pages/league-page.hbs @@ -49,7 +49,7 @@