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

    +167

    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 validateBoolean($bool) {
    		if ($bool == 'true') {
    			return '1';
    		} else if ($bool == 'false') {
    			return '0';
    		}
    		
    		if ($bool == '1') {
    			return "true";
    		} else if ($bool == '0'){
    			return "false";
    		}
    		
    		exit("Invalid Boolean Data");
    	}

    вот такое чудо нам передали на поддержку

    NasGull, 07 Мая 2014

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

    +160

    1. 1
    2. 2
    3. 3
    class WPEditableComments{
    
    	function WPEditableComments(){$this->__construct();}

    Нашел в одном из плагинов wp. Чел думает об обратной совместимости ога

    Diwms, 07 Мая 2014

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

    +147

    1. 1
    2. 2
    // Мне опять кажется, или скобки у !empty лишние?
    $id = (!empty($id)) ? $id : (int)$this->getState('message.id');

    http://ru2.php.net/manual/ru/language.operators.precedence.php

    psycho-coder, 07 Мая 2014

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

    +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
    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
    /////////////////////////////////// функция обработки операционной системы + поисковые системы
    function getOS($userAgent) {
    // Создадим список операционных систем в виде элементов массива
    $oses = array (
            'iPhone' => '(iPhone)',
    		'Android' => '(android)',
    		'iPad' => '(iPad)',
    		'Blackberry OS' => '(rim)',
            'Windows 3.11' => 'Win16',
            'Windows 95' => '(Windows 95)|(Win95)|(Windows_95)',
            'Windows 98' => '(Windows 98)|(Win98)',
            'Windows 2000' => '(Windows NT 5.0)|(Windows 2000)',
            'Windows XP' => '(Windows NT 5.1)|(Windows XP)',
            'Windows 2003' => '(Windows NT 5.2)',
            'Windows Vista' => '(Windows NT 6.0)|(Windows Vista)',
            'Windows 7' => '(Windows NT 6.1)|(Windows 7)',
    		'Windows 8' => '(Windows NT 6.2)|(Windows 8)',
            'Windows NT 4.0' => '(Windows NT 4.0)|(WinNT4.0)|(WinNT)|(Windows NT)',
            'Windows ME' => 'Windows ME',
            'Open BSD'=>'OpenBSD',
            'Sun OS'=>'SunOS',
            'Linux'=>'(Linux)|(X11)',
            'Safari' => '(Safari)',
            'Macintosh'=>'(Mac_PowerPC)|(Macintosh)',
            'QNX'=>'QNX',
            'BeOS'=>'BeOS',
            'OS/2'=>'OS/2',
    		'Google' => '(Googlebot)',
    		'Yahoo! | AOL' => '(Slurp) | (Yahoo! Slurp) | (Yammybot)',
    		'MSN | Live' => '(MSNBot)',
    		'Ask' => '(Teoma)',
    		'AltaVista' => '(Scooter)',
    		'Alexa' => '(ia_archiver)',
    		'Lycos' => '(Lycos)',
    		'Яндекс' => '(Yandex)',
    		'Рамблер' => '(StackRambler)',
    		'Мэйл.ру' => '(Mail.Ru)',
    		'Aport' => '(Aport)',
            'Search Bot'=>'(nuhk)|(Openbot)|(Slurp/cat)'
    );
      
    foreach($oses as $os=>$pattern){
    if(eregi($pattern, $userAgent)) { // Пройдемся по массиву $oses для поиска соответствующей операционной системы.
    return $os;
    }
    }
    return 'Unknown'; // Хрен его знает, чего у него на десктопе стоит.
    }
    $oc = getOS($_SERVER['HTTP_USER_AGENT']);
    
    
    /////////////////////////////////// #64х64 ава
    function avatar_path($id_user){
    global $ava;
    $ava=glob($_SERVER['DOCUMENT_ROOT'].'/files/ava/'.$id_user.'*');
    if ($ava)return str_replace($_SERVER['DOCUMENT_ROOT'],'',$ava[0]);
    else
    return false;
    }
    ///////////////////////////////////
    function apicms_ava64($users) {
    $ava = avatar_path($users);
    if ($ava){
    echo '<img src="'.$ava.'" alt=""  width="64" height="64"/>';
    }else{
    #если ава не загружена то выводим эту
    echo '<img src="/files/ava/0.png" width="64" height="64">';
    }
    }
    ///////////////////////////////////
    function apicms_ava32($users) {
    $ava = avatar_path($users);
    if ($ava){
    echo '<img src="'.$ava.'" alt=""  width="32" height="32"/>';
    }else{
    #если ава не загружена то выводим эту
    echo '<img src="/files/ava/0.png" width="32" height="32">';
    }
    }
    ///////////////////////////////////
    function apicms_ava40($users) {
    $ava = avatar_path($users);
    if ($ava){
    echo '<img src="'.$ava.'" alt=""  width="40" height="40"/>';
    }else{
    #если ава не загружена то выводим эту
    echo '<img src="/files/ava/0.png" width="40" height="40">';
    }
    }
    ///////////////////////////////////
    #Вывод ошибок
    function apicms_error($var){
    if (!empty($var))echo '<div class="error"><a>'. $var .'</a></div>';
    }

    Из ядра новой "рывалюционной" cms от "известного на весь интернет" автора Евгения Медянкина Kyber. Адрес заповедника говнокода таков: http://apicms.ru

    Strannik1941, 06 Мая 2014

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

    +151

    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
    if (!empty($_POST["favoriteColor"])) {
        switch($_POST["favoriteColor"]) {
            case "Lightred":
                $strBackgroundColor = "#FFDAB9";
                break;
            case "Lightgreen":
                $strBackgroundColor = "Lightgreen";
                break;
            case "Lightblue":
                $strBackgroundColor = "Lightblue";
                break;
            case "Lightgray":
                $strBackgroundColor = "Lightgray";
                break;
            default:
                $strBackgroundColor = "Gray";
                break;
        }
    } else {
        $strBackgroundColor = "Gray";
    }

    arif, 05 Мая 2014

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

    +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
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    ....
    
     static public $ruFullMontsArr = array(
            '01' => 'января',
            '02' => 'февраля',
            '03' => 'марта',
            '04' => 'апреля',
            '05' => 'мая',
            '06' => 'июня',
            '07' => 'июля',
            '08' => 'августа',
            '09' => 'сентября',
            '10' => 'октября',
            '11' => 'ноября',
            '12' => 'декабря'
        );
        static public $ruShortMontsArr = array(
            '01' => 'Янв',
            '02' => 'Фев',
            '03' => 'Мар',
            '04' => 'Апр',
            '05' => 'Май',
            '06' => 'Июн',
            '07' => 'Июл',
            '08' => 'Авг',
            '09' => 'Сен',
            '10' => 'Окт',
            '11' => 'Ноя',
            '12' => 'Дек'
        );
    
    ....
    
     $add_ins = '<ins>' . date( 'd', $model->date ) . ' ' . self::$ruFullMontsArr[date( 'm', $model->date )] . '</ins>';

    наверное уже не впервые подобное ... Получение название месяца ...

    BroadcastAddress, 05 Мая 2014

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

    +163

    1. 1
    2. 2
    $message .= $value . '
    ';

    \r\n ? неее, не слышал ....

    BroadcastAddress, 05 Мая 2014

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

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    function getLocaleByLang($lang) {
       if(!isset($lang)) return false;
       //function's code is here...
    }

    Ну думаю тут все понятно - зачем проверять существование переменной, которую невозможно не передать) Вот что значит - дедлайн рядом.

    Heian, 01 Мая 2014

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

    +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
    26. 26
    foreach ($arResult['SECTIONS'] as $key => $arSection)
    		{
    			$arMap[$arSection['ID']] = $key; /*Собираем все ID секций, при этом в качестве ключа пишем ID, а в качестве значения - индекс цикла (?!)*/
    		}
    		$rsSections = CIBlockSection::GetList(array(), array('ID' => array_keys($arMap)), false, $arSelect); 
                    /*вызываем API - выборку из базы, при этом фильтруем по ID-шникам, вынимая их значения через array_keys() (??!!!) при том, что мы сами записывали ID шники в ключи а не в значения*/
    		while ($arSection = $rsSections->GetNext())
    		{
    			if (!isset($arMap[$arSection['ID']]))
    				continue; /*Проверяем еще раз что этот ID-ключ есть в массиве ??? мы его оттуда взяли*/
    			$key = $arMap[$arSection['ID']]; /*Нахера ??? (см. строчку 03)*/
    			if ($boolPicture)
    			{
    				$arSection['PICTURE'] = intval($arSection['PICTURE']);
    				$arSection['PICTURE'] = (0 < $arSection['PICTURE'] ? CFile::GetFileArray($arSection['PICTURE']) : false);
    				$arResult['SECTIONS'][$key]['PICTURE'] = $arSection['PICTURE'];
    				$arResult['SECTIONS'][$key]['~PICTURE'] = $arSection['~PICTURE'];
    			}
    			if ($boolDescr)
    			{
    				$arResult['SECTIONS'][$key]['DESCRIPTION'] = $arSection['DESCRIPTION'];
    				$arResult['SECTIONS'][$key]['~DESCRIPTION'] = $arSection['~DESCRIPTION'];
    				$arResult['SECTIONS'][$key]['DESCRIPTION_TYPE'] = $arSection['DESCRIPTION_TYPE'];
    				$arResult['SECTIONS'][$key]['~DESCRIPTION_TYPE'] = $arSection['~DESCRIPTION_TYPE'];
    			}
    		}

    Битриксоидам за строчки платят? Дефолтный шаблон компонента Битрикса, который вшит ядро.

    braun3812, 30 Апреля 2014

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

    +148

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    ...
    $me = 'return define("me", "?" . ($me = substr(basename(__FILE__), 1, -23)));';
    ...
    <?php eval($me) or die ?>
    ...

    >Файлы "view" центрального тела страниц, должны начинаться с подчеркивания, например view/_news.php и код файла должен начинаться с такой строки: <?php eval($me) or die ?>

    Пациент:
    http://coresky.net/

    Groovy, 30 Апреля 2014

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