1. JavaScript / Говнокод #5011

    +170

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    // ==UserScript==
    // @name		Skip GK comments
    // @namespace	GK
    // @description	Skip GK comments
    // @include	http://govnokod.ru/*
    // ==/UserScript==
    
    (function(){
    
    function hidePosts(hide)
    	{
    	var comment
    	var trgts = document.evaluate("//strong[@class='entry-author']", document, null, XPathResult.ANY_TYPE, null);
    	var lst = new Array()
    	while (trgt = trgts.iterateNext())
    		lst.push(trgt)
    	for (trgt in lst)
    		{
    		res = hide.exec(lst[trgt].innerHTML);
    		if (res)
    			{
    			comment = lst[trgt].parentNode.parentNode.parentNode;
    			comment.style.display='none';
    			}
    		}
    	}
    
    	var hide = /komprenda/i
    	hidePosts(hide)
    })();

    Клин клином вышибают.

    Запостил: Vindicar, 21 Декабря 2010

    Комментарии (109) RSS

    • показать все, что скрыто
      Ответить
    • что за манера запяточия опускать, блин

      твой пост реально крокфорда огорчает (http://jslint.com/)
      Ответить
      • Если бы это был хороший, годный код, он был бы оффтопом для ресурса.
        Ответить
    • Для нубов Оперы - а куда этот скрипт сохранять? Я пока с настройками не очень знаком просто.
      Ответить
      • Настройки -> Расширенные -> Содержимое -> Настроить Javascript... -> Папка пользовательских файлов Javascript.
        Не знаю, актуально ли это для Оперы, но для FF название javascript-ового файла должно оканчиваться на .user.js
        Ответить
        • актуально, иначе столь любимый user-js пейсателями XPath не будет тормозить и вообще работать
          Ответить
    • хуй вам!
      Ответить
      • Вы новый компренда?
        Ответить
        • кто это?
          Ответить
        • да, новый. посмотрите на его id.
          Ответить
        • Это попытка склонить аккаунт istem. Видимо, у мальчика анальные боли.
          Надо покурить мануал гризманки на предмет сохранения настроек, не лезть же в код каждый раз за новыми именами...
          Ответить
          • между прочим на разворачиваемые ветви не распространяется. зато в урлах типа /5013 скрывает не только автора, но и всю ветку
            Ответить
            • Насчет разворачиваемых ветвей - это да. Над этим надо подумать.
              А скрытие всей ветки - это фича, так как в таких ветках даже адекватные авторы зачастую начинают такое пороть...
              В идеале можно попробовать сэмулировать стандартное говнокодовское скрытие заминусованного комментария.
              Ответить
              • Наполеон, однако
                Ответить
              • как здесь?
                (есесна, постарался в лучших традициях говнокода = )))) )
                // ==UserScript==
                // @name		Skip GK comments
                // @namespace	GK
                // @description	Skip GK comments
                // @include	http://govnokod.ru/*
                // ==/UserScript==
                 
                (function(){
                 
                function hidePosts(hide)
                	{
                	var trgts = document.evaluate("//strong[@class='entry-author']", document, null, XPathResult.ANY_TYPE, null);
                	var lst = new Array();
                	while (trgt = trgts.iterateNext())
                		{
                		lst.push(trgt)
                		}
                	for (trgt in lst)
                		{
                		res = hide.exec(lst[trgt].innerHTML);
                		if (res)
                			{
                			var comment = lst[trgt].parentNode.parentNode.parentNode;
                			var rnd=Math.random();
                			comment.innerHTML='<a href="#" onclick="document.getElementById(\'hide_'+rnd+'\').style.display=\'block\';this.style.display=\'none\';return false;">показать всё, что скрыто</a><div id="hide_'+rnd+'" style="display:none;">'+comment.innerHTML+'</div>';
                			//comment.style.display='none';
                			}
                		}
                	}
                 
                	var hide = /(komprenda)|(KomprendaTerrorSquad)|(Istem)/;
                	hidePosts(hide);
                })();
                Ответить
                • зы: что бы не было крякозяблов, сохраняем в утф-8
                  Ответить
                  • Типа того, только обработчик не нужен. Говнокод написан так, что достаточно добавить ссылку с нужным классом и выставить класс для контейнера - и все заработает.
                    Ответить
                  • Вот версия 2.0, с блэджинтерфейсом и настройками. В Опере не проверял!
                    http://narod.ru/disk/1882361001/GK.komprenda.user.js.html
                    Ответить
                    • http://narod.ru/disk/1882987001/GK.komprenda.user.js.html

                      2.1
                      исправлено полное скрытие одного комментария.
                      Ответить
                      • хм, а на рапиду, например, религия не позволяет залить?

                        мне как бы интересно ебланский for-in исправлен или нет, но не настолько чтобы капчу вводить
                        Ответить
                        • http://www.rapidshare.ru/1710955
                          Пофиксил специально для вас. 2.1.1
                          Ответить
                          • Пацаны, не качайте, там вишмастер. У меня винчестер в кашу распидорасило, пишу с телефона.
                            Ответить
                            • :)
                              Ответить
                            • :D
                              Ответить
                              • Смех смехом, а на rghost.ru почти к каждому файлу такой комментарий. И не лень кому-то было писать...
                                Ответить
                              • Файл был запрошен 13 раз(а).
                                Файл был скачан 0 раз(а).


                                супер
                                Ответить
                                • для тех, кто хотел скачать, но не сумел, зазеркалил на http://ifolder.ru/20949719
                                  Ответить
                                  • Для тех кто нууб в области ВЕБ, как этим пользоваться?

                                    Можно ли в Опере?
                                    Ответить
                                • хы, это я крутанул счетчик
                                  славянская рапида это что-то
                                  кстати, байпасс:
                                  javascript:void(currentsecond=0)
                                  Ответить
                                  • дык и я с носкриптом каждым обновлением накрутывал... тока вклучил - накрутка перестала
                                    Ответить
                      • премию говнокода!
                        теперь все пашет как надо ))
                        Ответить
                        • .оО(Если дописать еще автоминусатор к этому - меня забанят?)
                          Ответить
                          • думаю этим враг воспользуется ловчее, поэтому распространять только если по безопасному каналу
                            Ответить
                            • Угу. Благо, при наличии моска дописать - дело двух минут.
                              Разве что свистелок добавить, вроде вероятности голосования и задержки между запросами - чтоб не спалили.
                              Ответить
                              • вот, допишем, и устроим конкурс... урлы замаскуем и призера на говнокод
                                Ответить
                              • > свистелок

                                возможно, вы имели ввиду "перделок"
                                возможно, вы имели ввиду "вувузел"
                                Ответить
                • ы
                  Ответить
                • li.hcomment же
                  спрятал его -- все дети спрятались
                  Ответить
          • http://www.opera.com/docs/userjs/specs/#scriptstorage
            Ответить
      • Вам нужно поменять аву. Она Вас палит.
        Ответить
    • мне скушнааааааааааааааааааааааааа
      Ответить
    • istem, хостеру istem.ru?
      Ответить
      • ?
        Ответить
        • Забей, я туплю что-то... %)
          Чтение комментов компренды на меня дурно влияет.
          Ответить
          • угу, я тоже узнал что значит морская болезнь с тяжелого похмелу...
            Ответить
          • Пардон, просто недопонял вопроса...
            --
            Оно снова залезло... Щас, думаю, чего-нибудь запостит...
            Ответить
    • v 2.1.1 http://ifolder.ru/20949719
      Ответить
      • Так. Добавил в папку скриптов. Ничего не происходит. Или я что-то ещё должен сделать? Что вообще должно произойти? Компренда исчезнуть?
        Ответить
        • опера? под оперой и у меня не получилось.
          работает в лисе, с гризманки (просто драгндропнуть на окно лисицы при врубленом гризманки)
          Ответить
          • Поятно. Жаль. :(
            Адаптация под Оперу планируется?

            А что я потерял?
            Ответить
            • разберусь. но не сегодня...
              Ответить
              • Спасибо. Буду ждать с нетерпением. :)
                Ответить
            • Вот в помощь эмулятор гризманки:
              http://userjs.org/scripts/browser/enhancements/aa-gm-functions
              Ответить
              • он очень, очень старый
                изменилась семантика для
                GM_(g/s)etValue
                GM_xmlhttpRequest
                Ответить
                • Вот версия новее:
                  http://www.howtocreate.co.uk/operaStuff/userjs/aagmfunctions.js
                  С ней у меня GK.*********.user.js в Опере работает на ура!
                  Ответить
                  • это тоже очень старый
                    возможно, его кто-то подобрал и запилил opera.XMLHttpRequest
                    Ответить
                  • Я это скачал и у меня менюшка появилась "User Script Commands"

                    Там что-то можно менять. Пока не разбирался.

                    Прописанный там в параметрах имя компренды проверяется на чёткое соответсвие или достаточно, что оно просто находится в нике?
                    Это я к тому, что если там написано компренда, то найдет ли оно и компрендуТеррорКуад?

                    Было бы круто ввести возможность списка.

                    Спасибо. :)
                    Ответить
                    • Сейчас проверил. Windows и Windows.* скрывает WindowsGovno. Всегда ищет подстроку, а не точное соответствие.
                      Ответить
                      • аггау и индексОф же
                        Ответить
                      • ...всё равно, такие вещи лучше делать на стороне сервера.
                        Ответить
                      • Полезно. Ещё раз спасибо.
                        Жаль, компренда под никами Компренда*** и компренда напостил. Поэтому вроде скрывает либо того, либо того... В зависимости от регистра букв.
                        Ответить
                    • Вообще-то там регулярное выражение.
                      Например:
                      komprenda - поиск подстроки (по идее - без учета регистра).
                      /bkomprenda/b - поиск слова.
                      ^komprenda.* - все что начинается с komprenda
                      komprenda|lstem - поиск любого из двух вариантов.
                      k[oa]mprenda - поиск по набору символов.
                      Ну и так далее. Опять-таки, в Опере не проверял, у меня только ФФ. Может, там по-другому.
                      Ответить
                      • Я не смотрел на код. Теперь ясно. :) Можно любое кол-во "петушков" отключить. ))
                        Ответить
        • по умолчанию его посты должны скрываться под "показать все что скрыто" независимо от рейтинга.

          В фаерфоксе можно залезть в меню гризманки, выбрать "команды скрипта" - "Set username pattern" (настройка регулярки для блокирования постов), и "Set hiding method" (стиль блокирования). Как это в опере сделать - не знаю.

          На худой конец можете попробовать исправить строчки
          options['default'] = 'komprenda';
          //шаблон для скрытия по умолчанию. регулярка.
          options['defaultmethod'] = '2';
          //метод скрытия по умолчанию
          и переустановить скрипт.
          Ответить
          • Спасибо. Ясно.
            Если подумать, то найти посты компренды, не заминусованные по самое нехочу уже весьма тяжело. :)
            Ответить
          • тебе надо доделать голосование и пропихнуть апдейт юзерам
            (и то и другое в среде FF/GM нихрена не продумано)
            Ответить
    • показать все, что скрытокороче можете идти на хер у меня бан кончился, пойду троллить в привычное место
      Ответить
    • показать все, что скрытоКися, поможет ли твоя пилюля против флуда в овер > 3000 комментов?
      Ответить

    Добавить комментарий