Greasy Fork

Wech mit die Bezahlzschranke!

Komplette Artikel (faz, ksta/DuMont) oder zumindest längere Anrisstexte (der rest) für Umme lesen!

目前为 2024-06-28 提交的版本。查看 最新版本

// ==UserScript==
// @name Wech mit die Bezahlzschranke!
// @description Komplette Artikel (faz, ksta/DuMont) oder zumindest längere Anrisstexte (der rest) für Umme lesen!
// @namespace Violentmonkey Scripts
// @match https://www.zeit.de/*
// @match https://www.sueddeutsche.de/*
// @match https://www.faz.net/*
// @match https://www.ksta.de/*
// @match https://www.rundschau-online.de/*
// @grant none
// @version 0.0.1.20240628190751
// ==/UserScript==

$   = function(_) {return document.getElementById(_)}
$tn = function(_) {return document.getElementsByTagName(_)}
$cn = function(_) {return document.getElementsByClassName(_)}
$qa = function(_) {return document.querySelectorAll(_)}
$qs = function(_) {return document.querySelector(_)}

window.addEventListener('load',
  function() {

    $tn("body")[0].onclick = function() {

      var jsoncontainer = 0;

      for (var i = 0, l = $tn("script").length; i < l; ++i) {

        if ($tn("script")[i].type == "application/ld+json") {
          if ($tn("script")[i].innerText.indexOf("articleBody") != -1) {
            jsoncontainer = i;
            break;
          }
        }
      }


      if (jsoncontainer != 0) {

        var scriptEl = $tn("script")[jsoncontainer].innerText;
        var schemaObj = JSON.parse(scriptEl);
        var prepare = schemaObj.articleBody.replace(/\. (Januar|Februar|März|April|Mai|Juni|August|September|Oktober|November|Dezember) /g, ".$1");
        var splitter = /\. |\?/;
        var splitter = "\. ";
        var sentences = prepare.split(splitter);
        var formattedtext = "";
        var skips = 0;

        for (var i = 0; i < sentences.length; i++) {
          if (i === skips + 3) {
            var breaks = "<br /><br />";
            skips += 3;
          } else {
            var breaks = "";
          }

          formattedtext += sentences[i].replace(/\.(Januar|Februar|März|April|Mai|Juni|August|September|Oktober|November|Dezember)/g, ". $1 ") + ". " + breaks;
        }

        formattedtext = formattedtext.replace("...", "###").replace(".. ", ". ").replace("###", "...");

      }


      if (location.host.indexOf("sueddeutsche.de") != -1) {
        $cn("article-content")[0].innerHTML = formattedtext;
      }

      if (location.host.indexOf("zeit.de") != -1) {
        document.getElementById("paywall").style.display = "none";
        document.getElementById("paywall").style.visibility = "hidden";

        for (var i = 0, l = $cn("article__item").length; i < l; ++i) {
          $cn("article__item")[i].classList.remove("paragraph--faded");

        }

      }

      if (location.host.indexOf("faz.net") != -1) {

        if ($cn("paywall")[0]) {
          $cn("paywall")[0].style.display = "none";
          $cn("paywall")[0].style.visibility = "hidden";
        }
        if ($cn("regwall")[0]) {
          $cn("regwall")[0].style.display = "none";
          $cn("regwall")[0].style.visibility = "hidden";
        }

        $cn("body-elements")[0].innerHTML = formattedtext;

      }

      if ((location.host.indexOf("ksta.de") != -1) || (location.host.indexOf("rundschau-online.de") != -1)) {
        document.getElementsByClassName("paywalled-content")[0].style.display = "block";
      }

      $tn("body")[0].onclick = function() {}
    }

  },
  false);

setTimeout('document.getElementsByTagName("body")[0].click()', 2500);