1. C# / Говнокод #16484

    +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
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    private CMSEntities entities = new CMSEntities();
            private List<Object> ObjectSets { get; set; }
            private List<Type> Types { get; set; }
             
    
    
            public void GetFields()
            {
                Types = new List<Type>();
                var entitiesType = entities.GetType();
                var assembly = Assembly.Load("CMS.Data");
                var types = assembly.GetTypes();
                foreach (var type in assembly.GetTypes())
                {
                    if (type.BaseType != null &&
                        type.BaseType.Name.Equals("EntityObject") &&
                        type.Name.IndexOf("aspnet",StringComparison.InvariantCultureIgnoreCase)<0 &&
                        type.Name != "sysdiagram")
                    {
                        Types.Add(type);
                    }
                }
                var properties = entitiesType.GetProperties();
                ObjectSets = new List<Object>();
                foreach (var propertyInfo in properties)
                {
                    var obj = propertyInfo.GetValue(entities, null);
                    if(propertyInfo.PropertyType.IsGenericType && obj!=null) ObjectSets.Add(obj);
                }    
            }

    Рефлексия и Entity Framework

    Serg, 05 Августа 2014

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

    +163

    1. 1
    2. 2
    3. 3
    4. 4
    if( window == top ){
    	document.cookie = "st=0; path=/; expires=100";
    	window.location = window.location;
    }

    sa-kirich, 05 Августа 2014

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

    +139

    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
    Есть односвязный список. Каждый элемент списка содержит указатель на следующий элемент (next). 
    Нам известен указатель на первый элемент списка (root). Необходимо без использования каких-либо 
    дополнительных структур данных и без изменения структуры элементов списка определить зациклен ли данный список.
    
    Ответ
    
    public static boolean isCycleList(Item root){ 
            Item first = root;     
            while(first.getNext() != null){ 
                Item subFirst = root; 
                do { 
                    if (subFirst == first.getNext()) 
                        return true; 
                    subFirst = subFirst.getNext(); 
                } 
                while (subFirst != first.getNext());         
                first = first.getNext(); 
            } 
            return false; 
        }

    kegdan, 05 Августа 2014

    Комментарии (21)
  4. Си / Говнокод #16481

    +138

    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
    int _ZN12LoggersChain2DoE10LogLevel_tPKcPv(){printf("_ZN12LoggersChain2DoE10LogLevel_tPKcPv\n");}
    int _ZN12LoggersChain10AddLogFuncERK7FunctorIv8TypeListIK10LogLevel_tS1_IPKcS1_IPv8NullTypeEEEE(){printf("_ZN12LoggersChain10AddLogFuncERK7FunctorIv8TypeListIK10LogLevel_tS1_IPKcS1_IPv8NullTypeEEEE\n");}
    int _ZN12LoggersChainC1Ev(){printf("_ZN12LoggersChainC1Ev\n");}
    int _Z22SetLoggerForExceptionsR7FunctorIv8TypeListIK10LogLevel_tS0_IPKcS0_IPv8NullTypeEEEE(){printf("_Z22SetLoggerForExceptionsR7FunctorIv8TypeListIK10LogLevel_tS0_IPKcS0_IPv8NullTypeEEEE\n");}
    int _Z19SetLoggerForSignalsR7FunctorIv8TypeListIK10LogLevel_tS0_IPKcS0_IPv8NullTypeEEEE(){printf("_Z19SetLoggerForSignalsR7FunctorIv8TypeListIK10LogLevel_tS0_IPKcS0_IPv8NullTypeEEEE\n");}
    int _Z24GetCppSigHandlerInstancev(){printf("_Z24GetCppSigHandlerInstancev\n");}
    int _ZN13CppSigHandler11set_handlerERKSt6vectorIiSaIiEERK7FunctorIv8TypeListIi8NullTypeEE(){printf("_ZN13CppSigHandler11set_handlerERKSt6vectorIiSaIiEERK7FunctorIv8TypeListIi8NullTypeEE\n");}
    int _ZN7OSErrorC1EPFPKciE(){printf("_ZN7OSErrorC1EPFPKciE\n");}
    int osso_initialize(){printf("osso_initialize\n");}
    con_ic_connection_new(){
    printf("con_ic_connection_new\n");
    return 0;
    }
    int osso_get_dbus_connection()
    {
    return 0;
    }
    
    int osso_get_sys_dbus_connection()
    {
    return 0;
    }
    }
    int  dbus_connection_add_filter ()
    {
    return 0;
    }
    int dbus_connection_send_with_reply_and_block ()
    {
    return 0;
    }
    int _dbus_header_get_message_type()
    {
    return 0;
    }
    int hildon_gtk_entry_set_input_mode(){printf("hildon_gtk_entry_set_input_mode\n");}
    
    
    
    int hildon_gtk_im_context_hide()
    {
    }int url_label_new()
    {
    return 0;
    }
    
    
    int url_label_set_text()
    {
    return 0;
    }
    int url_label_get_type()
    {
    return 0;
    }
    int hildon_uri_get_scheme_from_uri()
    {
    return 0;
    }
    int gtk_widget_tap_and_hold_setup()
    {
    
    printf("gtk_widget_tap_and_hold_setup\n");
    return 0;
    }
    int message_view_new_with_content()
    {
    
    printf("message_view_new_with_content\n");
    return 0;
    }
    int message_view_get_type()
    {
    
    printf("message_view_get_type\n");
    return 0;
    }
    
    int message_view_hide_content(){printf("message_view_hide_conteny\n");return 0;}

    Врапперы для запуска maemo-приложений на других платформах. Убого, но skype запускается.

    mittorn, 05 Августа 2014

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

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    try{
                $this->em->flush();
            }catch(DBALException $ex){
              //  \Doctrine\Common\Util\Debug::dump($user);
                $result='notOK';
            }
         
          echo json_encode(array('status'=>$result));
          die();

    код человека которого хотели но не сделали тим лидом, на что он обиделся и ушел

    moledet2, 05 Августа 2014

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

    +160

    1. 1
    ($isLead) ? $customerBalance = 0 : $customerBalance = $customerMapper->calculateBalance($customer);

    Код от мастера Йода

    andr435, 05 Августа 2014

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

    +154

    1. 1
    2. 2
    3. 3
    4. 4
    foreach($_GET as $v01=>$v02)
        $$v01 = $v02;
    foreach($_POST as $v01=>$v02)
        $$v01 = $v02;

    register_globals для слабаков!

    sslobodyanyuk, 05 Августа 2014

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

    +156

    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
    $query_result = mysql_query("SELECT parking FROM `cat_info` WHERE is_sold = 0");
       
            $numpark = array();
            $numpark[2]=0;
            $numpark[3]=0;
            $numpark[5]=0;
            $numpark[6]=0;
        if($query_result)
      {
         
          while ($row = mysql_fetch_array($query_result)) 
        {
            switch ($row["parking"]){
           
            case 2:
            $numpark[2]++;
            break;
            case 3:
            $numpark[3]++;
            break;
            case 5:
            $numpark[5]++;
            break;
            case 6:
            $numpark[6]++;
            break;
            }
        }
      }

    Этот код считает количество записей в таблице, в зависимости от числа в колонке parking.

    bashtannik, 05 Августа 2014

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

    +155

    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
    <?php
    // Staring straight up into the sky ... oh my my
    error_reporting(-1);
    mb_internal_encoding('utf-8');
    
    
    /* Возвращает соответствующую числу форму слова: 1 рубль, 2 рубля, 5 рублей */
    function inclineWord($number, $word1, $word2, $word5) {
    	if ($number == 0){
    		return;
    	}
    	$foo = substr(strrev($number), 0);
    	if ($foo == 1) {
    		return $word1;
    	} elseif ($foo >= 5){
    		return $word5;
    	} else {
    		return $word2;
    	}
    }
    /* 
        Преобразует числа от 0 до 999 в текст. Параметр $isFemale равен нулю, 
        если мы считаем число для мужского рода (один рубль), 
        и 1 — для женского (одна тысяча) 
    */
    function smallNumberToText($number, $isFemale) {
    	if ($number == 0){
    		return;
    	}
        $spelling = array(
            0   =>  'ноль',                                     10  =>  'десять',       100 =>  'сто',
            1   =>  'один',         11  =>  'одиннадцать',      20  =>  'двадцать',     200 =>  'двести',
            2   =>  'два',          12  =>  'двенадцать',       30  =>  'тридцать',     300 =>  'триста',
            3   =>  'три',          13  =>  'тринадцать',       40  =>  'сорок',        400 =>  'четыреста',
            4   =>  'четыре',       14  =>  'четырнадцать',     50  =>  'пятьдесят',    500 =>  'пятьсот',
            5   =>  'пять',         15  =>  'пятнадцать',       60  =>  'шестьдесят',   600 =>  'шестьсот',
            6   =>  'шесть',        16  =>  'шестнадцать',      70  =>  'семьдесят',    700 =>  'семьсот',    
            7   =>  'семь',         17  =>  'семнадцать',       80  =>  'восемьдесят',   800 =>  'восемьсот',
            8   =>  'восемь',       18  =>  'восемнадцать',     90  =>  'девяносто',     900 =>  'девятьсот',
            9   =>  'девять',       19  =>  'девятнадцать'    
        );
        $femaleSpelling = array(
            1   =>  'одна',        2   =>  'две'
        );
        
    }
    
    function numberToText($number) {
    	$arr = str_split(strrev($number), 1);
    	$end = $arr[2].$arr[1].$arr[0];
    	$middle = $arr[5].$arr[4].$arr[3];
    	$head = $arr[8].$arr[7].$arr[6];
    	$e = 1;
    	$m = 2;
    	$h = 3;
    	return $head;
    	$rub = inclineWord($ed, "рубль", "рубля", "рублей");
    	$tys = inclineWord($k, "тысяча", "тысячи", "тысяч");
    	$mil = inclineWord($kk, "миллион", "миллиона", "миллионов");
    }
    
    /* Вызовем функцию несколько раз */
    $amount1 = mt_rand(1,99999999);
    $text1 = numberToText($amount1);
    echo "На вашем счету {$text1}\n";
    /* 
    $amount2 = mt_rand(1,99999999);
    $text2 = numberToText($amount2);
    
    echo "На вашем счету {$text2}\n";
    
    $amount3 = mt_rand(1,99999999);
    $text3 = numberToText($amount3);
    
    echo "На вашем счету {$text3}\n";
    
    $amount4 = mt_rand(1,99999999);
    $text4 = numberToText($amount4);
    
    echo "На вашем счету {$text4}\n";
    
    */

    mocha, 05 Августа 2014

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

    +57

    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
    struct ShaderBuilder
    {
    	Shader ToShader() const;
    
    	ShaderParts::VertexDataSrc VertexDataSource;
    	ShaderParts::Transform Transformation;
    	ShaderParts::LightControl LightControl;
    	ShaderParts::ColorSrc DiffuseSource;
    	ShaderParts::EmissionSrc EmissionSource;
    	ShaderParts::SpecularSrc SpecularSource;
    	ShaderParts::HeightSrc HeightSource;
    	ShaderParts::NormalSrc NormalSource;
    	ShaderParts::Parallax Parallax;
    	ShaderParts::LightModel LightModel;
    
    	...
    };
    
    #define with(x) for(auto &_=(x), *firstIter=&_; firstIter; firstIter=nullptr)
    
    ...
    
    using namespace ShaderParts;
    ShaderBuilder floorShaderBuilder;
    with(floorShaderBuilder)
    {
    	_.Transformation=Transform::Default();
    	_.LightControl=ShaderParts::LightControl::DefaultLighting({ {DirectionalLight::Type, 1} });
    	_.DiffuseSource=ColorSrc::FromTexture();
    	_.SpecularSource=SpecularSrc::FromConstants("0.25", "16.0");
    	_.HeightSource=HeightSrc::FromHeightMap();
    	_.NormalSource=NormalSrc::FromNormalMap("rg");
    	_.Parallax=Parallax::SimpleParallax();
    	_.LightModel=LightModel::Phong();
    }
    floorSh=floorShaderBuilder.ToShader();

    Вот такой оператор with на C++.

    gammaker, 04 Августа 2014

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