NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name Newscorp Paywall Reset // @description Resets the article limit for Newscorp online content including: www.news.com.au, www.theaustralian.com.au - The Australian, www.dailytelegraph.com.au - Daily Telegraph, www.heraldsun.com.au - Herald Sun, www.couriermail.com.au - Courier Mail, www.adelaidenow.com.au - Adelaide Now, www.perthnow.com.au - Perth Now, www.businessspectator.com.au - Business Spectator, www.eurekareport.com.au - Eureka Report // @match *://*.news.com.au/* // @match *://*.theaustralian.com.au/* // @match *://*.dailytelegraph.com.au/* // @match *://*.heraldsun.com.au/* // @match *://*.couriermail.com.au/* // @match *://*.adelaidenow.com.au/* // @match *://*.perthnow.com.au/* // @match *://*.businessspectator.com.au/* // @match *://*.eurekareport.com.au/* // @exclude *://*.eurekareport.com.au/subscribe/* // @run-at document-start // @version 2.6 // @grant GM_log // @grant GM_addStyle // @grant GM_xmlhttpRequest // ==/UserScript== function Log(msg){ console.log(msg); } timeout = 50, article = null; switch(window.location.hostname) { case 'www.eurekareport.com.au': //case 'www.businessspectator.com.au': preloadPremiumPage(); checkPremium(); break; //case 'm.theaustralian.com.au': default: delCookies(); setCookies(); if(window.location.search.indexOf('&dest=')>=0){ window.stop(); var url = window.location.search.match(/&dest=([^&?]+)/)[1]; getPage(url); history.pushState({abc: 2}, "N", url); break; } } GM_addStyle(".story-promo.story-promo-bottom, .mm-reveal.account-lightbox, .module.prm.prm-preview.prm-preview-, .bs-paywall-modal, body > .ui-widget-overlay, #aibm_channels_paywall_container, .mm-ribbon-container { display: none!important; }"); function checkPremium(){ var nn = null, pageTitle = null; (function(){ var ready = true; if(!pageTitle) pageTitle = document.getElementById('page-title'); if(!article) ready = false; else if(pageTitle && (pageTitle.childElementCount==0)) return article = null; if(!nn) nn = document.getElementById('aibm_channels_paywall_container'); if(!nn) ready = false; if(!ready) return window.setTimeout(arguments.callee, timeout); nn.parentNode.insertBefore(article, nn); article = null; })(); }; function removeModaldialog(){ var dialog = document.getElementById('bs-paywall-modal'); (function(){ if(dialog.className.indexOf('ui-dialog-content')<0) return window.setTimeout(arguments.callee, timeout); unsafeWindow.jQuery(dialog).dialog('close'); })(); } observer = new MutationObserver(function(mutations) { mutations.forEach(function(mutation) { if(mutation.target.id != 'bs-paywall-modal') return; removeModaldialog(); observer.disconnect(); }); }); observer.observe(document.documentElement, { attributes: true, subtree: true } ); function preloadPremiumPage(){ var nid_ = document.querySelector("link[rel='shortlink']"); if(!nid_) return window.setTimeout(arguments.callee, timeout); var nid = nid_.href.split('/')[4]; var url = window.location.protocol + '//' + window.location.host + '/print/' + nid; delCookies(); ajaxReq(url, function(res){ div.innerHTML = res.responseText; article = div.querySelector('.field-body, .field--body'), div = null; }); var div = document.createElement('div'); } function getPage(url, css){ if(typeof url == 'undefined') var url = window.location.href; ajaxReq(url, function(response){ if((typeof css == 'undefined') || !css){ document.documentElement.innerHTML = response.responseText; return; } var nStoryBody = div.querySelector(css); (function(){ var storyBody = document.querySelector(css); if(storyBody === null) return setTimeout(arguments.callee, timeout); storyBody.parentNode.replaceChild(nStoryBody, storyBody); })(); }); var div = document.createElement('div'); } function ajaxReq(url, callback){ var count = 0; (function(){ if(count++>10) return; GM_xmlhttpRequest({ method : "GET", url : url, headers : { Referer : "http://news.google.com/url?sa=" + rndStr(), Cookie: 'gr=;' }, onload : callback, ontimeout : arguments.callee, onerror : arguments.callee, timeout : 20000 - 17000 / count }); })(); } function tld(){ var d = window.location.hostname.split('.'); d.splice(0, d.indexOf('com') - 1); return d.join('.'); } function delCookies(){ localStorage.clear(); var ck = document.cookie.match ( '(^|;) ?([a-z0-9]{13})=([a-zA-Z0-9]{48})(;|$)' ); if ( ck ) delCookie(ck[2], '/', tld()); delCookie(['gr', 'n_rme', 'n_regis', 'breach_lp']); } function delCookie(name, path, domain){ if(typeof path == 'undefined') var path = '/'; if(typeof domain == 'undefined') var domain = ''; else domain = ';domain=' + domain; if(typeof name != 'object') name = [name]; for(var i in name) document.cookie = name[i] + "=;path=" + path + domain + ";expires=expires=Thu, 01-Jan-1970 00:00:01 GMT;"; } function setCookies(){ document.cookie = 'n_regis=' + (Math.round(new Date().getTime() / 1000) + 200) + ";path=/;"; } function rndStr(){ var s = ''; for(var i = 0, l = Math.random()*5+5; i<l; i++) s += String.fromCharCode(Math.floor(Math.random()*26) + 97); return s; }