1. Лучший говнокод

    В номинации:
    За время:
  2. Java / Говнокод #24837

    −2

    1. 1
    2. 2
    https://sohabr.net/habr/post/424725/
    https://sohabr.net/habr/post/423947/

    Я не понял, жава платная или нет?

    syoma, 30 Сентября 2018

    Комментарии (40)
  3. 1C / Говнокод #24225

    −4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    http://developer.android.com/
    Заблокировано в РФ
    
    http://isitblockedinrussia.ru/?host=http%3A%2F%2Fdeveloper.android.com%2F
    
    http://addons.mozilla.org 
    Заблокировано в РФ
    http://isitblockedinrussia.ru/?host=http%3A%2F%2Faddons.mozilla.org%20

    ж)

    roskomgovno, 04 Мая 2018

    Комментарии (40)
  4. PHP / Говнокод #23370

    +2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    $ls = explode("\n", shell_exec("ls -A"));
    foreach ($ls as $item) {
    	if ($item != 'doc2txt.php' and $item != 'nohup.out' and trim($item) != '') {
    		$dir = str_replace(
    			[' ', '(', ')', ';', '=', '<', '>', "'"],
    			['\ ', '\(', '\)', '\;', '\=', '\<', '\>', "\'"],
    			$item);
    		exec("rm -r -- $dir");
    	}
    }

    Cron
    00 20 * * * /usr/bin/php /var/www/somedir/data/scripts/doc2xml/doc2txt.php
    Allahu akbar !

    abyss, 28 Сентября 2017

    Комментарии (40)
  5. Куча / Говнокод #23281

    0

    1. 1
    Псст. А где здесь говнокод "подопьём и разговариваем про всякое"? Я, признаться, совсем одичал за последние полгода.

    bakagaijin, 19 Августа 2017

    Комментарии (40)
  6. JavaScript / Говнокод #20119

    +2

    1. 1
    $ npm install ember-cli-phone-number --save-dev

    Всё достаточно просто. Нам нужен текстовый инпут, в который пользователь вводит свой номер мобильного телефона. Предназначение: sms-оповещение. Проблема в том, что все существующие решения привязываются к определённому формату номера (US, Canada), а при использовании международного формата для US-номера выясняется, что в нём 11 цифр, а не 12. Пользователь же может иметь номер хоть в ёбаном Вануату. Текущее решение: принимать любой текст в инпут, делать .replace(/[^0-9]/g, ''), схоронять в базу и ебаться с этим потом. Чувствую запашок, но не могу понять откуда. Швабрашвабр про телефонные номера читал. inb4, js не нужен.
    Запашок наверное всё-таки от стандартов телефонных номеров...

    bakagaijin, 01 Июня 2016

    Комментарии (40)
  7. JavaScript / Говнокод #20013

    0

    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
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    function saveQuestion() {
    	var questionContent = {};
    	var questionResult = {};
    	switch(questionFields.attr('class')) {
    		case 'check-question':
    			questionResult.text = questionFields.children('.question-text')[0].innerText;																				
    			questionResult.type = 'check';
    			questionResult.answers = [];
    			[].forEach.call(questionFields.children('.answer-preview'), function(answerElement, i, arr) {
    				var answer = {};
    				answer.text = $(answerElement).children('.answer-text')[0].innerText;
    				answer.right = ($(answerElement).children('.answer-check')[0].checked) ? 1 : 0;
    				answer.weight = (!answer.right) ? $(answerElement).children('.answer-weight')[0].getPosition() : 1;
    				answer.weight = (answer.weight > 0 && answer.weight <= 1) ? answer.weight : 0;
    				questionResult.answers.push(answer);
    			});
    			
    			if (checkQuestionCorrect(questionResult)) {
    				questionResult= JSON.stringify(questionResult);
    				questionContent = JSON.parse(questionResult); //клонируем объект
    				[].forEach.call(questionContent.answers, function(answer, i, answers) { delete answer.right; delete answer.weight; });
    				questionContent = JSON.stringify(questionContent);
    				console.log('result: ' + questionResult);
    				console.log('content: ' + questionContent);
    				net.addQuestion(loID, questionContent, questionResult, function(r){
    					$('.add-question').slideUp(200, function(){
    						$('.add-question-row').remove();
    						openLOPreview(loID);
    					});
    				});
    			}
    		break;	
    		
    		case 'input-question':
    			var highlights = highlighter.highlights;
    			questionResult.type = 'input';
    			questionResult.text = $('#question-text-area').get(0).innerText;
    			questionResult.answers = [];
    			for (i = 0; i < highlights.length; i++) {
    				var answer = {};
    				answer.id = highlights[i].id;
    				answer.posStart = highlights[i].characterRange.start;
    				answer.posEnd = highlights[i].characterRange.end;
    				answer.text = highlights[i].answerText;
    				answer.strict = ('strict' in highlights[i]) ? highlights[i].strict : true;
    				questionResult.answers.push(answer);
    			}
    			questionResult.answers.sort(function(a, b){ return a.posStart - b.posStart; });
    			questionResult.serializedHighlight = highlighter.serialize();
    			questionResult = JSON.stringify(questionResult);
    			questionContent = JSON.stringify(questionContent);
    			
    			net.addQuestion(loID, questionContent, questionResult, function(r){
    				$('.add-question').slideUp(200, function(){
    						$('.add-question-row').remove();
    						openLOPreview(loID);
    					});
    			});	
    		break;
    		
    		default: break;
    	}							
    }

    Моя дипломная работа по теме "тестирование студентов". Конструктор тестов, обработчик кнопки сохранения вопроса. Используются библиотеки jQuery и Rangy (для работы с выделением текста).

    cotheq, 16 Мая 2016

    Комментарии (40)
  8. Куча / Говнокод #19110

    −4

    1. 1
    https://github.com/kagami-ryuuji/kuroneko

    По просьбам пользователей

    kgm-rj, 30 Ноября 2015

    Комментарии (40)
  9. PHP / Говнокод #19102

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    Searching 43077 files for "PROPERTY_96" 
    
    D:\OpenServer\domains\aproject.local\public_html\bitrix\templates\aproject\components\aproject\catalog.section\list\template.php: 
    19 // говнокод, говнокодом не испортить :) 
    20 $itSitno = 0; 
    21: if ($arElement['PROPERTY_96'] > 0) 
    22 { 
    23 $itSitno = 1;

    замечательный проект.. Искал тут свойство в интернет магазине (типа макдака), которое отвечает за тип добавки к заказу (соус, мясо, и т.п.).
    Называется это свойство вот так: PROPERTY_96 встречается в нескольких местах, в самом проекте 43077 файлов.
    вообщем у меня бомбануло через 30 минут когда я его таки смог найти.

    да это битрикс :(

    hell, 27 Ноября 2015

    Комментарии (40)
  10. Куча / Говнокод #18921

    +10

    1. 1
    http://ideone.com/VODKA

    Генерятся ж иногда адреса как надо

    absolut, 27 Октября 2015

    Комментарии (40)
  11. Java / Говнокод #18561

    +923

    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
    public class AnyNotNull<T> {
    
        public T get(T... args) {
            for(T t : args) {
                if (t != null)
                    return t;
            }
            return null;
        }
    
        public T getOrThrow(T... args) {
            T t = get(args);
            if(t == null)
                throw new NullPointerException("AnyNotNull. everything is null");
            return t;
        }
    
    }

    класс утилита

    _a_o_O, 02 Августа 2015

    Комментарии (40)