1. Список говнокодов пользователя wissenstein

    Всего: 14

  2. VisualBasic / Говнокод #12393

    −110

    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
    Sub WriteCategories(number, choice)
        
        strSql = ""
        strSql2 = ""
        
        If number = 1 Then
            strSql = "SELECT name, category_type_id" '... the rest is skipped
        Elseif number = 2 Or number = 3 Then
            strSql = "SELECT goco.category_order, goco.category_type_id," '... the rest is skipped
        End If
        
        If number = 1 And choice = 1 Then
            strSql2 = "SELECT gosct.category_type_id, goct.operator_id," '... the rest is skipped
            
        Set RS2 = db.Execute(strSql2)
            
        ' --- No sub categories are displayed if choice = 3
        Elseif choice <> 3 Then
            strSql2 = "SELECT goco.category_type_id, goco.sub_category_order, ..." 'the rest is skipped
            
            Set RS2 = db.Execute(strSql2)
        End If
        
        Set RS = db.Execute(strSql)
        
        ' --- CategoryListCurrent should not display selected category in categoryListMoveTo and vice versa.
        If number = 2 And choice = 1 Then
            '... the real code is skipped
            
            Do Until RS.EOF
                '... the real code is skipped
            Loop
        End If
        
        If number = 2 And choice = 2 Then
            '... the real code is skipped
            
            Do Until RS.EOF
                '... the real code is skipped
            Loop
        End If
        
        
        ' --- Loop through the recordset and print categories and sub categories.
        Do Until RS.EOF
            '... the real code is skipped
            
            If number = 2 And choice = 1 Then
                '... the real code is skipped
            End If
    
            If number = 2 And choice = 2 Then
                '... the real code is skipped
            End If
            
            If number = 3 And choice = 3 And subConfigCatId <> -1 Then
                '... the real code is skipped
            End If
            
            ' --- Print main categories
            Response.Write ("<option style=""color:"& color &""" value=""" & RS("category_type_id") & "_0"" " & tempSel & " " & disabled & ">" & RS("name") &  "</option>" &vbCrLf)
            
            If choice <> 3 Then
                ' --- Print sub categories
                RS2.MoveFirst
                If Not RS2.EOF Then
                    Do Until RS2.EOF
                        '... the real code is skipped
                        
                        If catId1 <> -1 And number = 2 And choice = 1 And subCatId1 > 0 Then
                            '... the real code is skipped
                        End If
                        
                        If catId2 <> -1 And number = 2 And choice = 2 And subCatId2 > 0 Then
                            '... the real code is skipped
                        End If
                        
                        ' --- Only print sub categories under a matching category
                        If CLng(RS2("category_type_id")) = CLng(RS("category_type_id")) Then
                            Response.Write ("<option value=""" & RS2("category_type_id") & "_" & RS2("sub_category_type_id") & """ " & tempSelSub & ">  - " & RS2("name") &  "</option>" &vbCrLf)
                        End If
                        RS2.MoveNext
                    Loop
                End If
            End If
            
            '... the real code is skipped
        Loop
    End Sub

    Один параметр числовой. Назовём его number (C) Captain Obvious.
    Второй параметр тоже числовой. Но так как имя number занято, назовём его choice.
    Именованные константы?.. Анти-паттерн «Spaghetti Code»? Не, не слышал…

    wissenstein, 06 Января 2013

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

    +155

    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
    function moveAll(objectFrom, objectTo)
    {
        var list_len = objectFrom.length;
        if (list_len > 0)
        {
            // i is 0 all the time in the loop
            for (i=0; objectFrom.length>0;)
            {
                var new_option = new Option (objectFrom[i].text, objectFrom[i].value);
                objectTo[objectTo.length] = new_option;
                objectFrom[i] = null;
            }
        }
    }

    Литералы — для лузеров (я имею в виду objectForm[0])!

    wissenstein, 28 Декабря 2012

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

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    function postGameOrder(option) {
        // 48 cтрок кода
            if (option == 1) {
                if (!confirm("Are you sure you want to save this configuration?")) {
                    return false;
                }
            }
        // 45 строк кода
    }

    P.S. Умолчу уже о том, что среди тех 48 и 45 строк кода происходит обращение к глобальным переменным.
    На публикацию же вдохновило то, что вот это обращение к option — единственное во всей функции.

    wissenstein, 22 Декабря 2012

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

    +161

    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
    function setOptionText(the_select1, the_array1, the_select2, the_array2)
    {
        the_select1.options.length=the_array1.length;
        for (loop=0; loop < the_array1.length; loop++)
        {
            the_select1.options[loop].text = the_array1[loop];
            the_select1.options[loop].value = the_array1[loop];
            if (loop==0){
                the_select1.options[loop].selected=true;
            }    
        }
    
        the_select2.options.length=the_array2.length;
        for (loop=0; loop < the_array2.length; loop++)
        {
            the_select2.options[loop].text = the_array2[loop];
            the_select2.options[loop].value = the_array2[loop];
            if (loop==0){
                the_select2.options[loop].selected=true;
            }
        }
    }

    Моему предшественнику, видимо, было лень вызывать два раза одну и ту же функцию, и потому он добавил в неё ещё два параметра и ещё девять строк кода.

    wissenstein, 14 Декабря 2012

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