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

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

    +1

    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
    $loop = React\EventLoop\Factory::create();
    
    $server = new React\Http\Server(function (Psr\Http\Message\ServerRequestInterface $request) {
        return new React\Http\Response(
            200,
            array('Content-Type' => 'text/plain'),
            "Hello World!\n"
        );
    });
    
    $socket = new React\Socket\Server(8080, $loop);
    $server->listen($socket);
    
    echo "Server running at http://127.0.0.1:8080\n";
    
    $loop->run();

    "ReactPHP".

    BoeHHblu_nemyx, 16 Июля 2019

    Комментарии (18)
  3. Куча / Говнокод #25541

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    rt_fold(#{}, Acc) ->
        Acc;
    rt_fold(Keys, Acc) ->
        maps:fold(<.... опущено ...>, Acc, Keys).

    CHayT, 14 Апреля 2019

    Комментарии (18)
  4. 1C / Говнокод #25465

    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
    Набор = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьНаборЗаписей();
    		Отбор = Набор.Отбор;
    		Отбор.Объект.Использование = Истина;
    		Отбор.Объект.ВидСравнения = ВидСравнения.Равно;
    		Отбор.Свойство.ВидСравнения = ВидСравнения.Равно;
    		Отбор.Объект.Значение = Грузополучатель;                
    		Отбор.Свойство.Значение = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию("GLN").Ссылка;
    		Набор.Прочитать();
    		GLN_получ = "";
    		Если Набор.Количество() > 0 Тогда
    			Для нумер = 0 по Набор.Количество()-1 Цикл
    				Свво = Набор.Получить(нумер).Свойство;
    				Если СокрЛП(Свво.Наименование) = "GLN" Тогда
    					GLN_получ = Набор.Получить(нумер).Значение;
    				КонецЕсли;
    			КонецЦикла;
    		КонецЕсли;
    
    		ОбластьМакета.Параметры.GLN_получ       = GLN_получ;

    cdpoma, 22 Марта 2019

    Комментарии (18)
  5. JavaScript / Говнокод #25361

    +1

    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
    EventBus.$on('drag-element', (element) => {
                    if (element.type !== 'form') {
                        setTimeout(() => {
                            this.dragging = true
                        }, 1000)
                    }
                }),
                EventBus.$on('change-element-order', data => {
                    this.manageElementOrder(data, this.page.elements)
                });
                EventBus.$on('change-removed-powered-by', data => {
                    this.isRemovedPoweredBy = this.theme.isRemovedPoweredBy;
                });
                EventBus.$on('select-element', (element, flags = {}) => {
                    let isElExist = false;
    
                    if (isElExist) return;
    
                    if (element.type !== 'form' || flags.isFormCreated) {
    
                        EventBus.$emit('update-email-form', element);
    
                        if (flags.isFormCreated) {
                            EventBus.$emit('add-form')
                        }
    
                        setTimeout(() => {
                            this.dragging = true
                        }, 1000)
                    } else {
                        EventBus.$emit('open-modal');
                        EventBus.$emit('set-modal-data', 'email-providers');
                    }
                });
                EventBus.$on('remove-element', element => {
                    if (!this.page.elements) return;
    
                    if (element.type == 'form') {
                        EventBus.$emit('reset-email-provide-list-fields')
                    }
    
                });
                EventBus.$on('updateBackground', (data) => {
                    this.backgroundImage = data.image;
                });
                this.$root.$on('onSetPopupPosition', this.setPopupPosition);

    VueJS
    Центральное хранилище - не, не слышал!

    websbkinfo, 07 Февраля 2019

    Комментарии (18)
  6. PHP / Говнокод #25168

    +1

    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
    <?php
    
    function array_rot(&$butterbrot) {
        $rosenrot = array_shift($butterbrot);
        array_push($butterbrot, $rosenrot);
    }
    
    function mutate($hydra, $head) {
        if (count($hydra) < 1) {
            yield [$head];
        }
        foreach($hydra as $branch) {
          $branch[] = $head;
          for ($i = 0; $i < count($branch); ++$i) {
            array_rot($branch);
            yield $branch;
          }
        }
    }
    
    class YOBAMaster {
        private $data = [];    
        public function __get($name) {
            $tmp = [];
            foreach (mutate($this->data, $name) as $variant) {
                $tmp[] = $variant;
            }
            $this->data = $tmp;
            return $this;
        }
        public function say() {
            foreach ($this->data as $item) {
                echo implode(' ', $item) . PHP_EOL;
            }
            $this->data = [];
        }
    }
    
    $master = new YOBAmaster();
    
    $master->ALLO->YOBA->ETO->TI->say();
    
    $master->YOBI->NET->DOMA->say();

    https://ideone.com/aoZ9PX

    YOBAMaster, 08 Декабря 2018

    Комментарии (18)
  7. Си / Говнокод #25047

    +1

    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
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    #include <stdio.h>
    
    #define PRIM_CAT_(a, ...) a ## __VA_ARGS__
    
    #define PRIM_CAT(...) PRIM_CAT_(__VA_ARGS__)
    
    #define PRIM_JOIN(sep, a, ...) PRIM_CAT(PRIM_CAT(a, sep), __VA_ARGS__)
    
    #define PRIM_QUOTE_(...) # __VA_ARGS__
    
    #define PRIM_QUOTE(...) PRIM_QUOTE_(__VA_ARGS__)
    
    #define PRIM_EAT(...) /* nothing */
    
    #define PRIM_EXPAND(...) __VA_ARGS__
    
    #define PRIM_HEAD_(x, ...) x
    
    #define PRIM_HEAD(...) PRIM_HEAD_(__VA_ARGS__)
    
    #define PRIM_TAIL_(x, ...) __VA_ARGS__
    
    #define PRIM_TAIL(...) PRIM_TAIL_(__VA_ARGS__)
    
    #define PRIM_CHECK(...) PRIM_CHECK_N(__VA_ARGS__, 0)
    
    #define PRIM_CHECK_N(x, n, ...) n
    
    #define PRIM_PROBE(x) x, 1
    
    #define PRIM_TEST(...) int main(){puts(PRIM_QUOTE(__VA_ARGS__)); return 0;}
    
    #define BOOL_TO_BOOL(x) BOOL_COMPL(BOOL_NOT(x))
    
    #define BOOL_COMPL(x) PRIM_CAT(BOOL_COMPL_, x)
    #define BOOL_COMPL_1 0
    #define BOOL_COMPL_0 1
    
    #define BOOL_NOT(x) PRIM_CHECK(PRIM_CAT(BOOL_NOT_, x))
    #define BOOL_NOT_0 PROBE(?)
    
    #define BOOL_AND(x, y) PRIM_CAT(BOOL_AND_, x)(y)
    #define BOOL_AND_0(x) 0
    #define BOOL_AND_1(x) x
    
    #define BOOL_OR(x, y) PRIM_CAT(BOOL_OR_, x)(y)
    #define BOOL_OR_1(x) 1
    #define BOOL_OR_0(x) x
    
    #define BOOL_XOR(x, y) PRIM_CAT(BOOL_XOR_, x)(y)
    #define BOOL_XOR_1(x) BOOL_COMPL(x)
    #define BOOL_XOR_0(x) x
    
    #define BOOL_EQ(x, y) BOOL_COMPL(BOOL_XOR(x, y))
    
    #define ARITH_ADD_(a7, a6, a5, a4, a3, a2, a1, a0,   b7, b6, b5, b4, b3, b2, b1, b0) \
      BOOL_XOR(BOOL_XOR(a7, b7), BOOL_OR(BOOL_AND(a6, b6), BOOL_AND(BOOL_XOR(a6, b6), BOOL_OR(BOOL_AND(a5, b5), BOOL_AND(BOOL_XOR(a5, b5), BOOL_OR(BOOL_AND(a4, b4), BOOL_AND(BOOL_XOR(a4, b4), BOOL_OR(BOOL_AND(a3, b3), BOOL_AND(BOOL_XOR(a3, b3), BOOL_OR(BOOL_AND(a2, b2), BOOL_AND(BOOL_XOR(a2, b2), BOOL_OR(BOOL_AND(a1, b1), BOOL_AND(BOOL_XOR(a1, b1), BOOL_AND(a0, b0)))))))))))))), \
      BOOL_XOR(BOOL_XOR(a6, b6), BOOL_OR(BOOL_AND(a5, b5), BOOL_AND(BOOL_XOR(a5, b5), BOOL_OR(BOOL_AND(a4, b4), BOOL_AND(BOOL_XOR(a4, b4), BOOL_OR(BOOL_AND(a3, b3), BOOL_AND(BOOL_XOR(a3, b3), BOOL_OR(BOOL_AND(a2, b2), BOOL_AND(BOOL_XOR(a2, b2), BOOL_OR(BOOL_AND(a1, b1), BOOL_AND(BOOL_XOR(a1, b1), BOOL_AND(a0, b0)))))))))))), \
      BOOL_XOR(BOOL_XOR(a5, b5), BOOL_OR(BOOL_AND(a4, b4), BOOL_AND(BOOL_XOR(a4, b4), BOOL_OR(BOOL_AND(a3, b3), BOOL_AND(BOOL_XOR(a3, b3), BOOL_OR(BOOL_AND(a2, b2), BOOL_AND(BOOL_XOR(a2, b2), BOOL_OR(BOOL_AND(a1, b1), BOOL_AND(BOOL_XOR(a1, b1), BOOL_AND(a0, b0)))))))))), \
      BOOL_XOR(BOOL_XOR(a4, b4), BOOL_OR(BOOL_AND(a3, b3), BOOL_AND(BOOL_XOR(a3, b3), BOOL_OR(BOOL_AND(a2, b2), BOOL_AND(BOOL_XOR(a2, b2), BOOL_OR(BOOL_AND(a1, b1), BOOL_AND(BOOL_XOR(a1, b1), BOOL_AND(a0, b0)))))))), \
      BOOL_XOR(BOOL_XOR(a3, b3), BOOL_OR(BOOL_AND(a2, b2), BOOL_AND(BOOL_XOR(a2, b2), BOOL_OR(BOOL_AND(a1, b1), BOOL_AND(BOOL_XOR(a1, b1), BOOL_AND(a0, b0)))))), \
      BOOL_XOR(BOOL_XOR(a2, b2), BOOL_OR(BOOL_AND(a1, b1), BOOL_AND(BOOL_XOR(a1, b1), BOOL_AND(a0, b0)))), \
      BOOL_XOR(BOOL_XOR(a1, b1), BOOL_AND(a0, b0)), \
      BOOL_XOR(a0, b0)
    
    #define ARITH_ADD(...) ARITH_ADD_(__VA_ARGS__)
    
    #define ARITH_INC_(b7, b6, b5, b4, b3, b2, b1, b0) ARITH_ADD(b7, b6, b5, b4, b3, b2, b1, b0,  0, 0, 0, 0, 0, 0, 0, 1)
    
    #define ARITH_INC(...) ARITH_INC_(__VA_ARGS__)
    
    #define ARITH_NEGATE_(b7, b6, b5, b4, b3, b2, b1, b0) ARITH_INC(BOOL_COMPL(b7), BOOL_COMPL(b6), BOOL_COMPL(b5), BOOL_COMPL(b4), BOOL_COMPL(b3), BOOL_COMPL(b2), BOOL_COMPL(b1), BOOL_COMPL(b0))
    
    #define ARITH_NEGATE(...) ARITH_NEGATE_(__VA_ARGS__)
    
    #define ARITH_SUB_(a7, a6, a5, a4, a3, a2, a1, a0,  b7, b6, b5, b4, b3, b2, b1, b0) ARITH_ADD(a7, a6, a5, a4, a3, a2, a1, a0, ARITH_NEGATE(b7, b6, b5, b4, b3, b2, b1, b0))
    
    #define ARITH_SUB(...) ARITH_SUB_(__VA_ARGS__)
    
    #define ARITH_DEC_(a7, a6, a5, a4, a3, a2, a1, a0) ARITH_SUB(a7, a6, a5, a4, a3, a2, a1, a0,  0, 0, 0, 0, 0, 0, 0, 1)
    
    #define ARITH_DEC(...) ARITH_DEC_(__VA_ARGS__)
    
    #define ARITH_TO_C_NUMBER_(b7, b6, b5, b4, b3, b2, b1, b0) PRIM_CAT(0b, PRIM_CAT(b7, PRIM_CAT(b6, PRIM_CAT(b5, PRIM_CAT(b4, PRIM_CAT(b3, PRIM_CAT(b2, PRIM_CAT(b1, b0))))))))
    
    #define ARITH_TO_C_NUMBER(...) ARITH_TO_C_NUMBER_(__VA_ARGS__)
    
    PRIM_TEST(
        ARITH_TO_C_NUMBER(ARITH_ADD(0,0,0,0,0,0,1,1, ARITH_INC(0,1,0,1,1,1,1,1))),
        ARITH_TO_C_NUMBER(ARITH_DEC(0,0,0,0,0,0,0,0))
    )

    А я всё не уймусь...


    https://ideone.com/pudErG

    adrnin, 02 Ноября 2018

    Комментарии (18)
  8. JavaScript / Говнокод #24858

    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
    //<?php
    $is_php = !'0';
    if ($is_php) {
        echo(PHP_EOL);
        perevedi_na_php();
    } else {
        console.log('//');
        perevedi_na_js();
    }
    
    function perevedi_na_php() {
        echo('Hello, "PHP"!' . PHP_EOL);
    }
    function perevedi_na_js() {
        console.log('Hello, "PHP"!');
    }

    Perevedi_na_PHP, 04 Октября 2018

    Комментарии (18)
  9. Куча / Говнокод #24784

    +2

    1. 1
    <VAST version="3.0"><Ad id="5693910"><InLine><AdSystem version="1.0.0">Integros Adserver</AdSystem><MediaFiles><MediaFile id="13258463" delivery="progressive" type="video/mp4" width="852" height="480">https://df1da99b6f27b41d.com/f9ffc53e/226d88d1ea40.mp4</MediaFile></MediaFiles><VideoClicks><ClickTracking>https://afd4aaf58705a09a.com/_/MTUzNzIyMTY5NXxrTjZ6RDJXNDlRTExIYTVST3E4S2dpd3U1NllHY1lzRFVmblBPUnJSQkNRbUhqR0F4S3h3V2dtN0N5X190VkFLNV9kM0JDNy1JTTF1X2lhQXFfbXloQUNVZ3FhMnhPcFZ2aWNuN0k5dFFaeUhqUWhYMFU0X0Zoa1ZzTWdFYWpoT250ZFVRVGM2akE2TTJNdXVHV1BYc3QtSndETkFMMnVULXFyaWVhV3NEZzh3czI1anAxQmRjVUtHblRLSUdxbzE1dk1WdGRzbEg5N0JLZEF6V0NkU2R4dFo2SGNkT1NfdTN4VkZHMVVYLWlaSGMyeWcyX0dCVWJNWHlPTWxNTS0xUV9ER3g5OHo3MmFiaG9oTWxSaDBKR09JZFRJaDQ1Vy1aR01MYjhKVjVENks0cGxWMFA5TzR2NUFETzJZSlN6QWJkcDRmaDZ2TDBPRFBnczY5WFVhcGo2RkR0bHV2QmVFTHpTSTNTT0lRNDVlUzNjTzJFd0JiVFY1YVNZVlNUdzlHRUFfNGVuSXyiaqVx2xuQhv_zxFuD7whj3cFV3W-uqILcTaKKHoKblw==?p=[CONTENTPLAYHEAD]</ClickTracking><ClickThrough id="150081807">https://w3.adm78.com/?project=admiral-xxx&user=xxx-fox&adserv=intgrs&source=mw&id=stoner10&type=video&campaign=ruadblck&p_if</ClickThrough></VideoClicks></Linear></Creative></Creatives></InLine></Ad></VAST>

    Не секрет, что многие сайты с фильмами, которые ещё не попали в базу роскомпозора, находятся в сговоре с азино 777, предваряя просмотр фильма показом рекламы - пресловутое видео под заголовком "сруби бабла", где парень-мажор сорит деньгами, находясь в обществе доступных девиц.

    При анализе страницы выяснилось следующее.
    Страница загружает JS-скрипт с рандомным именем по рандомной ссылке - блокировка бессмысленна, кроме того, это вызовет вызывает проблемы с воспроизведением, т.к. скрипт содержит ссылку на желаемый фильм.
    Также подгружается XML и далее создаётся iframe плеера. Ссылка на ресурс берётся из поля MediaFile.
    Переключения вкладок и потеря ими фокуса отслеживаются скриптом, который немедленно приостанавливает видео - таким образом, пользователь вынужден смотреть ролик до конца. Сраный роскомпозор, убивший сотню-другую полезных сайтов здесь опять показал свою никчемность...

    Вопрос: как запломбировать это рекламное гуано?

    BagorCtretora, 18 Сентября 2018

    Комментарии (18)
  10. 1C / Говнокод #24776

    −5

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    Если ПаузаСек=5 Тогда
    	//Задержка введена специально, так как нужно подождать бизнес процесс и задачи перейдут в новое состояние 
    	СУУ_УниверсальныеСервер.Пауза(5);
    
    ИначеЕсли ПаузаСек=0 Тогда	
    	//Не ждем
    
    Иначе
    	СУУ_УниверсальныеСервер.Пауза(ПаузаСек);
    
    КонецЕсли;

    5xABdAy, 17 Сентября 2018

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

    −2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    if(spForActiveActivityDetect.getBoolean( "active", false) == false) {
                        
                        Intent cabinetManagerAct = new Intent(this, EmployeeCabinetActivity.class );
                        finish();
                        startActivity(cabinetManagerAct );
    
                    }else {
    
                   //...
                  }

    Равно ли getBoolen из false false ?


    по мне, заслуженное звание: топ - говенная проверка из говен, так как особенно выносит мозг

    Sergdev, 04 Сентября 2018

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