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

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

    Найдено: 109

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

    −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
    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
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    <?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>
    <div class="catalog-section">
    <?if($arParams["DISPLAY_TOP_PAGER"]):?>
    	<?=$arResult["NAV_STRING"]?><br />
    <?endif;?>
    <table cellpadding="0" cellspacing="0" border="0">
    		<?foreach($arResult["ITEMS"] as $cell=>$arElement):?>
    		<?
    		$this->AddEditAction($arElement['ID'], $arElement['EDIT_LINK'], CIBlock::GetArrayByID($arParams["IBLOCK_ID"], "ELEMENT_EDIT"));
    		$this->AddDeleteAction($arElement['ID'], $arElement['DELETE_LINK'], CIBlock::GetArrayByID($arParams["IBLOCK_ID"], "ELEMENT_DELETE"), array("CONFIRM" => GetMessage('CT_BCS_ELEMENT_DELETE_CONFIRM')));
    		?>
    		<?if($cell%$arParams["LINE_ELEMENT_COUNT"] == 0):?>
    		<tr>
    		<?endif;?>
    
    		<td valign="top" width="<?=round(100/$arParams["LINE_ELEMENT_COUNT"])?>%" id="<?=$this->GetEditAreaId($arElement['ID']);?>">
    
    			<table cellpadding="0" cellspacing="2" border="0">
    				<tr>
    					<?if(is_array($arElement["PREVIEW_PICTURE"])):?>
    						<td valign="top">
    						<a href="<?=$arElement["DETAIL_PAGE_URL"]?>"><img border="0" src="<?=$arElement["PREVIEW_PICTURE"]["SRC"]?>" width="<?=$arElement["PREVIEW_PICTURE"]["WIDTH"]?>" height="<?=$arElement["PREVIEW_PICTURE"]["HEIGHT"]?>" alt="<?=$arElement["NAME"]?>" title="<?=$arElement["NAME"]?>" /></a><br />
    						</td>
    					<?elseif(is_array($arElement["DETAIL_PICTURE"])):?>
    						<td valign="top">
    						<a href="<?=$arElement["DETAIL_PAGE_URL"]?>"><img border="0" src="<?=$arElement["DETAIL_PICTURE"]["SRC"]?>" width="<?=$arElement["DETAIL_PICTURE"]["WIDTH"]?>" height="<?=$arElement["DETAIL_PICTURE"]["HEIGHT"]?>" alt="<?=$arElement["NAME"]?>" title="<?=$arElement["NAME"]?>" /></a><br />
    						</td>
    					<?endif?>
    					<td valign="top"><a href="<?=$arElement["DETAIL_PAGE_URL"]?>"><?=$arElement["NAME"]?></a><br />
    						<?foreach($arElement["DISPLAY_PROPERTIES"] as $pid=>$arProperty):?>
    							<?=$arProperty["NAME"]?>: <?
    								if(is_array($arProperty["DISPLAY_VALUE"]))
    									echo implode(" / ", $arProperty["DISPLAY_VALUE"]);
    								else
    									echo $arProperty["DISPLAY_VALUE"];?><br />
    						<?endforeach?>
    						<br />
    						<?=$arElement["PREVIEW_TEXT"]?>
    					</td>
    				</tr>
    			</table>
    			<?if(is_array($arElement["OFFERS"]) && !empty($arElement["OFFERS"])):?>
    				<?foreach($arElement["OFFERS"] as $arOffer):?>
    					<?foreach($arParams["OFFERS_FIELD_CODE"] as $field_code):?>
    						<small><?echo GetMessage("IBLOCK_FIELD_".$field_code)?>: <?
    								echo $arOffer[$field_code];?></small><br />
    					<?endforeach;?>
    					<?foreach($arOffer["DISPLAY_PROPERTIES"] as $pid=>$arProperty):?>
    						<small><?=$arProperty["NAME"]?>: <?
    							if(is_array($arProperty["DISPLAY_VALUE"]))
    								echo implode(" / ", $arProperty["DISPLAY_VALUE"]);
    							else
    								echo $arProperty["DISPLAY_VALUE"];?></small><br />
    					<?endforeach?>
    					<?foreach($arOffer["PRICES"] as $code=>$arPrice):?>
    						<?if($arPrice["CAN_ACCESS"]):?>
    							<p><?=$arResult["PRICES"][$code]["TITLE"];?>:  
    							<?if($arPrice["DISCOUNT_VALUE"] < $arPrice["VALUE"]):?>
    								<s><?=$arPrice["PRINT_VALUE"]?></s> <span class="catalog-price"><?=$arPrice["PRINT_DISCOUNT_VALUE"]?></span>
    							<?else:?>
    								<span class="catalog-price"><?=$arPrice["PRINT_VALUE"]?></span>
    							<?endif?>
    							</p>
    						<?endif;?>
    					<?endforeach;?>
    					<p>
    					<?if($arParams["DISPLAY_COMPARE"]):?>
    						<noindex>
    						<a href="<?echo $arOffer["COMPARE_URL"]?>" rel="nofollow"><?echo GetMessage("CATALOG_COMPARE")?></a> 
    						</noindex>
    					<?endif?>
    					<?if($arOffer["CAN_BUY"]):?>
    						<?if($arParams["USE_PRODUCT_QUANTITY"]):?>
    							<form action="<?=POST_FORM_ACTION_URI?>" method="post" enctype="multipart/form-data">
    							<table border="0" cellspacing="0" cellpadding="2">
    								<tr valign="top">
    									<td><?echo GetMessage("CT_BCS_QUANTITY")?>:</td>
    									<td>
    										<input type="text" name="<?echo $arParams["PRODUCT_QUANTITY_VARIABLE"]?>" value="1" size="5">
    									</td>
    								</tr>
    							</table>
    							<input type="hidden" name="<?echo $arParams["ACTION_VARIABLE"]?>" value="BUY">
    							<input type="hidden" name="<?echo $arParams["PRODUCT_ID_VARIABLE"]?>" value="<?echo $arOffer["ID"]?>">
    							<input type="submit" name="<?echo $arParams["ACTION_VARIABLE"]."BUY"?>" value="<?echo GetMessage("CATALOG_BUY")?>">
    							<input type="submit" name="<?echo $arParams["ACTION_VARIABLE"]."ADD2BASKET"?>" value="<?echo GetMessage("CATALOG_ADD")?>">
    							</form>
    						<?else:?>
    							<noindex>
    							<a href="<?echo $arOffer["BUY_URL"]?>" rel="nofollow"><?echo GetMessage("CATALOG_BUY")?></a>
    							 <a href="<?echo $arOffer["ADD_URL"]?>" rel="nofollow"><?echo GetMessage("CATALOG_ADD")?></a>
    							</noindex>
    						<?endif;?>
    					<?elseif(count($arResult["PRICES"]) > 0):?>
    						...

    Пунктуация сохранена. Шаблон компонента битрикса. Шедевр лапшекода.

    neurocore, 03 Октября 2017

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

    +3

    1. 1
    2. 2
    $arParams["SET_TITLE"] = $arParams["SET_TITLE"]!="N";
    $arParams["SET_LAST_MODIFIED"] = $arParams["SET_LAST_MODIFIED"]==="Y";

    news.detail - cтандартный компонент Битрикса

    pgood, 27 Июля 2016

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

    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
    29. 29
    30. 30
    31. 31
    function CheckPropertyForSend(&$fields) {
        if ($fields["IBLOCK_ID"] == CATALOG_ID) {
            $arFilter = array("IBLOCK_ID" =>CATALOG_ID, "ID"=>$fields["ID"], "PROPERTY_NOT_ALLOWED" =>92);
            $res = CIBlockElement::GetList(Array(), $arFilter);
    
            if($res->SelectedRowsCount() == 1){
                $GLOBALS['NEED_CHECK'] = true;
            }else{
                $GLOBALS['NEED_CHECK'] = false;
            }
    
            $prod = LenalHelp::getProductInfo($fields["ID"]);
            $count = 0;
            $cheked = ( $fields["PROPERTY_VALUES"][580][0]["VALUE"] == 92 ) ? true : false;
            foreach ( $prod["STORES"] as $item ) {
                if ( $item["PRODUCT_AMOUNT"] ) {
                    $count += $item["PRODUCT_AMOUNT"];
                }
            }
    
            // -- убираем фдаг "нет в наличии" ---
            if ( $count > 0 && $cheked ) {
                $fields["PROPERTY_VALUES"][580] = "";
            }
            // -- устанавливаем фдаг "нет в наличии" ---
            if ( $count == 0 && !$cheked ) {
                $fields["PROPERTY_VALUES"][580][0]["VALUE"] = 92;
            }
    
        }
    }

    Платформа Битрикс, Lenal гребанные ублюдки

    lscin, 22 Июля 2016

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

    +2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    <?if( $arResult['PROPERTIES']['NOT_ALLOWED']['VALUE'] == 'да' || $arItem["PROPERTIES"]["NOT_ALLOWED"]["VALUE_XML_ID"] == "Y" ) { ?>
    				<div class="alert-empty alert--licence">
    					<?$APPLICATION->IncludeComponent(
    						"bitrix:main.include",
    						"",
    						Array(
    							"AREA_FILE_SHOW" => "file",
    							"PATH" => SITE_DIR."/inc/card_not_allowed.php",
    							"EDIT_TEMPLATE" => ""
    						)
    					);?>

    Платформа Битрикс, очередное творение Lenal в шаблоне компонента.

    Сравнение значения с КИРИЛИЦЕЙ в template.php.

    lscin, 22 Июля 2016

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

    +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
    header.php
    
     <?$APPLICATION->IncludeComponent(
                    "lenal:lenal.menu",
                    "mobile",
                    array(
                        "VIEW_MODE" => "LINE",
                        "SHOW_PARENT_NAME" => "Y",
                        "IBLOCK_TYPE" => "catalog",
                        "IBLOCK_ID" => "39",
                        "SECTION_ID" => $_REQUEST["SECTION_ID"],
                        "SECTION_CODE" => "",
                        "SECTION_URL" => "",
                        "COUNT_ELEMENTS" => "N",
                        "TOP_DEPTH" => "1",
                        "SECTION_FIELDS" => array(
                            0 => "",
                            1 => "",
                        ),
                        "SECTION_USER_FIELDS" => array(
                            0 => "UF_MOST_POPULAR",
                            1 => "",
                        ),
                        "ADD_SECTIONS_CHAIN" => "Y",
                        "CACHE_TYPE" => "A",
                        "CACHE_TIME" => "36000000",
                        "CACHE_GROUPS" => "Y",
                        "COMPONENT_TEMPLATE" => "ds_main_menu",
                        "MAX_COUNT" => "12",
                        "MAX_ACTIONS" => "4",
                        "MAX_POPULAR" => "5"
                    ),
                    false
                );?>
    
    /**************************************************************/
    
    component.php
    
    if(!isset($arParams["CACHE_TIME"]))
    	$arParams["CACHE_TIME"] = 36000000;
    
    if($this->StartResultCache(false, ($arParams["CACHE_GROUPS"]==="N"? false: $USER->GetGroups())))
    {
    
    	if(!\Bitrix\Main\Loader::includeModule("iblock"))
    	{
    		$this->AbortResultCache();
    		ShowError(GetMessage("IBLOCK_MODULE_NOT_INSTALLED"));
    		return;
    	}
    
    /**************************************************************/

    В параметрах стоит "SECTION_ID" => $_REQUEST["SECTION_ID"] и единственным условием сброса кеша ("CACHE_TIME" => "36000000") является отсутствие одного из основных модулей.

    Результат: по 99 460 файлов кеша на каждый сайт. И это - простое МЕНЮ.

    Производство компания Lenal, платформа 1С-Битрикс

    lscin, 04 Июля 2016

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

    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
    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
    header.php
    
     <?$APPLICATION->IncludeComponent(
                    "lenal:lenal.menu",
                    "mobile",
                    array(
                        "VIEW_MODE" => "LINE",
                        "SHOW_PARENT_NAME" => "Y",
                        "IBLOCK_TYPE" => "catalog",
                        "IBLOCK_ID" => "39",
                        "SECTION_ID" => $_REQUEST["SECTION_ID"],
                        "SECTION_CODE" => "",
    
    ..................................................
    
    
    component.php
    
    if(!isset($arParams["CACHE_TIME"]))
    	$arParams["CACHE_TIME"] = 36000000;
    
    if($this->StartResultCache(false, ($arParams["CACHE_GROUPS"]==="N"? false: $USER->GetGroups())))
    {
    	/*
    	 * Lenal вы гребаные идиоты, у вас в параметрах стоит  "SECTION_ID" => $_REQUEST["SECTION_ID"] и
    	 * единственным условием у вас сброса кеша ("CACHE_TIME" => "36000000"!!!!!! бля)
    	 * ВОТ ЭТО?! Отсутствие модуля iblock ?!? 
    	 * Чтоб вы всю жизнь на жевачку работали, придурки!
    	 * 
    	 * 100 000 файлов кеша на ОДНО МЕНЮ ОДНОГО САЙТА! 
    	 * 
    	 * Дегенераты.
    	 * 
    	 */ 
    	if(!\Bitrix\Main\Loader::includeModule("iblock"))
    	{
    		$this->AbortResultCache();
    		ShowError(GetMessage("IBLOCK_MODULE_NOT_INSTALLED"));
    		return;
    	}
    /*********************

    Компонент меню на публичной части от компании Lenal (платформа 1С-Битрикс)

    lscin, 04 Июля 2016

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

    +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
    <?php
    /*
    You can place here your functions and event handlers
    
    AddEventHandler("module", "EventName", "FunctionName");
    function FunctionName(params)
    {
            //code
    }
    */
    
    AddEventHandler('form', 'onBeforeResultAdd', 'my_onBeforeResultAdd');
    CModule::IncludeModule('cleantalk.antispam');
    
    function my_onBeforeResultAdd($WEB_FORM_ID, $arFields, $arrVALUES) {
     $ct_status = COption::GetOptionString('cleantalk.antispam', 'status', '0');
     if ($ct_status == 1) {
      global $APPLICATION;
      $aParams = array();
      $aParams['type'] = 'comment';
      $aParams['sender_email'] = isset($arrVALUES['email']) ? $arrVALUES['email'] : '';
      $aParams['sender_nickname'] = isset($arrVALUES['nickname']) ? $arrVALUES['nickname'] : '';
      $aParams['message_title'] = isset($arrVALUES['title']) ? $arrVALUES['title'] : '';
      $aParams['message_body'] = isset($arrVALUES['message']) ? $arrVALUES['message'] : '';
      $aResult = CleantalkAntispam::CheckAllBefore($aParams, FALSE);
      if (isset($aResult) && is_array($aResult)) {
       if ($aResult['errno'] == 0) {
        if ($aResult['allow'] == 1) {
            //Not spammer - just return;
            return;
        } else {
         if (preg_match('//u', $aResult['ct_result_comment'])) {
          $err_str=preg_replace('/^[^\*]*?\*\*\*|\*\*\*[^\*]*?$/iu','',$aResult['ct_result_comment']);
          $err_str=preg_replace('/<[^<>]*>/iu', '', $err_str);
         } else {
          $err_str=preg_replace('/^[^\*]*?\*\*\*|\*\*\*[^\*]*?$/i','',$aResult['ct_result_comment']);
          $err_str=preg_replace('/<[^<>]*>/i', '', $err_str);
         }
         $APPLICATION->ThrowException($err_str);
         return false;
        }
       }
      }
     }
    }
    ?>

    Четкая конторка написала четкий антиспам-модуль для битрикса и показывает как его нужно использовать. Тут все в одном флаконе - от игнорирования всех стандартов PSR разом до иррациональной реализации ... Пост на хабре: https://habrahabr.ru/company/cleantalk/blog/302800/

    zenn1989, 08 Июня 2016

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

    +1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if (!CModule::IncludeModule("iblock")) die();//7-оборудование. 8-отрасли. 5-разработки. 6-проекты.
    $a=0;if(strpos($_SERVER['REQUEST_URI'], '/development/')!==false) $a=5;
    elseif(strpos($_SERVER['REQUEST_URI'], '/projects/')!==false) $a=6;
    elseif(strpos($_SERVER['REQUEST_URI'], '/serial-production/')!==false) $a=13;
    elseif(strpos($_SERVER['REQUEST_URI'], '/control-systems/')!==false) $a=7;
    elseif(strpos($_SERVER['REQUEST_URI'], '/industry/')!==false) $a=8;

    Классика битрикс - разработки в индусском стиле. Проект стоил 500к+ дерева, не считая поддержки.

    ajiko, 07 Июня 2016

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

    +3

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if(!empty($arResult["PostToShow"]["SPERM"]))
    {
    	$arResult["PostToShow"]["FEED_DESTINATION"]['SELECTED'] = Array();
    	if (empty($arResult["PostToShow"]["SPERM"]))
    	{

    Проверка в битриксовском стандартном компоненте

    govnopis, 16 Мая 2016

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

    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
    29. 29
    30. 30
    <?php
    namespace DoctrineExtensions;
    use \Doctrine\ORM\Event\LoadClassMetadataEventArgs;
    /**
     * Расширение для Doctrine ORM
     * Позволяет отслеживать и работать не со всей базой, а только с таблицами с префиксом
     * Необходимо для уживания с битриксом
     *
     * Class TablePrefix
     * @package DoctrineExtensions
     */
    class TablePrefix
    {
        protected $prefix = '';
        public function __construct($prefix)
        {
            $this->prefix = (string) $prefix;
        }
        public function loadClassMetadata(LoadClassMetadataEventArgs $eventArgs)
        {
            $classMetadata = $eventArgs->getClassMetadata();
            $classMetadata->setTableName($this->prefix . $classMetadata->getTableName());
            foreach ($classMetadata->getAssociationMappings() as $fieldName => $mapping) {
                if ($mapping['type'] == \Doctrine\ORM\Mapping\ClassMetadataInfo::MANY_TO_MANY) {
                    $mappedTableName = $classMetadata->associationMappings[$fieldName]['joinTable']['name'];
                    $classMetadata->associationMappings[$fieldName]['joinTable']['name'] = $this->prefix . $mappedTableName;
                }
            }
        }
    }

    Адепты битрикса добрались до Doctrine ORM. И вот что из этого получилось.
    Заставь дурака ORM подключать, он и events задрочит.

    Keeper, 06 Мая 2016

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