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

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

    −98

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    For I = nrow_Start To nrow_Stop
        Do
            If Nrow_Frm1 = I Then Exit Do
            If Nrow_Frm2 = I Then Exit Do
            If Nrow_Frm3 = I Then Exit Do
            If Nrow_Frm4 = I Then Exit Do
        
            Cells(I, ncol_Period).FormulaR1C1 = formula
        Loop While False
    Next I

    И такое встречается..

    hexman, 25 Января 2012

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

    +157

    1. 1
    2. 2
    if (!isset($GLOBALS['abort']) || ! $GLOBAL['abort'] || $GLOBALS['abort'] !== true || !$_SESSION["AMP_user"]->checkSection('999')) {
    			if (core_devices_add($deviceid,$tech,$devinfo_dial,$devicetype,$deviceuser,$description,$emergency_cid)) {

    Нашёл внутри Elastix'a

    admincheg, 21 Января 2012

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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    <i id="hdrtxt"><?php echo $item['header']; ?></i>
    <style>
    ...
    #hdrtxt{
    font-style:normal;
    }
    ...
    </style>

    khaletskiy, 20 Января 2012

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

    +106

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    public void CheckMemoStyle(bool isChecked)
    {
        if (isChecked)
        {
            memoStyleLayoutCntrl.Selected = true;
        }
        else
        {
            memoStyleLayoutCntrl.Selected = false;
        }
    }

    memoStyleLayoutCntrl.Selected = isChecked; уже не модно?

    alpha2050, 19 Января 2012

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

    +114

    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
    public void Dispose()
            {
                Dispose(true);  
                GC.SuppressFinalize(this);
            }
    
            protected virtual void Dispose(bool disposing)
            {
                _channelRedrawManager.StopProcessing();
            }
    
            ~ChannelControlViewModel()
            {
                Dispose(false);
            }

    Деструкти правильно..

    Lifter, 19 Января 2012

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

    +150

    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
    if(!$this->user->isVip())
    			{
    				$balls_us=$this->user->balls_video;
    				$balls_comm=$this->user->balls_comm;
    				$balls_summ=$balls_comm+$balls_us;
    				if ($balls_summ>=1000)
    				{
    					$this->user->add('roles',ORM::factory('role',2));
    				}
    				else if($this->user->isVip())
    				{
    					if($balls_summ<1000)
    					{
    						$this->user->remove('roles',ORM::factory('role',2));
    					}
    					else
    					{}
    				}
    			}

    как работает этот else if($this->user->isVip()), если вначале условие что если не вип..
    ппц..

    Samedi, 18 Января 2012

    Комментарии (5)
  8. Objective C / Говнокод #9147

    −79

    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
    // Досталось по наследству:
    
    @try {
        if([[items objectAtIndex:indexPath.row] performSelector:@selector(songsArray)]){
            NSArray *songsArray = [[items objectAtIndex:indexPath.row] songsArray];
            for(Song *song in songsArray){
                [song setIsSelected:button.selected];
            }
        }
     }
    @catch (NSException *exception) {
        NSLog(@"need fix in next time");
    }
    
    // переделал в
    if ( [[items objectAtIndex:indexPath.row] respondsToSelector:@selector(songsArray)] )
    {
        NSArray *songsArray = [[items objectAtIndex:indexPath.row] songsArray];
        for(Song *song in songsArray){
             [song setIsSelected:button.selected];
        }
    }

    lime, 17 Января 2012

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

    +142

    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
    class SMSSender
        {
            const string API_URL = "http://api.sms****.ru/?";
            string base_URL = "";
            private string _email;
            private string _password;
            XmlDocument doc = new XmlDocument();
            Dictionary<string,string> parameters;
    
            public SMSSender(string email, string password)
            {
                _email = email;
                _password = password;
                base_URL = API_URL + "email=" + _email + "&password=" + _password + "&";
            }
    
            public bool LoginAttempt()
            {
                parameters = new Dictionary<string, string>();
                parameters.Add("method", "login");
                return APIRequest(parameters);
            }
    
            public KeyValuePair<int,object> GetCreditsLeft()
            {
                parameters = new Dictionary<string, string>();
                parameters.Add("method", "get_profie");
                APIRequest(parameters);
                return new KeyValuePair<int, object>(0, int.Parse(GetValueByName("credits")));
            }
    
            public int SendSMS(string senderName, string internationalNumber, string text)
            {
                parameters = new Dictionary<string, string>();
                parameters.Add("method", "push_msg");
                parameters.Add("text", text);
                parameters.Add("phone", internationalNumber);
                parameters.Add("sender_name", senderName);
                APIRequest(parameters);
                return int.Parse(GetValueByName("n_raw_sms"));
            }
    
            public KeyValuePair<int, object> GetLastError()
            {
                return new KeyValuePair<int, object>(int.Parse(doc.GetElementsByTagName("err_code")[0].InnerText), doc.GetElementsByTagName("text")[0].InnerText);
            }
    
            private string GetValueByName(string keyToReturn)
            {
                return doc.GetElementsByTagName(keyToReturn)[0].InnerText;
            }
    
            private bool APIRequest(Dictionary<string, string> param)
            {
                string URL = base_URL;
                foreach (KeyValuePair<string, string> p in param)
                    URL = URL + p.Key + "=" + p.Value + "&";
                doc.Load(URL);
                if (GetLastError().Key == 0) return true;
                else throw new SMSSenderException(GetLastError().Key, GetLastError().Value.ToString());
            }
        }
    
        class SMSSenderException : Exception
        {
            int _errorCode;
            string _Message;
            public SMSSenderException(int errorCode, string Message)
            {
                _errorCode = errorCode;
                _Message = Message;
            }
    
            public int ErrorCode
            {
                get { return _errorCode; }
            }
    
            override public string Message
            {
                get { return _Message; }
            }
        }
    }

    API сервер отправки принимает запросы вида http://api.****sms.ru?method=send_msg&phone=+79 123456789&text=abcdef, возвращает простейший XML с err_code и результатом выполнения запроса.
    Казалось бы, 20 строчек кода и проблема решена? Нифига, без специального класса для этого не обойтись. Совсем никак. И уж совсем ничего нельзя делать без специального Exception для этого дела.

    A1mighty, 16 Января 2012

    Комментарии (5)
  10. Objective C / Говнокод #8908

    −121

    1. 1
    2. 2
    3. 3
    4. 4
    -(BOOL) isShuffleOn {
    	return iPodPlayer? iPodPlayer.shuffleMode != MPMusicShuffleModeOff
    					 : NO;
    }

    СУКА, САМЫЙ УМНЫЙ ДА, а я думаю чо оно нет даже если оно ДА.

    Psionic, 05 Января 2012

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

    +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
    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
    001           // Определяем наборы изображений
    002	        var images = {
    003	    'Набор 1' : [
    004	        'pic1.jpg',
    005	        'pic2.jpg',
    006	        'pic3.jpg',
    007	        'pic4.jpg',
    008	        'pic5.jpg',
    009	        'pic6.jpg',
    010	        'pic7.jpg',
    011	        'pic8.jpg',
    012	        'pic9.jpg',
    013	        'pic10.jpg'
    014	    ],
    015	    'Набор 2' : [
    016	        'pic2.jpg',
    017	        'pic3.jpg',
    018	        'pic4.jpg',
    019	        'pic5.jpg',
    020	        'pic6.jpg',
    021	        'pic7.jpg',
    022	        'pic8.jpg',
    023	        'pic9.jpg',
    024	        'pic10.jpg',
    025	        'pic11.jpg',
    026	        'pic12.jpg',
    027	        'pic5.jpg',
    028	        'pic6.jpg',
    029	        'pic7.jpg',
    030	        'pic8.jpg'
    031	    ],
    032	    'Набор 3' : [
    033	        'pic1.jpg',
    034	        'pic2.jpg',
    035	        'pic3.jpg',
    036	        'pic4.jpg',
    037	        'pic5.jpg',
    038	        'pic6.jpg',
    039	        'pic7.jpg',
    040	        'pic8.jpg',
    041	        'pic9.jpg',
    042	        'pic10.jpg',
    043	        'pic11.jpg',
    044	        'pic12.jpg',
    045	        'pic4.jpg',
    046	        'pic5.jpg',
    047	        'pic6.jpg'
    ...

    О_О Шок...

    Takasu, 05 Января 2012

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