Greasy Fork

Greasy Fork is available in English.

KAT Headers Unified

Unifies and improves the headers of both the community and torrent sections of the site. (and makes community pages full width)

当前为 2018-08-22 提交的版本,查看 最新版本

// ==UserScript==
// @name         KAT Headers Unified
// @namespace    NotNeo
// @version      0.5
// @description  Unifies and improves the headers of both the community and torrent sections of the site. (and makes community pages full width)
// @author       NotNeo
// @match        https://katcr.co/show/community/*
// @require      https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js
// @grant        none
// ==/UserScript==

var headerShrunkByDefault = "remember"; //yes,no,remember

addGlobalStyle(`
	#wrapper {
		max-width: 100% !important;
	}

	#header {
		padding-left: 5px;
		position: fixed;
		width: 100%;
		z-index: 100;
	}

	#content_section {
		padding-top: 65px;
	}

	#header div.frame {
		padding-right: 5px;
	}

	#top_section > .forumtitle {
		margin-right: -55px;
	}

	#top_section {
		min-height: 0px;
	}

	#header > .frame > div:last-of-type, #header > .frame > br.clear {
		display: none;
	}

	#menu_nav > li > ul {
		position: fixed;
		border: solid #333 2px;
		width: -moz-min-content;
		width: -webkit-min-content;
	}

	#search_form {
		position: relative;
	}

	#search_form  .input_text {
		max-width: calc(100% - 1350px) !important;
		min-width: 200px;
	}

	.valueBubble {
		display: inline-block;
		height: 7px;
		width: 7px;
		margin-bottom: 7px;
		margin-left: -10px;
		margin-right: -2px;
		font-family: sans-serif;
		color: #fc7208;
		background: #fc7208;
		border: 2px solid #594c2d;
		border-radius: 50%;
		transition: .1s all;
	}

	.valueBubble span {
		position: absolute;
		margin-top: -22px;
		margin-left: 10px;
		font-size: 10px;
	}

	#search-new-button {
		background: 0 0;
		color: #5f5f5f;
		box-shadow: none;
		display: inline-block;
		border: none;
		position: absolute;
		top: 0px;
		right: 12px;
		cursor: pointer;
		padding: 0 !important;
	}

	#search-new-adv-button {
		background: 0 0;
		color: #5f5f5f !important;
		box-shadow: none;
		display: inline-block;
		border: none;
		position: absolute;
		top: 0px;
		right: 33px;
		cursor: pointer;
		padding: 0 !important;
	}

.columns-2 {
-webkit-column-count: 2;
-moz-column-count: 2;
column-count: 2;
-webkit-column-gap: 0;
-moz-column-gap: 0;
column-gap: 0;
}

`);

function addGlobalStyle(css) {
    var head, style;
    head = document.getElementsByTagName('head')[0];
    if (!head) { return; }
    style = document.createElement('style');
    style.type = 'text/css';
    style.innerHTML = css;
    head.appendChild(style);
}

function CalcContentPad() {
    if($("#upshrink").attr("src").split("images/")[1] == "upshrink.png") {
        $("#content_section").prop("style", "padding-top: 165px;");
    }
    else {
        $("#content_section").prop("style", "padding-top: 65px;");
    }
}

$("#siteslogan").detach().appendTo('#upper_section');
$("#main_menu").parent().detach().appendTo("#top_section");

if(headerShrunkByDefault != "remember") { //if header shrink is "remember", let the site handle it...
    var imgSrc = $("#upshrink").attr("src").split("images/")[1]; //...else get current state
    if((headerShrunkByDefault == "yes" && imgSrc == "upshrink.png") || (headerShrunkByDefault == "no" && imgSrc == "upshrink2.png")) { //...and if the state is wrong...
        $("#upshrink").click(); //...change it
    }
}

//remove search tab and add it to main search ba as advanced
$("#button_search").remove();
$("#search_form .button_submit").remove();
$("#search_form .input_text").after('<a id="search-new-adv-button" title="Advanced Search" href="https://katcr.co/show/community/index.php?action=search"><i class="ka ka-settings"></i></a>');
$("#search_form .input_text").after('<button name="submit" id="search-new-button" title="Search" type="submit"><i class="ka ka-search"></i></button>');


//GetUserName
var userName = $(".greeting > span").text();

