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

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    function getLocaleByLang($lang) {
       if(!isset($lang)) return false;
       //function's code is here...
    }

    Ну думаю тут все понятно - зачем проверять существование переменной, которую невозможно не передать) Вот что значит - дедлайн рядом.

    Heian, 01 Мая 2014

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

    −166

    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
    Функция ЭтоБуква(Буква)
                    Возврат Найти("еоатинркулмДСвПдОсКцчыгзпбТНИьБФхВяРАЗЭйУЕГМЦжщЙШЩЫЛЯЧЬХЪЖЮЁёшъфэюQWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm", Буква) > 0;
    КонецФункции
     
    Функция ЭтоЦифра(Буква)
     
                    Возврат Найти("1234567890", Буква)>0;
     
    КонецФункции // ЭтоЦифра()
     
    Функция ЭтоБукваИлиЦифра(Символ)
     
                    Возврат Найти("еоатинркулмДСвПдОсКцчыгзпбТНИьБФхВяРАЗЭйУЕГМЦжщЙШЩЫЛЯЧЬХЪЖЮЁёшъфэюQWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm1234567890", Символ) > 0;
     
    КонецФункции // ЭтоБукваИлиЦифра()

    Из типовой конфигурации БГУ 2.0.
    На первый взгляд реализация забавна :-) Но, в общем-то, это не является говнокодом: просмотрев в гугле различные "рейтинги букв", получил примерно то же самое.
    Тем не менее, можно решить вопрос с помощью проверки кода символа.

    Voittamaton, 01 Мая 2014

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

    +154

    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
    foreach ($arResult['SECTIONS'] as $key => $arSection)
    		{
    			$arMap[$arSection['ID']] = $key; /*Собираем все ID секций, при этом в качестве ключа пишем ID, а в качестве значения - индекс цикла (?!)*/
    		}
    		$rsSections = CIBlockSection::GetList(array(), array('ID' => array_keys($arMap)), false, $arSelect); 
                    /*вызываем API - выборку из базы, при этом фильтруем по ID-шникам, вынимая их значения через array_keys() (??!!!) при том, что мы сами записывали ID шники в ключи а не в значения*/
    		while ($arSection = $rsSections->GetNext())
    		{
    			if (!isset($arMap[$arSection['ID']]))
    				continue; /*Проверяем еще раз что этот ID-ключ есть в массиве ??? мы его оттуда взяли*/
    			$key = $arMap[$arSection['ID']]; /*Нахера ??? (см. строчку 03)*/
    			if ($boolPicture)
    			{
    				$arSection['PICTURE'] = intval($arSection['PICTURE']);
    				$arSection['PICTURE'] = (0 < $arSection['PICTURE'] ? CFile::GetFileArray($arSection['PICTURE']) : false);
    				$arResult['SECTIONS'][$key]['PICTURE'] = $arSection['PICTURE'];
    				$arResult['SECTIONS'][$key]['~PICTURE'] = $arSection['~PICTURE'];
    			}
    			if ($boolDescr)
    			{
    				$arResult['SECTIONS'][$key]['DESCRIPTION'] = $arSection['DESCRIPTION'];
    				$arResult['SECTIONS'][$key]['~DESCRIPTION'] = $arSection['~DESCRIPTION'];
    				$arResult['SECTIONS'][$key]['DESCRIPTION_TYPE'] = $arSection['DESCRIPTION_TYPE'];
    				$arResult['SECTIONS'][$key]['~DESCRIPTION_TYPE'] = $arSection['~DESCRIPTION_TYPE'];
    			}
    		}

    Битриксоидам за строчки платят? Дефолтный шаблон компонента Битрикса, который вшит ядро.

    braun3812, 30 Апреля 2014

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

    +127

    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
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.IO;
    
    namespace Slogan
    {
        class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine("Выбрать текст из файла (1). Написать самому (2).");
                char ch = Convert.ToChar(Console.ReadLine());
                if (ch == '2')
                {
                    Console.WriteLine("Количество слов");
                    int x = Convert.ToInt32(Console.ReadLine());
                    string[] arr = new string[x];
                    Console.WriteLine("Вводите слова");
                    for (int i = 0; i < arr.Length; i++)
                    {
                        arr[i] = Console.ReadLine();
                    }
                    int count = 0;
                    string slogan = "";
                    do
                    {
                        slogan = "";
                        for (int i = 0; i < arr.Length; i++)
                        {
                            System.Threading.Thread.Sleep(20);
                            Random rnd = new Random();
                            int fr = rnd.Next(0, x);
                            slogan += arr[fr] + " ";
                        }
                        Console.WriteLine(slogan);
                        count++;
                    } while (count != arr.Length);
                }
                else if (ch == '1')
                {
                    string slogan = "";
                    Console.WriteLine("Введите имя пользователя Windows");
                    string user = Console.ReadLine();
                    Console.WriteLine("Введите название файла на рабочем столе");
                    string way = Console.ReadLine();
                    try
                    {
                        string input = File.ReadAllText("c:/users/" + user + "/desktop/" + way);
                        Console.WriteLine("Введите название файла на рабочем столе, куда сохранять");
                        string waytosave = "c:/users/" + user + "/desktop/" + Console.ReadLine();
                        string[] split = input.Split(new Char[] { ' ', ',', '.', ':', '\t' });
                        int counter = 0;
                        do
                        {
                            slogan = "";
                            for (int i = 0; i < split.Length; i++)
                            {
                                System.Threading.Thread.Sleep(20);
                                Random rnd = new Random();
                                int fr = rnd.Next(0, split.Length);
                                slogan += split[fr] + " ";
                            }
                            Console.WriteLine(slogan);
                            File.AppendAllText(waytosave, slogan);
                            counter++;
                        } while (counter != split.Length);
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine(ex.Message);
                    }
                }
                Console.ReadLine();
            }
        }
    }

    Выводит получаемые слова случайным образом

    cs-slavgorod, 30 Апреля 2014

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

    +63

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    template <typename T>
    void function_name(T &&data)
    {
        static_assert(std::is_rvalue_reference<decltype(data)>::value, "data must be rvalue");
        // ...
    }

    Все лишнее убрано

    Setry, 30 Апреля 2014

    Комментарии (14)
  6. JavaScript / Говнокод #15873

    +154

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    var ajax = new Ajax.Request(this.ADDRESS,
        {
            method:'post',
            parameters:{'secdata':secdata},
            onComplete: function ( data ){ 
                //console.log( data.responseText )
                setTimeout( function(){ currentObj.callbackCompleteCommit( currentObj.connection.unpuck( data.responseText) )}, 0 ); //out of XHR handler
            },
            onFailure: function(){hideWaiter(); errorResponse(null,'<b>ERROR:</b>connect') },
            asynchronous: true
        });

    Prototype 1.7.1
    Это чувство, когда мешают try catch во внешнем обработчике.
    Кстати, я видел фреймворк развивается: в git, и хелпе он уже 1.7.2 )

    Dart_Sergius, 30 Апреля 2014

    Комментарии (35)
  7. Си / Говнокод #15872

    +154

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    if(sel.ToInt()==1){
      Form1->NumberOfIndexes = 1;
    }else if(sel.ToInt()==2){
      ...
      //еще 11 таких же кучек
      ...
    }else if(sel.ToInt()==13){
      Form1->NumberOfIndexes = 13;
    }else{
      Form1->NumberOfIndexes = 1;
    }

    dm-ua, 30 Апреля 2014

    Комментарии (25)
  8. Си / Говнокод #15871

    +134

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    try{
        tempPage1Int = tempPage1.ToInt();
      }catch(Exception &E){
        tempPage1Int = 0;
        goto NEXTFUCKER;
      }
      NEXTFUCKER:

    Дописываю из-под стола.

    dm-ua, 30 Апреля 2014

    Комментарии (6)
  9. Си / Говнокод #15870

    +132

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    if(fileCounter < 1000){
          subDir =  "SUBDIREC.001";
          //много кода
        }else if (fileCounter < 2000 && fileCounter > 999){
          subDir =  "SUBDIREC.002";
          //много кода, плюс еще 17 таких же веток
        }else if (fileCounter < 20000 && fileCounter > 18999){
          subDir =  "SUBDIREC.020";
          //много кода
        }

    dm-ua, 30 Апреля 2014

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

    +148

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    ...
    $me = 'return define("me", "?" . ($me = substr(basename(__FILE__), 1, -23)));';
    ...
    <?php eval($me) or die ?>
    ...

    >Файлы "view" центрального тела страниц, должны начинаться с подчеркивания, например view/_news.php и код файла должен начинаться с такой строки: <?php eval($me) or die ?>

    Пациент:
    http://coresky.net/

    Groovy, 30 Апреля 2014

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