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

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

    Найдено: 74

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

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    Searching 43077 files for "PROPERTY_96" 
    
    D:\OpenServer\domains\aproject.local\public_html\bitrix\templates\aproject\components\aproject\catalog.section\list\template.php: 
    19 // говнокод, говнокодом не испортить :) 
    20 $itSitno = 0; 
    21: if ($arElement['PROPERTY_96'] > 0) 
    22 { 
    23 $itSitno = 1;

    замечательный проект.. Искал тут свойство в интернет магазине (типа макдака), которое отвечает за тип добавки к заказу (соус, мясо, и т.п.).
    Называется это свойство вот так: PROPERTY_96 встречается в нескольких местах, в самом проекте 43077 файлов.
    вообщем у меня бомбануло через 30 минут когда я его таки смог найти.

    да это битрикс :(

    hell, 27 Ноября 2015

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

    +1

    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
    <?
    require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
    $APPLICATION->SetTitle("Новости");
    ob_start();
    
    $APPLICATION->IncludeComponent("bitrix:news", "news-lenta", array(
    	"IBLOCK_TYPE" => "press",
    	"IBLOCK_ID" => "12",
    # вырезано: просто вызывается компонент Битрикс "список новостей"
    );
    
    # веселье тут. Шах и мат, Битрикс!
    $html_code = ob_get_contents();
    ob_end_clean();
    $doc = new DOMDocument();
    
    $html_code = mb_convert_encoding('<meta charset="utf-8">'.$html_code, 'HTML-ENTITIES', "UTF-8");
    if($doc->loadHTML($html_code))
    {
    	$xpath = new DOMXpath($doc);
    }
    // Элемент
    $element_list = $xpath->query(".//descendant::div[@id='element']");
    if($element_list->length > 0)
    {?>
        <div class="container"><?
    	for($i=0;$i<$element_list->length;$i++)
    	{
    		echo $doc->saveHTML($element_list->item($i));
    	}
    	?></div><?}
    
    // Новости
    $blog_post_list = $xpath->query(".//descendant::div[@id='res']/div[@class='blog margin-bottom-40']");
    if($blog_post_list->length > 0)
    {
    	?><div class="container blog-full-width"><?
    	for($i=0;$i<$blog_post_list->length;$i++)
    	{
    		
    		echo $doc->saveHTML($blog_post_list->item($i));
    		
    	}
    	?></div><?
    }
    // Пагинатор
    $pagination_list = $xpath->query(".//descendant::ul[@class='pagination']");
    if($pagination_list->length > 0)
    {
    	?><div class="text-center"><?
    	for($i=0;$i<$pagination_list->length;$i++)
    	{
    		
    		echo $doc->saveHTML($pagination_list->item($i));
    		
    	}
    	?></div><?
    }
    ?>
    
     <? require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>

    Шах и мат, Битрикс!

    nik757, 07 Сентября 2015

    Комментарии (7)
  4. 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)
  5. 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)
  6. 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)
  7. 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)
  8. 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)
  9. 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)
  10. 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)
  11. 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)