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

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

    −84

    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
    def self.allow_some_behaviour?
      # better safe than sorry.
      bool = !false ? !false : !!false
    
      # type checking
      if bool
    
        # short circuit just in case
        return !true;
      elsif !bool
        return !false
      end
    end

    найдено в реальном проекте, работало в течении года где то. зачем это сделано - непонятно. почему не выпилили, тоже неясно.

    malleus, 08 Июня 2012

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

    +69

    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
    if ($autor->name != 'webred') {
    $role = ",<br />Народный корреспондент";
    if(isset($user->roles['3']) || isset($user->roles['5']) || isset($user->roles['6']))
    {
    	$role = ",<br />Редактор";
    	if(isset($user->roles['7']))
    	{
    		$role = ",<br />Корреспондент";
    	}
    	//глред
    	if(isset($user->roles['8']))
    	{
    		$role = ",<br />Главный редактор";
    	}
    	//глобоз
    	if(isset($user->roles['9']))
    	{
    		$role = ",<br />Обозреватель";
    	}
    	//шефред
    	if(isset($user->roles['10']))
    	{
    		$role = ",<br />Шеф-редактор";
    	}
    	if(isset($user->roles['12']))
    	{
    		$role = ",<br />Спортивный обозреватель";
    	}
    	if(isset($user->roles['11']))
    	{
    		$role = ",<br />Редакция сайта";
    	}
    	//блоггер
    	if(isset($user->roles['13']))
    	{
    		$role = ",<br />Блоггер";
    	}
    }

    Как вам такое?:)

    ikenfin, 07 Июня 2012

    Комментарии (4)
  4. JavaScript / Говнокод #10594

    +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
    function createLinks(abys_id)
    	{
    		//get current year
    		var cur_year = parseInt($("#abys_id"+abys_id).children("span").text());
    		/*
    		 *	create links hrefs
    		 */
    		var ml_block = $("#ab_month_grid > .abmg_line");
    		ml_block.each(function(num,elem)
    			{
    				var month;
    				var anchors = elem.getElementsByTagName("a");
    				for(var n=0;n<anchors.length;n++)
    				{
    					month = (n==0)?12:(n==1)?3:(n==2)?6:9;
    					(num == 1)
    					?
    						(month == 12)
    						?
    							month = 1
    						:
    							month++
    					:
    					(num == 2)
    					?
    						(month == 12)
    						?
    							month = 2
    						:
    							month+=2
    					:
    						"--empty--"
    					;
    
    					anchors[n].href = "http://some_site/archive/news/all/"+cur_year+"/"+month+"/";
    				}
    			});
    		
    	}

    Вот люблю я инлайновые условия и все тут=)
    Это callback для заполнения href у ссылок календаря архива новостей.

    ikenfin, 06 Июня 2012

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

    +65

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    /**
     *
     * @class		admin_members_members_members
     * @brief		Provides methods to deal with the members management for administrators
     */
    class admin_members_members_members extends ipsCommand
    {

    Это из форума IPB

    Arigato, 04 Июня 2012

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

    +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
    ISQ.Tools.reverseArray=function(a){
        var d=a.length;
        for(var b=0;b<a.length;++b){
    	var e=0;
    	for(var c=1;c<d;++c){
    	    var f=a[e];
    	    a[e]=a[c];
    	    a[c]=f;
    	    ++e
    	}
    	--d
        }
    };

    Все тот же автор... зачем он все это делал - ума не приложу.

    wvxvw, 01 Июня 2012

    Комментарии (4)
  7. JavaScript / Говнокод #10507

    +161

    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
    ISQ.Tools.RGBtoHex=function(c,b,a){
        return ISQ.Tools.toHex(c)+ISQ.Tools.toHex(b)+ISQ.Tools.toHex(a)
    };
    
    ISQ.Tools.RGBtoHex2=function(a){
        a=a.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
        return "#"+ISQ.Tools.toHex(a[1])+ISQ.Tools.toHex(a[2])+ISQ.Tools.toHex(a[3])
    };
    
    ISQ.Tools.toHex=function(a){
        if(typeof(a)==="string"){
    	a=parseInt(a)
        }
        if(typeof(a)!=="number"||a===0){
    	return "00"
        }
        a=Math.max(0,a);
        a=Math.min(a,255);
        a=Math.round(a);
        return "0123456789ABCDEF".charAt((a-a%16)/16)+"0123456789ABCDEF".charAt(a%16)
    };

    ОК, это последний на сегодня, просто сил нет...

    wvxvw, 31 Мая 2012

    Комментарии (4)
  8. JavaScript / Говнокод #10505

    +157

    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
    ISQ.Tools.getNumber=function(c,a){
        var d=typeof(c);
        if(typeof(c)==="number"){
    	return c
        }
        if(typeof(c)!=="string"){
    	c=c.toString()
        }
        var b;
        if(c.contains(".")){
    	b=parseFloat(c)
        }
        else
        {
    	b=parseInt(c)
        }
        if(isNaN(b)){
    	return typeof(a)==="number"?a:NaN
        }
        return b
    };

    Того же автора, что и предыдущий пост:
    Борьба идиота и динамической типизации, где в итоге динамическая типизация все же побеждает, но какой ценой...

    wvxvw, 31 Мая 2012

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

    +82

    1. 1
    bool IsClient = level == "Client" ? true : false;

    startrack, 31 Мая 2012

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

    +102

    1. 1
    return (m.Id == Id) ? (true) : (false);

    походу платят за символы

    MegaZver, 29 Мая 2012

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

    +139

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    a = 0;
    if (a == 0) {
    } else {
    b = a;
    }

    GggTtt, 23 Мая 2012

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