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

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

    +134

    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
    public bool SqlTest(string sql)
            {
                try
                {
                    if (Utils.ExecuteScalar(sql).ToString() != "8") throw new Exception("Bad result from DB!");
                }
                catch (Exception ex)
                {
                    LogService.WriteStd("CheckDBRun1: " + sql, ex);
                    Utils.SQLServerRun();
                    try
                    {
                        if (Utils.ExecuteScalar(sql).ToString() != "8") throw new Exception("Bad result from DB!");
                    }
                    catch (Exception ex2)
                    {
                        LogService.WriteStd("CheckDBRun2: " + sql, ex2);
                        return false;
                    }
                }
                return true;
            }

    taburetka, 26 Ноября 2013

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

    +136

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    int rkwifi_set_country_code(char *code)
    {
    	sprintf(code, "%s", "EU");
    	return 0;
    }

    Где-то в сырцах драйвера вайфая от RK3188...

    Necromant, 25 Ноября 2013

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

    +158

    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
    $(document).ready(function () {
    		$("#FollowingChoicesWebpart-ProjectsAndCommunities").hide();
    		$("#FollowingChoicesWebpart-Sites").hide();
    		$("#FollowingChoicesWebpart-News").show();
    	});
    	$("#FChoices_tab1").click(function () {
    		$("#FollowingChoicesWebpart-ProjectsAndCommunities").hide();
    		$("#FollowingChoicesWebpart-Sites").hide();
    		$("#FollowingChoicesWebpart-News").show();
    		$("#FChoices_tab1").addClass("active-button_FChoices");
    		$("#FChoices_tab2").removeClass("active-button_FChoices");
    		$("#FChoices_tab3").removeClass("active-button_FChoices");
    	});
    	$("#FChoices_tab2").click(function () {
    		$("#FollowingChoicesWebpart-ProjectsAndCommunities").hide();
    		$("#FollowingChoicesWebpart-Sites").show();
    		$("#FollowingChoicesWebpart-News").hide();
    		$("#FChoices_tab1").removeClass("active-button_FChoices");
    		$("#FChoices_tab2").addClass("active-button_FChoices");
    		$("#FChoices_tab3").removeClass("active-button_FChoices");
    	});
    	$("#FChoices_tab3").click(function () {
    		$("#FollowingChoicesWebpart-ProjectsAndCommunities").show();
    		$("#FollowingChoicesWebpart-Sites").hide();
    		$("#FollowingChoicesWebpart-News").hide();
    		$("#FChoices_tab1").removeClass("active-button_FChoices");
    		$("#FChoices_tab2").removeClass("active-button_FChoices");
    		$("#FChoices_tab3").addClass("active-button_FChoices");
    	});
    	$("#FChoices_tab3").click(function () {
    		$("#FollowingChoicesWebpart-ProjectsAndCommunities").hide();
    		$("#FollowingChoicesWebpart-Sites").hide();
    		$("#FollowingChoicesWebpart-News").hide();
    		$("#FChoices_tab1").removeClass("active-button_FChoices");
    		$("#FChoices_tab2").removeClass("active-button_FChoices");
    		$("#FChoices_tab3").addClass("active-button_FChoices");
    	});

    Голландский джаваскриптик для реализации функционала Tabs. Видимо, написано под кумаром)))

    RomashkaPro, 15 Ноября 2013

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

    +165

    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
    // comparison arrays - quadruple nesting
        public function comparisonArrays(array $newOptions, array $prevOptions) {
            $diffOptions = array();
            foreach ($newOptions as $key=>$op) {
                if (isset($prevOptions[$key])) {
                    if (is_array($op)) {
                        foreach ($op as $kkk=>$ooo) {
                            if (isset($prevOptions[$key][$kkk])) {
                                if (is_array($ooo)) {
                                    foreach ($ooo as $kk=>$oo) {
                                        if (isset($prevOptions[$key][$kkk][$kk])) {
                                            if (is_array($oo)) {
                                                foreach ($oo as $k=>$o) {
                                                    if (isset($prevOptions[$key][$kkk][$kk][$k])) {
                                                        if ($prevOptions[$key][$kkk][$kk][$k]!=$o) $diffOptions[$key][$kkk][$kk][$k] = $o;
                                                    } else {
                                                        $diffOptions[$key][$kkk][$kk][$k] = $o;
                                                    }
                                                }
                                            } else {
                                                if ($prevOptions[$key][$kkk][$kk]!=$oo) $diffOptions[$key][$kkk][$kk] = $oo;
                                            }    
                                        } else {
                                            $diffOptions[$key][$kkk][$kk] = $oo;
                                        }
                                    }
                                } else {
                                    if ($prevOptions[$key][$kkk]!=$ooo) $diffOptions[$key][$kkk] = $ooo;
                                }
                            } else {
                                $diffOptions[$key][$kkk] = $ooo;
                            }
                        }
                    } else {
                        if ($prevOptions[$key]!=$op) $diffOptions[$key] = $op;
                    }
                } else {                    
                    $diffOptions[$key] = $op;
                }    
            }        
            return $diffOptions;        
        }

    crook, 11 Ноября 2013

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

    +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
    // Высота шрифта
    
    	$lenHdr = mb_strlen( strip_tags($header), 'UTF-8');
    
    	$maxDefaultStrLen = 38;	// максимальное количество символов при заданном размере шрифта
    	$maxFontSize = 22;		// заданный размер шрифта
    
    	$fontSize = $maxFontSize;
    
    	if ( $lenHdr > $maxDefaultStrLen ) {
    
    		$k = ceil(sqrt(($lenHdr - $maxDefaultStrLen) + 0.25) - 0.5) + 2 ;
    
    		$k = ($k<3)? 3:$k;
    
    		$fontSize = $maxFontSize - ($k - 2)*2;
    
    		$fontSize = ($fontSize<12)? 12:$fontSize;
    	}

    Вот. Откопалось

    bot, 08 Ноября 2013

    Комментарии (2)
  7. Java / Говнокод #14081

    +68

    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
    public static AstRoot parse (String code) {
            CompilerEnvirons env = new CompilerEnvirons();
            env.setRecoverFromErrors(true);
            env.setGenerateDebugInfo(true);
            env.setRecordingComments(true);
    
            // try to ignore errors - does not seem to work
            env.setIdeMode(true);
    
            IRFactory factory = new IRFactory(env);
            AstRoot root = factory.parse(code, null, 0);
    
            // work around rhino bug 800616 (not fixed in neither rhino nor closure)
    
            root.visit(new NodeVisitor() {
                @Override
                public boolean visit(AstNode node) {
                    if (node instanceof NumberLiteral) {
                        NumberLiteral num = (NumberLiteral)node;
                        int from = num.getAbsolutePosition();
                        int to = from + num.getLength() + 2;
                        if (to < code.length()) {
                            String hex = "0x" + num.toSource();
                            if (code.substring(from, to).equals(hex)) {
                                // reset node value and length
                                num.setValue(hex); num.setLength(hex.length());
                            }
                        }
                        return false;
                    }
                    return true;
                }
            });
    
            // work around rhino SwitchStatement.toSource() bug with empty switches
            // https://github.com/mozilla/rhino/blob/master/src/org/mozilla/javascript/ast/SwitchStatement.java#L96
            // https://github.com/mozilla/rhino/blob/master/src/org/mozilla/javascript/ast/SwitchStatement.java#L107-L109
            // https://github.com/mozilla/rhino/blob/master/src/org/mozilla/javascript/ast/SwitchStatement.java#L158
            root.visit(new NodeVisitor() {
                @Override
                public boolean visit(AstNode node) {
                    if (node instanceof SwitchStatement) {
                        SwitchStatement ss = (SwitchStatement)node;
                        if (ss.getCases().isEmpty()) {
                            // need to add at least one node to make ss.cases non-null
                            ArrayList<SwitchCase> cases = new ArrayList<>();
                            cases.add(new SwitchCase());
                            ss.setCases(cases);
                            // set this back to empty list
                            cases.clear();
                            ss.setCases(cases);
                        }
                        return false;
                    }
                    return true;
                }
            });
    
            return root;
        }

    И ещё немножко трудовыебуднев пользователей рино: правда клёво взять и распарсить джаваскрипт одним простым методом? Авотхуй.

    makc3d, 07 Ноября 2013

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

    +100

    1. 1
    ТРАЛИ ПАБЕДЕЛИ ВАМ НЕАТКУДАВА ЖДАТЬ ПОМАЩИ ЛАЛКИ ИБАНЫЕЙЕ АЗАЗААЗХАЗХЗАХВАХВЩАХВЩАВА

    PragramistOtBoga, 22 Октября 2013

    Комментарии (2)
  9. Куча / Говнокод #13972

    +137

    1. 1
    2. 2
    3. 3
    4. 4
    КАГДА ТА Я РАБОТАЛ НА ГАВНАКОДИ НО АНИ МИНЯ УВОЛЕЛИ ИЗА КРИЗИСА!!!!!! ПРИДСТАВЛЯИТИ???
    ТАК ВОТ КАРОЧ Я ХАЧУ ЩТОБЫ ВСЕ ЗНАЛЕ КАК МОЖНА ПАЛУЧИТЬ КУЧУ ЛАЙКАВ ПРИ ПОМОЩЕ СПЕЦЫАЛЬНАЙ СЕКРЕТНАЙ КАМБИНАЦЫЫ
    ЕСЛИ ХАТИТЕ ПАЛУЧИТЬ 1000 (ТЫЩУ) ЛАЙКАВ ТО ЗАЖМИТЕ КОНТРАЛ И СТАВЬТЕ ЕТОМУ ПАСТУ ЛАЙК
    РАБОТАИТ НА ВСЕХ БРАУЗИРАХ СТРАНЫ!!!

    PragramistOtBoga, 18 Октября 2013

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

    +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
    function Recalc(index) {
                var url = window.location.pathname + "?";
                var data = "DepartureDate=" + $("#AvailabilityList_" + index + "__DepartureDate").val()
    				 + "&DepartureTime=" + $("#AvailabilityList_" + index + "__DepartureTime").val()
                + "&ArrivalDate=" + $("#AvailabilityList_" + index + "__ArrivalDate").val()
                + "&ArrivalTime=" + $("#AvailabilityList_" + index + "__ArrivalTime").val()
                + "&FromCode=" + $("#AvailabilityList_" + index + "__FromCode").val()
                + "&ToCode=" + $("#AvailabilityList_" + index + "__ToCode").val()
                + "&ShipCode=" + $("#AvailabilityList_" + index + "__ShipCode").val()
                + "&ProviderCode=" + $("#AvailabilityList_" + index + "__ProviderCode").val()
                + "&Duration=" + $("#AvailabilityList_" + index + "__Duration").val()
                + "&AdultCount=" + $("#AvailabilityList_" + index + "__AdultCount").val()
                + "&ChildCount=" + $("#AvailabilityList_" + index + "__ChildCount").val()
                + "&FerryID=" + $("#AvailabilityList_" + index + "__FerryID").val()
                + "&Auto=" + $("#AvailabilityList_" + index + "__Auto").val()
                + "&FareCode=" + $("#AvailabilityList_" + index + "__FareCode").val()
                + "&Years[0]=" + $("#AvailabilityList_" + index + "__Years_0_").val()
                + "&Years[1]=" + $("#AvailabilityList_" + index + "__Years_1_").val()
                + "&Years[2]=" + $("#AvailabilityList_" + index + "__Years_2_").val()
                + "&Years[3]=" + $("#AvailabilityList_" + index + "__Years_3_").val()
                + "&Years[4]=" + $("#AvailabilityList_" + index + "__Years_4_").val()
                + "&Years[5]=" + $("#AvailabilityList_" + index + "__Years_5_").val()
                + "&Years[6]=" + $("#AvailabilityList_" + index + "__Years_6_").val()
                + "&Years[7]=" + $("#AvailabilityList_" + index + "__Years_7_").val()
                + "&Years[8]=" + $("#AvailabilityList_" + index + "__Years_8_").val()
                + "&Index=" + index;
                return data;
            }

    Back-end asp.net mvc, кому интересно

    sladkijBubaleh, 16 Октября 2013

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

    +150

    1. 1
    2. 2
    3. 3
    4. 4
    public static function getDeferredSubsCardExpirationDate($date) {
        $ts = strtotime($date);
        return mktime(date('H', $ts), date('i', $ts), date('s', $ts), date('m', $ts), date('d', $ts), date('Y', $ts) + Constants::GIFT_CARD_EXPIRATION_PERIOD);
    }

    ОУКЕЙ

    Sc0rp10, 14 Октября 2013

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