kapela86 / Filmweb.pl ukrywanie treści postów

// ==UserScript==
// @name        Filmweb.pl ukrywanie treści postów
// @namespace   kapela86
// @description Skrypt pozwala na ukrywanie treści postów wybranych użytkowników.
// @include     https://www.filmweb.pl/*
// @include     http://www.filmweb.pl/*
// @include     https://filmweb.pl/*
// @include     http://filmweb.pl/*
// @version     1.1
// @grant		GM_getValue
// @grant		GM_setValue
// @grant		GM_deleteValue
// @grant		GM_listValues
// @license     GPL-3.0-or-later
// ==/UserScript==

var TempElement, ListaPostow = document.querySelectorAll("div.postInfo");
if (ListaPostow.length !== 0)
{
	console.log("liczba postów: " + ListaPostow.length);
	for (var i = 0; i < ListaPostow.length; i++)
	{
		TempElement = document.createElement("span");
		TempElement.textContent = " | ";
		ListaPostow[i].appendChild(TempElement);

		TempElement = document.createElement("span");
		TempElement.textContent = "ukryj/pokaż posty tego użytkownika";
		TempElement.style.cursor = "pointer";
		ListaPostow[i].appendChild(TempElement);
		TempElement.addEventListener("click", LetsDoThisPost, false);
	}
	var ListaNazw = GM_listValues();
	console.log(ListaNazw);
	for (var i = 0; i < ListaNazw.length; i++)
	{
		UkryjPost(ListaNazw[i]);
	}
}
else
{
	var TempSelektor, ListaTematow = document.querySelectorAll("li[id^=topic_]");
	if (ListaTematow.length !== 0)
	{
		console.log("liczba tematów: " + ListaTematow.length);
		for (var i = 0; i < ListaTematow.length; i++)
		{
			TempSelektor = ListaTematow[i].querySelector("div.topicInfo > ul > li:nth-child(2)");
			TempElement = document.createElement("span");
			TempElement.textContent = " | ";
			TempSelektor.appendChild(TempElement);

			TempElement = document.createElement("span");
			TempElement.textContent = "ukryj/pokaż posty tego użytkownika";
			TempElement.style.cursor = "pointer";
			TempSelektor.appendChild(TempElement);
			TempElement.addEventListener("click", LetsDoThisTemat, false);
		}
		var ListaNazw = GM_listValues();
		console.log(ListaNazw);
		for (var i = 0; i < ListaNazw.length; i++)
		{
			UkryjTemat(ListaNazw[i]);
		}
	}
}

function LetsDoThisTemat()
{
	var nazwa = this.parentNode.parentNode.querySelector("a.link.userNameLink").textContent;
	if (GM_getValue(nazwa) === true)
	{
		PokazTemat(nazwa);
	}
	else
	{
		UkryjTemat(nazwa);
	}
}

function PokazTemat(nazwa)
{
	console.log("pokazywanie: " + nazwa);
	GM_deleteValue(nazwa);
	ListaTematow = document.querySelectorAll('a.link.userNameLink[href$="/' + nazwa + '"]');
	for (var i = 0; i < ListaTematow.length; i++)
	{
		ListaTematow[i].parentNode.parentNode.parentNode.parentNode.querySelector("p.text.normal").style.display = "";
		ListaTematow[i].parentNode.parentNode.parentNode.parentNode.querySelector("#ukryty").remove();
	}
}

function UkryjTemat(nazwa)
{
	console.log("ukrywanie: " + nazwa);
	GM_setValue(nazwa, true);
	ListaTematow = document.querySelectorAll('a.link.userNameLink[href$="/' + nazwa + '"]');
	for (var i = 0; i < ListaTematow.length; i++)
	{
		ListaTematow[i].parentNode.parentNode.parentNode.parentNode.querySelector("p.text.normal").style.display = "none";
		TempElement = document.createElement("p");
		TempElement.classList.add("text");
		TempElement.id = "ukryty";
		TempElement.textContent = "Treść ukryta";
		TempElement.style.color = "#ABABAB";
		ListaTematow[i].parentNode.parentNode.parentNode.parentNode.insertBefore(TempElement, ListaTematow[i].parentNode.parentNode.parentNode.parentNode.querySelector("div.boxContainer.s-13.va-middle"));
	}
}

function LetsDoThisPost()
{
	var nazwa = this.parentNode.firstChild.textContent.slice(1,-1);
	if (GM_getValue(nazwa) === true)
	{
		PokazPost(nazwa);
	}
	else
	{
		UkryjPost(nazwa);
	}
}

function PokazPost(nazwa)
{
	GM_deleteValue(nazwa);
	ListaPostow = document.querySelectorAll('a.userName.userNameLink[href$="/' + nazwa + '"]');
	for (var i = 0; i < ListaPostow.length; i++)
	{
		ListaPostow[i].parentNode.nextSibling.firstChild.style.display = "";
		ListaPostow[i].parentNode.nextSibling.querySelector("#ukryty").remove();
	}
}

function UkryjPost(nazwa)
{
	GM_setValue(nazwa, true);
	ListaPostow = document.querySelectorAll('a.userName.userNameLink[href$="/' + nazwa + '"]');
	for (var i = 0; i < ListaPostow.length; i++)
	{
		ListaPostow[i].parentNode.nextSibling.firstChild.style.display = "none";
		TempElement = document.createElement("p");
		TempElement.classList.add("text");
		TempElement.id = "ukryty";
		TempElement.textContent = "Treść ukryta";
		TempElement.style.color = "#ABABAB";
		ListaPostow[i].parentNode.nextSibling.appendChild(TempElement);
	}
}