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

    +2

    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
    <table>       
            <?php 
            $showShowroomsIds =  array();
            foreach($available_sizes as $sizeName):
            $available  =  false;
            foreach($warehouses as $warehouse) :
                $uuid = $warehouse['uuid'];
                $name = $warehouse['name'];
                $quantity = $size_quantity[$uuid][trim($sizeName)];
                if($quantity >0) {
                    $available  =  true;
                }
            endforeach;
            if(!$available) continue;
            ?>
            <?php
            foreach($warehouses as $warehouse) :
            $uuid = $warehouse['uuid'];
            //echo $uuid."<br>";
            
            if(isset($showrooms[$uuid])) {
                $showShowroomsIds[$uuid] = $uuid;
            }
            
            $name = $warehouse['name'];
            $quantity = $size_quantity[$uuid][trim($sizeName)];
            if($quantity) {
                $eshopAvailable = '';
                if($uuid == $eshopUuid && $quantity > 0) $eshopAvailable = 'eshop_available=\'y\'';
                $quantity  = ModelCommonWarehouse::getFormattedQuantity($quantity,$uuid);
                $qtA  =  "";
            } else {
                continue;
                $qtA  =  "not-available";
                $quantity  =  "нет в наличии";
            }
            ?>
            <tr <?php echo $eshopAvailable?> available='y'>
                <td class="td">
                    <?php if(isset($showrooms[$uuid])):?><a href="#" class="showroom-info"  uuid="<?php echo $uuid;?>" icId="uuid" rel="nofollow"><?php endif;?>
                    <?php echo $name?>
                    <!--<?php echo $uuid;?>-->
                    <?php if(isset($showrooms[$uuid])):?></a><?php endif;?>
                </td>
                <td class="qt <?php echo $qtA;?>"   ><?php echo $quantity;?></td>
            </tr>
            <?php endforeach;?>
            <tr>
                <td style="height: 10px;"></td>
            </tr>
            <?php endforeach;?>
        </table>

    Opencart. Прямо во вьюхе ровным слоем размазаны бизнес-логика и js.
    Что самое интересное, оборот магазина составляет 7 млн. руб (о__О)

    Panda, 13 Июля 2016

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

    +3

    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
    $t0=mktime(
                preg_replace("/^....\-..\-..\ (..):..:..$/","$1",$task['end_date']),
                preg_replace("/^....\-..\-..\ ..:(..):..$/","$1",$task['end_date']),
                preg_replace("/^....\-..\-..\ ..:..:(..)$/","$1",$task['end_date']),
                preg_replace("/^....\-(..)\-..\ ..:..:..$/","$1",$task['end_date']),
                preg_replace("/^....\-..\-(..)\ ..:..:..$/","$1",$task['end_date']),
                preg_replace("/^(....)\-..\-..\ ..:..:..$/","$1",$task['end_date'])
            );
    
            $t1=mktime(
                preg_replace("/^....\-..\-..\ (..):..:..$/","$1",$task['real_end_date']),
                preg_replace("/^....\-..\-..\ ..:(..):..$/","$1",$task['real_end_date']),
                preg_replace("/^....\-..\-..\ ..:..:(..)$/","$1",$task['real_end_date']),
                preg_replace("/^....\-(..)\-..\ ..:..:..$/","$1",$task['real_end_date']),
                preg_replace("/^....\-..\-(..)\ ..:..:..$/","$1",$task['real_end_date']),
                preg_replace("/^(....)\-..\-..\ ..:..:..$/","$1",$task['real_end_date'])
            );
    
            for($i=$t0;$i<=$t1;$i=$i+(60*60))
            {

    Вот такой разбор дат по крупицам обнаружился...

    Lblss, 12 Июля 2016

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

    +2

    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
    function implode() {
        $str = '';
        if(func_num_args()==1) {
            $array  = (is_array(func_get_arg(0))) ? func_get_arg(0) : false;
            $symbol = '';
        } elseif(func_num_args()==2) {
            $array = (is_array(func_get_arg(0))) ? func_get_arg(0): func_get_arg(1);
            $symbol = (!is_array(func_get_arg(0))) ? func_get_arg(0) : func_get_arg(1);
        } else {
            return false;
        }
        if($array===false) {
            return false;
        } else {
            foreach($array as $k=>$v) {
                if(is_array($v)) {
                    return false;
                } else {
                    $str = $str.$symbol.$v;
                }
            }
        return $str;
        }
    }

    Свой аналог функции implode. И такое бывает

    McLotos, 11 Июля 2016

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

    +4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    /**
      * @param int $day
      * @return bool
      */
    protected function isWorkingDay($day)
    {
        return $day % 8 <= 5;
    }

    Cпособ определить, является ли указанный день (передается номер дня в неделе от 1 до 7) рабочим. Чем автора не устроил return $day <= 5 - непонятно..

    feversocial, 11 Июля 2016

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

    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
    do {
    	if ( array_key_exists( 'smd', $_GET ) ) {
    		$this->response[]	= $this->getServiceMap();
    		$this->hasCalls		= TRUE;
    		break;
    	}
    
    	$error = $this->getRequest();
    	if ( $error ) {
    		$this->response[] = $this->getError( $error );
    		$this->hasCalls   = TRUE;
    		break;
    	}
    
    	foreach( $this->calls as $call ) {
    		$error = $this->validateCall( $call );
    		if ( $error ) {
    			$this->response[] = $this->getError( $error[0], $error[1], $error[2] );
    			$this->hasCalls   = TRUE;
    		} else {
    			$result = $this->processCall( $call );
    			if ( $result ) {
    				$this->response[] = $result;
    				$this->hasCalls   = TRUE;
    			}
    		}
    	}
    } while(FALSE);

    Угадайте, зачем?

    Flaker, 07 Июля 2016

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

    +2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    <?	if (mail($mail, $subject, $text, $headers))
    	{
    		?>
    		<?=('<div class="container"><div class="row"><div class="block-header col-lg-12 col-md-12 col-sm-12 col-xs-12"><h2>Благодарим Вас за обращение, в ближайшее время с вами свяжется наш сотрудник.</h2></div></div></div>')?>
    		<?
    	} else {
    		?>
    		<?=('<br><b>Возникли проблемы при отправке почты</b>')?>
    		<?
    	} ?>

    попросили поправить код после предыдущего разраба )

    StTv, 07 Июля 2016

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

    +1

    1. 1
    2. 2
    3. 3
    if ($can_null || $can_unnull) {
    ...
    }

    Когда удачно назвал переменную.

    ooa3, 07 Июля 2016

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

    +6

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    $redir_url = $_conf['www_patch'].str_replace("//////","/",$path[0]);
    	$redir_url = $_conf['www_patch'].str_replace("/////","/",$path[0]);
    	$redir_url = $_conf['www_patch'].str_replace("////","/",$path[0]);
    	$redir_url = $_conf['www_patch'].str_replace("///","/",$path[0]);
    	$redir_url = $_conf['www_patch'].str_replace("//","/",$path[0]);

    Ну ниасилили ребята регулярки...

    Lblss, 07 Июля 2016

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

    +4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    $aProductType     = [];
    $productName      = $conn->query("SELECT value FROM catalog_product_entity_varchar WHERE entity_id = '" . $value['entity_id'] . "' AND attribute_id = 71")->fetch();
    $productUrl       = $conn->query("SELECT value FROM catalog_product_entity_varchar WHERE entity_id = '" . $value['entity_id'] . "' AND attribute_id = 98")->fetch();
    $productImage     = $conn->query("SELECT value FROM catalog_product_entity_media_gallery WHERE entity_id = '" . $value['entity_id'] . "'")->fetchAll();
    $productPrice     = $conn->query("SELECT value FROM catalog_product_entity_decimal WHERE entity_id = '" . $value['entity_id'] . "' AND attribute_id = 75")->fetch();
    $productType      = $conn->query('SELECT category_id FROM catalog_category_product WHERE product_id = ' . $value['entity_id'])->fetchAll();
    $productAvailable = $conn->query('SELECT qty FROM cataloginventory_stock_item WHERE product_id = ' . $value['entity_id'])->fetch();
    $productDesc      = $conn->query('SELECT value FROM catalog_product_entity_text WHERE entity_id = "' . $value['entity_id'] . '"')->fetch();

    Magento, controller, indexAction, front

    Chel, 07 Июля 2016

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

    +10

    1. 1
    if ($invitationType == '1' || '2') {}

    Indian validation. WHYYYYY?

    madfishGovnokod, 06 Июля 2016

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