The Pittsburgh Penguins will be without superstar centre Evgeni Malkin for a third straight game as he misses Saturday’s matchup against the Ottawa Senators.
Malkin, who also missed Thursday’s win over the Oilers with an upper-body injury, was on the ice before the team’s game-day skate.
The 19-year NHL veteran is third on the team in scoring with 32 points (eight goals and 24 assists) in 41 games. He crossed the 500-goal plateau earlier this season and sits at 506 goals and 1,328 points in his career.
Pittsburgh (18-17-8) is fifth in the Metropolitan Division record. The Senators, struggling to score, are seventh in the Atlantic at 19-18-3.
Watch the Penguins take on the Senators live Sportsnet+, starting at 4 p.m. ET / 1 p.m. MT.
#betmgm-odds {
@media (max-width: 767px) {
margin: 0 20px 20px 20px;
}
}
#betmgm-odds {
@media (min-width: 768px) and (max-width: 1023px) {
width: 83%;
margin: 0px auto 20px auto;
}
}
.betmgmArticle {
font-family: “protipo-narrow”, sans-serif !important;
width: 100%;
padding: 0;
margin-bottom: 24px;
border-radius: 8px;
display: inline-block;
font-family: Arial, sans-serif;
}
.betmgmArticle .header {
font-weight: bold;
margin-bottom: 10px;
display: block;
color: var(–core-sn-blue-800-blue, #06192F);
text-decoration: none;
}
.betmgmArticle .content {
display: flex;
flex-wrap: wrap;
align-items: center;
padding: 20px 10px;
border-radius: 8px;
border: 1px solid var(–Grey-Scale-400-Grey, #CED4DA);
background: var(–Grey-Scale-0-White, #FFF);
}
@media (max-width: 767px) {
.betmgmArticle .content {
padding: 20px;
}
}
@media (min-width: 768px) and (max-width: 1023px) {
.betmgmArticle .content {
padding: 20px 10px;
}
}
@media (min-width: 1024px) and (max-width: 1249px) {
.betmgmArticle .content {
padding: 20px;
}
}
@media (min-width: 1250px) {
.betmgmArticle .content {
padding: 20px 10px;
}
}
.betmgmArticle .section {
width: 82px;
flex: 1;
text-align: center;
}
.betmgmArticle .section .row {
font-size: 14px;
line-height: 22px;
}
.betmgmArticle .section-info {
flex: 2;
}
.betmgmArticle .section-info .gameDate {
color: var(–core-sn-blue-800-blue, #06192F);
text-align: center;
font-size: 14px;
font-style: normal;
font-weight: 700;
line-height: normal;
margin-bottom: 14px;
}
.betmgmArticle .section-info .team-logo {
width: 48px;
height: 48px;
display: inline-block;
}
.betmgmArticle .section-info .versus {
display: inline-block;
margin: 0 16px;
font-size: 14px;
color: #495057;
font-weight: 500;
}
.betmgmArticle .divider {
width: 1px;
background-color: #ddd;
background: var(–Grey-Scale-400-Grey, #CED4DA);
height: 82px;
margin: 0 16px;
}
.betmgmArticle .title {
text-align: center;
font-weight: bold;
margin-bottom: 8px;
font-size: 16px;
}
@media (max-width: 767px) {
.betmgmArticle .title {
text-align: left;
}
}
@media (min-width: 768px) and (max-width: 1023px) {
.betmgmArticle .title {
text-align: center;
}
}
@media (min-width: 1024px) and (max-width: 1249px) {
.betmgmArticle .title {
text-align: left;
}
}
@media (min-width: 1250px) {
.betmgmArticle .title {
text-align: center;
}
}
.betmgmArticle .row {
margin-bottom: 5px;
display: flex;
justify-content: space-between;
margin: 0;
}
.betmgmArticle .row::before {
display: none;
}
.betmgmArticle .value {
font-weight: bold;
}
.betmgmArticle .red {
color: red;
}
.betmgmArticle .green {
color: green;
}
.betmgmArticle .betmgm-button {
cursor: pointer;
}
.betmgmArticle .betmgm-button a {
text-decoration: none;
}
.betmgmArticle .button button {
background-color: #005EB8;
color: white;
padding: 6px 16px 14px 16px;
border: none;
border-radius: 5px;
cursor: pointer;
font-weight: bold;
}
.betmgmArticle .buttonText {
position: relative;
color: #ADB5BD;
font-size: 12px;
font-style: normal;
font-weight: 500;
line-height: normal;
text-align: left;
top: -6px;
margin-bottom: 10px;
}
.betmgmArticle .betMGMLogo {
text-align: left;
width: 150px;
height: 42px;
@media (max-width: 767px) {
background: url(‘../../../wp-content/themes/sportsnet-nhl/images/BetMGM-Black.svg’) no-repeat;
background-size: cover;
@media (prefers-color-scheme: dark) {
background: url(‘../../../wp-content/themes/sportsnet-nhl/images/BetMGM-White.svg’) no-repeat;
}
}
}
.betmgmArticle .betMGMLogo img {
text-align: left;
width: 150px;
height: 42px;
}
.betmgmArticle .content-mobile {
display: flex;
justify-content: space-around;
width: 100%;
margin-top: 20px;
}
@media (max-width: 767px) {
.betmgmArticle .content-mobile {
display: flex;
margin: 20px 0;
}
}
@media (min-width: 768px) and (max-width: 1023px) {
.betmgmArticle .content-mobile {
display: none;
}
}
@media (min-width: 1024px) and (max-width: 1249px) {
.betmgmArticle .content-mobile {
display: flex;
margin: 20px 0;
}
}
@media (min-width: 1250px) {
.betmgmArticle .content-mobile {
display: none;
}
}
.betmgmArticle .content-mobile .team-logos {
display: flex;
justify-content: flex-start;
width: 100%;
}
.betmgmArticle .content-mobile .team-logos .versus {
display: flex;
align-items: center;
}
.betmgmArticle .content-mobile .gameDate {
text-align: left;
margin-bottom: 8px;
}
.betmgmArticle .content-mobile .buttonText {
text-align: left;
top: 0;
margin-bottom: 12px;
text-decoration: none;
color: #ADB5BD;
}
@media (max-width: 767px) {
.betmgmArticle .desktop-only {
display: none;
}
}
@media (min-width: 768px) and (max-width: 1023px) {
.betmgmArticle .desktop-only {
display: block;
}
}
@media (min-width: 1024px) and (max-width: 1249px) {
.betmgmArticle .desktop-only {
display: none;
}
}
@media (min-width: 1250px) {
.betmgmArticle .desktop-only {
display: block;
}
}
async function fetchOddsData(league, gameId) {
const res = await fetch(`https://stats-api.sportsnet.ca/livetracker?league=${league}&id=${gameId}`, {
cache: ‘no-store’,
});
if (!res.ok) {
throw new Error(‘Failed to fetch odds data’);
}
const data = await res.json();
const oddsData = data?.data?.game?.details?.current_line;
const visitingTeam = data?.data?.game?.visiting_team;
const visitingTeamLogo = data?.data?.game?.visiting_team?.image_url_90;
const homeTeam = data?.data?.game?.home_team;
const homeTeamLogo = data?.data?.game?.home_team?.image_url_90;
const gameTimestamp = data?.data?.game?.details?.timestamp;
return { oddsData, visitingTeam, visitingTeamLogo, homeTeam, homeTeamLogo, gameTimestamp };
}
async function renderBetMGM(componentId, league, gameId) {
let oddsData, visitingTeam, visitingTeamLogo, homeTeam, homeTeamLogo, gameTimestamp, error;
const container = document.getElementById(componentId + ‘-odds’);
if (!container) return;
try {
({ oddsData, visitingTeam, visitingTeamLogo, homeTeam, homeTeamLogo, gameTimestamp } = await fetchOddsData(league, gameId));
} catch (err) {
error = err.message;
}
if (error) {
container.innerHTML = `
`;
return;
}
if (!oddsData) {
container.innerHTML = `
`;
return;
}
let gameDate = new Date(gameTimestamp * 1000);
const gameDateFormatted = gameDate.toLocaleDateString(‘en-US’, { year: ‘numeric’, month: ‘long’, day: ‘numeric’ });
container.innerHTML = `
? oddsData.fav_points
: oddsData.fav_points > 0 ? `-${oddsData.fav_points}` : `+${Math.abs(oddsData.fav_points)}`}
? oddsData.fav_money > 0 ? `+${oddsData.fav_money}` : oddsData.fav_money
: oddsData.underdog_money > 0 ? `+${oddsData.underdog_money}` : oddsData.underdog_money}
? oddsData.fav_points
: oddsData.fav_points > 0 ? `-${oddsData.fav_points}` : `+${Math.abs(oddsData.fav_points)}`}
? oddsData.fav_money > 0 ? `+${oddsData.fav_money}` : oddsData.fav_money
: oddsData.underdog_money > 0 ? `+${oddsData.underdog_money}` : oddsData.underdog_money}
`;
}
// Example usage
renderBetMGM(‘block_164bba7ceba2a2ff0577c0f203dad2d8’, ‘NHL’, ’13bfda5e-e6e7-46e5-b047-dce82f4e4342′);