Показать сообщение отдельно
Балоноид
в Бане
Сообщения: 2,954
Регистрация: 13.08.2017
Откуда: милое послание
Старый пост, нажмите что бы добавить к себе блог 19 мая 2018, 11:55
  #3379 (ПС)
обновление исправлены некоторые косяки
Показать скрытый текст
Код:
// ==UserScript==
// @name         HIP-HOP.RU-ANTIPIDRS
// @namespace    https://www.hip-hop.ru/
// @version      0.22
// @description  Вырубает пидорасню с форума
// @author       BALONOID
// @run-at       document-idle
// @include      https://www.hip-hop.ru/forum/*/*
// @include      https://www.hip-hop.ru/forum/*/
// exclude      https://www.hip-hop.ru/forum/newreply.php?do=postreply*
// exclude      https://www.hip-hop.ru/forum/profile.php?*
// exclude      https://www.hip-hop.ru/forum/editpost.php?*
// exclude      https://www.hip-hop.ru/forum/id*

// @grant        none
// @noframes
// ==/UserScript==
(function() {
    'use strict';
    var posts =  document.getElementsByClassName("post_wrap_div");
    var xhr = new XMLHttpRequest();
    xhr.open('GET', 'https://www.hip-hop.ru/forum/profile.php?do=ignorelist',true);
    xhr.send();
    var stoken = 'guest';
    xhr.onreadystatechange = function() { // (3)
        if (xhr.readyState != 4) return;
        if (xhr.status != 200) {
            //alert(43);
        } else {
            stoken =  xhr.responseText.match(/securitytoken".value="(.*?)"/i)[1];

            for ( var n = 0,i=0; i<posts.length;i++){
                if (posts[i].getElementsByClassName("userinfo")[0] == undefined) { continue;}
                var info = posts[i].getElementsByClassName("userinfo")[0].textContent;
                info.replace(",","");
                if ( posts[i].getElementsByClassName("mtext")[0] == undefined) {continue;}
                var mText = posts[i].getElementsByClassName("mtext")[0];
                if (mText.getElementsByClassName("quote")[0] != undefined){ mText = mText.getElementsByClassName("quote")[mText.getElementsByClassName("quote").length-1];}

                if (mText.getElementsByTagName("img") == undefined) {continue;}
                if (posts[i].getElementsByClassName("username")[0] == undefined) {continue;}
                mText.id += " textsp_0"+i;
                var usern = posts[i].getElementsByClassName("username")[0].getElementsByTagName("a")[0].text;
                var inzh = '<form action="profile.php?do=updatelist&userlist=ignore" method="post" id="ignorelist_add_form"><input type="hidden" name="s" value=""><input type="hidden" name="securitytoken" value="'+stoken+'"><input type="hidden" name="do" value="updatelist"> <input type="hidden" name="userlist" value="ignore"><input type="hidden" name="username" value="'+usern+'" > <input type="submit" class="button" value="ИГНОРИРОВАТЬ"></form>';
                var hidesp = '<button onclick="javascript:if(document.getElementsByClassName(\'post_wrap_div\')['+i+'].getElementsByClassName(\'mtext\')[0].style.display == \'none\'){document.getElementsByClassName(\'post_wrap_div\')['+i+'].getElementsByClassName(\'mtext\')[0].style.display = \'block\'; }else{document.getElementsByClassName(\'post_wrap_div\')['+i+'].getElementsByClassName(\'mtext\')[0].style.display=\'none\';}">ПОКАЗАТЬ/СКРЫТЬ</button>';
                posts[i].getElementsByClassName("st_pt_c1")[0].innerHTML += inzh;

                if ((info.match(/Сообщения\:\s(.*?)\n/i)[1] <= 20) && (mText.getElementsByTagName("img")!= undefined) && (mText.getElementsByTagName("img").length >= 2) ){
                    mText.style.display = 'none';
                }
                posts[i].getElementsByClassName("st_pt_c1")[0].innerHTML += hidesp;
            }
            document.body.append("Работает. ");
        }
    };
})();

автоматически все скрывает остается нажать на игнор

offline
Ответить с цитированием