1. Список говнокодов пользователя legacy

    Всего: 2

  2. PHP / Говнокод #19483

    −39

    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
    public function getEventList($dataWhere = '', $dataOrder = '', $limit = 10, $offset = 10, $archive = false, $leftJoin = false) 
    
    {
                global $dbh;
                $inequality = $archive ? ' < ' : ' >= ';
    
    
                $eventPopularityElement = ginst('EventPopularity');
                $eventPopularityElement->init();
    
                $availableTicketsCounterElement = ginst('EventAvailableTicketsCounter');
                $availableTicketsCounterElement->init();
    
                $events['events'] = $dbh->getAssoc("
    				SELECT SQL_CALC_FOUND_ROWS
    					`ce`.`event_id` AS `cid`, `ce`.`event_id`, `ce`.`poster_ext`,
    					`ce`.`poster1_ext`, `cef`.`slider_ext`,
    					IFNULL(`tec2`.`title`, `tec1`.`title`) AS event_title,
    					`te`.`alias`, `te`.`url`,
    					`ter`.`meta_name` AS rubric_meta_name,
    					`ce`.`id`, `te`.`date_event`, `te`.date_event_end,
    					`te`.`venue_id`, `tv`.`alias` AS `venue_alias`,
    					IFNULL(`vc2`.`title`, `vc1`.`title`) AS `venue_title`,
    					IFNULL(`vc2`.`address`, `vc1`.`address`) AS `address`,
    					IFNULL(`cc2`.`name`, `cc1`.`name`) AS `city_name`,
    					IFNULL(`cc2`.`name2`, `cc1`.`name2`) AS `name2`,
    					`c`.`alias` AS `city_alias`,
    					IFNULL(`country_content2`.`name`, `country_content1`.`name`) AS `country_name`,
    					IFNULL(`cep`.`rating`, 0) AS `rating`,
    					IFNULL(`catc`.`tickets_count`, 0) AS `tickets_count`
    				FROM `c_event` AS `ce`
    				LEFT JOIN `c_event_feutured` AS `cef` ON `cef`.`event_id` = `ce`.`id`
    				INNER JOIN `t_event` AS `te` ON `te`.`id` = `ce`.`event_id`
    				LEFT JOIN `t_event_content` AS `tec1`
    					ON (`tec1`.`id`, `tec1`.`language_id`) = ROW(`te`.`id`, 1)
    				LEFT JOIN `t_event_content` AS `tec2`
    					ON (`tec2`.`id`, `tec2`.`language_id`) = ROW(`te`.`id`, ?)
    				LEFT JOIN `t_venue` AS `tv` ON `tv`.`id` = `te`.`venue_id`
    				LEFT JOIN `t_venue_content` AS `vc1` ON (`vc1`.`id`, `vc1`.`language_id`) = ROW(`tv`.`id`, 1)
    				LEFT JOIN `t_venue_content` AS `vc2` ON (`vc2`.`id`, `vc2`.`language_id`) = ROW(`tv`.`id`, ?)
    				LEFT JOIN `t_city` AS `c` ON `c`.`id` = `tv`.`city_id`
    				LEFT JOIN `t_city_content` AS `cc1` ON (`cc1`.`id`, `cc1`.`language_id`) = ROW(`c`.`id`, 1)
    				LEFT JOIN `t_city_content` AS `cc2` ON (`cc2`.`id`, `cc2`.`language_id`) = ROW(`c`.`id`, ?)
    				LEFT JOIN `t_country_content` AS `country_content1` ON (`country_content1`.`id`, `country_content1`.`language_id`) = ROW(`tv`.`country_id`, 1)
    				LEFT JOIN `t_country_content` AS `country_content2` ON (`country_content2`.`id`, `country_content2`.`language_id`) = ROW(`tv`.`country_id`, ?)
    				LEFT JOIN `t_rubric_events` AS `tre` ON `tre`.`event_id` = `te`.`id`
    				LEFT JOIN `t_event_rubric` AS `ter` ON `ter`.`id` = `tre`.`rubric_id`
    				LEFT JOIN `".$eventPopularityElement->tableName."` AS `cep` ON `cep`.`c_event_id` = `ce`.`id`
    				LEFT JOIN `".$availableTicketsCounterElement->tableName."` AS `catc` ON `catc`.`c_event_id` = `ce`.`id`
    					{$leftJoin}
    				WHERE `te`.`date_event_end` {$inequality} NOW()
    					AND `te`.`active` = 1 AND `te`.`is_main` = 1
    					{$dataWhere}
    				GROUP BY ce.event_id
    					{$dataOrder}
    				LIMIT {$limit}, {$offset}
    			", false, array($GLOBALS['lng']['id'], $GLOBALS['lng']['id'], $GLOBALS['lng']['id'], $GLOBALS['lng']['id']));
    
                $events['count'] = $dbh->getOne("SELECT FOUND_ROWS()");
    
                $ticketPrices = ginst('TicketType')->getMinMaxPrices(array_keys($events['events']));
    
                $rubrics = ginst('Rubric')->getEventsRubric(array_keys($events['events']));
    
                foreach ($events['events'] as $eventId => $event) {
                    $events['events'][$eventId] =
                        (array)$events['events'][$eventId] +
                        (array)$rubrics[$eventId] +
                        (array)$ticketPrices[$eventId];
    
                    if (file_exists(DOC_ROOT . 'dynamic/event/thumb_' . sprintf("%06d", $event['id']) . '_original.' . $event['poster_ext'])) {
                        $events['events'][$eventId]['thumb_name'] = '/dynamic/event/thumb_' . sprintf("%06d", $event['id']) . '_original.' . $event['poster_ext'];
                    } else {
                        $events['events'][$eventId]['thumb_name'] = '/static/img/no-thumbnail.jpg';
                    }
                }
    
                return $events;
            }

    Вот что бывает, когда решаешь, что проект вполне обойдется без ОРМки.

    legacy, 18 Февраля 2016

    Комментарии (5)
  3. Python / Говнокод #18349

    −124

    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
    def execute_test_cases(api_tester):
        """
        Запускает выполнение тестов, собранных в tester.py
    
        :param api_tester: объект класса для тестирования API
        :type api_tester: ApiTester
        """
        test_cases = reversed([x for x in dir(TestCases) if re.match('^[A-Z][a-zA-Z\d]*$', x)])
        for test_name in test_cases:
            print "\n\n================= ** %s ** ==================" % test_name
            test_case = getattr(TestCases, test_name)
            method = re.sub('^_', '', re.sub('([A-Z])', '_\\1', test_name)).lower()
            test_case_variants = [x for x in dir(test_case) if re.match('^[a-z][\w\d]+$', x)]
            for variant in test_case_variants:
                getattr(api_tester, method)(getattr(test_case, variant)())

    Человек узнал о магических методах.

    legacy, 16 Июня 2015

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