1. PHP / Говнокод #8179

    +164

    1. 1
    2. 2
    3. 3
    <?php
    $_POST=array_merge($_POST,APP_Models_Posts::getKeyDis($_POST,$_POST['post_text'].' '.$_POST['post_name']));
    ?>

    Неговнокод такой неговнокод.

    Zho, 12 Октября 2011

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

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    <?php
    class Plugins_Comments implements Plugins_interface{
       function Run(){
    	  $args=func_get_args();
    
          return Formcacher::ProccessByAllRequest(APP_PluginBOX::tplOnce("comments",array("comments_list"=>APP_Models_Comments::GetCommentsTree($args[0]['post_id']),"post_id"=>$args[0]['post_id'],"com_name"=>htmlspecialchars($_COOKIE['com_name'],ENT_QUOTES))),FormCacher::LoadVars());
       }
    }
    ?>

    Не то чтобы говнокод, скорее бугога-код...

    Zho, 12 Октября 2011

    Комментарии (11)
  3. Java / Говнокод #8177

    +73

    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
    public boolean alwaysAllowed(String player) {
    		return getServer().getPlayer(player).hasPermission("over9000homes.alwaysAllowed");
    	}
    	
    	public boolean remoteAccess(String player) {
    		return getServer().getPlayer(player).hasPermission("over9000homes.remote");
    	}
    	
    	public boolean canUse(String player) {
    		return getServer().getPlayer(player).hasPermission("over9000homes.use");
    	}
    	
    	public boolean canInvite(String player) {
    		return getServer().getPlayer(player).hasPermission("over9000homes.caninvite");
    	}
    	
    	public boolean infiniteHomes(String player) {
    		return getServer().getPlayer(player).hasPermission("over9000homes.infinite");
    	}
    	
    	public boolean noWarmup(String player) {
    		return getServer().getPlayer(player).hasPermission("over9000homes.nowarmup");
    	}
    	
    	public boolean noCooldown(String player) {
    		return getServer().getPlayer(player).hasPermission("over9000homes.nocooldown");
    	}
    	
    	public boolean freeSetHome(String player) {
    		return getServer().getPlayer(player).hasPermission("over9000homes.freesethome");
    	}
    	
    	public boolean freeHome(String player) {
    		return getServer().getPlayer(player).hasPermission("over9000homes.freehome");
    	}

    Всё тот же Bukkit проект.

    Uhehesh, 12 Октября 2011

    Комментарии (39)
  4. 1C / Говнокод #8176

    −154

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    Исходные коды на 1С!
    На джаву перейти мы рады,
    Но не стерплю такой утраты,
    Я снова перейду на 1С
    
    А мой товарищ одинокий
    Нам закодирует EE

    Ну и кто сказал, что Маяковский умер?

    alexoy, 12 Октября 2011

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

    +130

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    public static void setDefaultLookAndFeelDecorated(boolean defaultLookAndFeelDecorated) {
            if (defaultLookAndFeelDecorated) {
                SwingUtilities.appContextPut(defaultLookAndFeelDecoratedKey, Boolean.TRUE);
            } else {
                SwingUtilities.appContextPut(defaultLookAndFeelDecoratedKey, Boolean.FALSE);
            }
    }

    http://www.java2s.com/Open-Source/Java-Document/6.0-JDK-Core/swing/javax/swing/JFrame.java.htm

    3.14159265, 12 Октября 2011

    Комментарии (21)
  6. SQL / Говнокод #8174

    −147

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    SELECT FIRST ((SELECT COUNT(*)/2 + MOD(COUNT(*),2) 
                   FROM REFSTATUS r3)) r.STATUSID, r.STATUSNAME, r2.STATUSID, r2.STATUSNAME
    FROM REFSTATUS r 
    LEFT JOIN REFSTATUS r2 ON r2.STATUSID = (SELECT FIRST 1 SKIP ((SELECT COUNT(*)/2 + MOD(COUNT(*),2)
                                                                    FROM REFSTATUS r4) +
                                                                   (SELECT COUNT(1)
                                                                    FROM REFSTATUS r5 
                                                                    WHERE r5.STATUSID < r.STATUSID)) r1.STATUSID 
                                              FROM REFSTATUS r1
                                              ORDER BY 1)
    ORDER BY 1

    Абсолютно бессмысленный SQL-запрос, который выводит содержимое двух полей таблицы REFSTATUS в две колонки пополам (Используется SQL-Firebird)

    selinta, 12 Октября 2011

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

    +135

    1. 1
    2. 2
    3. 3
    echo "  <h2><a href='index.php'>Выставок нет.</a></h2>";        
    echo "<br><p>К сожалению выставок нет.</p>";
    echo "<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>";

    пыхапист не осилил CSS

    Sulik78, 12 Октября 2011

    Комментарии (18)
  8. Java / Говнокод #8172

    +80

    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 class Context {
        public int countSuccess;
        public int countFailed;
        // ....
        public void markSuccess() {
            countSuccess++;
            countFailed--;
        }
    
        public void markSuccessAll() {
            countSuccess += countFailed;
            countFailed = 0;
        }   
        // ....
    }

    Вот такая вот супер-абстракция. Пример клиентского кода:

    public void processRequest(Context ctx) {
    // ...
    ctx.countFailed = elems.size();
    for (String elem : elems) {
    boolean success = doSomething(elem);
    if (success) {
    ctx.markSuccess();
    }
    }
    }

    roman-kashitsyn, 12 Октября 2011

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

    −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
    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
    Для Каждого ТекущаяСтрока Из ОтработанноеВремя Цикл
            ТекущаяСтрока.ИтогоЧасов=0;
    		ТекущаяСтрока.ИтогоЧасов=ТекущаяСтрока.ПервыйЧасов1+ТекущаяСтрока.ПервыйЧасов2+ТекущаяСтрока.ПервыйЧасов3+
    		ТекущаяСтрока.ПервыйЧасов4+ТекущаяСтрока.ПервыйЧасов5+ТекущаяСтрока.ПервыйЧасов6+ТекущаяСтрока.ПервыйЧасов7+
    		ТекущаяСтрока.ПервыйЧасов8+ТекущаяСтрока.ПервыйЧасов9+ТекущаяСтрока.ПервыйЧасов10+ТекущаяСтрока.ПервыйЧасов11+
    		ТекущаяСтрока.ПервыйЧасов12+ТекущаяСтрока.ПервыйЧасов13+ТекущаяСтрока.ПервыйЧасов14+ТекущаяСтрока.ПервыйЧасов15+
    		ТекущаяСтрока.ПервыйЧасов16+ТекущаяСтрока.ПервыйЧасов17+ТекущаяСтрока.ПервыйЧасов18+ТекущаяСтрока.ПервыйЧасов19+
    		ТекущаяСтрока.ПервыйЧасов20+ТекущаяСтрока.ПервыйЧасов21+ТекущаяСтрока.ПервыйЧасов22+ТекущаяСтрока.ПервыйЧасов23+
    		ТекущаяСтрока.ПервыйЧасов24+ТекущаяСтрока.ПервыйЧасов25+ТекущаяСтрока.ПервыйЧасов26+ТекущаяСтрока.ПервыйЧасов27+
    		ТекущаяСтрока.ПервыйЧасов28+ТекущаяСтрока.ПервыйЧасов29+ТекущаяСтрока.ПервыйЧасов30+ТекущаяСтрока.ПервыйЧасов31;	
    		
    		ТекущаяСтрока.ИтогоОклад=0;
    		ТекущаяСтрока.ИтогоОклад= ОКр(ТекущаяСтрока.ИтогоЧасов/ТекущаяСтрока.НормаЧасов*ТекущаяСтрока.Оклад,2);
    		
    		ТекущаяСтрока.Выручка=0;
    		
    		Если ТекущаяСтрока.ПервыйЧасов1>0 тогда
    			НайденнаяСтрока = РабочаяТаблица.Найти(1, "День");
    			Если НайденнаяСтрока = Неопределено Тогда			
    			Иначе
    				ТекущаяСтрока.Выручка = ТекущаяСтрока.Выручка+НайденнаяСтрока.Продано;
    			КонецЕсли;	
    		КонецЕсли;	
    		Если ТекущаяСтрока.ПервыйЧасов2>0 тогда
    			НайденнаяСтрока = РабочаяТаблица.Найти(2, "День");
    			Если НайденнаяСтрока = Неопределено Тогда			
    			Иначе	
    				ТекущаяСтрока.Выручка = ТекущаяСтрока.Выручка+НайденнаяСтрока.Продано;
    			КонецЕсли;	
    		КонецЕсли;	
    		Если ТекущаяСтрока.ПервыйЧасов3>0 тогда
    			НайденнаяСтрока = РабочаяТаблица.Найти(3, "День");
    			Если НайденнаяСтрока = Неопределено Тогда			
    			Иначе
    				ТекущаяСтрока.Выручка = ТекущаяСтрока.Выручка+НайденнаяСтрока.Продано;
    			КонецЕсли;	
    		КонецЕсли;	
    		Если ТекущаяСтрока.ПервыйЧасов4>0 тогда
    			НайденнаяСтрока = РабочаяТаблица.Найти(4, "День");
    			Если НайденнаяСтрока = Неопределено Тогда			
    			Иначе
    				ТекущаяСтрока.Выручка = ТекущаяСтрока.Выручка+НайденнаяСтрока.Продано;
    			КонецЕсли;	
    		КонецЕсли;
    		Если ТекущаяСтрока.ПервыйЧасов5>0 тогда
    			НайденнаяСтрока = РабочаяТаблица.Найти(5, "День");
    			Если НайденнаяСтрока = Неопределено Тогда			
    			Иначе
    				ТекущаяСтрока.Выручка = ТекущаяСтрока.Выручка+НайденнаяСтрока.Продано;
    			КонецЕсли;	
    		КонецЕсли;	
    
    ************************************************************  и так далее :)

    Почти 300 строк говнокода превращаются в 10 :D

    Для Инд = 1 По 31 Цикл
    Если ТекущаяСтрока["ПервыйЧасов" + Инд] > 0 Тогда
    ТекущаяСтрока.ИтогоЧасов = ТекущаяСтрока.ИтогоЧасов + ТекущаяСтрока["ПервыйЧасов" + Инд];

    НайденнаяСтрока = РабочаяТаблица.Найти(Инд, "День");
    Если НайденнаяСтрока <> Неопределено Тогда
    ТекущаяСтрока.Выручка = ТекущаяСтрока.Выручка+НайденнаяСтрока.Пр одано;
    КонецЕсли;
    КонецЕсли;
    КонецЦикла;

    VikUp, 12 Октября 2011

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

    +168

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    if (!is_array($arFilter)) 
    			$filter_keys = Array();
    		else
    			$filter_keys = array_keys($arFilter);
    
    		for ($i=0; $i<count($filter_keys); $i++)
    		{
    			$key = strtoupper($filter_keys[$i]);
    			$val = $arFilter[$filter_keys[$i]];
    // ....
    }

    по всей видимости, в битриксе программистам выдают тяжелые наркотики при входе.. до такой реализации foreach я бы никогда не додумался!

    belukov, 12 Октября 2011

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