//Adding/removing/moving header parts
$("#button_sitemap").remove();
$("#button_help").remove();
$("#gallery_torrents").remove();
$("#menu_nav").append(`
	<li>
		<a class="firstlevel" onclick="return false;" href="#"><i class="ka ka-plus"></i> Other</a>
		<ul>
			<li class="topMsg">
				<a href="https://katcr.co/show/community/index.php?action=help">
				<i class="ka ka-idea"></i> Help</a>
			</li>
			<li class="topMsg">
				<a href="https://katcr.co/show/community/index.php?action=sitemap">
				<i class="ka ka-list"></i> Sitemap</a>
			</li>
			<li class="topMsg">
				<a href="https://katcr.co/gallery/movies/page/">
				<i class="ka ka-camera"></i> Gallery</a>
			</li>
		</ul>
	</li>
`);

var numOfPM = $("#button_pm span.firstlevel strong").text() || 0;//get number of messages
$("#button_pm").remove();
$("#menu_nav").append(`
	<li id="button_pm">
		<a class="firstlevel" href="https://katcr.co/show/community/index.php?action=pm">
			<i class="ka ka-message"></i> <span class="valueBubble"><span>`+numOfPM+`</span></span> Messages
		</a>
		<ul class="navigation__sub_items">
			<li class="navigation__item"><a href="https://katcr.co/show/community/index.php?action=pm;sa=send" class="navigation__link"><i class="kf__pencil button button--icon-button"></i> New message</a></li>
			<li class="navigation__item"><a href="https://katcr.co/show/community/index.php?action=pm" class="navigation__link"><i class="kf__envelope button button--icon-button"></i> Inbox</a></li>
		</ul>
	</li>
`);

//Get session id for log out
var sessionId = $("#button_logout a").prop("href").split(";")[1];

$("#button_logout").remove();
$("#button_profile").remove();
$("#menu_nav").append(`
	<li id="button_profile">
		<a class="firstlevel" href="https://katcr.co/user/`+userName+`/profile/"><i class="ka ka-user"></i> `+userName+`</a>
		<ul class="navigation__sub_items" style="right: 45px;">
			<li class="navigation__item"><a href="https://katcr.co/user/`+userName+`/profile/" class="navigation__link">Torrent Profile</a></li>
			<li class="navigation__item"><a href="https://katcr.co/show/community/index.php?action=profile" class="navigation__link">Forum Profile</a></li>
			<li class="navigation__item"><a href="https://katcr.co/show/community/index.php?action=profile;area=forumprofile" class="navigation__link">Edit Profile</a></li>
			<li class="navigation__item"><a href="https://katcr.co/show/community/index.php?action=logout;`+sessionId+`" class="navigation__link">Log out</a></li>
		</ul>
	</li>
`);

$("#button_torrents ul").remove();
$("#button_torrents").append(`
	<ul class="navigation__sub_items columns-2">
		<li class="navigation__item"><a class="navigation__link" href="/category/latest/page/"><i class="ka ka-torrent"></i> Latest</a></li>
		<li class="navigation__item"><a class="navigation__link" href="/category/movies/page/"><i class="ka ka-film"></i> Movies</a></li>
		<li class="navigation__item"><a class="navigation__link" href="/category/tv/page/"><i class="ka ka-film"></i> TV</a></li>
		<li class="navigation__item"><a class="navigation__link" href="/category/music/page/"><i class="ka ka-music-note"></i> Music</a></li>
		<li class="navigation__item"><a class="navigation__link" href="/category/games/page/"><i class="ka ka-tags"></i> Games</a></li>
		<li class="navigation__item"><a class="navigation__link" href="/category/books/page/"><i class="ka ka-bookmark"></i> Books</a></li>
		<li class="navigation__item"><a class="navigation__link" href="/new/full/"><i class="ka ka-torrent"></i> FULL</a></li>
		<li class="navigation__item"><a class="navigation__link" href="/category/applications/page/"><i class="ka ka-settings"></i> Apps</a></li>
		<li class="navigation__item"><a class="navigation__link" href="/category/anime/page/"><i class="ka ka-film"></i> Anime</a></li>
		<li class="navigation__item"><a class="navigation__link" href="/category/other/page/"><i class="ka ka-torrent"></i> Other</a></li>
		<li class="navigation__item"><a class="navigation__link" href="/category/xxx/page/"><i class="ka ka-delete"></i> XXX</a></li>
		<li class="navigation__item"><a class="navigation__link" href="/new/"><i class="ka ka-plus"></i> More</a></li>
	</ul>
`);


CalcContentPad();
$("#upshrink").click(CalcContentPad);