1. PHP / Говнокод #15671

    +147

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    \\Editing source code? CHEATER! CHEATER!
    $ps =100
    $time = $ps + $time
    
    echo $time
    \\The end.

    Я один нашёл ошибку?

    Getup1NEW, 04 Апреля 2014

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

    +160

    1. 1
    $result = (string)(int)false;

    drull, 04 Апреля 2014

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

    +152

    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
    $manufacturer_id = JRequest::getInt('manufacturer_id');
                $label_id = JRequest::getInt('label_id');
                $vendor_id = JRequest::getInt('vendor_id');
               
                $view_name = "cart";
                $view_config = array("template_path"=>JPATH_COMPONENT."/templates/".$jshopConfig->template."/".$view_name);
                $view = $this->getView($view_name, getDocumentType(), '', $view_config);
                        if ($category->category_template=="") $category->category_template="default";
                $view->setLayout("category_".$category->category_template);        
         
                $jshopConfig->count_products_to_page = $category->products_page;
         
                $context = "jshoping.list.front.product";
                $contextfilter = "jshoping.list.front.product.cat.".$category_id;
                $orderby = $mainframe->getUserStateFromRequest( $context.'orderby', 'orderby', $jshopConfig->product_sorting_direction, 'int');
                $order = $mainframe->getUserStateFromRequest( $context.'order', 'order', $jshopConfig->product_sorting, 'int');
                $limit = $mainframe->getUserStateFromRequest( $context.'limit', 'limit', $category->products_page, 'int');
                if (!$limit) $limit = $category->products_page;
                $limitstart = JRequest::getInt('limitstart');
         
                $orderbyq = getQuerySortDirection($order, $orderby);
                $image_sort_dir = getImgSortDirection($order, $orderby);
                $field_order = $jshopConfig->sorting_products_field_select[$order];
                $filters = getBuildFilterListProduct($contextfilter, array("categorys"));
                $orderfield = $jshopConfig->category_sorting==1 ? "ordering" : "name";
                $sub_categories = $category->getChildCategories($orderfield, 'asc', $publish = 1);
                $dispatcher->trigger( 'onBeforeDisplayCategory', array(&$category, &$sub_categories) );
         
                if ($category->meta_title=="") $category->meta_title = $category->name;
                setMetaData($category->meta_title, $category->meta_keyword, $category->meta_description);
               
                $total = $category->getCountProducts($filters);
                $action = xhtmlUrl($_SERVER['REQUEST_URI']);
                       
                        $dispatcher->trigger('onBeforeFixLimitstartDisplayProductList', array(&$limitstart, &$total, 'category'));
                if ($limitstart>=$total) $limitstart = 0;
         
                $products = $category->getProducts($filters, $field_order, $orderbyq, $limitstart, $limit);
                        addLinkToProducts($products, $category_id);
         
                jimport('joomla.html.pagination');
                $pagination = new JPagination($total, $limitstart, $limit);
                $pagenav = $pagination->getPagesLinks();
               
                foreach($jshopConfig->sorting_products_name_select as $key=>$value){
                    $sorts[] = JHTML::_('select.option', $key, $value, 'sort_id', 'sort_value' );
                }
         
                insertValueInArray($category->products_page, $jshopConfig->count_product_select); //insert category count
                foreach ($jshopConfig->count_product_select as $key => $value){
                    $product_count[] = JHTML::_('select.option',$key, $value, 'count_id', 'count_value' );
                }
                $sorting_sel = JHTML::_('select.genericlist', $sorts, 'order', 'class = "inputbox" size = "1" onchange = "submitListProductFilters()"','sort_id', 'sort_value', $order );
                $product_count_sel = JHTML::_('select.genericlist', $product_count, 'limit', 'class = "inputbox" size = "1" onchange = "submitListProductFilters()"','count_id', 'count_value', $limit );
               
                $_review = JTable::getInstance('review', 'jshop');
                $allow_review = $_review->getAllowReview();
               
                if (!$category->category_ordertype) $category->category_ordertype = 1;
               
                $manufacuturers_sel = '';
                if ($jshopConfig->show_product_list_filters){
                    $filter_manufactures = $category->getManufacturers();
                    $first_manufacturer = array();
                    $first_manufacturer[] = JHTML::_('select.option', 0, _JSHOP_ALL, 'id', 'name');
                    if (isset($filters['manufacturers'][0])){
                        $active_manufacturer = $filters['manufacturers'][0];            
                    }else{
                        $active_manufacturer = 0;
                    }
                    $manufacuturers_sel = JHTML::_('select.genericlist', array_merge($first_manufacturer, $filter_manufactures), 'manufacturers[]', 'class = "inputbox" onchange = "submitListProductFilters()"','id', 'name', $active_manufacturer);
                }
                $display_list_products = (count($products)>0 || willBeUseFilter($filters));
         
                $dispatcher->trigger('onBeforeDisplayProductList', array(&$products));
                $view->assign('config', $jshopConfig);
                $view->assign('template_block_list_product', "cart/list_products.php");
                $view->assign('template_block_form_filter', "cart/form_filters.php");
                $view->assign('template_block_pagination', "cart/block_pagination.php");
                $view->assign('path_image_sorting_dir', $jshopConfig->live_path.'images/'.$image_sort_dir);
                $view->assign('filter_show_category', 0);
                $view->assign('display_pagination', $pagenav!="");
                $view->assign('rows', $products);
                $view->assign('count_product_to_row', $category->products_row);
                $view->assign('filters', $filters);
                $view->assign('display_list_products', $display_list_products);
                $view->assign('shippinginfo', SEFLink($jshopConfig->shippinginfourl,1));
                $view->display();

    Все это (пришлось еще отрезать строк 30) нужно таскать за собой для вывода списка товаров в нестандартном месте. При этом оно лежит в контроллере.
    Полный код: http://pastebin.com/jTj83ZpE
    (joomshopping)

    attn, 03 Апреля 2014

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

    +157

    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
    /**
         * Определение типа документа - Комплектация/Разукомплектация
         * @param $reverse
         * @return string
         */
        protected function get_reverse($reverse)
        {
            if(in_array($reverse, ['TRUE', 'true', true, 1, '1'], true)) {
                return 'TRUE';
            }
            if(in_array($reverse, ['FALSE', 'false', false, 0, '0', ''], true)) {
                return 'FALSE';
            }
        }

    Продолжение вот этого http://govnokod.ru/15643 кода придется делать

    smpl, 02 Апреля 2014

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

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if ($static['filter.date.start'] == 'NULL') {
        $static['filter.date.start'] = null;
    }
    if ($static['filter.date.end'] == 'NULL') {
        $static['filter.date.end'] = null;
    }

    В коде столкнулся таким оригинальным хранением пустого значения :D
    пришлось немного подкостылять чтобы empty() хотя бы работала :)

    smpl, 02 Апреля 2014

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

    +155

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    ...     
    unset($_SESSION['some_payment']);
    $_SESSION['message'] = "Your booking details have been sent to your email.";
    ?>
    <script language="javascript" type="text/javascript">
        window.location.href = "bookingdetail.php?booking_id=<?= $this->book_id ?>&booking=yes";
    </script>
    <?php
          return true;
          } else {
    ...

    Вот это поворот! Найдено постерди одной из фунций класса.

    synzrk, 02 Апреля 2014

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

    +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
    public function getPagination($page, $rows, $limit){
            $pageArray = array();
    
            if ($rows > $limit){
                $allPage = ceil($rows/$limit);
    
                if ($allPage <= 7){
                    for ($i=1;$i<=$allPage;$i++){$pageArray[]=$i;}
                }else{
                    if ($page < 5){
                        for ($i=1;$i<=($page+3);$i++){$pageArray[]=$i;}
                        $pageArray[]=$allPage;
                    }else{
                        if ($allPage <= ($page+3)){
                            $pageArray[]=1;
                            for ($i=($page-3);$i<=$allPage;$i++){$pageArray[]=$i;}
                        }else{
                            $pageArray[]=1;
                            for ($i=($page-3);$i<=($page+3);$i++){$pageArray[]=$i;}
                            $pageArray[]=$allPage;
                        }
                    }
                }
    
                return array(
                    'pages' => $pageArray,
                    'page' => $page
                );
            }else{
                return array(
                    'pages' => 1,
                    'page' => $page
                );
            }
        }

    My friend wrote pagination function. takes current page, number of rows (from query), and limit on each page. function works really good but :D govno kod :D

    tatocaster, 01 Апреля 2014

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

    +147

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    ...
    $log = _POST['login'];
    $pass = _POST['password'];
    $sel = "SELECT * FROM `users` WHERE `login`=$log AND `password`=$pass";
    ...

    Шок! Найдены исходники движка Говнокода!
    Пожалуй, самый эпичный момент выложен тут.

    gost, 01 Апреля 2014

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

    +162

    1. 1
    $arOrders[$arDetail['PROPERTIES']['YC_ORDER']['VALUE']]['ORDER_DETAILS'][$arDetail['PROPERTIES']['YC_CITY']['VALUE']][] = $arDetail['ID'];

    Черный пояс по заполнению массивов

    TBoolean, 01 Апреля 2014

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

    +155

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    $uu=substr($d_users,-2);
    $ux1=array(2,3,4,22,23,24,32,33,34,42,43,44,52,53,54,62,63,64,72,73,74,82,83,84,92,93,94);
    $ux2=array(1,21,31,41,51,61,71,81,91);
    $ut='Участников';
    if(in_array($uu,$ux1)){ $ut='Участника'; }
    elseif(in_array($uu,$ux2)){ $ut='Участник'; }

    norvele, 30 Марта 2014

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