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

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

    +159

    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
    function build_period($crews){
    	global $start_time, $end_time, $memc;
    	cache_smens();
    	//Добавление смен и исключений
    	foreach ($crews as $k => $v){
    		$re1 = @$memc->get($v['ID']);
    		if (is_array($re1)){
    			foreach ($re1 as $v1){
    				$crews[$k]['sm'][] = $v1;
    			}
    		}
    		$re2 = get_exception($v);
    		foreach ($re2 as $v2){
    			$crews[$k]['sm'][] = $v2;
    		}
    	}
    
    	$flags = array();
    	foreach ($crews as $v){//Если есть смена
    		if (isset($v['sm'])){
    			$flags[$v['ID']] = array();
    			//Генерируем флаги
    			//Есть смена - false, иначе если эту минуту надо замерять - true
    			for ($i = $start_time; $i <= $end_time; $i = $i + (60)){
    				if (!isset($flags[$v['ID']][$i])){
    					$flags[$v['ID']][$i] = true;
    				}
    				foreach ($v['sm'] as $v1){
    					if ($i >= $v1['begin'] && $i <= $v1['end']){
    						$flags[$v['ID']][$i] = false;
    					}
    				}
    			}
    		}
    		else{
    			//Если смены нет забъем массив труями.
    			for ($i = $start_time; $i <= $end_time; $i = $i + (60)){
    				if (!isset($flags[$v['ID']][$i])){
    					$flags[$v['ID']][$i] = true;
    				}
    			}
    		}
    	}
    
    
    	$xor_per = array();
    	foreach ($flags as $k => $v){
    		$l1 = 0;
    		$l2 = 0;
    		foreach ($flags[$k] as $k1 => $v1){
    			/**
    			 * На основе флагов генерируем ключи старта - конца замера.
    			 *
    			 * Если не установлен предыдущий флаг или предыдущий флаг - смена
    			 *  и текущий флаг - True, смены нет, ставим отметку начала периода
    			 */
    			if ((!isset($flags[$k][$k1 - 60]) || !$flags[$k][$k1 - 60]) && $v1){
    				$xor_per[$k][$l1]['begin'] = $k1;
    				$l1++;
    			}
    			/**
    			 * Если следующий флаг false или неустановлен и текущий true
    			 * ставим отметку конца смены.
    			 */
    			if ((!isset($flags[$k][$k1 + 60]) || !$flags[$k][$k1 + 60]) && $v1){
    				/**
    				 * Если время в итерации равно времени конца суток
    				 *  укажем концом периода замера конец суток
    				 *  иначе нахерато добавим минуту
    				 */
    				$xor_per[$k][$l2]['end'] = $k1 == $end_time ? $end_time : $k1 + 60;
    				$l2++;
    			}
    		}
    
    		#need вкурить что я тут написал
    		if (isset($xor_per[$k])){
    			$crews[$k]['ps'] = $xor_per[$k];
    		}else{
    			//Если целые сутки смена
    			unset($crews[$k]);
    		}
    		unset($flags[$k]);
    	}
    
    	return $crews;
    }

    "Вот жопой чую, можно было сделать проще"

    Rijen, 12 Февраля 2015

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

    +57

    1. 1
    2. 2
    3. 3
    static int lowercase(const char *s) {
      return tolower(* (const unsigned char *) s);
    }

    Byte-fuck

    blackhearted, 06 Февраля 2015

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

    +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
    public static function ShowClaimsByManager($manager_id,$status,$offset_limit,$rows_limit){
            $DBH = Registry::get('DBH');
            $STH = $DBH ->prepare(
                "SELECT * FROM claims,claims_status
                 WHERE claims.manager_id = :manager_id
                 AND claims.id = claims_status.claim_id
                 AND claims_status.status = :statusc
                 LIMIT :offsetl, :rowsl" );
            $STH->bindParam(':manager_id', $manager_id, PDO::PARAM_STR);
            $STH->bindParam(':statusc', $status, PDO::PARAM_STR);
            $STH->bindParam(':offsetl', $offset_limit, PDO::PARAM_INT);
            $STH->bindParam(':rowsl', $rows_limit, PDO::PARAM_INT);
            $STH->execute();
            $result = $STH->fetchAll(PDO::FETCH_ASSOC);
            return $result;
        }

    Парень явно любит ctrl+c и ctrl+v
    про $STH->execute($data); не не слышал.

    werdan, 04 Февраля 2015

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

    +137

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    try {
    	/* ... */
    } catch (\Exception $e) {
    	@trigger_error($e->getMessage(), E_USER_WARNING);
    }

    ini_set('tsundere_mode', '1');

    Stallman, 04 Февраля 2015

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

    +72

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    try
    {
    	    tmp = stored.get( name ) != null;
    } catch (Exception e)
    {
    /***/
    }

    Умело обходим NullPointerException + свой велосипед вместо containsKey

    sakkath, 03 Февраля 2015

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

    +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
    if ($var==0 && $var3==0 && $var4==0) {
    $qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod  FROM  `psp_gen_plan_type` WHERE prod=0 ORDER BY `house_number` ASC" . $db_table_to_show)
    or die(mysql_error());	}
    elseif ($var!=0 && $var3!=0 && $var4!=0){
    $qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod  FROM  `psp_gen_plan_type` WHERE house_number='$var' AND prod=0 AND section_type='$var3' AND rooms='$var4'" . $db_table_to_show)
    or die(mysql_error());	}
    elseif ($var!=0 && $var3==0 && $var4==0){
    $qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod  FROM  `psp_gen_plan_type` WHERE house_number='$var' AND prod=0 ORDER BY `section_number_real` ASC" . $db_table_to_show)
    or die(mysql_error());	}
    elseif ($var==0 && $var3!=0 && $var4==0){
    $qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod  FROM  `psp_gen_plan_type` WHERE section_type='$var3' AND prod=0 ORDER BY `house_number` ASC" . $db_table_to_show)
    or die(mysql_error());	}
    elseif ($var==0 && $var3==0 && $var4!=0){
    $qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod  FROM  `psp_gen_plan_type` where rooms='$var4' AND prod=0 ORDER BY `house_number` ASC" . $db_table_to_show)
    or die(mysql_error());	}
    elseif ($var!=0 && $var3==0 && $var4!=0){
    $qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod  FROM  `psp_gen_plan_type` where house_number='$var' AND prod=0 AND rooms='$var4' ORDER BY `house_number` ASC" . $db_table_to_show)
    or die(mysql_error());	}
    elseif ($var!=0 && $var3!=0 && $var4==0){
    $qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod  FROM  `psp_gen_plan_type` where house_number='$var' AND prod=0 AND section_type='$var3' ORDER BY `section_number_real` ASC " . $db_table_to_show)
    or die(mysql_error());	}
    elseif ($var==0 && $var3!=0 && $var4!=0){
    $qr_result = mysql_query("SELECT type_id, image_plan, section_type, house_number, section_number_real, rooms, prod  FROM  `psp_gen_plan_type` where rooms='$var4' AND prod=0 AND section_type='$var3' ORDER BY `house_number` ASC " . $db_table_to_show)
    or die(mysql_error());	}

    Кинули сайт на доработку. Вот с таким вот фильтром.

    tin, 22 Января 2015

    Комментарии (5)
  8. bash / Говнокод #17472

    −106

    1. 1
    2. 2
    echo 1 > $SVN_PATH/KOKOKONFIG/version_info.xml
    sed -i "s/1/<version-info>\n\t<product-name>KOKOKO<\/product-name>\n\t<version-name>$PRECOMPILE_STDOUT_1<\/version-name>\n\t<release-date>$(date +"%d.%m.%y")<\/release-date>\n<\/version-info>/g" $SVN_PATH/KOKOKONFIG/version_info.xml

    Мда-с. Про echo -e не слышали.

    codemonkey, 18 Января 2015

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

    +135

    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
    public enum Minutes
    	{
    		[Description("00")]
    		Zero = 0,
    
    		[Description("05")]
    		Five = 5,
    
    		[Description("10")]
    		Ten = 10,
    
    		[Description("15")]
    		Fifteen = 15,
    
    		[Description("20")]
    		Twenty = 20,
    
    		[Description("25")]
    		TwentyFive = 25,
    
    		[Description("30")]
    		Thirty = 30,
    
    		[Description("35")]
    		ThirtyFive = 35,
    
    		[Description("40")]
    		Forty = 40,
    
    		[Description("45")]
    		FortyFive = 45,
    
    		[Description("50")]
    		Fifty = 50,
    
    		[Description("55")]
    		FiftyFive = 55,
    	}

    schecterXA, 16 Января 2015

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

    +166

    1. 1
    2. 2
    3. 3
    define("DB_YESTERDAY",date('d/m/Y', time()-172800-86400-86400-86400
    -86400-86400-86400-86400-86400-86400-86400-86400-86400-86400-86400
    -86400-86400-86400-86400-86400-86400-86400-86400-86400-86400)); //если более 2 дней подряд были выходные, валюты не показывались. Дописано "-86400"

    Дописано -86400? Забыли упомянуть, что 24 раза(

    govnokoder2, 12 Января 2015

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

    +159

    1. 1
    2. 2
    3. 3
    if((!$_SERVER["REQUEST_URI"]) || ($_SERVER["REQUEST_URI"] == "/") && !$_SESSION['user']) {$smarty->display(dirname(__FILE__).'/system/template/index.html'); exit;}
    if ($_SESSION['user']['login'] && (!$_SERVER["REQUEST_URI"]) || ($_SERVER["REQUEST_URI"] == "/")) {require './system/modules/info/main.php';$smarty->assign('c',$_SESSION['user']); $smarty->display(dirname(__FILE__).'/system/template/home/index.html');}
    if((!$_SERVER["REQUEST_URI"]) || ($_SERVER["REQUEST_URI"] == "/") && !$_SESSION['user']) {$smarty->display(dirname(__FILE__).'/system/template/home/guest.html');}

    Вот как строится новая соцсеть

    yanislavb, 04 Января 2015

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