Greasy Fork is available in English.

Twitter PSPP

تجهيز صفحة البحث في تويتر للطباعة

Verzia zo dňa 18.01.2020. Pozri najnovšiu verziu.

// ==UserScript==
// @name 			Twitter PSPP
// @description     تجهيز صفحة البحث في تويتر للطباعة
// @version 		1.0
// @author 			@RAKAN938
// @namespace 		https://twitter.com/rakan938
// @match 			https://twitter.com/search*
// @match 			https://mobile.twitter.com/search*
// @require 		http://code.jquery.com/jquery-latest.js
// ==/UserScript==

(function() {
    'use strict';

    var frs = "form[role='search']",
        ds = "div > svg",
        hrb = "header[role='banner']",
        ddts = "div[data-testid='sidebarColumn']",
        ddtp = "div[data-testid='primaryColumn']",
        nrn = "nav[role='navigation']",
        dal = "div[aria-label='رجوع']",
        pdd = "path[d^='M19.39 14.882c-1.58']",
        vis = ":visible",
        sop = "rakan938_onclick_styleprint",
        mw = "900px",
        mr = "170px",
        pos = "inherit";

    function applyStylePrint() {
        $(hrb).hide();
        $(ddts).hide();
        $(ddtp).css({"maxWidth": mw, "margin-right":mr});
        $(nrn).hide();
        $(frs).parents().eq(10).css("position", pos);
        $(dal).parent().hide();
        $(pdd).parents().eq(4).hide();
   }

    function removeStylePrint() {
        $(hrb).show();
        $(ddts).show();
        $(ddtp).css({"maxWidth": "", "margin-right":""});
        $(nrn).show();
        $(frs).parents().eq(10).css("position", "");
        $(dal).parent().show();
        $(pdd).parents().eq(4).show();
   }

    function runStylePrint() {
        var checkStylePrint = setInterval(function() {
            if($(hrb).is(vis) || $(ddts).is(vis)) {
                clearInterval(checkStylePrint);
                applyStylePrint();
            }
        }, 1000);
    }

    function addOnClickStylePrint() {
        $(frs).find(ds).click(function() {
            if(! $(hrb).is(vis)){
                removeStylePrint();
            }else{
                $(this).addClass(sop);
                runStylePrint();
            }
        });
    }

    var checkOnClickStylePrint = setInterval(function() {
        if(! $(frs).find(ds).hasClass(sop)) {
            clearInterval(checkOnClickStylePrint);
            addOnClickStylePrint();
        }
    }, 1000);

})();