We weren’t exactly bullish about Beto O’Rourke’s chances of unseating Texas Governor Greg Abbott. Back in 2018, he narrowly lost his Senate race against Dracula’s manservant Ted Cruz, and 2022 is a much worse environment for Democrats. However, after last week’s gun massacre at Robb Elementary School in Uvalde, O’Rourke has displayed
true leadership and righteous anger.
PREVIOUSLY: So Beto’s Pissed
Meanwhile, Abbott received a round of boos when he ventured out in public. Let’s take a look!
I confess that I didn’t initially enjoy seeing a man in a wheelchair booed, but that’s ableist of me. Abbott is an asshole and deserves public repudiation. The same crowd at Robb Elementary cheered President Joe Biden and First Lady Dr. Jill Biden. You’d think you were in California or Austin.
Prior to last week’s completely preventable massacre, Abbott was running consistently ahead of O’Rourke in polling. The Real Clear Polling average had Abbott up a comfortable seven points. The conventional wisdom was that if a Democrat stood a chance in Texas they’d have to distance themselves from all the wokeness and present themselves as a true Lone Star dude — maybe wear a 10-gallon hat and run campaign ads where they shoot a squirrel who looked at them funny. Beto don’t play that, though. He’d control the fuck out of guns, specifically AR-15s, which O’Rourke rightly believes no civilian should own.
During a counter-rally at the NRA conference in Houston, O’Rourke served notice:
The time for us to stop the next mass shooting is right now, right here, today, with every single one of us. To those attending the NRA convention across the street, you are not our enemies. We are not yours. We extend our hand, open and unarmed, in a gesture of peace and fellowship to welcome you to join us to make sure that this no longer happens in this country. But the time for you to respond and join us is now. We cannot wait any longer for you.
O’Rourke’s also reminding voters that Abbott isn’t just pro-gun, he’s pro-gun-violence. Abbott has catered to his extremist base with lax guns laws that even law enforcement has opposed. Last year, Abbott signed a bill that lets Texans carry a handgun without a license or training. This was after the mass shootings in El Paso and Odessa.
Friday, O’Rourke’s campaign slammed Abbott with a two-minute online ad that called out Abbott for signing that bill.
PREVIOUSLY: It’s Official: Beto O’Rourke Running For Texas Governor
O’Rourke tweeted Sunday: “38,000 Texans had their license to carry denied, revoked, or suspended over the last five years because law enforcement deemed them too dangerous to carry a loaded gun in public. But thanks to Greg Abbott’s new law, they don’t need a license to carry anymore.”
He’s also burying Abbott with his own words. The above video assembles Abbott’s expressions of outrage and remorse after every regularly scheduled mass shooting he did nothing to prevent — quite the opposite.
According to a 2019 poll, 59 percent of Texans support a nationwide ban on semi-automatic weapons, but Republicans like Abbott and Cruz remain opposed to reasonable gun regulation. After all, their big money donors and the majority of GOP primary voters are stridently pro-gun, and once they reach the general election, they can attack their Democratic opponent as a socialist critical race theorist.
We’d like to hope that just this once, though, Texas voters would care more about dead children than these obvious and shameless distractions. Vote for Beto and boot Abbott.
[Newsweek]
Follow Stephen Robinson on Twitter.
Do your Amazon shopping through this link, because reasons.
Yr Wonkette is 100 percent ad-free! Please subscribe, donate, and otherwise help keep us alive and kicking!
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
!function(f,b,e,v,n,t,s) {if(f.fbq)return;n=f.fbq=function(){n.callMethod? n.callMethod.apply(n,arguments):n.queue.push(arguments)}; if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; n.queue=[];t=b.createElement(e);t.async=!0; t.src=v;s=b.getElementsByTagName(e)[0]; s.parentNode.insertBefore(t,s)}(window, document,'script', 'https://connect.facebook.net/en_US/fbevents.js'); fbq('init', '482172895483293'); fbq('track', 'PageView');
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
/*! getClosest.js | (c) 2017 Chris Ferdinandi | MIT License | http://github.com/cferdinandi/getClosest */ /** * Get the closest parent element that matches a selector. * @param {Element} elem Starting element * @param {String} selector Selector to match against * @return {Boolean|Element} Returns null if not match found */ var getClosest = function(elem, selector) {
// Element.matches() polyfill if (!Element.prototype.matches) { Element.prototype.matches = Element.prototype.matchesSelector || Element.prototype.mozMatchesSelector || Element.prototype.msMatchesSelector || Element.prototype.oMatchesSelector || Element.prototype.webkitMatchesSelector || function(s) { var matches = (this.document || this.ownerDocument).querySelectorAll(s), i = matches.length; while (--i >= 0 && matches.item(i) !== this) {} return i > -1; }; }
// Get closest match for (; elem && elem !== document; elem = elem.parentNode) { if (elem.matches(selector)) return elem; }
return null;
};
// Vanilla JS
var className="active";
// getting current URL and adding a class on the current menu item
var path = location.pathname.split("https://www.wonkette.com/")[1]; var link = document.querySelectorAll('.menubar a[href="https://www.wonkette.com/" + path + '"]'); if (link[0]) { if (link[0].classList) { link[0].classList.add(className); } else { link[0].className += ' ' + className; } }
// remove class from home-link var home = document.getElementsByClassName('home__item'); if (home[0]) { if (home[0].classList) { home[0].classList.remove(className); } else { home[0].className = home[0].className.replace(new RegExp('(^|\\b)' + className.split(' ').join('|') + '(\\b|$)', 'gi'), ' '); } }
// search the closest parent and adding an active class on it too
var closestParent = getClosest(link[0], '.menubar_item-dropdown');
if (closestParent) { if (closestParent.classList) { closestParent.classList.add(className);
} else { closestParent.className += ' ' + className; } }
var socials = document.getElementsByClassName('social-links')[0]; var cloneSocials = socials.cloneNode(true);
var menu = document.getElementById("menubar"); var cloneMenu = menu.cloneNode(true);
var mobileMenu = document.getElementsByClassName('main-menu-wrapper')[0]; var beforeEl = document.getElementsByClassName('menu-global__search-form')[0];
mobileMenu.insertBefore(cloneSocials, beforeEl); mobileMenu.insertBefore(cloneMenu, beforeEl);
if (!document.body.classList.contains('logged-out-user')) { var existCondition = setInterval(function() { var userLink = document.querySelectorAll('.main-menu-item--my_page .link'); if (userLink.length) { clearInterval(existCondition); var membersLink = document.querySelectorAll('#membersLink'); var userUrl = userLink[0].href; Array.prototype.forEach.call(membersLink, function(el) { el.href = userUrl; });
if (document.querySelector('.main-menu-item--designer_editor')) { document.querySelector('.main-menu-wrapper').classList.add('user-admin'); } } }, 500); } else { var existCondition = setInterval(function() { var userLink = document.querySelector('.main-menu-item--login .link'); if (userLink) { clearInterval(existCondition); userLink.href="http://www.wonkette.com/core/users/email_login/"; } }, 500)
}
function copyValue(el) { var thisVal = el.options[el.selectedIndex].text; var closestForm = getClosest(el, 'form'); var paypalAmount = closestForm.nextSibling.querySelector('.paypal-amount'); paypalAmount.value = thisVal; }
document.addEventListener("scroll", createIdleScrollListener(() => { if (window.scrollY > 0) { document.body.classList.add('page-scrolled'); } else { document.body.classList.remove('page-scrolled'); } }));
function createIdleScrollListener(callback) { let ticking = false;
return function onScrollIdle() { if (ticking) { return; } ticking = true; requestAnimationFrame(() => { callback(); ticking = false; }); }; }
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
window.addEventListener("scroll", () => { if(this.scrollY > 50 ) { document.querySelector(".rebelbar.rebelbar--fixed.skin-simple").style.display = 'none' } else document.querySelector(".rebelbar.rebelbar--fixed.skin-simple").style.display = 'block' });
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
window.REBELMOUSE_STDLIB.loadExternalScript("https://checkout.stripe.com/checkout.js", function() {
if (!Element.prototype.matches) Element.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;
if (!Element.prototype.closest) Element.prototype.closest = function(s) { var el = this; if (!document.documentElement.contains(el)) return null; do { if (el.matches(s)) return el; el = el.parentElement || el.parentNode; } while (el !== null && el.nodeType === 1); return null; };
function formsHandling() { var formDonate = document.querySelectorAll('.donation-form:not(.processed)');
formDonate.forEach(function(formEl) { var formEl = formEl;
formEl.classList.add("processed");
formEl.addEventListener("submit", function(event) { event.preventDefault(); });
var donationBtns = formEl.querySelectorAll('.donate-button');
donationBtns.forEach(function(el) { el.addEventListener("click", function(event) { event.preventDefault(); formProcessing(el) }); });
function formProcessing(el) { var btn = el; var payment = btn.getAttribute('data-payment'); var planType = formEl.querySelector('input[name="plan_type"]:checked').value; var checkedOption = formEl.querySelector('input[name="amount"]:checked'); var amount = checkedOption.value * 1; var amountOptional = checkedOption.getAttribute('data-amount'); var dataValue = checkedOption.getAttribute('data-value'); var action;
if ( formEl.contains(formEl.querySelector('.remove-me')) ) { formEl.querySelectorAll('.remove-me').forEach(function(el){ el.remove() }); }
if ( payment == "paypal" ) { formEl.action = "https://www.paypal.com/cgi-bin/webscr"; formEl.setAttribute('target', '_blank');
addHidden( 'currency_code', 'USD'); addHidden( 'cmd', ''); addHidden( 'return', "https://www.wonkette.com/st/Wonkettes_Hero"); addHidden( 'cancel_return', window.location.href);
if ( planType == "once" ) { checkedOption.value = dataValue; formEl.querySelector('input[name="cmd"]').value="_donations"; addHidden( 'business', 'rebecca@wonkette.com'); addHidden( 'item_name', 'Wonkette Donation'); addHidden( 'item_number', 'Just Once');
//add new params addHidden( 'a3', dataValue); addHidden( 'p3', 1); addHidden( 't3', 'D');
} else if ( planType == "monthly" ) { formEl.querySelector('input[name="cmd"]').value="_xclick-subscriptions"; addHidden( 'business', 'rebecca@wonkette.com'); addHidden( 'item_name', 'Wonkette Recurring Donation'); addHidden( 'item_number', 'wonkette_recurring');
//add new params addHidden( 'a3', dataValue); addHidden( 'p3', 1); addHidden( 't3', 'M'); addHidden( 'src', 1); addHidden( 'srt', 52); } formEl.submit(); } else if ( payment == "strip" ) { addHidden( 'entity_type', 1); addHidden( 'plan_type', 1); addHidden('entity_id', getSiteId() ); checkedOption.value = dataValue * 100;
if ( planType == "once" ) { formEl.action = "/core/payment/single_donation"; addHidden( 'plan_name', 'One Time Donation'); stripInit(amount, 'One Time Donation');
} else if ( planType == "monthly" ) { formEl.action = "/core/payment/recurring_donation"; addHidden( 'plan_name', 'Monthly Donation'); addHidden( 'plan', 'donation_' + amount); stripInit(amount, 'Monthly Donation'); }
}
} function addHidden(key, value) { // Create a hidden input element, and append it to the form: var input = document.createElement('input'); input.type="hidden"; input.name = key; input.value = value; input.className += 'remove-me'; formEl.appendChild(input); }
function stripInit(amount, description) { var token = function(res){ addHidden('stripeToken', res.id); addHidden('stripeEmail', res.email); formEl.submit(); };
if (amount) { StripeCheckout.open({ key: 'pk_live_7dJjNGbMgTkHfEasr9FsLcjF', // real //key: 'pk_test_zbMpaIyMyHJ7TLUEheC7q2iS', //test amount: amount, name: 'Wonkette', image: 'https://assets.rbl.ms/16950638/origin.png', description: description, panelLabel: 'Donate', token: token, locale: 'auto' }); } else { window.alert('Select donation amount first') } } });
function getSiteId() { var site_id = null; var inner = document.querySelector('html').innerHTML var str = inner.split('"site_id": '); if( str[1] != undefined ){ site_id = str[1].split(',')[0]; } return !isNaN(site_id) ? site_id : false; } }
formsHandling();
REBELMOUSE_STDLIB.createElementChangeListener(".show-more.js-expand:not(.processed)", (el) => { const keepReading = el; keepReading.classList.add("processed"); keepReading.addEventListener("click", function() { setTimeout(formsHandling, 500) }); });
});
});
window.REBELMOUSE_ACTIVE_TASKS_QUEUE.push(function(){
window.disqus_config = function () { this.page.identifier = "2657421240", this.page.url = "https://www.wonkette.com/beto-orourke-just-kindly-reminding-texas-voters-that-gov-greg-abbott-aint-s-t"; }; var disqusCt = document.createElement('div'), disqus_config; disqusCt.id = 'disqus_thread'; (function () { var d = document, s = d.createElement('script'); s.src="https://wonkettecom.disqus.com/embed.js"; s.setAttribute('data-timestamp', +new Date()); (d.head || d.body).appendChild(s); })();
function loadCountScript(callback) { var s = document.createElement('script'); s.type="text/javascript"; s.async = true; s.id = 'dsq-count-scr'; s.src = "//wonkettecom.disqus.com/count.js"; var x = document.getElementsByTagName('script')[0]; x.parentNode.insertBefore(s, x); s.onload = () => callback(s); document.head.append(s); } loadCountScript(script => { /*Add comment Button to all articles*/ REBELMOUSE_STDLIB.createElementChangeListener(".share-panel:not(.js--has-comments)", (el) => { let sharesPanel = el; sharesPanel.classList.add('js--has-comments'); if (sharesPanel.closest('.article__shares')) { let postId = window.REBELMOUSE_BOOTSTRAP_DATA.post.id, postURL = location.protocol + '//' + location.host + location.pathname; addButton(postURL, postId, sharesPanel); } else if (sharesPanel.closest('.widget')) { let thisPost = sharesPanel.closest('.widget'), postId = thisPost.getAttribute('elid'), postURL = thisPost.querySelector('.widget__headline-text').getAttribute('href'); addButton(postURL, postId, sharesPanel); } }); });
function addButton(url, id, el) { var commentBtn = document.createElement('span'); //commentBtn.href = url; commentBtn.classList.add('js--toggleDisqus'); commentBtn.classList.add('disqus-comment-count'); commentBtn.setAttribute('data-disqus-url', url); commentBtn.setAttribute('data-postid', id); //commentBtn.setAttribute('data-disqus-identifier', id); commentBtn.innerText="0"; el.append(commentBtn); DISQUSWIDGETS.getCount({ reset: true }); //console.log(url, id); } REBELMOUSE_STDLIB.createElementChangeListener(".js--toggleDisqus:not(.js--callDisqus-processed), .show-more:not(.js--callDisqus-processed)", (el) => { console.log('run callDisqus()'); var timeOut = 10; if (el.classList.contains("show-more")) { timeOut = 1000; } el.classList.add('js--callDisqus-processed') el.addEventListener('click', function () { setTimeout(function () { let t = el, thisPost = t.closest('article') || t.closest('.js-section-loader-feature-container'), postId = t.getAttribute('data-postid'), postURL = t.getAttribute('data-disqus-url'); document.querySelector('#disqus_thread') && document.querySelector('#disqus_thread').remove(); if (t.closest('.article__shares')) { let postWrap = document.querySelector('.mobile-post-wrapper'); postWrap.appendChild(disqusCt); } else { let afterEl = t.closest('.widget'); if (afterEl) { afterEl.parentNode.insertBefore(disqusCt, afterEl.nextElementSibling); } } console.log('DISQUS.reset', postId, postURL); DISQUS.reset({ reload: true, config: function () { this.page.identifier = postId; this.page.url = postURL; } }); if (t.classList.contains('js--toggleDisqus')) { let disqus = document.getElementById("disqus_thread"); // disqus.scrollIntoView(); } }, timeOut) }); }); // Hide hidden tip-jar, idk why window.REBELMOUSE_STDLIB.createElementChangeListener(".js-keep-reading:not(.js-processed)", (el) => { let keepReading = el; keepReading.classList.add('js-processed'); //keepReading.closest('.mb-2').nextElementSibling.style.display='none'; });