Play Election Debate Bingo with The Walrus! | Unpublished
Hello!
Source Feed: Walrus
Author: The Walrus Staff
Publication Date: April 17, 2025 - 14:00

Play Election Debate Bingo with The Walrus!

April 17, 2025
There have been few certainties in the 2025 federal election, except perhaps the slogans and talking points that the party leaders are glued to. Heading into the English debate, we might not be confident of the overall outcome of the evening—or even the final vote tally on April 28—but we are pretty sure that Pierre Poilievre will raise the spectre of wokeness, Mark Carney will likely be in good-for-the-economy banker mode, Jagmeet Singh will look dapper and bring up housing, Trump will haunt the proceedings, and everyone will try to prove their uber-Canadian patriotism. Well, maybe not Yves-François Blanchet. And so we’ve created debate-night Bingo. Will anyone throw out an “elbows up”? Will Alberta separatism crash the conversation? Follow along and see how quickly you can fill a row. #page { overflow: scroll; } .hm-related-posts { padding-top: 80px; } @media only screen and (max-width: 768px) { .hm-related-posts { display: none; } .sidebar-above-footer { margin-top: 60px; } } @media only screen and (max-width: 744px) { .sidebar-above-footer { margin-top: 120px; } } @media only screen and (max-width: 658px) { .sidebar-above-footer { margin-top: 160px; } } @media only screen and (max-width: 637px) { .sidebar-above-footer { margin-top: 160px; } } .entry-content { height: 2200px; } .code-block-2, #bingo_container > br, #bingo_container--mobile > br, #bingo_container > p, #bingo_container--mobile > p, #bingo_overlay > p, #bingo_overlay--mobile > p, #bingo_overlay > br, #bingo_overlay--mobile > br, .code-block-1, .bingo_top > p, .bingo_top--mobile > p, .bingo_top > br, .bingo_top--mobile > br, .bingo_top__header > p, .bingo_top__header--mobile > p, .bingo_top__buttons > br, .bingo_top__buttons--mobile > br, .bingo_top__buttons button > br, .bingo_top__buttons--mobile button > br, .bingo_overlay__close > br, .bingo_overlay__close--mobile > br, .bingos > br, .bingos--mobile > br, .code-block-4 { display: none !important; } #bingo_container, #bingo_container--mobile { display: block; position: relative; width: 100%; max-width: 1000px; height: 950px; background-color: black; } #bingo_container--mobile { border: 0; height: 1300px; } #bingo_overlay, #bingo_overlay--mobile { position: absolute; width: 100%; height: 100%; z-index: 101; justify-content: center; align-items: center; background-color: #ffffff9c; backdrop-filter: blur(2px); display: none; top: 0; height: 735px; } #bingo_overlay--mobile { height: 1130px; } #bingo_overlay--mobile div img { width: 80%; display: block; margin: 0 auto; } .bingo_overlay__close { position: absolute; color: black; top: 0; right: 0; font-size: 32px; font-weight: bold; margin: 12px 21px 0; cursor: pointer; background: none; border: 0; padding: 0; text-decoration: none; } button.bingo_overlay__close:hover { padding: 0; text-decoration: none; background: none; color: black; } .bingo_card { display: grid; width: 100%; position: absolute; border: 3px black solid; box-sizing: border-box; } .bingos { display: grid; grid-template-columns: 20% 20% 20% 20% 20%; grid-template-rows: 5; width: 100%; position: absolute; padding: 16px; box-sizing: border-box; } .bingos--mobile { grid-template-columns: 33% 33% 33%; grid-template-rows: 7; } .bingo { width: 100%; height: 147px; border: 1px black solid; background-color: #f2f0eb !important; cursor: pointer; font-family: "Poppins", sans-serif; font-weight: bold; font-size: 16px; letter-spacing: 0.5px; border: 3px black solid; box-sizing: border-box; color: black; text-transform: uppercase; display: flex; align-items: center; justify-content: center; } .bingo--mobile { grid-template-columns: 33% 34% 33%; width: 100%; font-size: 14px; letter-spacing: 0.7px; padding: 2px; } .bingo--mobile img { max-width: 80%; max-height: 60px; } .bingo label { cursor: pointer; white-space: pre-wrap; } .bingo:active, .bingo:hover { background: #fb5954 !important; background-color: #fb5954 !important; color: white; text-decoration: none !important; } .bingo.checked { background-color: #f05053 !important; color: white; } #bingo-13, #bingo-11-mobile { cursor: initial; background-color: black !important; padding: 21px; } .bingo_top { width: 100%; display: flex; flex-flow: row nowrap; justify-content: space-between; padding: 16px; box-sizing: border-box; } .bingo_top--mobile { padding: 16px; flex-flow: column nowrap; gap: 32px; box-sizing: border-box; } .bingo_top__header { font-family: "PT Serif", serif; font-size: 46px; color: white; letter-spacing: 5.5px; margin-left: 12px; line-height: 160%; font-weight: bold; } .bingo_top__header--mobile { font-size: 24px; letter-spacing: 2.4px; } .bingo_top__header span { font-size: 80px; display: flex; align-items: center; gap: 12px; letter-spacing: 9.5px; } .bingo_top__header--mobile span { font-size: 48px; letter-spacing: 4.8px; } .bingo_top__header img { width: 30px; height: 30px; } .bingo_top__buttons { display: flex; flex-flow: column nowrap; justify-content: flex-end; gap: 20px; padding-bottom: 12px; margin-right: 12px; } .bingo_top__buttons--mobile { margin-left: 12px; } .bingo_top__buttons button, .bingo_top__buttons button:visited { width: 130px; height: 36px; border-radius: 18px; font-family: "Poppins", serif; font-size: 14px; letter-spacing: 0.7px; font-weight: bold; background-color: black; color: white; border: 2px white solid; cursor: pointer; display: flex; align-items: center; justify-content: center; text-decoration: none !important; } .bingo_top__buttons button:hover { background-color: white; color: black; } .bingo input { width: 100%; height: 100%; display: none; } @media print { html, body { height: 100vh; margin: 0 !important; padding: 0 !important; overflow: hidden; visibility: hidden; } #bingo_container { visibility: visible; display: block !important; background-color: white; border-color: white; position: absolute; top: -140px; left: 0; width: 100%; height: 100%; } .bingo_card { border: 0; } .bingo_top__buttons { display: none; } .bingo_top__header { color: black !important; print-color-adjust: exact; -webkit-print-color-adjust: exact; } #bingo_container * { print-color-adjust: exact; -webkit-print-color-adjust: exact; } } #bingo_container { display: block; min-width: 675px; } #bingo_container--mobile { display: none; } DEBATE NIGHT BINGO NEW CARD PRINT ✕ DEBATE NIGHT BINGO NEW CARD ✕ let data = JSON.parse(localStorage.getItem("bingoData")); const possibleAnswers = [ "Carbon tax", "Elbows up", "Housing", "Capital gains", "Security clearance", "Crime", "Quebec", "Cost of living", "Economy", "Trump", "Trade", "Tariffs", "Prices", "Alberta", "Deficit", "Common sense", "Border", "Armed forces", "Arctic", "Sovereign", "Ready for better", "Brookfield", "Woke", "CBC", ]; const bingoArrays = [ [1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 14, 15], [16, 17, 18, 19, 20], [21, 22, 23, 24, 25], [1, 6, 11, 16, 21], [2, 7, 12, 17, 22], [3, 8, 18, 23], [4, 9, 14, 19, 24], [5, 10, 15, 20, 25], [1, 7, 19, 25], [5, 9, 17, 21], ]; const arrayLength = possibleAnswers.length; if (data !== null) { fillCard(data); } else { fillCard(newCard()); } function Bingo(val, checked) { this.val = val; this.checked = checked; } function newCard() { let finalArray = [...possibleAnswers]; for (let n = finalArray.length - 1; n > 0; n--) { var j = Math.floor(Math.random() * (n + 1)); var temp = finalArray[n]; finalArray[n] = finalArray[j]; finalArray[j] = temp; } for (let n = 0; n < finalArray.length; n++) { finalArray[n] = new Bingo(finalArray[n], false); console.log(finalArray); } finalArray.splice(12, 0, new Bingo("CENTER", null)); console.log(finalArray); for (let n = 0; n < 25; n++) { if (n == 12) { continue; } else { const elem = document.getElementById( `bingo-` + (n + 1) ); document.getElementById( `bingo-` + (n + 1) + `-checkbox` ).checked = false; elem.classList.remove("checked"); } } document.getElementById("bingo_overlay").style.display = "none"; checkBingos(); data = finalArray; localStorage.setItem("bingoData", JSON.stringify(finalArray)); return finalArray; } function fillCard(data) { for (let n = 0; n < 25; n++) { if (n == 12) { continue; } else { const elem = document.getElementById( `bingo-` + (n + 1) ); elem.getElementsByTagName("label")[0].innerHTML = data[n].val; document.getElementById( `bingo-` + (n + 1) + `-checkbox` ).checked = data[n].checked; if (data[n].checked) { elem.classList.toggle("checked"); } } } checkBingos(); } function checkBingos() { let checkedArray = []; for (let n = 0; n < 25; n++) { if (n == 12) { continue; } else { if ( document.getElementById( `bingo-` + (n + 1) + `-checkbox` ).checked ) { checkedArray.push(n + 1); } } } let bingo; for (let i = 0; i < bingoArrays.length; i++) { bingo = bingoArrays[i].every((n) => checkedArray.includes(n) ); if (bingo) { document.getElementById("bingo_overlay").style.display = "flex"; } } } function clickBingoHandler(id) { const element = document.getElementById(id); element.classList.toggle("checked"); const checkbox = document.getElementById(id + "-checkbox"); checkbox.checked = !checkbox.checked; const arrayPosition = id[id.length - 2] == "-" ? id.slice(-1) : id.slice(-2); data[arrayPosition - 1].checked = !data[arrayPosition - 1].checked; localStorage.setItem("bingoData", JSON.stringify(data)); checkBingos(); } let dataMobile = JSON.parse( localStorage.getItem("bingoDataMobile") ); const possibleAnswersMobile = [ "Carbon tax", "Elbows up", "Housing", "Capital gains", "Security clearance", "Crime", "Quebec", "Cost of living", "Economy", "Trump", "Trade", "Tariffs", "Prices", "Alberta", "Deficit", "Common sense", "Border", "Armed forces", "Arctic", "Sovereign", "Ready for better", "Brookfield", "Woke", "CBC", ]; const bingoArraysMobile = [ [1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 12], [13, 14, 15], [16, 17, 18], [19, 20, 21], [1, 4, 7, 10, 13, 16, 19], [2, 5, 8, 14, 17, 20], [3, 6, 9, 12, 15, 18, 21], ]; const arrayLengthMobile = possibleAnswersMobile.length; if (dataMobile !== null) { console.log("mobile not null"); fillCardMobile(dataMobile); } else { console.log("mobile null"); fillCardMobile(newCardMobile()); } function Bingo(val, checked) { this.val = val; this.checked = checked; } function newCardMobile() { let finalArray = [...possibleAnswersMobile]; for (let n = finalArray.length - 1; n > 0; n--) { var j = Math.floor(Math.random() * (n + 1)); var temp = finalArray[n]; finalArray[n] = finalArray[j]; finalArray[j] = temp; } for (let n = 0; n < finalArray.length; n++) { finalArray[n] = new Bingo(finalArray[n], false); console.log(finalArray); } finalArray.splice(12, 0, new Bingo("CENTER", null)); console.log(finalArray); for (let n = 0; n < 21; n++) { if (n == 10) { continue; } else { const elem = document.getElementById( `bingo-` + (n + 1) + `-mobile` ); console.log( "elem", elem, `bingo-` + (n + 1) + `-mobile` ); document.getElementById( `bingo-` + (n + 1) + `-checkbox-mobile` ).checked = false; elem.classList.remove("checked"); } } document.getElementById("bingo_overlay--mobile").style.display = "none"; checkBingos(); data = finalArray; localStorage.setItem( "bingoDataMobile", JSON.stringify(finalArray) ); return finalArray; } function fillCardMobile(data) { for (let n = 0; n < 21; n++) { if (n == 10) { continue; } else { const elem = document.getElementById( `bingo-` + (n + 1) + `-mobile` ); elem.getElementsByTagName("label")[0].innerHTML = data[n].val; document.getElementById( `bingo-` + (n + 1) + `-checkbox-mobile` ).checked = data[n].checked; if (data[n].checked) { elem.classList.toggle("checked"); } } } checkBingosMobile(); } function checkBingosMobile() { let checkedArray = []; for (let n = 0; n < 21; n++) { if (n == 10) { continue; } else { if ( document.getElementById( `bingo-` + (n + 1) + `-checkbox-mobile` ).checked ) { checkedArray.push(n + 1); } } } let bingo; for (let i = 0; i < bingoArraysMobile.length; i++) { bingo = bingoArraysMobile[i].every((n) => checkedArray.includes(n) ); if (bingo) { document.getElementById( "bingo_overlay--mobile" ).style.display = "flex"; } } } function clickBingoHandlerMobile(id) { const element = document.getElementById(id); element.classList.toggle("checked"); const idMobile = id.slice(0, -7); console.log("idMob", idMobile); const checkbox = document.getElementById( idMobile + "-checkbox-mobile" ); console.log("checkbox", checkbox.id, checkbox.checked); checkbox.checked = !checkbox.checked; const arrayPosition = id[7] == "-" ? id.slice(6, 7) : id.slice(6, 8); data[arrayPosition - 1].checked = !data[arrayPosition - 1].checked; localStorage.setItem("bingoDataMobile", JSON.stringify(data)); checkBingosMobile(); } The post Play Election Debate Bingo with The Walrus! first appeared on The Walrus.


Unpublished Newswire

 
Catherine Dubois scored at 15:33 of the fourth overtime to lift the Montreal Victoire to a 3-2 playoff victory over the Ottawa Charge on Sunday afternoon at Place Bell.
May 11, 2025 - 20:33 | | CBC News - Ottawa
Catherine Dubois scored at 15:33 of the fourth overtime to lift the Montreal Victoire to a 3-2 playoff victory over the Ottawa Charge on Sunday afternoon at Place Bell.
May 11, 2025 - 20:33 | | CBC News - Canada
For many, Mother's Day is about celebration — a day when the roles are reversed and children are meant to let their mothers know just how much they mean to them. But for the estimated one in 10 mothers who have suffered a miscarriage or lost a child, the day is often one of grief.
May 11, 2025 - 20:24 | | CBC News - Canada