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

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

    +148

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function proton_username( $object ) {
      if( $object->uid && $object->name ) {
        $name = ( drupal_strlen( $object->name ) > 20 ) ? drupal_substr( $object->name, 0, 15 ) . '...' : $object->name;
        $output = ( user_access( 'access user profiles' ) ) ? l( $name, 'pathTo/'. $object->uid, array() ) : ( ( $name === 'HideMe' ) ? '<a title="myNameIsNotAname" href="/pathTo" rel="hiddenMan">Fake Face</a>' : check_plain( $name ) );
    
      }

    Защита личной жизни

    Stealth, 09 Августа 2013

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

    +154

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    $birthDate = "".($_POST['birthday'])."";
             //explode the date to get month, day and year
                       $birthDate = explode("/", $birthDate);
       
             //get age from date or birthdate
             $age = (date("md", date("U", mktime(0, 0, 0, $birthDate[0], $birthDate[1], $birthDate[2]))) > date("md") ? ((date("Y")-$birthDate[2])-1):(date("Y")-$birthDate[2]));

    узнайСвойВозраст,%userName%

    nonamez, 09 Августа 2013

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

    +144

    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
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    98. 98
    (function() {
    	var appBase = function( appId ) {
     		appId = appId || Math.floor( Math.random() * ( 1000 - 1 ) + 1 );
     		this.stack = {
     			methods: [ ],  extends: { },
     			init: function( cfg ) {
     				this.creator( cfg );
    				this.bootstrap();
     			},
    			bootstrap: function() {
    				this.methods.init = null;
    				var param = new Object();
     				param.app = this.methods, 
    				param.opt = this.setup;
    				param.__proto__ = null;
    				for( var i in this.setup.inits ) {
    					this.methods[ this.setup.inits[i] ].apply( param );
    				};	
    			},
    			creator: function( cfg ) {
    				for( var mtd in cfg ) {
     					var flag = cfg[ mtd ].options[ 1 ] || null,
    						name = cfg[ mtd ].options[ 0 ] + "",
    						func = cfg[ mtd ].func;
    					this.methods[ name ] = func;
    					this.methods[ name ].name = name;
    					if( flag ) {
     					flag = flag.split('|');
    						if( flag[0] ) {
    							switch( flag[0] ) {
    								case 'init': this.setup.inits.push( name ); break;
    								case 'defer': 
    									this.setup.defer.push( name );
    									this.setupTimer( [ flag[ 1 ], name, flag[ 2 ] - 0 ] );
    								break;
    							};
    						};
    					};
    				};
    			},
    			setupTimer: function( opt ) {
     				var tf = this.setup.timer[ opt[1] ],
    					tt = this.methods[ opt[1] ],
    					tm = opt[ 2 ] || 500;
     				switch( opt[0] ) {
    					case 'interval': tf = setInterval( tt, tm ); break; 
    					case 'timeout':  tf = setTimeout( tt, tm ); break;
    				};
     
    			},
    			flushTimer: function( id ) {
    				clearInterval( this.setup.defer[ id ] );
    				console.log( 'Interval '+ id +' Stoped!');
    			},
    			setup: {
    				appId: 'BiO Kernel' + appId, param: [ ], inits: [ ], defer: [ ],timer: [ ], flags: { }
    			}
    		};
    		this.stack.__proto__ = null; this.__proto__ = null;
    	};
    		var application = new appBase();
    		var	app = application.stack;
    		var cfg = [
    			{ 
    				func: function() {
    					console.log( 'RUN [mtd_1] AT [init stage] => force [mtd_3]' );
    					this.app['mtd_3'].apply(this);
    				},
    				options: [ 'mtd_1' , 'init' ]
    			},
    			{ 
    				func: function() {
    					console.log( 'RUN [mtd_2] AT [init stage]' );
    				},
    				options: [ 'mtd_2' , 'init' ]
    			},
    			{ 
    				func: function() {
     
    					console.log( 'RUN [mtd_3] BY [mtd_1] FROM [init stage]' );
    				},
    				options: [ 'mtd_3' ]
    			},
    			{ 
    				func: function() {
    					console.log( 'run defered method #1 in timeout' );
    				},
    				options: [ 'deferedMethod_1', 'defer|timeout|8500' ]
    			},
    			{ 
    				func: function( ) {
    					console.log( 'run defered method #2 in interval' );
    				},
    				options: [ 'deferedMethod_2', 'defer|interval|500' ]
    			},
    		];
    		app.init( cfg, true ); 
    })();

    Съебаться из страны не получилось ): Оно не взламывалось вообще ... лимон так и не дали, а в жопу выебали через кого-то.

    Stealth, 09 Августа 2013

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

    +144

    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
    $( '.video', tl ).each( function() {
    
                        if( this.id !== target ) {
                            
                            // get other objects props
                            var snaper = $(this);
                            var left   = getLeft( snaper );
                            var swidth = snaper.width();
    
                            // calculate snap positions
                            var leftSpan  = left + swidth;
                            var rightSnap = cPos + swidth; 
    
                            // if snap performed
                            if( cPos === leftSpan || rightSnap === left ) { 
                                
                                var mouse = getMouse( event, floater ); 
                                var shift = 5;                           
    
                                // if cursor goes out snaped object
                                if( shift === ( -1 * mouse ) || mouse === shift + swidth ) {   
    
                            
                                // difference in sizes
                                var diff = ( (fwidth - swidth) > 0 ) ? fwidth - swidth : swidth - fwidth;
    
                                    // setup new positions
                                    var fl = getLeft( floater );
                                    var sl = getLeft( snaper );
    
                                    // fix smaller position 
                                    if( fwidth > swidth ) {
                                        fl += diff;  
                                    } else {
                                        sl += diff;
                                    }
    
                                    // apply overlay to prevent blinking "dragable"
                                    var overlay = $('<div id="overlay"></div>');
                                    $('body').append(overlay);
                                    $('#overlay').focus();
       
                                    // reverse animation dock object
                                    snaper.animate({'left': fl}, 1000);
    
                                    // reverse animation floater
                                    floater.animate({'left': sl}, 1000,
                                    function(){
                                        // unset overlay
                                        $('#overlay').remove();
                                        // return focus to floater object
                                        floater.focus();
                                    });
    
    
                                }                                                             
    
                            }                     
                        }
    
                    });

    Обозвали лисповским червяком … Че сделать с плавной геометрической инверсией?

    Stealth, 08 Августа 2013

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

    +12

    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
    void FileCreate(const char *name)
    {
    	ofstream F;
    	F.open(name); // Create file 
    	F.close(); //close the file
    }
    
    void InputProduct(Product &b) //function for entering product
    {
    	char c; int i=0;
    
    	cout<<"Input name of product \n"; 
    	// enter the string until you meet the character \n or EOF or until a limit is the number of symbols
    	for ( i=0; i<l_name && (c = getchar())!= EOF && c!='\n';++i ) 
    		b.name[i] = c ; 
    	b.name[i]='\0'; // at the end of the line write the terminating line \0
    
        // rest of code ...
    }

    Студенты такие студенты ...

    denis90, 03 Августа 2013

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

    +151

    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
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    98. 98
    99. 99
    <?php
    class user {
    	var $logined=false;
    	var $information;
    	var $err_code=0;
    	var $err_arr;
    	var $cookie_time=2592000;
    	var $_db;
    	var $no_profile_photo="/assets/img/no_profile_photo.jpg";
    	var $friends_list=array();
    	var $friends_list_to=array();
    	var $friends_list_from=array();
    	//RewriteRule ^(.*)profile_photo.jpg$ assets/img/no_profile_photo.jpg [L]
    
    	function db($_db){
    	$this->_db=$_db;
    	}
    
    	function set_err_txts(){
    		$this->err_arr[0]="";
    		$this->err_arr[1]="login preg";
    		$this->err_arr[2]="no such login in db";
    		$this->err_arr[3]="wrong pass";
    		$this->err_arr[4]="";
    	}
    
    	function auth($login,$pass,$md5=false){
    	if(!($login)) {return false;}
    	////////////////////////////////////
    	$this->set_err_txts();
    	$cookie_time=time()+$this->cookie_time;
    	/////////////////////////////
    	if(!(preg_match("/^[a-z0-9_-]+$/i",$login))) 
    	{$this->err_code=1; return false;}
    	////////////////////////////////////////////////////////////
    	$sql="select id, login, salt from users where login='".$login."'";
    	$res=mysql_query($sql,$this->_db);
    	//echo $sql; echo var_dump($this->_db); echo var_dump($res);
    	if(!($item=mysql_fetch_array($res)))
    	{$this->err_code=2; return false;}
    	///
    	$id=$item['id'];
    	$salt=$item['salt'];
    	////////////////////////////////////////////////////////////
    	if(!($md5)){ $pass=$this->code_pass($pass,$salt); }
    	////////////////////////////////////////////////////////////////
    	$sql="select * from users where (login='".$login."') and (pass='".$pass."')";
    	$res=mysql_query($sql,$this->_db);
    	//echo $sql; echo var_dump($this->_db); echo var_dump($res);
    	if(!($item=mysql_fetch_array($res)))
    	{$this->err_code=3; return false;}
    	/////////////////////////////////////////////////////////////
    	setcookie("login", $login, $cookie_time,"/"); 
    	setcookie("pass", $pass, $cookie_time,"/");
    	$sql="update users set visit_time=".time()." where id='".$id."'";
    	mysql_query($sql,$this->_db);
    	$this->information=$item;
    	$this->logined=true;
    	////////////////////////////////////////////////////////////////
    	$sql="
    	select users_params.name, users_params_values.value 
    	from users_params, users_params_values 
    	where 
    	(users_params_values.user_id='".$id."') 
    	and 
    	(users_params_values.param_id=users_params.id)";
    		$res=mysql_query($sql,$this->_db);
    		while($item=mysql_fetch_row($res)){
    		$this->information[$item[0]]=$item[1];
    	}
    	$this->information["folder"]="/profiles/".substr($login,0,1)."/".$login."/";
    	$this->information["profile_photo"]=$this->information["folder"]."profile_photo.jpg";
    	$this->create_friends_list();
    	return true;
    	}
    	
    	function get_info_by_id($target_user_id){
    	$sql="select id, login, visit_time from users where id='".$target_user_id."'";
    	$res=mysql_query($sql,$this->_db);
    	$item=mysql_fetch_array($res);
    	$login=$item['login'];
    	$this->information["login"]=$login;
    	$this->information["visit_time"]=$item['visit_time'];
    	$this->information["id"]=$item['id'];
    	$sql="
    	select users_params.name, users_params_values.value 
    	from users_params, users_params_values 
    	where 
    	(users_params_values.user_id='".$target_user_id."') 
    	and 
    	(users_params_values.param_id=users_params.id)";
    		$res=mysql_query($sql,$this->_db);
    		while($item=mysql_fetch_row($res)){
    		$this->information[$item[0]]=$item[1];
    	}
    	$this->information["folder"]="/profiles/".substr($login,0,1)."/".$login."/";
    	$this->information["profile_photo"]=$this->information["folder"]."profile_photo.jpg";
    	}
    	.... over 9000 ....

    Понос

    Govnisti_Diavol, 02 Августа 2013

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

    +141

    1. 1
    Error::add('Thank you!', 'info');

    Использование класса ошибок для простых уведомлений...

    killro0000, 01 Августа 2013

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

    +149

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    где-то в коде:
                  /* коментарий №1 (см внизу)*/
    
    в самом конце файла:
    //----------------------------------------------- Старые куски кода -----------------------------------------------------------------------------
    // №1
    /*   
    тут простыня кода на 2 экрана
    */

    управление версиями, чо

    clauclauclau, 01 Августа 2013

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

    +9

    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
    /*
    ======================================                                 
    Returns 1 (true) if the this block of the board is empty, 0 if it is filled
     
    Parameters:
     
    >> pX:        Horizontal position in blocks
    >> pY:        Vertical position in blocks
    ======================================
    */
    bool Board::IsFreeBlock (int pX, int pY)
    {
        if (mBoard [pX][pY] == POS_FREE) return true; else return false;
    }

    http://javilop.com/gamedev/tetris-tutorial-in-c-platform-independent-focused-in-game-logic-for-beginners/

    Ну вот кто их этому учит?

    denis90, 17 Июля 2013

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

    +129

    1. 1
    2. 2
    [ThreadStatic]
    private static SqlConnection _connection;

    Всё самое худшее, что только можно додумать к этим двум строчкам, в наличии.

    dormendo, 11 Июля 2013

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