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

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

    −106

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    case EffectVO.ENTER_FROM_LEFT: 
    	xFrom = - (sprite.boundingRect.width + Math.abs(sprite.boundingRect.x));
    	xFrom *= extraSafetyScaleFactor;
    	objectTween = TweenLite.from(spriteView, 0.5,
            {
                x: String(xFrom),
                immediateRender: true,
                ease: Cubic.easeOut
            });

    Культовый код. Вот, недавно набрел на ссылку:
    http://en.wikipedia.org/wiki/Cargo_cult_programming
    Почему-то во всем проекте анимированые свойства либо конвертируются в строки, либо изначально задаются строками. Писец давно уволился, и выяснить первопричину сейчас не представляется возможным, но существует предположение, что таким образом писец боролся с NaN... вряд ли это конечно могло помочь, но на то он и культ.

    wvxvw, 11 Июня 2014

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

    +8

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    # ifndef BOOST_NO_PARTIAL_SPECIALIZATION
          , check<Model>
    # else
          , check<failed ************ Model::************>
    # endif

    LispGovno, 10 Июня 2014

    Комментарии (1)
  4. Куча / Говнокод #16043

    +126

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    /**
         * Set each member to false.
         */
        void pauseAll()
        {
            foreach( member; __traits(allMembers, ObjectStateFlags) )
                static if( __traits(compiles, __traits(getMember, ObjectStateFlags, member) = false) )
                    __traits(getMember, ObjectStateFlags, member) = false;
        }

    LispGovno, 23 Мая 2014

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

    +154

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    function chksremail(t) {
    	if (t.value!='' && (t.value.indexOf('@')<1 || t.value.indexOf('.')<1 || t.value.length<4 || t.value.indexOf(' ')!=-1)) {
    		if (t.value.indexOf('@')<1) alert('Вы ввели неправильный адрес электронной почты! Адрес электронной почты должен обязательно содержать символ "@".');
    		else if (t.value.indexOf('.')<1) alert('Вы ввели неправильный адрес электронной почты! Адрес электронной почты должен обязательно содержать точку (".").');
    		else if (t.value.length<4) alert('Вы ввели неправильный адрес электронной почты! Адрес электронной почты должен обязательно содержать минимум 4 символа.');
    		else if (t.value.indexOf(' ')!=-1) alert('Вы ввели неправильный адрес электронной почты! Адрес электронной почты не может содержать пробелы.');
    		t.focus();
    		return false;
    	}
    	return true;
    }

    $%&$@^@#$^@rlu.ru/rlu.js

    gost, 21 Мая 2014

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

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    $hostInfo = Yii::app()->getRequest()->getHostInfo();
        	$hostInfo = str_replace('http://', "", $hostInfo);
        	$hostInfo = str_replace('www', "", $hostInfo);
        	$hostInfo = str_replace('sitename', "", $hostInfo);
        	$hostInfo = str_replace('.', "", $hostInfo);
        	$hostInfo = preg_replace('/ru|local/', '', $hostInfo);

    Человек до меня получал поддомен третьего уровня

    TRANE73, 19 Мая 2014

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

    +152

    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
    foreach ($line as $cell) { 
        if ($first) {
    	echo "<td id='csv_head' class='td_csv_head" . $i . "'>" 
    	. htmlspecialchars($cell) 
    	. '</br><select class="td_csv_modules' . $i . '" onchange="get_submodules($(\'.td_csv_modules' . $i . '\').val(), ' . $i . ')">' 
    	. $blank_select // </select>
    	. '</br><select class="td_csv_fields' . $i . '"><option value=""></option>'
    	. "</td>";
        } else {
    	echo "<td class='td_csv'>" . htmlspecialchars($cell) . "</td>";
        };
        $i++;
    }

    Нашел в коде коллеги. Кода было много, выкладываю самый вкусный. Момент с id и class у select-ов не опечатка. Подобное всречается абсолютно везде.

    ivanstroilov, 16 Мая 2014

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

    +12

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    // Decompress section data
    if (ERR_SUCCESS != LzmaDecompress(data, dataSize, decompressed)) {
        // Intel modified LZMA workaround
        EFI_COMMON_SECTION_HEADER* shittySectionHeader;
        UINT32 shittySectionSize;
        // Shitty compressed section with a section header between COMPRESSED_SECTION_HEADER and LZMA_HEADER
        // We must determine section header size by checking it's type before we can unpack that non-standard compressed section
        shittySectionHeader = (EFI_COMMON_SECTION_HEADER*) data;
        shittySectionSize = sizeOfSectionHeaderOfType(shittySectionHeader->Type);
        // ...

    Oh shit!

    spb-yuriy, 16 Мая 2014

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

    +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
    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
    Ext.define('Block', {
        config: {
            title: 'default',
            desc: 'default'
        },
        constructor: function (config) {
            this.initConfig(config);
        },
        tpl: new Ext.Template( '<div class="block">\
                                <div class="close">×</div>\
                                <div class="wrapper">\
                                <h3 class="title">{0}</h3>\
                                <p class="desc">{1}</p>\
                                </div>\
                                </div>'),
        create: function(){
            var div = new Ext.dom.Element(document.createElement('div')),
                html = this.tpl.apply([
                    this.title,
                    this.desc
                ]);
            div.setHTML(html);
            return div.first();
        }
    });
    
    var form = Ext.get('form'),
        blocks = Ext.get('blocks');
    
    form.addListener('submit', function(e, me){
        e.preventDefault();
    
        var title = me.elements.title.value,
            desc = me.elements.desc.value,
            blockInstance = Ext.create('Block');
    
        blockInstance.setTitle(title);
        blockInstance.setDesc(desc);
    
        var blockElement = blockInstance.create();
        blocks.appendChild(blockElement);
        blockElement.select('.close').addListener('click', function(){
            blockElement.remove();
        });
        me.reset();
    });

    Реализация минимального todo app на ExtJS. Переписывалась с чистого js ради эксперимента.

    DrDre, 15 Мая 2014

    Комментарии (1)
  10. JavaScript / Говнокод #15981

    +160

    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
    if (deltaLeft == 1) {
    	left -= 16;
    } else if (deltaLeft == 2) {
    	left -= 36;
    } else if (deltaLeft == 3) {
    	left -= 52;
    } else if (deltaLeft == 4) {
    	left -= 68;
    } else if (deltaLeft == 5) {
    	left -= 84;
    } else if (deltaLeft == -1) {
    	left += 16;
    } else if (deltaLeft == -2) {
    	left += 36;
    } else if (deltaLeft == -3) {
    	left += 52;
    } else if (deltaLeft == -4) {
    	left += 68;
    } else if (deltaLeft == -5) {
    	left += 84;
    }
    
    if (deltaTop == 1) {
    	top -= 30;
    } else if (deltaTop == -1) {
    	top += 27;
    } else if (deltaTop == -2) {
    	top += 50;
    } else if (deltaTop == 2) {
    	top -= 55;
    }

    И снова привет передают магические числа.

    kostoprav, 14 Мая 2014

    Комментарии (1)
  11. JavaScript / Говнокод #15945

    +148

    1. 1
    2. 2
    3. 3
    4. 4
    /**
     * Container for all of your app's parts, which are massively reused
     */
    module.exports = {};

    В недрах одного из многочисленных фреймворков для nodejs...

    strax, 09 Мая 2014

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