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

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

    −86

    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
    def MonthsListGen(*args, **kwargs):
    	from datetime import datetime
    
    	if kwargs.has_key('month') and kwargs.has_key('year'):
    		return "%s-%s"%(kwargs['year'], "0%d"%kwargs['month'] if kwargs['month']<10 else str(kwargs['month']))
    
    	if kwargs.has_key('date'): return MonthsListGen(year = kwargs['date'].year, month = kwargs['date'].month)
    
    	if kwargs.has_key('decodeName'): return MONTH_NAMES[int(kwargs['decodeName'].split('-')[1])]
    	if kwargs.has_key('decodeYear'): return int(kwargs['decodeYear'].split('-')[0])
    	if kwargs.has_key('startDate') and kwargs.has_key('endDate'):
    		startDate = kwargs['startDate']
    		endDate = kwargs['endDate']
    		monthList = []
    		if startDate.year < endDate.year:
    			startDate1 = startDate
    			endDate1 = datetime.strptime('%d.%d.%d'%(DAYS_IN_MONTH[12], 12, startDate1.year) , '%d.%m.%Y')
    			monthList = MonthsListGen(startDate = startDate1, endDate = endDate1)
    
    			startDate2 = datetime.strptime('%d.%d.%d'%(1, 1, startDate1.year+1) , '%d.%m.%Y')
    			endDate2 = endDate
    			monthList += MonthsListGen(startDate = startDate2, endDate = endDate2)
    			return monthList
    		if startDate.year == endDate.year:
    			monthRange = range(startDate.month, endDate.month+1)
    			year = startDate.year
    			for monthNo in monthRange:
    				monthList.append(MonthsListGen(year = year, month = monthNo))
    			return monthList
    	return False

    Вместо того, чтобы писать несколько разных функций, решил сделать одну, которая почти во всех случаях вызывает сама себя с разными параметрами.

    hakimovis, 10 Августа 2011

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

    +158

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    $max = 150;
    
    $dlja_poiska = explode(' ', $_GET['name']);
    $num = count($dlja_poiska);
    
    if ( $num > $max ) $num = $max;
    $qPart = '';
    
    foreach( $dlja_poiska as $param )
       $qPart .= ' AND (system_menu_paragraph.name RLIKE \''.addslashes().'\') ';
    
    // далее запрос к база без mysql_real_escape_string()

    http://forum.codeby.net/topic42345.html -- чел с завышенной самооценкой...
    Код писал я исходя из найденой дырки на сайте
    Вот url на скрипт из которого вы можете догадаться что код его действительно примерно такой...
    http://alexanderc.org/uploads/scripts/expl.php

    AlexanderC, 06 Августа 2011

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

    +179

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    jQuery.atmosphere.request.transport = 'polling';
    if (jQuery.atmosphere.request.transport != 'websocket') {
    	jQuery.atmosphere.executeRequest();
    } else if (jQuery.atmosphere.request.transport == 'websocket') {
    	// ..
    }

    Сразу удар по двум яйцам.
    Сначала говорим, что transport = 'polling', а потом проверяем, не равен ли он случайно 'websocket'
    Второй удар - обычный else использовать, видимо, было не прикольно. Или у транспорта кроме "равен websocket" и "не равен websocket" может быть третье состояние? ;)

    Код актуальный и на данный момент присутствует в официальном репозитории, пруф: https://github.com/jfarcand/atmosphere/blob/master/modules/jquery/src/main/webapp/jquery/jquery.atmosphere.js#L493-503

    пс. А мы на работе удивляемся, почему 'websocket' у них не работает)

    Shock, 03 Августа 2011

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

    +162

    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
    /**
         * Xml Request
         *
         * @param int $hotel_id
         * @param int $hotel_id
         * @param int $hotel_id
         * @return array $cc_type of
         */
    public function XmlStringForBokingFactura($transaction_id, $block, $begin_date, $end_date, $hotel_code, $guest_qty, $smoking, $cc_number, $cc_cardholder, $cc_type, $cc_expiration_date, $cc_cvc, $NameBooker, $LastNameBooker, $guestLastname, $guest_city, $guest_country, $guest_telephone, $email, $additionalEmail, $fake=1, $affiliate_id, $affiliate_pswd, $is_hash = null, $arrival_time, $dialog) {
        ...
        ...
        ...
        $mail = new MailMime($build_params);
        $mail->setHeader($from_email, $subject, array('charset' => 'UTF-8'));
        $mail->setTXTBody($url);
        $mail->setHTMLBody($url);
        $mail->send($to);
        $mail->setHeader($from_email, $subject, array('charset' => 'UTF-8'));
        $mail->setTXTBody($data);
        $mail->setHTMLBody($data);
        $mail->send($to2);
    
        ...
    }

    переменные $to и $to2 нигде в функции никак не объявляются. да и вообще функция шикарная.

    shmaltorhbooks, 03 Августа 2011

    Комментарии (13)
  6. Куча / Говнокод #7405

    +124

    1. 1
    .signup-block { display: clock }

    random2, 01 Августа 2011

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

    +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
    if ($ID>0)
    		{
    			if (!CSaleOrderProps::Update($ID, $arFields))
    				$strError .= GetMessage("ERROR_EDIT_PROP")."<br>";
    
    			if (strlen($strError)<=0)
    			{
    				$db_order_props_tmp = CSaleOrderPropsValue::GetList(($b="NAME"), ($o="ASC"), Array("ORDER_PROPS_ID"=>$ID));
    				while ($ar_order_props_tmp = $db_order_props_tmp->Fetch())
    				{
    					CSaleOrderPropsValue::Update($ar_order_props_tmp["ID"], array("CODE"=>(strlen($CODE)<=0 ? False : $CODE)));
    				}
    			}
    		}
    		else
    		{
    			$ID = CSaleOrderProps::Add($arFields);
    			if ($ID<=0)  //  <=> if (true)
    				$strError .= GetMessage("ERROR_ADD_PROP")."<br>";
    		}

    Код ядра битрикса)

    sleeper, 19 Июля 2011

    Комментарии (13)
  8. SQL / Говнокод #7282

    −852

    1. 1
    2. 2
    3. 3
    ...
    trunc(to_date('01.'||to_char(:P_DATE,'mm.yyyy'),'dd.mm.yyyy'),'dd')
    ...

    так пишут некоторые наши программистки - женщины старой закалки

    RomaShka, 19 Июля 2011

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

    +174

    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
    // привет помоги почему скрипт не работает? он делает лоадер загрузки страницы а потом когда уже все загружено то скрипты подключает
    
    if($(document).ready(function(){return "true";})) {
    $(document).ready(function(){//
    $('div:eq(32)').addClass('LOADED'"+);
    $('body').removeClass('LOADIING');
    $("head").html(+$("head").html()+"+<script type=text/javascript src=../jquery.1.6.min.js></script>"+");
    $(function(){
    if(typeof jquery===function && typeof $===typeof jquery){$.get('/load/0-0-0-0-17',function(DATA){
    if(data){
    if(data!=undefined){
    $("div:contains('Друзья')").html($("[id*=entry]", DATA).append("true"))}}
    })} 
    })
    })
    } else {alert("ОШИБКА ЗАГРУЗКИ СТРАНИЦЫ!"+\n")}

    Йобаннаврот!

    stuffort, 06 Июля 2011

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

    +161

    1. 1
    2. 2
    3. 3
    function returnFalse() {
    	return false;
    }

    VIA, 30 Июня 2011

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

    +154

    1. 1
    setcookie("password",$password,time()+94555556)

    Супер!

    substr, 29 Июня 2011

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