// ==UserScript== // @name KAT Headers Unified // @namespace NotNeo // @version 0.7.3 // @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/* // @require https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js // @require https://greasemonkey.github.io/gm4-polyfill/gm4-polyfill.js // @grant GM_setValue // @grant GM_getValue // @grant GM.setValue // @grant GM.getValue // @downloadURL none // ==/UserScript== (function(){ var headerShrunkByDefault = "remember"; //yes,no,remember var PMCheckInterval = 90000; //in ms var url = window.location.href; var sessionId; var userName; var numOfPM; if(url.indexOf("/community") > -1) { //style if(true) { 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(''); $("#search_form .input_text").after(''); //GetUserName userName = $(".greeting > span").text(); //Adding/removing/moving header parts $("#button_sitemap").remove(); $("#button_help").remove(); $("#gallery_torrents").remove(); $("#menu_nav").prepend(`
  • Other
  • `); numOfPM = $("#button_pm span.firstlevel strong").text() || 0;//get number of messages $("#button_pm").remove(); $("#menu_nav").append(`
  • `+numOfPM+` Messages
  • `); //Get session id for log out sessionId = $("#button_logout a").prop("href").split(";")[1]; $("#button_logout").remove(); $("#button_profile").remove(); $("#menu_nav").append(`
  • `+userName+`
  • `); $("#button_torrents ul").remove(); $("#button_torrents .firstlevel").prop("href", "https://katcr.co/new/full/"); $("#button_torrents").append(` `); /*$("#upload_torrents").append(` `);*/ CalcContentPad(); $("#upshrink").click(CalcContentPad); } else {//====== Torrent Section ======= userName = $(".navigation__item > .navigation__link .kf__user").parent().text(); try { sessionId = $(".navigation__item .navigation__sub_items .navigation__link:contains('Log out')").prop("href").split(";")[1]; } catch(err){ sessionId = false; }; $(".navigation__item > .navigation__link .kf__user").parent().parent().find("ul.navigation__sub_items").remove(); $(".navigation__item > .navigation__link .kf__user").parent().after(` `); $(".navigation__item > .navigation__link .kf__arrow_up").parent().parent().detach().prependTo("#js-scrollfix"); //Move upload to left $(".navigation__item > .navigation__link .kf__arrow_up").parent().parent().find("ul.navigation__sub_items").removeClass("columns-2").find("li:last").remove(); $(".navigation__item > .navigation__link .kf__camera").parent().parent().remove(); //remove gallery $("#js-scrollfix").prepend(` `); $(".navigation__item > .navigation__link[href='/new/'] .kf__torrent, .navigation__item > .navigation__link[href='https://katcr.co/new/'] .kf__torrent").parent().html(' Browse Torrents'); $(".navigation__item > .navigation__link[href='/new/'] .kf__torrent, .navigation__item > .navigation__link[href='https://katcr.co/new/'] .kf__torrent").parent().prop("href", "https://katcr.co/new/full/"); } if(!numOfPM) { numOfPM = parseInt($(".valueBubble span").html(), 10); } if(numOfPM < 1) { $(".valueBubble").hide(); } if(PMCheckInterval < 10000) {PMCheckInterval = 10000;} setInterval(function() { $.ajax({ method: "GET", url: "https://katcr.co/show/community/index.php?action=help", dataType: "text" }).done(function(data) { try { let newPMs = parseInt(data.split('id="button_pm"')[1].split('')[1].split("")[0], 10); $(".valueBubble span").html(newPMs); $(".valueBubble").show(); } catch(err){ $(".valueBubble").hide(); }; }); }, PMCheckInterval); })();