1. Поиск говнокода

    Этот поиск практически ничего не может найти! Но вы всё-таки попытайтесь, вдруг повезет.

    Найдено: 72

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

    +3

    1. 1
    2. 2
    foreach($arResult['ITEMS'] as $key => &$arItem) {
    		$priceRes2 = CIBlockElement::GetList(array(), array("IBLOCK_ID" => 34, "PROPERTY_PERIOD" => 1, "PROPERTY_PERIOD_TYPE" => 85, "PROPERTY_OBJECT_RELATION" => $arItem['ID']), false, false, array("NAME"));

    "Я программист 1C-bitrix и с каждой новой итерацией я делаю новый запрос к инфоблоку."

    tutov2013, 01 Сентября 2015

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

    +142

    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
    <select name="period" id="period">
                <option value="" selected="">Выберите...</option>
    <?
    $sel = '';
    if ($_GET['period']=='year'){
    //	$sel = 'selected="selected"';
    }
    ?>
                <option <?=$sel?> value="year">год</option>
    <?
    $sel = '';
    if ($_GET['period']=='ytd'){
    //	$sel = 'selected="selected"';
    }
    ?>
                <option <?=$sel?> value="ytd">с начала года</option>
    <?
    $sel = '';
    if ($_GET['period']=='6'){
    //	$sel = 'selected="selected"';
    }
    ?>
                <option <?=$sel?> value="6">6 месяцев</option>
    <?
    $sel = '';
    if ($_GET['period']=='3'){
    //	$sel = 'selected="selected"';
    }
    ?>
                <option <?=$sel?> value="3">3 месяца</option>
    <?
    $sel = '';
    if ($_GET['period']=='1'){
    //	$sel = 'selected="selected"';
    }
    ?>
                <option <?=$sel?> value="1">месяц</option>
     </select>

    Сайт одной госкомпании, состоит чуть менее чем на половину из ТАКОГО. Для тех кто в курсе, это код в компоненте bitrix! Это даже не шаблон.

    ledergerat, 11 Июня 2015

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

    +156

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    bool 
     CIBlockElement::Update(...);
    
    // ......
    
    $el = new CIBlockElement;
    
    // ......
    
    $res = $el->Update($PRODUCT_ID, $arLoadProductArray);

    Нынче статический метод вызывается через объект.

    ( Пример из официальной документации Битрикс https://dev.1c-bitrix.ru/api_help/iblock/classes/ciblockelement/update.php )

    h0ckeypl4yer, 14 Ноября 2014

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

    +156

    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
    foreach($PROP as $k1 => $val1)
    		{
    			if(is_array($val1))
    			{
    				foreach($val1 as $k2 => $val2)
    				{
    					$text_name = preg_replace("/([^a-z0-9])/is", "_", "PROP[".$k1."][".$k2."][VALUE][TEXT]");
    					if(array_key_exists($text_name, $_POST))
    					{
    						$type_name = preg_replace("/([^a-z0-9])/is", "_", "PROP[".$k1."][".$k2."][VALUE][TYPE]");
    						$PROP[$k1][$k2]["VALUE"] = array(
    							"TEXT" => $_POST[$text_name],
    							"TYPE" => $_POST[$type_name],
    						);
    					}
    				}
    			}
    		}
    
    		foreach($PROP as $k1 => $val1)
    		{
    			if(is_array($val1))
    			{
    				foreach($val1 as $k2 => $val2)
    				{
    					if(!is_array($val2))
    						$PROP[$k1][$k2] = array("VALUE" => $val2);
    				}
    			}
    		}

    bitrix

    как вам организация цикла(ов)

    memclutter, 01 Сентября 2014

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

    +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
    if(!empty($this->aActions))
    			$sMenuItems = htmlspecialcharsbx(CAdminPopup::PhpToJavaScript($this->aActions));
    ?>
    <tr class="adm-list-table-row<?=(isset($this->aFeatures["footer"]) && $this->aFeatures["footer"] == true? ' footer':'')?><?=$this->bEditMode?' adm-table-row-active' : ''?>"<?=($sMenuItems <> ""? ' oncontextmenu="return '.$sMenuItems.';"':'');?><?=($sDefAction <> ""? ' ondblclick="'.$sDefAction.'"'.(!empty($sDefTitle)? ' title="'.GetMessage("admin_lib_list_double_click").' '.$sDefTitle.'"':''):'')?>>
    <?
    
    		if(count($this->pList->arActions)>0 || $this->pList->bCanBeEdited):
    			$check_id = RandString(5);
    ?>
    	<td class="adm-list-table-cell adm-list-table-checkbox adm-list-table-checkbox-hover<?=$this->bReadOnly? ' adm-list-table-checkbox-disabled':''?>"><input type="checkbox" class="adm-checkbox adm-designed-checkbox" name="ID[]" id="<?=$this->table_id."_".$this->id."_".$check_id;?>" value="<?=$this->id?>" autocomplete="off" title="<?=GetMessage("admin_lib_list_check")?>"<?=$this->bReadOnly? ' disabled="disabled"':''?><?=$this->bEditMode ? ' checked="checked" disabled="disabled"' : ''?> /><label class="adm-designed-checkbox-label adm-checkbox" for="<?=$this->table_id."_".$this->id."_".$check_id;?>"></label></td>
    <?
    		endif;
    
    		if($this->pList->bShowActions):
    			if(!empty($this->aActions)):
    ?>
    	<td class="adm-list-table-cell adm-list-table-popup-block" onclick="BX.adminList.ShowMenu(this.firstChild, this.parentNode.oncontextmenu(), this.parentNode);"><div class="adm-list-table-popup" title="<?=GetMessage("admin_lib_list_actions_title")?>"></div></td>
    <?
    			else:
    ?>
    	<td class="adm-list-table-cell"></td>
    <?
    			endif;
    		endif;

    bitrix

    Лапша PHP кода, с подливкой из HTML. Присутствуют специи из альтернативного синтаксиса оператора if для шаблонов

    memclutter, 29 Августа 2014

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

    +155

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    global $strError, $MESS, $HTTP_GET_VARS, $arrFORM_FILTER;
    	global $find_date_create_1, $find_date_create_2, $lAdmin;
    	$str = "";
    	CheckFilterDates($find_date_create_1, $find_date_create_2, $date1_wrong, $date2_wrong, $date2_less);
    	if ($date1_wrong=="Y") $str.= GetMessage("FORM_WRONG_DATE_CREATE_FROM")."<br>";
    	if ($date2_wrong=="Y") $str.= GetMessage("FORM_WRONG_DATE_CREATE_TO")."<br>";
    	if ($date2_less=="Y") $str.= GetMessage("FORM_FROM_TILL_DATE_CREATE")."<br>";

    bitrix

    - использование HTTP_GET_VARS уже давно deprecated
    - магические переменные find_date_create_1, find_date_create_2, да и lAdmin тоже не понятно что
    - зачем-то используются символы Y и N вместо true и false или 1 и 0

    memclutter, 28 Августа 2014

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

    +154

    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
    [ITEAM] => Array
            (
                [0] => Array
                    (
                        [CITY_NAME] => value
                        [CITY_DETAIL_URL] => value
                        [OBJECT_NAME] => value
                        [OBJECT_ID] => 2487
                        [DATE_CREATE] => 02.07.2006
                        [STATUS] => Y
                        [PAID_STATUS] => Y
                        [DATEIL_OBJECT_URL] => value
                    )
    
                [1] => Array
                    (
                        [CITY_NAME] => value
                        [CITY_DETAIL_URL] => value
                        [OBJECT_NAME] => value
                        [OBJECT_ID] => 2489
                        [DATE_CREATE] => 02.07.2006
                        [STATUS] => Y
                        [PAID_STATUS] => N
                        [DATEIL_OBJECT_URL] => value
                    )

    Битрикс!!
    Особое внимание на ключи:
    ITEAM и DATEIL_OBJECT_URL )))

    http://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&LESSON_ID=3014

    #bitrix #black chi

    waspar, 17 Июля 2014

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

    +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
    <?
    if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();
    
    class CBPTask2Activity
        extends CBPActivity
    {
        public function __construct($name)
        {
            parent::__construct($name);
            $this->arProperties = array(
                "Title" => "", //название действия
                "TaskGroupId" => "", //личная или группа
                "TaskOwnerId" => "", //
                "TaskCreatedBy" => "", //автор
                "TaskActiveFrom" => "", //РѕС‚
                "TaskActiveTo" => "", //РґРѕ
                "TaskName" => "", //название таски
                "TaskDetailText" => "", //описание
                "TaskPriority" => "", //приоритет
                "TaskAssignedTo" => "", //ответственный
                "TaskTrackers" => "", //следящие
                            "TaskCheckResult" => "", //
                "TaskReport" => "", //
                            "TaskChangeDeadline" => "",
            );
        }

    Копия кода из официальной документации битрикса:
    http://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=57&TYPE=Y (внизу)

    #bitrix #black chi

    waspar, 17 Июля 2014

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

    +164

    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
    function EscapePHPString($str)
    {
    	$str = str_replace("\\", "\\\\", $str);
    	$str = str_replace("\$", "\\\$", $str);
    	$str = str_replace("\"", "\\"."\"", $str);
    	return $str;
    }
    
    function UnEscapePHPString($str)
    {
    	$str = str_replace("\\\\", "\\", $str);
    	$str = str_replace("\\\$", "\$", $str);
    	$str = str_replace("\\\"", "\"", $str);
    	return $str;
    }

    Bitrix.

    TBoolean, 16 Июня 2014

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

    +154

    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
    if ($_SERVER["REQUEST_METHOD"] == "POST" && strlen($_REQUEST["backButton"]) > 0 && ($arParams["DELIVERY_NO_SESSION"] == "N" || check_bitrix_sessid()))
    {
    	if($arResult["POST"]["CurrentStep"] == 6 && $arResult["SKIP_FORTH_STEP"] == "Y")
    		$arResult["CurrentStepTmp"] = 3;
    
    	if($arResult["POST"]["CurrentStepTmp"] <= 5 && $arResult["SKIP_THIRD_STEP"] == "Y")
    		$arResult["CurrentStepTmp"] = 2;
    
    	if($arResult["POST"]["CurrentStepTmp"] <= 3 && $arResult["SKIP_SECOND_STEP"] == "Y")
    		$arResult["CurrentStepTmp"] = 1;
    
    	if(IntVal($arResult["CurrentStepTmp"])>0)
    		$arResult["CurrentStep"] = $arResult["CurrentStepTmp"];
    	else
    		$arResult["CurrentStep"] = $arResult["CurrentStep"] - 2;
    	$arResult["BACK"] = "Y";
    }
    if ($arResult["CurrentStep"] <= 0)
    	$arResult["CurrentStep"] = 1;
    $arResult["ERROR_MESSAGE"] = "";

    Компонент страницы заказа в магазине Битрикса, 14я версия.
    Тут вам и отсутствие констант для осмысленных шагов, и отсутствие конфигурирования этих шагов, как они i18n-ятся, вообще не представляю.
    КАК ЭТО ВСЁ РАБОТАЕТ??!!!

    ЗЫ мало того, тут же в компонент вкопипащен (или переговнокоден заново, не сравнивал) процесс залогинивания/регистрации нового юзера, елси он не залогинен. Не смог перекопипастить эту копипасту лишь потому, что она содержит 310 строк. Неслабый DRY.

    velosipedistorg, 30 Мая 2014

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