1. Лучший говнокод

    В номинации:
    За время:
  2. JavaScript / Говнокод #11579

    +153

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    if ((this.formType.urlParam === 'sell1') || (this.formType.urlParam === 'supply1')) {
                                    url = 'sell-return-list';
                                } else if ((this.formType.urlParam === 'sell2') || (this.formType.urlParam === 'supply2')) {
                                    url = 'buy-return-list';
                                } else if ((this.formType.urlParam === 'service1') || (this.formType.urlParam === 'service2')) {
                                    url = 'get-service-list';
                                } else {
                                    url = 'provide-service-list';
                                }

    Ниньзя стайл

    nur, 13 Августа 2012

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

    +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
    <ul class="menu">
      <li class="leaf first">
        <a href="http://example.com/app1?operator=<!--{cke_protected}
          <?php echo($user->profile_crm_name); ?>
          -->" target="_blank">Заявка №1</a>
      </li>
      <li class="leaf">
        <a href="http://example.com/app2?operator=<!--{cke_protected}
          <?php echo($user->profile_crm_name); ?>
          -->" target="_blank">Заявка №2</a>
      </li>
      <!-- ... еще десяток ... -->
    </ul>

    Drupal, приложение для колл-центра, пользовательский блок со списком ссылок. {cke_protected} - защита от WYSIWYG-редактора.

    Спасибо, что хоть без SQL

    scriptin, 17 Июня 2012

    Комментарии (3)
  4. JavaScript / Говнокод #10722

    +153

    1. 1
    http://pastebin.com/KNAhNqJC

    В связи с тем что толстота освоила новую тактику, выпущена очередная версия говнофильтра™.

    * поддержка скрытия постов. Увы, выкинуть пост из выдачи совсем не получится, так что при флуд-атаках будут пустые страницы.
    * альтернативный "мягкий" метод скрытия комментариев - белое на белом.
    * переписано на jQuery, раз уж оно есть на уютненьком ГК.

    Как обычно, заточено под Firefox+GreaseMonkey.

    Vindicar, 08 Июня 2012

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

    +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
    <option value="0" 
    
    <?
    	if($_SESSION['ttype'] == 0){ echo "SELECTED"; }
    	echo ">Подключение\n<option value=\"0last\" ";
    	if($_SESSION['ttype'] == '0last'){ echo "SELECTED"; }
    	echo ">История - Подключение\n<option value=\"1\" ";
    	if($_SESSION['ttype'] == 1){ echo "SELECTED"; }
    	echo ">Саппорт\n<option value=\"1last\" ";
    	if($_SESSION['ttype'] == '1last'){ echo "SELECTED"; }
    	echo ">История - саппорт\n<option value=\"all\" ";
    	if($_SESSION['ttype'] == 'all'){ echo "SELECTED"; }
    ?>
    				>Все
    			</select>

    Вывод селекта для выбора типа заявки. 0.001% сочно наговнокоженного проекта

    VeroLom, 10 Апреля 2012

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

    +153

    1. 1
    2. 2
    imagettftext ($im,9, 0, 12, 21, $black,$font, 'Mike Lowry');
    imagettftext ($im,9, 0, 10, 20, $text_color,$font, 'Mike Lowry');

    Профессиональная тень текста. Скоро в ваших экранах.

    stuffort, 07 Апреля 2012

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

    +153

    1. 1
    2. 2
    3. 3
    <script language="javascript">
    function setcookie(data['uid'])
    </script>

    SnikersSurgut, 01 Апреля 2012

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

    +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
    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
    require_once('adodb/adodb.inc.php');
    
    class adoDbConnector
    {
        private static $instance = null;
    	
        public static function getInstance()
        {
    	if (self::$instance == NULL)
    	{
    		self::$instance = new adoDbConnector();
    	}
    		
    	return self::$instance;
        }
    
        private function __construct() { }
    	
        public function __clone()
        {
            trigger_error('No __clone()!', E_USER_ERROR);
        }
    
        public function __wakeup()
        {
            trigger_error('No __wakeup()!', E_USER_ERROR);
    	}
    	
    	public function connect($connectionType, $connectionData)
    	{
    		switch($connectionType)
    		{
                        case 0: 
    			return self::generalConnect($connectionData);
    			break;
    			
                        case 1: 
    			return self::dsnConnect($connectionData);
    			break;
    				
                        case 2: 
    			return self::xmlConnect($connectionData);
    			break;
    				
                        default:
    			throw new Exception('Wrong type of connection!');
    		}
    	}
    	
    	private static function generalConnect($connectionData)
    	{	
    		if(is_array($connectionData))
    		{
    			$conn = &ADONewConnection($connectionData[0]); 
    				
    			$conn->PConnect($connectionData[1], $connectionData[2], 
                                    $connectionData[3], $connectionData[4]);
    				
    			return $conn;
    		}
    		else throw new Exception('Wrong type of connection data, must be an array!');
    	}
    	
    	private static function dsnConnect($connectionData)
    	{		
    		if(is_string($connectionData))
    		{
    			$conn = ADONewConnection($connectionData);
    				
    			return $conn;
    		}
    		else throw new Exception('Wrong type of connection data, must be a string!');
    	}
    	
    	private static function xmlConnect($connectionData)
    	{
    		if(is_string($connectionData) && file_exists($connectionData))
    		{
    			$xml = simplexml_load_file($connectionData);
    			
    			foreach($xml as $x)
    			{
    				$connArr[] = trim($x);
    			}
    			
    			$conn = &ADONewConnection($connArr[0]);
    			
    			$conn->PConnect($connArr[1], $connArr[2], $connArr[3], $connArr[4]);
    				
    			return $conn;
    		}
    		else throw new Exception('Wrong file name or connection type!');
    	}
    		
    }

    Archont12, 29 Марта 2012

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

    +153

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    do
      {
       $firstDate = ConvertTimeStamp($firstDateSt, "SHORT");
       $lastDate = ConvertTimeStamp($lastDateSt, "SHORT");
       
       $arPeriod = Array(
        "TITLE" => CSchool::GetDiaryPeriod($firstDate, $lastDate),
        "HREF" => $APPLICATION->GetCurPageParam('START_WEEK='.$firstDate.'&END_WEEK='.$lastDate, array("START_WEEK", "END_WEEK"))
       );

    Битрикс...
    do без while? лаконично

    nicksevenfold, 29 Марта 2012

    Комментарии (4)
  10. JavaScript / Говнокод #9786

    +153

    1. 1
    2. 2
    3. 3
    if (childMenus[oRow._index]) if (TransMenu.sub_indicator && oRow.lastChild.firstChild.src) {
    			oRow.lastChild.firstChild.src = TransMenu.dingbatOn
    		}

    zima, 28 Марта 2012

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

    +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
    /* добавленный код: */
    public function preDispatch() {
       $id = (int) $this->_request->id;
       if ($id > 0) {
            $this->_item = doctrine("Item")->findOneById($id);
            if (!is_object($this->_item)) {
                throw new PageException_NotFound;
            }
        }
    }
    
    /* выброшенный код: */
    public function indexAction() {
        $itemId = (int) $this->_request->id;
        $item = doctrine("item")->findOneBy(array("id" => $itemId, "owner" => $this->_owner->getId()));
        if (is_object($item)) {
        /* ... */
        }
    }

    Вот такой рефакторинг. Теперь кто хочет - может редактировать все, что не лень подставить в запрос.

    Wivern, 27 Марта 2012

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