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

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

    +168

    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
    function filetypecheck( $filename )
    {
    	$ext = substr(GetFileExt($filename), 1);
    	if($ext == 'rar'){ $dtype = 'Архив RAR'; }
    	if($ext == 'zip'){ $dtype = 'Архив ZIP'; }
    	if($ext == '7z') { $dtype = 'Архив 7zip'; }
    	if($ext == 'bz2'){ $dtype = 'BZ2'; }
    	if($ext == 'cab'){ $dtype = 'CAB'; }
    	if($ext == 'ace'){ $dtype = 'WinACE'; }
    	if($ext == 'arj'){ $dtype = '<a class=\"cont\" href=\"http://www.tsf.be/\" target=\"_blank\">ARJ</a>'; }
    	if($ext == 'jar'){ $dtype = '<a class=\"cont\" href=\"http://www.tsf.be/\" target=\"_blank\">JAR</a>'; }
    
    	if($ext == 'gzip'){ $dtype = 'GZIP'; }
    	if($ext == 'tar'){ $dtype = 'TAR'; }
    	if($ext == 'tgz'){ $dtype = 'TGZ'; }
    	if($ext == 'gz'){ $dtype = 'GZ'; }
    
    	if($ext == 'gif'){ $dtype = 'GIF'; }
    	if(preg_match('/jpeg|jpe|jpg/i', $ext)){ $dtype = 'JPEG/JPE/JPG'; }
    	if($ext == 'png'){ $dtype = 'PNG'; }
    	if($ext == 'bmp'){ $dtype = 'BMP'; }
    
    	if($ext == 'txt'){ $dtype = 'TXT'; }
    	if($ext == 'sql'){ $dtype = 'SQL'; }
    	if($ext == 'exe'){ $dtype = 'EXE'; }
    	if($ext == 'swf'){ $dtype = 'SWF'; }
    	if($ext == 'fla'){ $dtype = 'FLA'; }
    	if(preg_match('/flv|f4v|f4p|f4a|f4b/i', $ext)){ $dtype = 'Flash Video (FLV)'; }
    
    	if($ext == 'wav'){ $dtype = 'WAV'; }
    	if($ext == 'mp2'){ $dtype = 'MP2'; }
    	if($ext == 'mp3'){ $dtype = 'MP3'; }
    	if($ext == 'mp4'){ $dtype = 'MP4'; }
    	if(preg_match('/ogv|oga|ogx|ogg/i', $ext)){ $dtype = 'Ogg'; }
    	if($ext == 'mid'){ $dtype = 'MID'; }
    	if($ext == 'midi'){ $dtype = 'MIDI'; }
    	if($ext == 'mmf'){ $dtype = 'MMF'; }
    
    	if($ext == 'mpeg'){ $dtype = 'MPEG'; }
    	if($ext == 'mpe'){ $dtype = 'MPE'; }
    	if($ext == 'mpg'){ $dtype = 'MPG'; }
    	if($ext == 'mpa'){ $dtype = 'MPA'; }
    	if($ext == 'avi'){ $dtype = 'AVI'; }
    	if($ext == 'mpga'){ $dtype = 'MPGA'; }
    
    	if(preg_match('/pdf|pds/i', $ext)){ $dtype = 'Документ Adobe PDF'; }
    	if(preg_match('/xls|xl|xla|xlb|xlc|xld|xlk|xll|xlm|xlt|xlv|xlw/i', $ext)){ $dtype = 'Документ MS-Excel'; }
    	if(preg_match('/doc|dot|wiz|wzs|docx/i', $ext)){ $dtype = 'Документ MS-Word'; }
    	if($ext == 'odt'){ $dtype = 'Текстовый документ OpenDocument'; }
    	if($ext == 'odg'){ $dtype = 'Графический документ OpenDocument'; }
    	if($ext == 'odp'){ $dtype = 'Документ презентации OpenDocument'; }
    	if($ext == 'ods'){ $dtype = 'Электронная таблица OpenDocument'; }
    	if($ext == 'odc'){ $dtype = 'Документ диаграммы OpenDocument'; }
    	if($ext == 'odi'){ $dtype = 'Документ изображения OpenDocument'; }
    	if($ext == 'odf'){ $dtype = 'Документ формулы OpenDocument'; }
    	if($ext == 'odm'){ $dtype = 'Составной текстовый документ OpenDocument'; }
    	if(preg_match('/pot|ppa|pps|ppt|pwz/i', $ext)){ $dtype = 'Документ MS-Powerpoint'; }
    	if($ext == 'rtf'){ $dtype = 'RTF'; }
    	if(empty($dtype)) $dtype = '';
    
    	return $dtype;
    }

    Цикл "Из одной русской CMS". База описаний к расширениям файлов.

    Мартин, 27 Января 2011

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

    +168

    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
    private function infernal($logic){
    		$logic = str_split($logic);
    		while(!empty($logic)){
    			foreach($logic as $char){
    				$char = str_split($char);
    				while(!empty($char)){
    					foreach($char as $char2){
    						if($char2!="0") unset($char);
    						$this->check($char, $char2);
    					}
    				}
    			}
    		}
    	return $logic;
    }

    похоже что писал на больную голову

    XyHb, 22 Января 2011

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

    +168

    1. 1
    2. 2
    3. 3
    4. 4
    TOutputConsoleWindow::TOutputConsoleWindow(void)
    {
                  //...
    	_mainWindow = new TConsoleOutputWindow(Rect);

    Говногость, 14 Января 2011

    Комментарии (14)
  5. C++ / Говнокод #5269

    +168

    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
    class TalentsWindow : public PopupWindow {
    	render::Sprite* m_background_sprite, *m_header_sprite, *m_fucking_sprite;
    ...
    ...
    };
    
    ...
    
    TalentsWindow::TalentsWindow()
    {
    ...
    	m_fucking_sprite = m_sprites.addSprite(render::SpriteRect(NOINITIALIZE)
                .setTop(591.0f)
                .setLeft(500.0f)
                .setWidth(411.0f)
                .setHeight(140.0f),
                m_tex,
                0.85f
            );
            m_fucking_sprite->setPosition(math::float2(818.0f, 50.0f));
    		m_fucking_sprite->idiot = true;
    ...
    }

    Самодокументирующий код.

    Kirinyale, 13 Января 2011

    Комментарии (0)
  6. JavaScript / Говнокод #5070

    +168

    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
    <!--
    function scr_width() { // Определяем функцию
    	var height=0;
    	var width=0;
    
    	if (self.screen) {     // for NN4 and IE4
            width = screen.width
            height = screen.height
    	}
    	else
        	if (self.java) {   // for NN3 with enabled Java
           		var jkit = java.awt.Toolkit.getDefaultToolkit();
           		var scrsize = jkit.getScreenSize();
           		width = scrsize.width;
           		height = scrsize.height;
    		}
    
    	if (width==1024) { // Если разрешение 1024рх, то выводим 7 блоков
       		document.write("<table width='100%' align='center'><tr>");
       		document.write("<td><img src='img/1.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/2.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/3.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/4.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/5.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/6.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/7.gif' height='126px'> width='126px'></td>");
       		document.write("</tr></table>");
    	}
     
     	if (width==1152) { // Если разрешение 1152рх, то выводим 7 блоков
       		document.write("<table width='100%' align='center'><tr>");
       		document.write("<td><img src='img/1.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/2.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/3.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/4.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/5.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/6.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/7.gif' height='126px'> width='126px'></td>");
       		document.write("</tr></table>");
     	}
     
     	if (width==1280) { // Если разрешение 1280рх, то выводим 8 блоков
       		document.write("<table width='100%' align='center'><tr>");
       		document.write("<td><img src='img/1.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/2.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/3.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/4.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/5.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/6.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/7.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/8.gif' height='126px'> width='126px'></td>");
       		document.write("</tr></table>");
     	}
     
    	if (width>1280) { // Если разрешение больше 1280рх, то выводим все блоки
       		document.write("<table width='100%' align='center'><tr>");
       		document.write("<td><img src='img/1.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/2.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/3.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/4.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/5.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/6.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/7.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/8.gif' height='126px'> width='126px'></td>");
       		document.write("<td><img src='img/9.gif' height='126px'> width='126px'></td>");
       		document.write("</tr></table>");
     	}
    }
     
    scr_width() // Вызов функции
    //-->

    ололо

    sl1p, 27 Декабря 2010

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

    +168

    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
    function getAlphabetList($list = null)
    {   
        $alphabet = split(' ', 'A B C D E F G H I J K L M N O P Q R S T U V W X Y Z');
    
        foreach($alphabet as $letter)
        {
            $has_letter = false;
            if(is_array($list))
            {
                foreach ($list as $value) 
                {
                        if(substr(strtoupper($value),0,1) == strpos($letter,$value,1))
                        {
                            $has_letter = true;
                        }                   
                }
            }
            
            if($has_letter)
            {               
                $output .= '<a href="?letter='.$letter.'">'.$letter.'</a> ';
            } else {
                $output .= $letter.' ';
            }
        }
        return $output;
    }

    Шерстим список записей, определяем, на какие буквы они начинаются, и для имеющихся букв генерируем гиперссылки. Мужика попросили разобраться, почему каталог на 126000 записей тормозит при отображении, и он увидел в коде это.
    http://thedailywtf.com/Articles/Thorough-Letter-Checking.aspx

    telnet, 24 Декабря 2010

    Комментарии (34)
  8. JavaScript / Говнокод #4948

    +168

    1. 1
    2. 2
    3. 3
    $.each( $(this).parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().parent().next().find(".det-project"), function(i, item) { 
        $tracks.push( $(item).attr("rel") ); 
    });

    Проверял какой код ребята из команды написали - нашел вот такое.

    Mike, 16 Декабря 2010

    Комментарии (13)
  9. JavaScript / Говнокод #4928

    +168

    1. 1
    var this_id = this.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.id.split('_')[1];

    Нашел такой код, минуты 2-е пытался понять что это такое, новые фичи прототайпа или я что-то пропустил в это жизни?

    vasya1, 15 Декабря 2010

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

    +168

    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
    function test_file_for_smells( $filename )
       {
       global $MAX_FUNCTION_LINE_COUNT, $MAX_INDENTATION_LEVEL;
       $function_line_count = 0;
       $found_continued_line = 0;
       $line_number = 0;
       $fp = fopen( $filename, "r" );
       if( ! $fp )
         return;
       while( ! feof( $fp ) )
         {
         $line = chop( fgets( $fp, 4096 ) );
         $line_number++;
         while( substr( $line, 0, 9 ) == "function "  &&
                substr( $line, strlen($line) - 1, 1 ) != ')' )
           {
           $line = $line . chop( fgets( $fp, 4096 ) )
           $found_continued_line++;
           }
         if( substr( $line, 0, 9 ) == "function " )
           {
           $function_line_count = 1;
           $function_name = substr( $line, 9, strpos($line, '(') - 9 );
           }
         if( $function_line_count > 0 )
           {
           if( $line == "\t}" )
             {
             $function_line_count = $function_line_count - 3;
             if( $function_line_count > $MAX_FUNCTION_LINE_COUNT )
               print_warning( $filename, $line, $line_number, "$function_name() too long ($function_line_count lines)" );
             $function_line_count = 0;
             }
           else
             $function_line_count++;
           $result = test_line_for_indentation( $line, $MAX_INDENTATION_LEVEL );
           if( ! $result )
             print_warning( $filename, $line, $line_number, "Too much nesting." );
           $result = test_line_for_function_definition( $line, $MAX_NUM_PARAMETERS );
           if( ! $result )
             print_warning( $filename, $line, $line_number, "Too many parameters." );
           if( $found_continued_line > 0 )
             {
             $line_number += $found_continued_line;
             $found_continued_line = 0;
             }
           }
         }
       }

    Детектор говнокода!!!!

    fork, 10 Декабря 2010

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

    +168

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    <?php
    ...
    $string = array();
    ...
    ?>

    hidespb, 10 Декабря 2010

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