Zanothis / WaPo Screen Cleaner

// ==UserScript==
// @name WaPo Screen Cleaner
// @version 1.2.3
// @include https://www.washingtonpost.com/*
// @updateURL https://openuserjs.org/meta/Zanothis/WaPo_Screen_Cleaner.meta.js
// ==/UserScript==

(function ($) {
    var drawbridgeInterval,
        overlayInterval,
        drawbridgeAttempts = 0,
        overlayAttempts = 0;
        
    function lowerTheBridge() {
        var drawbridge = $('div[data-feature-id="drawbridge/base"]');
        
        $('html').removeClass('drawbridge-up');
        
        if (drawbridge.length === 0) {
            if (drawbridgeAttempts++ > 50) {
                clearInterval(drawbridgeInterval);
            }
            
            return;
        }
        
        clearInterval(drawbridgeInterval);
        
        drawbridge.remove();
    }
    
    function cleanUp() {
        var signInOverlay = $('#wp_Signin');
        if (signInOverlay.length === 0) {
            if (overlayAttempts++ > 50) {
                clearInterval(overlayInterval);
            }
            
            return;
        }
        
        clearInterval(overlayInterval);
        $('#wp_Signin').remove();
        $('.wp_signin').remove();
    }

    overlayInterval = setInterval(cleanUp, 200);
    drawbridgeInterval = setInterval(lowerTheBridge, 200);
    
    $('body').css('overflow-y', 'auto !important');
    $(document).off('mouseup');
    $(document).off('mousedown');
    $(document).off('mousemove');
})(jQuery);