Résultat MASSY – ALBI
Au STADE JULES LADOUMÈGUE 91300 Massy, ALBI bat MASSY 25 à 15 (mi-temps: 15-10) pour le compte de la compétition nationale – Journée 24 – Poule 1
Statistiques du match:
MASSY :
- Essais: 0
- Pénalités: 5
- Transformations: 0
- Cartons jaunes: 1
- Cartons rouges: 1
ALBI:
- Essais: 3
- Pénalités: 2
- Transformations: 2
- Cartons jaunes: 1
- Cartons rouges: 0
Les équipes:
Composition MASSY :
(1) POIPY ROBIN, (2) TRASSOUDAINE PIERRE, (3) FERRER NICOLAS, (4) NONKONTWANA ABONGILE, (5) MAHU ANDREI, (6) BOUTIN HUGO, (7) LOUBIERE ALEXANDRE, (8) NOLLET SAMUEL, (9) PRIER BENJAMIN, (10) VERDU HUGO, (11) GOGOLADZE GIORGI, (12) JACOMME VICTORIEN, (13) SEIGNEURET ARTHUR, (14) DIT ROBAGLIA YANNIS, (15) DELEUZE TOM, (16) DUCLIEU PIERRE ALEXANDRE, (17) CORREA FERNANDEZ, (18) ROUSSET LILIAN, (19) PESVIANIDZE SABA, (20) VIDONI CLEMENT, (21) RUBIO LUCAS, (22) SITAUTI KIMAMI, (23) VISSER TIJDE
Composition ALBI:
(1) SOAVE ANTOINE, (2) VENTER REINACH, (3) DE CLERCQ JEAN BAPTISTE, (4) CALMON GUILLEM, (5) ENGELBRECHT JACQUES, (6) ROUSSEL PIERRE, (7) STRINGER LUKE, (8) JARREAU CAMILLE, (9) QUEHEILLE GILEN, (10) TEDDER JAMES, (11) ROBINSON SEAN JACK, (12) POI JARROD, (13) COUCHINAVE BAPTISTE, (14) HARTMANN SIMON, (15) DOSPITAL TEO, (16) CASTANT ARTHUR, (17) PINDOR LUCAS, (18) OULAI DION, (19) CALAS VINCENT, (20) VIDAL THEO, (21) PEHAU BENJAMIN, (22) MARZOCCA ENZO, (23) TCHAPNGA TCHENOU NARCISSE DIMITRI
Massy en direct
Massy en direct : Suivez tous vos matchs de rugby préférés à la radio ou en score live, en cliquant simplement sur le match de votre choix ci-dessous pour ouvrir le live et les radios. Vous pouvez également accéder à toutes les rencontres via les onglets “🔴 En Direct” et “Résultats”. Ne manquez rien des compétitions chaque week-end : XV de France (H/F/U20), Coupe d’Europe, Sevens, Top 14, Pro D2, Nationale, Fédérale, et bien plus encore. Plongez au cœur de l’action en un seul clic !
Chargement en cours …
Équipe Locale | Équipe Visiteuse |
---|
var teamRequest = false; function getRencontreId() { let urlParams = new URLSearchParams(window.location.search); let rId = urlParams.get('id'); if (!rId) { const matchContainer = document.getElementById('match-container'); if (matchContainer) { rId = matchContainer.getAttribute('data-match-id'); } } if (!rId) { rId = findRencontreIdInComments(); } console.log(rId); return rId; } function findRencontreIdInComments() {
var urlElement = document.querySelector('dd.tribe-events-event-url a'); if (urlElement) { var href = urlElement.getAttribute('href'); var rId = new URL(href).searchParams.get('id'); return rId; } else { const matchContainer = document.getElementById('team-container'); document.getElementById('match-container'); rId = matchContainer.getAttribute('team-match-id'); teamRequest = true; return rId; } }
function fetchDataAndUpdate() { var apiUrl = '' const rencontreId = getRencontreId(); if (teamRequest) { apiUrl = `https://rugby-app-4ebacff10fda.herokuapp.com/rencontres/next_rencontre?id=${rencontreId}` } else { apiUrl = `https://rugby-app-4ebacff10fda.herokuapp.com/rencontres/${rencontreId}` } fetch(apiUrl) .then(response => response.json()) .then(allData => { const data = allData[0]; if (data.rencontre_resultat_locale && data.rencontre_resultat_visiteuse) { createChart(data); updateLists(data); } updateActions(data); updateScoreAndTeams(data); creerTableau(data); const contentDisplay = document.getElementById('content-display'); if (data.content) { contentDisplay.innerHTML = data.content; } const radioContainer = document.querySelector('.refresh-button-container'); radioContainer.innerHTML = ''; const radios = (data.local_team.radios || []).concat(data.visitor_team.radios || []); const uniqueRadios = Array.from(new Set(radios.map(radio => radio.id))) .map(id => radios.find(radio => radio.id === id)); if (radios && radios.length > 0) { uniqueRadios.forEach(radio => { const radioButton = document.createElement('button'); radioButton.textContent = `Ecouter sur ${radio.name}`; radioButton.classList.add('radio-button'); radioButton.onclick = function () { playRadio(radio.name, radio.link, radio.logo); }; radioContainer.appendChild(radioButton); }); } else { radioContainer.style.display = 'none'; } if (data.youtube_link) { const youtubeContainer = document.querySelector('.youtube-container'); const youtubeIframe = document.getElementById('youtube-video'); youtubeIframe.src = data.youtube_link; youtubeContainer.style.display = 'block'; } const liveFbLink = data.fb_live const container_fb = document.getElementById('fb-live-container'); if (liveFbLink && liveFbLink.includes('?v=')) { const videoId = liveFbLink.split('?v=')[1]; const videoUrlEncoded = encodeURIComponent(`https://www.facebook.com/facebook/videos/${videoId}/`); const iframeSrc = `https://www.facebook.com/plugins/video.php?href=${videoUrlEncoded}&width=560&height=314&show_text=false&appId&mute=0`; const iframe = document.createElement('iframe'); iframe.src = iframeSrc; iframe.width = '560'; // Définir la largeur iframe.height = '314'; // Définir la hauteur iframe.style.border = 'none'; iframe.style.overflow = 'hidden'; iframe.scrolling = 'no'; iframe.setAttribute('frameborder', '0'); iframe.setAttribute('allowfullscreen', 'true'); iframe.setAttribute('allow', 'autoplay; clipboard-write; encrypted-media; picture-in-picture; web-share'); container_fb.style.display = 'block'; container_fb.appendChild(iframe); }
if (data.etat === 'termine' || radios.length === 0) { radioContainer.style.display = 'none'; } else { resetTimer(); } }); }
function creerTableau(statsData) { const table = document.getElementById('matchTable'); table.innerHTML = ''; let headerRow = `
`; table.insertAdjacentHTML('beforeend', headerRow); const labels = { "classement_actuel": "Classement actuel", "victoires_domicile": "Victoires domicile", "victoires_exterieur": "Victoires extérieur", "points_domicile": "Points domicile", "points_exterieur": "Points extérieur", "essais_marques_domicile": "Essais marqués domicile", "essais_marques_exterieur": "Essais marqués extérieur", "essais_encaisses_domicile": "Essais encaissés domicile", "essais_encaisses_exterieur": "Essais encaissés extérieur", "tendance_globale": "Tendance globale", "penalites_encaissees_domicile": "Pénalités encaissées domicile", "penalites_encaissees_exterieur": "Pénalités encaissées extérieur" }; Object.keys(labels).forEach(key => { let row = `
`; table.insertAdjacentHTML('beforeend', row); }); }
function formatData(data) { if (typeof data === 'string' && data.match(/V|N|D/)) { let formattedData = data.split(' ').map(el => { switch (el) { case 'V': return '' + el + ''; case 'N': return '' + el + ''; case 'D': return '' + el + ''; default: return el; } }).join(' '); return formattedData; } else { return data; } }
function createTimelineItem(action, actionTeamName, isLocalTeam, actionTeam) { const li = document.createElement('li'); if (action.type === 'comment') {
li.className = 'timeline-item timeline-comment'; li.style = "width: 100%;" li.innerHTML = `
${action.text}
`; return li; }
li.className = 'timeline-item ' + (isLocalTeam ? 'local' : 'visitor'); let sousTypeString = ''; let minute = action.minutes + ' minutes';
if (action.type === 'CARD') { sousTypeString = action.sousType || ''; }
const img = document.createElement('img'); img.src = `https://vibrez-rugby.com/wp-content/uploads/2024/08/${action.type_traduit ? action.type_traduit.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().replace(/\s+/g, '') : ''}${sousTypeString}.png`; img.className = 'action-icon';
let teamContent = ''; let actionsVar = '';
if (action.type !== 'Start' && action.type !== 'Stop' && action.type !== 'MT') { teamContent = `
`; actionsVar = action.type_traduit; } else { minute = ''; if (action.type == 'Start') { actionsVar = 'Début'; } else { actionsVar = 'Fin'; } }
li.innerHTML = `
${teamContent}
${actionsVar}
${action.Joueur1 ? `
${action.Joueur1.Personne.nom}
` : ''} ${action.Joueur2 ? `
${action.Joueur2.Personne.nom}
` : ''}
`;
li.querySelector('.timeline-marker').appendChild(img); return li; }
function updateActions(data) { const timeline = document.querySelector('.timeline'); timeline.innerHTML = ''; if (data.etat !== 'A venir' && data.etat !== 'avenir') { if (Array.isArray(data.actions)) { for (const action of data.actions) { const isLocalTeam = String(action.competitionEquipeId) === String(data.local_team.id); const actionTeam = isLocalTeam ? data.local_team : data.visitor_team; const actionTeamName = actionTeam.img_url; const item = createTimelineItem(action, actionTeamName, isLocalTeam, actionTeam); timeline.appendChild(item); } } } if (!data.compositon_equipe_local) return; const table = document.querySelector(".custom-composition-table"); while (table.rows.length > 1) table.deleteRow(1);
const sortedEquipeLocal = data.compositon_equipe_local.sort((a, b) => a.numero - b.numero); const sortedEquipeVisiteur = data.compositon_equipe_visiteur.sort((a, b) => a.numero - b.numero);
for (const [i, joueurLocal] of sortedEquipeLocal.entries()) { const joueurVisiteur = sortedEquipeVisiteur[i]; const row = table.insertRow(); row.insertCell(0).innerHTML = `${joueurLocal.numero}${joueurLocal.nom} ${joueurLocal.estCapitaine ? "C" : ""}`; row.insertCell(1).innerHTML = joueurVisiteur ? `${joueurVisiteur.numero}${joueurVisiteur.nom} ${joueurVisiteur.estCapitaine ? "C" : ""}` : ''; } } function getFormeHtml(equipe) { let formeArray = equipe.forme; return formeArray.map(val => { if (val === 'V') { return ''; } else if (val === 'N') { return ''; } else if (val === 'D') { return ''; } }).join(' '); }
function updateScoreAndTeams(data) { const scoreContainer = document.querySelector(".custom-score-container"); const emblemeLocal = document.querySelector(".custom-emblem-local"); const dateContainer = document.querySelector(".custom_date"); const nomLocal = document.querySelector(".custom-local-name"); const formeLocal = document.querySelector(".circle"); const emblemeVisiteur = document.querySelector(".custom-emblem-visitor"); const nomVisiteur = document.querySelector(".custom-visitor-name"); const summary = document.querySelector(".match-summary"); const h1Container = document.querySelector(".custom-h1");
emblemeLocal.src = data.local_team.img_url;
let formeEquipeLocale = getFormeHtml(data.local_team);
let formeEquipeVisiteuse = getFormeHtml(data.visitor_team);
nomLocal.innerHTML = data.local_team.name + '
' + formeEquipeLocale;
emblemeVisiteur.src = data.visitor_team.img_url;
nomVisiteur.innerHTML = data.visitor_team.name + '
' + formeEquipeVisiteuse;
const gameStatus = data.etat === 'endirect' || data.etat === 'avenir' ? 'en Direct' : '';
const gameFinish = data.etat === 'termine' ? 'Résultat' : '';
h1Container.textContent = `${gameFinish} ${data.local_team.name} - ${data.visitor_team.name} ${gameStatus}`;
const date = new Date(data.date);
const dateFormatted = `${date.toLocaleDateString('fr-FR', {
year: 'numeric',
month: 'long',
day: 'numeric',
})}`;
const heureFormatted = `${date.toLocaleTimeString('fr-FR', {
hour: '2-digit',
minute: '2-digit',
})}`;
let day = data.day.replace(/(\d+e)-journee/g, "$1 journée")
.replace(/(\b\d+\b)/g, "$1e journée");
const existingDiv = summary.querySelector('.date');
if (existingDiv) {
summary.removeChild(existingDiv);
}
let newDiv = document.createElement('div');
newDiv.classList.add('date');
newDiv.innerHTML = `
${data.competition} - ${day}
${dateFormatted}
`;
if (data.rencontre_resultat_locale && data.etat === "termine") { summary.insertBefore(newDiv, summary.firstChild); scoreContainer.innerHTML = `
`;
if (dateContainer) dateContainer.remove(); } else if (data.etat === 'endirect') { summary.insertBefore(newDiv, summary.firstChild); scoreContainer.innerHTML = `
`;
if (dateContainer) dateContainer.remove(); summary.classList.remove('hide'); } else { summary.classList.add('hide'); dateContainer.innerHTML = `
`; } }
function updateLists(data) { const summaryTable = document.querySelector('.summary-table'); summaryTable.innerHTML = ''; const orderedKeys = ['MI-TEMPS', 'ESSAI', 'TRANSFORMATION', 'PENALITE', 'DROP', 'CARTON_JAUNE', 'CARTON_ROUGE'];
const localeStats = data?.stats?.locale || {}; const extStats = data?.stats?.ext || {};
orderedKeys.forEach((key, index) => { const localKey = key.toLowerCase(); const visitorKey = key.toLowerCase();
let localValue = localeStats.hasOwnProperty(localKey) ? localeStats[localKey] : 0; let visitorValue = extStats.hasOwnProperty(visitorKey) ? extStats[visitorKey] : 0;
if (key === 'MI-TEMPS') { localValue = localeStats.hasOwnProperty(localKey) ? localeStats[localKey] : null; visitorValue = extStats.hasOwnProperty(visitorKey) ? extStats[visitorKey] : null; }
if (localValue !== null || visitorValue !== null) { const tr = document.createElement('tr'); const tdLocal = document.createElement('td'); tdLocal.textContent = localValue; const tdKey = document.createElement('td'); tdKey.textContent = key; const tdVisitor = document.createElement('td'); tdVisitor.textContent = visitorValue; tr.appendChild(tdLocal); tr.appendChild(tdKey); tr.appendChild(tdVisitor); // if (index >= 3) tr.classList.add('hide'); summaryTable.appendChild(tr); } }); } function showTab(id) { document.querySelectorAll('.tab-content').forEach(el => el.classList.remove('active')); document.querySelectorAll('.tab').forEach(el => el.classList.remove('active')); document.getElementById(id).classList.add('active'); document.querySelector(`.tab[onclick="showTab('${id}')"]`).classList.add('active'); }
let myChart; function createChart(data) { const chartData = data.chart; if (chartData) { const labels = Array.from({ length: 80 }, (_, i) => i); const teams = { [data.local_team.id]: { name: data.local_team.name, color: 'orange' }, [data.visitor_team.id]: { name: data.visitor_team.name, color: 'blue' } };
const datasets = Object.keys(teams).map(teamId => { const rawTeamData = chartData .filter(item => item.team === teamId) .map(item => ({ x: item.minutes, y: item.score })); return { label: teams[teamId].name, data: rawTeamData, borderColor: teams[teamId].color, borderWidth: 2, tension: 0.1, fill: false, pointRadius: 0, }; });
const localTeamDataset = datasets.find(dataset => dataset.label === teams[data.local_team.id].name); const sortedDatasets = [localTeamDataset].concat(datasets.filter(dataset => dataset !== localTeamDataset));
if (myChart) { myChart.destroy(); }
if (document.getElementById('myChart')) { const ctx = document.getElementById('myChart').getContext('2d'); myChart = new Chart(ctx, { type: 'line', data: { labels: labels, datasets: sortedDatasets }, options: { plugins: { legend: { display: true, position: 'top', labels: { usePointStyle: true } } }, scales: { x: { display: true, title: { display: true, text: 'Minutes' }, type: 'linear', position: 'bottom', min: 0, max: 80, // Assurez-vous de définir la valeur maximale en fonction de la durée du match }, y: { display: true } }, } }); } } }
let refreshTimeout = null;
function resetTimer() { if (refreshTimeout) { clearTimeout(refreshTimeout); } refreshTimeout = setTimeout(() => { fetchDataAndUpdate(); }, 60000); }
function playRadio(name, url, logo) { const playerContainer = document.querySelector('.spotify-style-player'); const audioTitle = playerContainer.querySelector('.audio-title'); const audioSource = playerContainer.querySelector('audio source'); const audioPlayer = playerContainer.querySelector('audio'); const logoImg = playerContainer.querySelector('.radio-logo'); const closeButton = playerContainer.querySelector('.close-button');
const adUrl = 'https://vibrez-rugby.com/wp-content/uploads/2024/10/pub-delpit-services.mp3';
closeButton.addEventListener('click', function () { playerContainer.style.display = 'none'; audioPlayer.pause(); });
function playAdAndThenRadio() { audioTitle.innerHTML = `Publicité...`; audioSource.src = adUrl; logoImg.src = logo; audioPlayer.load(); playerContainer.style.display = 'flex'; audioPlayer.play().then(() => { audioPlayer.onended = function () {
audioTitle.innerHTML = `Vous écoutez ${name}`; audioSource.src = url; logoImg.src = logo; audioPlayer.load(); audioPlayer.play().catch(error => { console.error("Autoplay blocked by the browser: ", error); }); }; }).catch(error => { console.error("Autoplay blocked by the browser: ", error); }); }
playAdAndThenRadio(); }
window.onload = function () { fetchDataAndUpdate(); };
Comme chaque journée, retrouvez chez nous une couverture en direct de tous les passionnants matchs de RCME – Massy Rugby à travers toutes les compétitions. Que préfériez suivre les rencontres en écoutant une couverture radio détaillée ou en suivant les scores en temps réel, nous avons tout ce dont avez besoin pour ne rien manquer de l’action sur le terrain.
Notre service couvre toutes les compétitions majeures, y compris RCME – Massy Rugby en direct et le prestigieux tournoi des six nations, Top 14, la Pro D2, la Nationale et la Fédérale. Peu importe votre ligue préférée ou votre équipe favorite, trouverez ici une mine d’informations pour vivre chaque instant de RCME – Massy Rugby en direct.
Accédez à notre couverture de RCME – Massy Rugby en direct Top 14, il suffit de naviguer dans notre menu convivial. Une fois là-bas, trouverez un onglet dédié intitulé « EN DIRECT ». Cliquez simplement sur cet onglet et serez transporté virtuellement au stade de choix, prêt à suivre le match de rugby en temps réel.
Grâce à notre équipe de commentateurs ou de scoreurs passionnés et experts, serez plongé au cœur de l’action de RCME – Massy Rugby. Nos commentaires détaillés tiendront informé de tous les événements marquants, des essais spectaculaires aux pénalités cruciales, en passant par les transformations réussies. Donnerons également des analyses approfondies, des statistiques clés et des anecdotes intéressantes sur les joueurs et les équipes pour enrichir l’expérience de visionnage de RCME – Massy Rugby.
Si préférez consulter les scores rugby plutôt qu’écouter les commentaires en direct, notre service de score live est là. Peut suivre les scores en temps réel pour chaque match, avec des mises à jour régulières pour tenir au courant des développements sur le terrain de rugby. Aurez ainsi un aperçu rapide des performances des équipes, des résultats partiels et de l’évolution du score tout au long du match.
Que soyez un fan passionné de rugby, un parieur enthousiaste ou simplement quelqu’un qui souhaite rester informé sur le monde du rugby, la couverture de RCME – Massy Rugby en direct offre une expérience immersive et captivante. Ne manquez pas l’excitation et l’intensité des matchs, et rejoignez-nous afin de vivre chaque moment fort avec passion le rugby.
Laisser un commentaire