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

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

    +3

    1. 1
    2. 2
    $arParams["SET_TITLE"] = $arParams["SET_TITLE"]!="N";
    $arParams["SET_LAST_MODIFIED"] = $arParams["SET_LAST_MODIFIED"]==="Y";

    news.detail - cтандартный компонент Битрикса

    pgood, 27 Июля 2016

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

    −94

    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
    Область.Параметры.месяц 	= МесяцДляГрафика;
    Область.Параметры.первое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("01", ДатаДляПечатиКалендаря));
    Область.Параметры.второе 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("02", ДатаДляПечатиКалендаря));
    Область.Параметры.третье 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("03", ДатаДляПечатиКалендаря));
    Область.Параметры.четвертое = ПеревестиВКалендарПредставл(ОпрДеньНедели("04", ДатаДляПечатиКалендаря));
    Область.Параметры.пятое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("05", ДатаДляПечатиКалендаря));
    Область.Параметры.шестое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("06", ДатаДляПечатиКалендаря));
    Область.Параметры.седьмое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("07", ДатаДляПечатиКалендаря));
    Область.Параметры.восьмое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("08", ДатаДляПечатиКалендаря));
    Область.Параметры.девятое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("09", ДатаДляПечатиКалендаря));
    Область.Параметры.десятое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("10", ДатаДляПечатиКалендаря));
    Область.Параметры.одиннадцатое 		= ПеревестиВКалендарПредставл(ОпрДеньНедели("11", ДатаДляПечатиКалендаря));
    Область.Параметры.двенадцатое 		= ПеревестиВКалендарПредставл(ОпрДеньНедели("12", ДатаДляПечатиКалендаря));
    Область.Параметры.тринадцатое 		= ПеревестиВКалендарПредставл(ОпрДеньНедели("13", ДатаДляПечатиКалендаря));
    Область.Параметры.четырнадцатое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("14", ДатаДляПечатиКалендаря));
    Область.Параметры.пятнадцатое 		= ПеревестиВКалендарПредставл(ОпрДеньНедели("15", ДатаДляПечатиКалендаря));
    Область.Параметры.шестнадцатое 		= ПеревестиВКалендарПредставл(ОпрДеньНедели("16", ДатаДляПечатиКалендаря));
    Область.Параметры.семнадцатое  		= ПеревестиВКалендарПредставл(ОпрДеньНедели("17", ДатаДляПечатиКалендаря));
    Область.Параметры.восемнадцатое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("18", ДатаДляПечатиКалендаря));
    Область.Параметры.девятнадцатое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("19", ДатаДляПечатиКалендаря));
    Область.Параметры.двадцатое		 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("20", ДатаДляПечатиКалендаря));
    Область.Параметры.двадцатьпервое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("21", ДатаДляПечатиКалендаря));
    Область.Параметры.двадцатьвторое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("22", ДатаДляПечатиКалендаря));
    Область.Параметры.двадцатьтретье	= ПеревестиВКалендарПредставл(ОпрДеньНедели("23", ДатаДляПечатиКалендаря));
    Область.Параметры.двадцатьчетвертое = ПеревестиВКалендарПредставл(ОпрДеньНедели("24", ДатаДляПечатиКалендаря));
    Область.Параметры.двадцатьпятое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("25", ДатаДляПечатиКалендаря));
    Область.Параметры.двадцатьшестое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("26", ДатаДляПечатиКалендаря));
    Область.Параметры.двадцатьседьмое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("27", ДатаДляПечатиКалендаря));
    Область.Параметры.двадцатьвосьмое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("28", ДатаДляПечатиКалендаря));
    Попытка
    	Область.Параметры.двадцатьдевятое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("29", ДатаДляПечатиКалендаря));
    	Область.Параметры.тридцатое			= ПеревестиВКалендарПредставл(ОпрДеньНедели("30", ДатаДляПечатиКалендаря));
    	Область.Параметры.тридцатьпервое 	= ПеревестиВКалендарПредставл(ОпрДеньНедели("31", ДатаДляПечатиКалендаря));
    Исключение
    КонецПопытки;

    Выводим на печать дни недели для каждого дня месяца

    CMblCL, 14 Июля 2016

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

    0

    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
    SoftwareCommon::params::IParamLoader::TypeDb SettingsProxy::getTypeDb() const
    	{
    		try
    		{
    			auto type = Locator::Services::Locator->Resolve<ISettings^>()->Type;
    			switch (type)
    			{
    			case decltype(type)::Firebird: return IParamLoader::Firebird;
    			case decltype(type)::MSSQL: return IParamLoader::MSSQL;
    			default:
    				throw std::runtime_error("Unsupported db type");
    			}
    		}
    		catch (Exception ^ex)
    		{
    			throw std::runtime_error(marshal_1251(ex->ToString()));
    		}
    	}

    laMer007, 13 Июля 2016

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

    +2

    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
    <table>       
            <?php 
            $showShowroomsIds =  array();
            foreach($available_sizes as $sizeName):
            $available  =  false;
            foreach($warehouses as $warehouse) :
                $uuid = $warehouse['uuid'];
                $name = $warehouse['name'];
                $quantity = $size_quantity[$uuid][trim($sizeName)];
                if($quantity >0) {
                    $available  =  true;
                }
            endforeach;
            if(!$available) continue;
            ?>
            <?php
            foreach($warehouses as $warehouse) :
            $uuid = $warehouse['uuid'];
            //echo $uuid."<br>";
            
            if(isset($showrooms[$uuid])) {
                $showShowroomsIds[$uuid] = $uuid;
            }
            
            $name = $warehouse['name'];
            $quantity = $size_quantity[$uuid][trim($sizeName)];
            if($quantity) {
                $eshopAvailable = '';
                if($uuid == $eshopUuid && $quantity > 0) $eshopAvailable = 'eshop_available=\'y\'';
                $quantity  = ModelCommonWarehouse::getFormattedQuantity($quantity,$uuid);
                $qtA  =  "";
            } else {
                continue;
                $qtA  =  "not-available";
                $quantity  =  "нет в наличии";
            }
            ?>
            <tr <?php echo $eshopAvailable?> available='y'>
                <td class="td">
                    <?php if(isset($showrooms[$uuid])):?><a href="#" class="showroom-info"  uuid="<?php echo $uuid;?>" icId="uuid" rel="nofollow"><?php endif;?>
                    <?php echo $name?>
                    <!--<?php echo $uuid;?>-->
                    <?php if(isset($showrooms[$uuid])):?></a><?php endif;?>
                </td>
                <td class="qt <?php echo $qtA;?>"   ><?php echo $quantity;?></td>
            </tr>
            <?php endforeach;?>
            <tr>
                <td style="height: 10px;"></td>
            </tr>
            <?php endforeach;?>
        </table>

    Opencart. Прямо во вьюхе ровным слоем размазаны бизнес-логика и js.
    Что самое интересное, оборот магазина составляет 7 млн. руб (о__О)

    Panda, 13 Июля 2016

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

    +3

    1. 1
    session_decode(session_encode());

    что это вообще такое и зачем оно?

    kropotor, 27 Июня 2016

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

    +1

    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
    // can only do five hundred at a time. can't find documentation
        // for this number, but if I do more than that I get an error
        // message
    	for (five_hundred <- pageranks.grouped(500))
    	{
    	  try
    	  {
    	    upload(five_hundred)
    	  }
    	  catch
    	  {
    	    // the datastore is not entirely reliable. for less than 1% of the
    	    // calls it seems to fail randomly. which is a bit annoying if
    	    // you're uploading a lot of data and don't want to stop when half of
    	    // it is already stored
    	    case ex : Throwable =>
    	    {
    	      try
    	      {
    	        ex.printStackTrace()
    	        // try a second time
    	        upload(five_hundred)
    	      }
    	      catch
    	      {
    	        // don't try a third time. just continue
    	        case ex : Throwable => ex.printStackTrace()
    	      }
    	    }
    	  }
    	}

    Наткнулся на пост, в котором некий Ph. D рекламировал scala в качестве замены питону

    Fike, 09 Июня 2016

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

    −4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    Maven
    
    <dependency>
        <groupId>javax.validation</groupId>
        <artifactId>validation-api</artifactId>
        <version>1.0.0.GA</version>
        <classifier>sources</classifier>
        <scope>provided</scope>
    </dependency>

    Кто-то изобретательный прицепил исходники библиотеки к проекту таким способом, чтобы переходить к ним при разработке.

    morph, 02 Июня 2016

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

    +4

    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 class tcMoveDirection
    		{
    			public enum tcDirection { R, L, N };
    			static public tcDirection fromstring(string expression)
    			{
    				switch (expression)
    				{
    					case "R":
    						return tcDirection.R;
    
    					case "L":
    						return tcDirection.L;
    
    					case "N":
    						return tcDirection.N;
    
    					default: throw new InvalidCastException();
    				}
    
    			}
    
    		}

    dm_fomenok, 23 Мая 2016

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

    +6

    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
    #include <iostream>
        using namespace std;
         
        struct One
        {
          bool operator==(const One &) { cout << "hello from One!" << endl; return true; }
          bool operator==(unsigned int) { cout << "hello from One!" << endl;  return true; }
        };
        One operator "" x( unsigned long long int ) { return One{}; }
        One operator "" xMAGICK( unsigned long long int ) { return One{}; }
         
        int main()
        {
          cout << (0xMAGICK == 0x);
         
          return 0;
        }

    http://ideone.com/gGYFce
    Расширяем множество шестнадцатеричных цифр при помощи UDL
    В C++17 осталось разрешить перегрузку операторов встроенных типов - вот тогда можно будет оторваться по-полной!

    gost, 05 Мая 2016

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

    +2

    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
    $vv = $_GET['new'];
    $v1 = $_GET['1'];
    $v2 = $_GET['2'];
    $v3 = $_GET['3'];
    $v4 = $_GET['4'];
    $v5 = $_GET['5'];
    $v6 = $_GET['6'];
    $v7 = $_GET['7'];
    $v8 = $_GET['8'];
    $v9 = $_GET['9'];
    $v10 = $_GET['10'];
    $v11 = $_GET['11'];
    $v12 = $_GET['12'];
    if (mb_strlen($vv) >= 1) {
    	mysql_query ("INSERT INTO vote (title, votes) VALUES ('$vv', '0')");
    	header('Location: /index.php');
    	exit;
    }
    if (mb_strlen($v1) >= 1 or mb_strlen($v2) >= 1 or mb_strlen($v3) >= 1 or mb_strlen($v4) >= 1 or mb_strlen($v5) >= 1 or mb_strlen($v6) >= 1 or mb_strlen($v7) >= 1 or mb_strlen($v8) >= 1 or mb_strlen($v9) >= 1 or mb_strlen($v10) >= 1 or mb_strlen($v11) >= 1 or mb_strlen($v12) >= 1) {
    	mysql_query ("UPDATE vote SET title='$v1' WHERE id='1'");
    	mysql_query ("UPDATE vote SET title='$v2' WHERE id='2'");
    	mysql_query ("UPDATE vote SET title='$v3' WHERE id='3'");
    	mysql_query ("UPDATE vote SET title='$v4' WHERE id='4'");
    	mysql_query ("UPDATE vote SET title='$v5' WHERE id='5'");
    	mysql_query ("UPDATE vote SET title='$v6' WHERE id='6'");
    	mysql_query ("UPDATE vote SET title='$v7' WHERE id='7'");
    	mysql_query ("UPDATE vote SET title='$v8' WHERE id='8'");
    	mysql_query ("UPDATE vote SET title='$v9' WHERE id='9'");
    	mysql_query ("UPDATE vote SET title='$v10' WHERE id='10'");
    	mysql_query ("UPDATE vote SET title='$v11' WHERE id='11'");
    	mysql_query ("UPDATE vote SET title='$v12' WHERE id='12'");
    	header('Location: /');
    	exit;
    }

    Сохранение вопросов в опроснике.

    slowpoke59rus, 27 Апреля 2016

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