1. Ruby / Говнокод #6567

    −102

    1. 1
    Task.joins(:owners).where(:users => {:id => current_user}).order("tasks.weight DESC").limit(1).first

    intale, 06 Мая 2011

    Комментарии (15)
  2. C# / Говнокод #6566

    +122

    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
    switch (item.Value.ModuleConfiguration.SystemModule) // у свойства SystemModule тип bool, а не bool?
    {
           case true:
           {
                CreateModuleDomain<ISystemModuleProxy>(moduleContainer);
                (moduleContainer.ModuleProxy as ISystemModuleProxy).Init(moduleContainer.ModuleConfiguration, this as ISystemCoreProvider);
                   
                 break;
           }
           case false:
           {
                CreateModuleDomain<IBusinessModuleProxy>(moduleContainer);
                (moduleContainer.ModuleProxy as IBusinessModuleProxy).Init(moduleContainer.ModuleConfiguration, this as ICoreProvider);
    
                break;
           }
           default:
                break;
    }

    Фрагмент кода официального Senior Developer. Пример абсолютно надежного кода, который умеет обрабатывать даже будущие состояния булевого типа (default: break;) Будет надежен даже, если Microsoft неожиданно расширит тип состояниями, например MayBeTrue, OfCourseFalse, DontUnderstand и т.п. :)

    anzu, 05 Мая 2011

    Комментарии (35)
  3. C# / Говнокод #6565

    +124

    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
    if (command == "help") ShowHelp();
                else if (command == "") Error(1);
                else
                {
                    string[] pcmd = command.Split(' ');
                    string[] args = { "0,0", "0,0" };
                    string argv = "Black";
                    if (pcmd[0] != "setColor" &&
                        pcmd[0] != "save" &&
                        pcmd[0] != "fill" &&
                        pcmd[0] != "saveCMD" &&
                        pcmd[0] != "close" &&
                        pcmd[0] != "if" &&
                        pcmd[0] != "from" &&
                        pcmd[0] != "setVar" &&
                        pcmd[0] != "getVar" &&
                        pcmd[0] != "setRGB" &&
                        pcmd[0] != "fillFRGB" &&
                        pcmd[0] != "fillRGB" &&
                        pcmd[0] != "setPenSize" &&
                        pcmd[0] != "fillF" &&
                        pcmd[1] != "#?") args = pcmd[1].Split('|');
                    else if (pcmd[0] == "setVar") argv = pcmd[1] + " " + pcmd[3];
                    else if (pcmd[1] == "#?")
                    {
                        Help4command(pcmd[0]);
                        return;
                    }
                    else argv = pcmd[1];
                    switch (pcmd[0])
                    {
                        case "save":
                            try { bmp.Save(argv + "\\" + Name + ".png",ImageFormat.Png); }
                            catch { Error(2); }
                            break;
                        case "line":
                            {
                                string[] xy0 = args[0].Split(',');
                                string[] xy1 = args[1].Split(',');
                                int x0 = 0, y0 = 0, x1 = 0, y1 = 0;
                                if (xy0[0] == "w" || xy0[0] == "W") x0 = W;
                                if (xy0[1] == "h" || xy0[1] == "H") y0 = H;
                                if (xy1[0] == "w" || xy1[0] == "W") x1 = W;
                                if (xy1[1] == "h" || xy1[1] == "H") y1 = H;
                                if (VL.isExistVar(xy0[0])) x0 = int.Parse(VL.Get(xy0[0]));
                                if (VL.isExistVar(xy0[1])) y0 = int.Parse(VL.Get(xy0[1]));
                                if (VL.isExistVar(xy1[0])) x1 = int.Parse(VL.Get(xy1[0]));
                                if (VL.isExistVar(xy1[1])) y1 = int.Parse(VL.Get(xy1[1]));
                                try
                                {
                                    x0 = int.Parse(xy0[0]);
                                    y0 = int.Parse(xy0[1]);
                                    x1 = int.Parse(xy1[0]);
                                    y1 = int.Parse(xy1[1]);
                                }
                                finally { }
                                graph.DrawLine(new Pen(usesCol, penSize), new Point(x0, y0), new Point(x1, y1));
                            }
                            break;
                        case "rect":
                            {
                                if (fiilF == false)
                                {
                                    string[] xy0 = args[0].Split(',');
                                    string[] xy1 = args[1].Split(',');
                                    int x0 = 0, y0 = 0, x1 = 0, y1 = 0;
                                    if (xy0[0] == "w" || xy0[0] == "W") x0 = W;
                                    if (xy0[1] == "h" || xy0[1] == "H") y0 = H;
                                    if (xy1[0] == "w" || xy1[0] == "W") x1 = W;
                                    if (xy1[1] == "h" || xy1[1] == "H") y1 = H;
                                    if (VL.isExistVar(xy0[0])) x0 = int.Parse(VL.Get(xy0[0]));
                                    if (VL.isExistVar(xy0[1])) y0 = int.Parse(VL.Get(xy0[1]));
                                    if (VL.isExistVar(xy1[0])) x1 = int.Parse(VL.Get(xy1[0]));
                                    if (VL.isExistVar(xy1[1])) y1 = int.Parse(VL.Get(xy1[1]));
                                   //еще +100500 строк говнокода

    Только что копался в старых проектах и наткнулся на это. Это была попытка сделать что-то вреде ЯП для рисования, своево рода черепашья графика, но со своими свистелками и сами знаете чем.

    psina-from-ua, 05 Мая 2011

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

    +214

    1. 1
    2. 2
    3. 3
    if(n!=3 && 0>0 && !false){
          preditor.tstaCTZP_0_0.disabled=true;
       }

    конгениально

    3.14159265, 05 Мая 2011

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

    +164

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    $totalKrForThisClientCustToUseInBonusClaim = $sumTrans_val + $sumUTrans_val;
    
    // Здесь код...
    
    $sql = "SELECT (".
      $totalKrForThisClientCustToUseInBonusClaim."
    ) summ";
    
    $NoBonus_rs = $m_db->execute($sql);
    $summ = isset($NoBonus_rs[0]['summ']) ? $NoBonus_rs[0]['summ'] : 0;

    Без комментариев.

    Ring, 05 Мая 2011

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

    +170

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    $z = 1;
     do
     {
     $key = mt_rand( 100000000, 999999999 );
     if ( strlen( $key ) == 9 )
     {
     $z++;
     }
     } while ( $z < 1 );

    как вам это?

    rastoman, 05 Мая 2011

    Комментарии (17)
  7. C# / Говнокод #6561

    +133

    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
    public bool SelectUserGroup(string UserName,string GroupName)
    {
        try
        {
            return true;
        }
        catch
        {
            return false;
        }
    }
    
    public KUser GetUserByKey(Guid Key)
    {
        try
        {
            return new KUser();
        }
        catch
        {
            return new KUser();
        }
    }

    Особая защита от исключительных ситуаций. Взято из реального проекта.

    Zergatul, 05 Мая 2011

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    $this->get_list_with_rights(
    			'C.*, `core_users`.username as username'.(defined('COMMENTS_BLOG_TYPE') ? ", count(cm.id)" : ", 0")." as cnt_comments",  			//список возвращаемых полей
    			$this->table_prefix.'_blogs AS C LEFT JOIN `core_users` ON `core_users`.id=C.author_id'.
    	(defined('COMMENTS_BLOG_TYPE') 
    			? " LEFT JOIN {$this->table_prefix}_comments_resource r ON (r.item_id=C.id AND r.type="
    			.COMMENTS_BLOG_TYPE.") LEFT JOIN {$this->table_prefix}_comments cm ON cm.resrc_id=r.id" : ""), 	//список таблиц, учавствующих в запросе
    			'C',  												//алиас основной таблицы, из которой берутся права
    			'', 'C.id');  		//условие-фильтр, группировка записей, порядок вывода записей

    ABO.CMS, модуль блогов.
    И чем автору не угодили стандартные функции?

    ling, 05 Мая 2011

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

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    /**
     * Returns the symbol the adapter uses for delimited identifiers.
     *
     * @return string
     */
    public function getQuoteIdentifierSymbol() {
        return '"';
    }

    zend :)

    rO_ot, 05 Мая 2011

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

    +167

    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
    include 'function_uvorot.php';
    include 'function_block.php';
    include 'function_udara_krit.php';
    function goodatack ($n,$zona_udara,$zona_blocka,$krit,$anti_krit,$uvorot,$anti_uvorot)
        { 
              if ($uvorot>$anti_uvorot) // Опредиляем  присудствует ли увертывание.
            {
             echo $text=uvorot ($n,$zona_udara); // функция перещета уворота
          }
          else 
          {
                if ($zona_udara==$zona_blocka)  // Опредиляем  не заблокирован ли удар
            {  
             echo $text=zablokirovan1 ($n,$zona_blocka,$krit,$anti_krit);   //функцыя блока удара
                $_SESSION[$n]+=$uron;    
            }

    Это не я)

    GogaF, 05 Мая 2011

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