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

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

    +153

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    <?php foreach ($category_1['children'] as $category_2) { ?>
            <?php if ($category_2['category_id'] == $category_id) { ?>
            <option value="<?php echo $category_2['category_id']; ?>" selected="selected">      <?php echo $category_2['name']; ?></option>
            <?php } else { ?>
            <option value="<?php echo $category_2['category_id']; ?>">      <?php echo $category_2['name']; ?></option>
            <?php } ?>
            <?php foreach ($category_2['children'] as $category_3) { ?>
            <?php if ($category_3['category_id'] == $category_id) { ?>
            <option value="<?php echo $category_3['category_id']; ?>" selected="selected">            <?php echo $category_3['name']; ?></option>
            <?php } else { ?>
            <option value="<?php echo $category_3['category_id']; ?>">            <?php echo $category_3['name']; ?></option>
            <?php } ?>

    Код вида поиска из известной модификации CMS Opencart - Maxystore.

    bestaimer, 15 Мая 2014

    Комментарии (9)
  3. JavaScript / Говнокод #15952

    +153

    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
    // обработка наведения/убирания мышки на тултипы и ссылки
    $("a.popup-link").live("mouseenter", function(event) {
        var id = parseInt($(this).text().replace(">>", ""));
        $(window).data("currentTooltip", id);
        showTooltip(this, id);
    });
    
    $("a.popup-link").live("mouseleave", function(event) {
        $(window).data("currentTooltip", null);
        scheduleTooltipClose();
    });
    
    $("div.comment-tooltip").live("mouseover", function(event) {
        if (!$(event.target).hasClass("popup-link")) {
            $(window).data("currentTooltip", $(this).data("id"));
        }
    });
    
    $("div.comment-tooltip").live("mouseleave", function(event) {
        $(window).data("currentTooltip", null);
        scheduleTooltipClose();
    });

    https://github.com/bormand/govnokod-board

    Превращаем уютненький форум в уютненькую борду (скрипт для greasemonkey).

    P.S. На ГК стоит жквери 1.4, поэтому live() вместо on().

    bormand, 09 Мая 2014

    Комментарии (153)
  4. JavaScript / Говнокод #15896

    +153

    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
    window.onload = function()
     {
         m1 = new Matrix('matrix1', 20, 20);
         m1.create();
    
        var square = new Square(1, 2, 'right');
         square.create();
    
        setInterval(square.move, 50);
     }
    
    function Square(row, col, course)
     {
     this.body = [row, col];
    
     this.course = course;
    
     var that = this; // <-- 100500 iopta !!!
    
     this.create = function()
     {
       m1.setCell(that.body[0], that.body[1], true);
     }
    
     this.move = function()
     {
       var last_body = that.body;
       switch(that.course)
       {
        case 'right':
        that.body[1]++;
        break;
        case 'left':
        break;
        case 'down':
        break;
        case 'up':
        break;
       }
    
      m1.setCell(last_body[0], last_body[1], false);
       m1.setCell(that.body[0], that.body[1], true);
     }
     }

    здесь вам не тут, понял, да !

    bahamot, 04 Мая 2014

    Комментарии (25)
  5. PHP / Говнокод #15862

    +153

    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
    if (!empty($_POST["favoriteColor"])) {
        switch($_POST["favoriteColor"]) {
            case "Lightred":
                $strBackgroundColor = "#FFDAB9";
                break;
            case "Lightgreen":
                $strBackgroundColor = "Lightgreen";
                break;
            case "Lightblue":
                $strBackgroundColor = "Lightblue";
                break;
            case "Lightgray":
                $strBackgroundColor = "Lightgray";
                break;
            default:
                $strBackgroundColor = "Gray";
                break;
        }
    } else {
        $strBackgroundColor = "Gray";
    }

    jkhne4pijgberg, 29 Апреля 2014

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

    +153

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    class Application_Model_Product extends Leto_Model
    {
        ...
        public function getParts($cityId)
        {
           ...
            if (@$prods['Сезонный']) {
                $html[] = "<h2>" . _T(__FILE__, 'Сезонные') . "</h2><p>";
                ...
            }
            $html[] = '</p>';

    HTML в модели - это сильно

    DIX315, 25 Апреля 2014

    Комментарии (10)
  7. PHP / Говнокод #15847

    +153

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    // Заполняем листы целиком одним махом. Что бы про PHP ни говорили, он весьма крут.
    $curr_griddles = array_merge($curr_griddles, array_fill(0, $gqty, array('total_qty' => $piesPerList, $pieId => $piesPerList)));
                                    
       ...
    
    // Выбираем наименее загруженного работника. А вот тут PHP демонстрирует корявость. Правда непонятно, мою или свою...
    asort($workersLoad); reset($workersLoad); $kv = each($workersLoad); $workerId = $kv['key'];

    DIX315, 25 Апреля 2014

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

    +153

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    function getCallback( variable ){
        return function () {
            if (!private["loginManager"].isLogin() )
                return ( private["loginManager"].callbackReauth() && false) || null ;
            return private[variable];
        }
    };

    когда лень ставить лишние фигурные скобки ( все внимание на средний return )

    Dart_Sergius, 24 Апреля 2014

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

    +153

    1. 1
    print implode('-', array_reverse(explode('-', trim(substr($project->start_date, 0, count($project->start_date) - 9)))));

    Форматирует дату с Y-m-d в d-m-Y. Альтернатива для
    date_format(new DateTime($project->start_date), 'd-m-Y');

    djumpen, 22 Апреля 2014

    Комментарии (2)
  10. PHP / Говнокод #15770

    +153

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if($vOk)
    {
    	if($vOk)
    	{
    	...
    	}
    }

    Дополнительная проверка не повредит.

    any0ne2567, 17 Апреля 2014

    Комментарии (159)
  11. PHP / Говнокод #15754

    +153

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    <?php if(isset($the_cat_id)): ?>
        <?php
            $query_args['showposts'] = $brp_count_category;
            $query_args['cat'] = $the_cat_id;
        ?>
    <?php else: ?>
        <?php
            $query_args['showposts'] = $brp_count_index;
        ?>
    <?php endif; ?>

    { }? Нет, не слышали...

    russling, 14 Апреля 2014

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