1. Java / Говнокод #7993

    +73

    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
    final QOrder qSub = new QOrder("qSub");
    final Predicate[] filters = getFilters(qSub, null, null);
    		
    if (filters.length > 0) {
    	// conditions.add(Arrays.asList(filters));   // Do not do this. 
    		
    	// The subquery is here so that MySQL doesn't use the wrong index for
    	// ORDER BY... LIMIT if we directly add the filter by custid/custdept
    	// to the list of filters, which will make the search very slow.
    	// Well, perhaps an ugly workaround, and we might want to adjust
    	// the custid/custdept index in the future... somehow.
    	conditions.add(q.id.in(QueryDsl.subFrom(qSub).where(filters).list(qSub.id)));
    }

    Обход косяков конкретной СУБД на уровне ORM. Абстракция, что и говорить.

    lucidfox, 27 Сентября 2011

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

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    // если пользователь зашел на www.site.ru,
      // удаляем его куки и перенаправляем с www.site.ru на site.ru
      // (чтобы куку всегда ставить только на домене третьего уровня)
      if (stristr($_SERVER["HTTP_HOST"], 'www.site.ru')) {
        setcookie("cookie1", "", time() - 3600);
        setcookie("cookie1", "", time() - 3600);
        header("Location: http://site.ru/" . $query_string);
        die();
      }

    Нашел в очень старых скриптах. Комменты сохранены.
    Доменное имя сайта изменено, названия кук изменены, любые совпадения являются случайными.

    Nemoden, 27 Сентября 2011

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

    +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
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    <?
    $thePrice = $iblockelem[ "PROPERTIES" ][ "PRICE" ][ "VALUE" ];
    $thePrice_s = '';
    if(strlen(trim($thePrice))>3)
    {
    	$priceArray = str_split($thePrice);
    	$priceArray = array_reverse($priceArray);
    	for($i = 1; $i <= count($priceArray); $i++)
    	{
    		$thePrice_s.=$priceArray[$i-1];
    		if(($i%3)==0)
    			$thePrice_s.=' ';
    	}
    	$thePrice = str_split($thePrice_s);
    }
    echo rtrim(ltrim(implode(array_reverse($thePrice))))
    
    ?>

    <?=number_format($thePrice,0,"."," ")?>

    fon-neiman, 27 Сентября 2011

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

    +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
    // ==UserScript==
    // @name	govnokod.ru new comments mark
    // @namespace	('__'X)
    // @description	govnokod.ru new comments mark for Ctrl+F
    // @include	http://*.govnokod.ru/*
    // @include	http://govnokod.ru/*
    // ==/UserScript==
    
    function addNewMark()
    {
    var	i, d = document.getElementsByTagName('div');
    	for (i in d) if (d[i].className == 'entry-comment-wrapper new')
    	{
    		d[i].getElementsByTagName('p')[0].getElementsByTagName('a')[1].innerHTML += 'new';
    	}
    }
    
    if (location.hostname.match(/govnokod\.ru$/))
    {
    	if (document.addEventListener)
    	{
    		document.addEventListener('DOMContentLoaded', addNewMark(), false);
    	} else {
    		window.addEventListener('load', addNewMark(), false);
    	}
    }
    //* OR
    //* 1) Copypaste into browser @field: javascript:var i,d=document.getElementsByTagName('div');for(i in d)if(d[i].className=='entry-comment-wrapper new')d[i].getElementsByTagName('p')[0].getElementsByTagName('a')[1].innerHTML+='new';void(0);
    //* 2) Ctrl+F for '#new'

    Накидал только что. Помечает новые посты меткой "#new", можно контролэфить.
    Работает только для страниц отдельных ГК, в том числе из мусорки.
    Треды до полсотни комментов можно и так оглядеть, если больше - открываю отдельно.
    Но всё равно стоит добавить фичу на стороне сервера.

    ej, 26 Сентября 2011

    Комментарии (27)
  5. Ruby / Говнокод #7989

    −107

    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
    while 2 > 1 do
    			@command = io.gets();
    			case @command 
    				when 'version' 
    					puts('0.01 Alpha for developers SUPIRPUPIRSIKRIT');
    				when 'register, #{@arg}'
    					@name = @arg;
    					@name = User.new;
    					@name.register;
    					@name = '';
    					@arg ='';
    				when 'login, arg '
    					@user = @arg;
    					@user.login;
    					@user = '';
    				when 'quit'
    					server.shutdown;
    				else
    					puts(@command);
    			end 
    		end

    Извиняюсь за мультипост.
    P.S.: как здесь удалять посты?

    urm, 26 Сентября 2011

    Комментарии (10)
  6. Ruby / Говнокод #7988

    −103

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    @name = @arg;
    @name = User.new;
    @name.register;
    @name = '';
    @arg ='';
    @user = @arg;
    @user.login;
    @user = '';

    Вырезан наиболее эпичный фрагмент кода

    urm, 26 Сентября 2011

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

    +170

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    public function getAvailabelWebsites() {
        return $this->_w();
    }
    public function getAvailavelWebsites() {
        return $this->_w();
    }

    Модуль LightCheckout для Magento за скромные $169.00 .
    К сожалению, слово "available" так и не смогли написать правильно:)

    Doglexx, 26 Сентября 2011

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

    −152

    1. 1
    2. 2
    Пока 2*2=4 Цикл
    ...

    Улыбнуло. Не помню, в какой то чей то нетленке видел...

    F00FC7C8, 26 Сентября 2011

    Комментарии (14)
  9. PHP / Говнокод #7985

    +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
    if (is_dir($mainDir))
    {
    	if ($dh = opendir($mainDir))
    		{
    		    while (($file = readdir($dh)) !== false)
    			{
    				if ( ($file!='.') && ($file!='..') ) $regions.=$file.',';
    			}
    			closedir($dh);
    		}
    }
    $regions = substr($regions, 0, -1);
    $arrRegions = explode(",", $regions);

    сразу пихать в массив файлы не судьба! надо изврат с строками

    Rubaka, 26 Сентября 2011

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

    +164

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    $rsAnswers = CFormAnswer::GetList( $QUESTION_ID, $by="s_id", $order="desc", $arFilter, $is_filtered ); 
    $z = 0; 
    while ($arAnswer = $rsAnswers->Fetch()) 
    { 
    	$z = 1; 
    } 
    
    if ($z == 1) {

    Когда там накопилось 100500 элементов сайт ВНЕЗАПНО начал лагать...

    Tairesh, 26 Сентября 2011

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