{"id":3228,"date":"2026-05-07T22:16:07","date_gmt":"2026-05-08T02:16:07","guid":{"rendered":"https:\/\/dmcc-series.com\/contender-qualification\/"},"modified":"2026-05-07T23:12:16","modified_gmt":"2026-05-08T03:12:16","slug":"contender-qualification","status":"publish","type":"page","link":"https:\/\/dmcc-series.com\/en\/contender-qualification\/","title":{"rendered":"Contender Qualification"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3228\" class=\"elementor elementor-3228 elementor-3226\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-0eb25f7 e-flex e-con-boxed e-con e-parent\" data-id=\"0eb25f7\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-92fcf7e elementor-widget elementor-widget-heading\" data-id=\"92fcf7e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Qualifying result<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1cfad54 elementor-widget elementor-widget-html\" data-id=\"1cfad54\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- ============================================================\r\n     DMMC CONTENDER \u2014 Widget Qualifs via Firebase (Elementor HTML)\r\n     ============================================================ --><style>#dmmc-qualifs *{box-sizing:border-box;margin:0;padding:0;}\r\n#dmmc-qualifs{font-family:'Arial Narrow',Arial,sans-serif;width:100%;}\r\n#dmmc-qualifs .hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}\r\n#dmmc-qualifs .hdr-title{font-size:12px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:#999;}\r\n#dmmc-qualifs .live-badge{display:flex;align-items:center;gap:5px;font-size:11px;color:#999;}\r\n#dmmc-qualifs .dot{width:7px;height:7px;border-radius:50%;background:#16a34a;animation:blink 1.4s infinite;}\r\n#dmmc-qualifs .updated{font-size:10px;color:#bbb;margin-bottom:8px;}\r\n@keyframes blink{0%,100%{opacity:1}50%{opacity:0.25}}\r\n#dmmc-qualifs table{width:100%;border-collapse:collapse;font-size:13px;}\r\n#dmmc-qualifs thead tr{background:#111;color:#fff;}\r\n#dmmc-qualifs thead th{padding:8px;text-align:right;font-size:9px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#aaa;}\r\n#dmmc-qualifs thead th.left{text-align:left;}\r\n#dmmc-qualifs tbody tr{border-bottom:1px solid #eee;}\r\n#dmmc-qualifs tbody tr:nth-child(even){background:#f9f9f9;}\r\n#dmmc-qualifs tbody tr:hover{background:#f0f0f0;}\r\n#dmmc-qualifs td{padding:7px 8px;text-align:right;color:#333;font-size:13px;}\r\n#dmmc-qualifs .td-pos{font-weight:700;color:#111;text-align:left;}\r\n#dmmc-qualifs .td-pos.p1{color:#d97706;}\r\n#dmmc-qualifs .td-pos.p2{color:#64748b;}\r\n#dmmc-qualifs .td-pos.p3{color:#b45309;}\r\n#dmmc-qualifs .td-num{color:#aaa;font-size:11px;text-align:left;}\r\n#dmmc-qualifs .td-name{font-weight:700;color:#111;text-align:left;}\r\n#dmmc-qualifs .td-sub{color:#aaa;font-size:12px;}\r\n#dmmc-qualifs .td-score{font-weight:700;color:#111;}\r\n#dmmc-qualifs .pts-pill{display:inline-block;background:#111;color:#fff;border-radius:3px;padding:1px 7px;font-size:11px;font-weight:700;}\r\n#dmmc-qualifs .pts-pill.zero{background:#ddd;color:#999;}\r\n#dmmc-qualifs .ko-sep{border-top:2px solid #cc0000!important;}\r\n#dmmc-qualifs .loading{text-align:center;padding:32px;color:#aaa;font-size:13px;}\r\n<\/style><div id=\"dmmc-qualifs\"><div class=\"hdr\"><span class=\"live-badge\"><span class=\"dot\"><\/span>Live<\/span><\/div><div class=\"updated\" id=\"dmmc-qualifs-updated\"><\/div><div id=\"dmmc-qualifs-body\"><div class=\"loading\">Connexion Firebase...<\/div><\/div><\/div><script src=\"https:\/\/www.gstatic.com\/firebasejs\/9.23.0\/firebase-app-compat.js\"><\/script><script src=\"https:\/\/www.gstatic.com\/firebasejs\/9.23.0\/firebase-database-compat.js\"><\/script><script>(function(){\r\n  const FIREBASE_URL = 'https:\/\/dmcc-contender-default-rtdb.firebaseio.com';\r\n\r\n  if (!window._dmmcFirebaseApp) {\r\n    window._dmmcFirebaseApp = firebase.initializeApp({\r\n      databaseURL: FIREBASE_URL\r\n    }, 'dmmc-qualifs-' + Date.now());\r\n  }\r\n\r\n  const db = firebase.database(window._dmmcFirebaseApp);\r\n\r\n  function pill(val, hasPts) {\r\n    const n = Number(val);\r\n    if (hasPts) return `<span class=\"pts-pill${n===0?' zero':''}\">${n}<\/span>`;\r\n    return n;\r\n  }\r\n\r\n  function render(rows) {\r\n    if (!rows || !rows.length) {\r\n      document.getElementById('dmmc-qualifs-body').innerHTML = '<div class=\"loading\">Aucune donn\u00e9e.<\/div>';\r\n      return;\r\n    }\r\n    let html = '<table><thead><tr>';\r\n    html += '<th class=\"left\">POS<\/th><th class=\"left\">#<\/th><th class=\"left\">PILOTE<\/th>';\r\n    html += '<th>SCORE<\/th><th>STYLE<\/th><th>ANGLE<\/th><th>LINE<\/th><th>PTS<\/th>';\r\n    html += '<\/tr><\/thead><tbody>';\r\n\r\n    rows.forEach((r, i) => {\r\n      const isKO = i === 12;\r\n      const posClass = r.pos==1?'td-pos p1':r.pos==2?'td-pos p2':r.pos==3?'td-pos p3':'td-pos';\r\n      html += `<tr${isKO?' class=\"ko-sep\"':''}>`;\r\n      html += `<td class=\"${posClass}\">${r.pos}<\/td>`;\r\n      html += `<td class=\"td-num\">${r.num}<\/td>`;\r\n      html += `<td class=\"td-name\">${r.name}<\/td>`;\r\n      html += `<td class=\"td-score\">${r.score}<\/td>`;\r\n      html += `<td class=\"td-sub\">${r.style}<\/td>`;\r\n      html += `<td class=\"td-sub\">${r.angle}<\/td>`;\r\n      html += `<td class=\"td-sub\">${r.line}<\/td>`;\r\n      html += `<td>${pill(r.pts, true)}<\/td>`;\r\n      html += '<\/tr>';\r\n    });\r\n\r\n    html += '<\/tbody><\/table>';\r\n    document.getElementById('dmmc-qualifs-body').innerHTML = html;\r\n  }\r\n\r\n  db.ref('\/dmcc\/qualifs').on('value', snap => {\r\n    const data = snap.val();\r\n    if (data) render(data);\r\n  });\r\n\r\n  db.ref('\/dmcc\/updatedAt').on('value', snap => {\r\n    const t = snap.val();\r\n    if (t) {\r\n      const d = new Date(t);\r\n      document.getElementById('dmmc-qualifs-updated').textContent =\r\n        'Mis \u00e0 jour : ' + d.toLocaleTimeString('fr-CA');\r\n    }\r\n  });\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-34d65e9 e-flex e-con-boxed e-con e-parent\" data-id=\"34d65e9\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ec3f2de elementor-widget elementor-widget-heading\" data-id=\"ec3f2de\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Qualifying score<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ef2bcfb elementor-widget elementor-widget-html\" data-id=\"ef2bcfb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- ============================================================\r\n     DMMC CONTENDER \u2014 Widget Scoring via Firebase (Elementor HTML)\r\n     ============================================================ --><style>#dmmc-scoring *{box-sizing:border-box;margin:0;padding:0;}\r\n#dmmc-scoring{font-family:'Arial Narrow',Arial,sans-serif;width:100%;overflow-x:auto;}\r\n#dmmc-scoring .hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}\r\n#dmmc-scoring .hdr-title{font-size:12px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:#999;}\r\n#dmmc-scoring .live-badge{display:flex;align-items:center;gap:5px;font-size:11px;color:#999;}\r\n#dmmc-scoring .dot{width:7px;height:7px;border-radius:50%;background:#16a34a;animation:blink2 1.4s infinite;}\r\n#dmmc-scoring .updated{font-size:10px;color:#bbb;margin-bottom:8px;}\r\n@keyframes blink2{0%,100%{opacity:1}50%{opacity:0.25}}\r\n#dmmc-scoring table{width:100%;border-collapse:collapse;font-size:13px;min-width:700px;}\r\n#dmmc-scoring thead tr{background:#111;}\r\n#dmmc-scoring thead th{padding:8px;text-align:right;font-size:9px;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:#aaa;white-space:nowrap;}\r\n#dmmc-scoring thead th.left{text-align:left;}\r\n#dmmc-scoring .sub-hdr{background:#1a1a1a;}\r\n#dmmc-scoring .sub-hdr th{font-size:8px;color:#555;padding:3px 8px;}\r\n#dmmc-scoring tbody tr{border-bottom:1px solid #eee;}\r\n#dmmc-scoring tbody tr:nth-child(even){background:#f9f9f9;}\r\n#dmmc-scoring tbody tr:hover{background:#f0f0f0;}\r\n#dmmc-scoring td{padding:7px 8px;text-align:right;color:#333;font-size:13px;}\r\n#dmmc-scoring .td-pos{font-weight:700;color:#111;text-align:left;}\r\n#dmmc-scoring .td-pos.p1{color:#d97706;}\r\n#dmmc-scoring .td-pos.p2{color:#64748b;}\r\n#dmmc-scoring .td-pos.p3{color:#b45309;}\r\n#dmmc-scoring .td-num{color:#aaa;font-size:11px;text-align:left;}\r\n#dmmc-scoring .td-name{font-weight:700;color:#111;text-align:left;white-space:nowrap;}\r\n#dmmc-scoring .td-sub{color:#aaa;font-size:12px;}\r\n#dmmc-scoring .score-pill{display:inline-block;background:#111;color:#fff;border-radius:3px;padding:2px 7px;font-size:12px;font-weight:700;min-width:28px;text-align:center;}\r\n#dmmc-scoring .score-pill.zero{background:#ddd;color:#999;}\r\n#dmmc-scoring .td-best{font-weight:700;color:#d97706;font-size:14px;}\r\n#dmmc-scoring .loading{text-align:center;padding:32px;color:#aaa;font-size:13px;}\r\n<\/style><div id=\"dmmc-scoring\"><div class=\"hdr\"><span class=\"live-badge\"><span class=\"dot\"><\/span>Live<\/span><\/div><div class=\"updated\" id=\"dmmc-scoring-updated\"><\/div><div id=\"dmmc-scoring-body\"><div class=\"loading\">Connexion Firebase...<\/div><\/div><\/div><script src=\"https:\/\/www.gstatic.com\/firebasejs\/9.23.0\/firebase-app-compat.js\"><\/script><script src=\"https:\/\/www.gstatic.com\/firebasejs\/9.23.0\/firebase-database-compat.js\"><\/script><script>(function(){\r\n  const FIREBASE_URL = 'https:\/\/dmcc-contender-default-rtdb.firebaseio.com';\r\n\r\n  if (!window._dmmcFirebaseApp2) {\r\n    window._dmmcFirebaseApp2 = firebase.initializeApp({\r\n      databaseURL: FIREBASE_URL\r\n    }, 'dmmc-scoring-' + Date.now());\r\n  }\r\n\r\n  const db = firebase.database(window._dmmcFirebaseApp2);\r\n\r\n  function pill(val) {\r\n    const n = Number(val);\r\n    return `<span class=\"score-pill${n===0?' zero':''}\">${n}<\/span>`;\r\n  }\r\n\r\n  function render(rows) {\r\n    if (!rows || !rows.length) {\r\n      document.getElementById('dmmc-scoring-body').innerHTML = '<div class=\"loading\">Aucune donn\u00e9e.<\/div>';\r\n      return;\r\n    }\r\n    let html = '<table><thead>';\r\n    html += '<tr>';\r\n    html += '<th class=\"left\">POS<\/th><th class=\"left\">#<\/th><th class=\"left\">PILOTE<\/th>';\r\n    html += '<th colspan=\"5\" style=\"text-align:center;border-left:2px solid #333;\">RUN 1<\/th>';\r\n    html += '<th colspan=\"5\" style=\"text-align:center;border-left:2px solid #333;\">RUN 2<\/th>';\r\n    html += '<th style=\"border-left:2px solid #333;\">MEILLEUR<\/th>';\r\n    html += '<\/tr>';\r\n    html += '<tr class=\"sub-hdr\">';\r\n    html += '<th class=\"left\"><\/th><th class=\"left\"><\/th><th class=\"left\"><\/th>';\r\n    html += '<th style=\"border-left:2px solid #222;\">Style<\/th><th>Angle<\/th><th>Line<\/th><th>Speed<\/th><th>Total<\/th>';\r\n    html += '<th style=\"border-left:2px solid #222;\">Style<\/th><th>Angle<\/th><th>Line<\/th><th>Speed<\/th><th>Total<\/th>';\r\n    html += '<th style=\"border-left:2px solid #222;\"><\/th>';\r\n    html += '<\/tr><\/thead><tbody>';\r\n\r\n    rows.forEach(r => {\r\n      const posClass = r.pos==1?'td-pos p1':r.pos==2?'td-pos p2':r.pos==3?'td-pos p3':'td-pos';\r\n      html += '<tr>';\r\n      html += `<td class=\"${posClass}\">${r.pos}<\/td>`;\r\n      html += `<td class=\"td-num\">${r.num}<\/td>`;\r\n      html += `<td class=\"td-name\">${r.name}<\/td>`;\r\n      html += `<td class=\"td-sub\" style=\"border-left:2px solid #eee;\">${r.style1}<\/td>`;\r\n      html += `<td class=\"td-sub\">${r.angle1}<\/td>`;\r\n      html += `<td class=\"td-sub\">${r.line1}<\/td>`;\r\n      html += `<td class=\"td-sub\">${r.speed1}<\/td>`;\r\n      html += `<td>${pill(r.run1)}<\/td>`;\r\n      html += `<td class=\"td-sub\" style=\"border-left:2px solid #eee;\">${r.style2}<\/td>`;\r\n      html += `<td class=\"td-sub\">${r.angle2}<\/td>`;\r\n      html += `<td class=\"td-sub\">${r.line2}<\/td>`;\r\n      html += `<td class=\"td-sub\">${r.speed2}<\/td>`;\r\n      html += `<td>${pill(r.run2)}<\/td>`;\r\n      html += `<td class=\"td-best\" style=\"border-left:2px solid #eee;\">${r.overallBest}<\/td>`;\r\n      html += '<\/tr>';\r\n    });\r\n\r\n    html += '<\/tbody><\/table>';\r\n    document.getElementById('dmmc-scoring-body').innerHTML = html;\r\n  }\r\n\r\n  db.ref('\/dmcc\/scoring').on('value', snap => {\r\n    const data = snap.val();\r\n    if (data) render(data);\r\n  });\r\n\r\n  db.ref('\/dmcc\/updatedAt').on('value', snap => {\r\n    const t = snap.val();\r\n    if (t) {\r\n      const d = new Date(t);\r\n      document.getElementById('dmmc-scoring-updated').textContent =\r\n        'Mis \u00e0 jour : ' + d.toLocaleTimeString('fr-CA');\r\n    }\r\n  });\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Qualifying result LiveConnexion Firebase&#8230; Qualifying score LiveConnexion Firebase&#8230;<\/p>\n","protected":false},"author":233903676,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_crdt_document":"","advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"footnotes":""},"class_list":["post-3228","page","type-page","status-publish","hentry"],"acf":[],"jetpack_likes_enabled":true,"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/Pgl5nb-Q4","jetpack-related-posts":[{"id":3226,"url":"https:\/\/dmcc-series.com\/contender-qualification\/","url_meta":{"origin":3228,"position":0},"title":"Contender Qualification","author":"C\u00e9dric Mallette","date":"May 7, 2026","format":false,"excerpt":"R\u00e9sultat Qualification Live Connexion Firebase... Pointage Qualification Live Connexion Firebase...","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3267,"url":"https:\/\/dmcc-series.com\/en\/contender-top-16\/","url_meta":{"origin":3228,"position":1},"title":"Contender Top 16","author":"C\u00e9dric Mallette","date":"May 7, 2026","format":false,"excerpt":"Bracket \u2014 Top 16 Live Connexion Firebase...","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3255,"url":"https:\/\/dmcc-series.com\/contender-top-16\/","url_meta":{"origin":3228,"position":2},"title":"Contender Top 16","author":"C\u00e9dric Mallette","date":"May 7, 2026","format":false,"excerpt":"Bracket \u2014 Top 16 Live Connexion Firebase...","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1598,"url":"https:\/\/dmcc-series.com\/live-bracket-pro\/","url_meta":{"origin":3228,"position":3},"title":"Live Bracket &#8211; Pro","author":"C\u00e9dric Mallette","date":"June 26, 2025","format":false,"excerpt":"Pointage de Qualification Mise \u00e0 jour dans : 60s Chargement... R\u00e9sultats de Qualifications Mise \u00e0 jour : 60s Chargement... Top 16 Mise \u00e0 jour dans : 60s Chargement... Mise \u00e0 jour : 60s Chargement...","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1592,"url":"https:\/\/dmcc-series.com\/live-bracket-pro-am\/","url_meta":{"origin":3228,"position":4},"title":"Live Bracket &#8211; Pro-Am","author":"C\u00e9dric Mallette","date":"June 26, 2025","format":false,"excerpt":"Pointage de Qualification Mise \u00e0 jour : 60s Chargement... R\u00e9sultats de Qualifications Mise \u00e0 jour : 60s Chargement... TOP 16 Mise \u00e0 jour : 60s Chargement... Mise \u00e0 jour : 60s Chargement...","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1525,"url":"https:\/\/dmcc-series.com\/en\/top-16-pro\/","url_meta":{"origin":3228,"position":5},"title":"Top 16 &#8211; Pro","author":"C\u00e9dric Mallette","date":"May 29, 2025","format":false,"excerpt":"Last update: 0s Loading...","rel":"","context":"Similar post","block_context":{"text":"Similar post","link":""},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/dmcc-series.com\/en\/wp-json\/wp\/v2\/pages\/3228","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dmcc-series.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/dmcc-series.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/dmcc-series.com\/en\/wp-json\/wp\/v2\/users\/233903676"}],"replies":[{"embeddable":true,"href":"https:\/\/dmcc-series.com\/en\/wp-json\/wp\/v2\/comments?post=3228"}],"version-history":[{"count":8,"href":"https:\/\/dmcc-series.com\/en\/wp-json\/wp\/v2\/pages\/3228\/revisions"}],"predecessor-version":[{"id":3263,"href":"https:\/\/dmcc-series.com\/en\/wp-json\/wp\/v2\/pages\/3228\/revisions\/3263"}],"wp:attachment":[{"href":"https:\/\/dmcc-series.com\/en\/wp-json\/wp\/v2\/media?parent=3228"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}