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

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

    +153

    1. 1
    $rec_area=sql2arr2('select om,alr from omolog where omvis=1');

    названия полей и таблицы

    govnomes, 14 Февраля 2014

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

    +155

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    var partner_id = location.href;
            //Определить значение четвертого сегмента
            var i = 1;
            while (i <= 5) {
                partner_id = partner_id.substr(partner_id.indexOf('/') + 1);
                i++;
            }
            var pos = partner_id.indexOf('/');
            if (pos > 0) {
                partner_id = partner_id.substr(0, pos);
            }

    Урлопарсинг от Папке.

    ragnar, 27 Января 2014

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

    +127

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    // ------- CLICKING STUFF IN CONTAINERS -------
    	if ((!( src in usr.contents ) && (((!( isturf(src) ) && (!( isturf(src.loc) ) && (src.loc && !( isturf(src.loc.loc) )))) || !( isturf(usr.loc) )) && (src.loc != usr.loc && (!( istype(src, /obj/screen) ) && !( usr.contents.Find(src.loc) ))))))
    		if (istype(usr, /mob/living/silicon/ai))
    			var/mob/living/silicon/ai/ai = usr
    			if (ai.control_disabled || ai.malfhacking)
    				return
    		else
    			return

    Взято из кода обработки нажатия одной опенсорсной онлайн-игрушки. Зачем, за что и почему?

    ACCount, 27 Января 2014

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

    +121

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    //if they're locked out or banned die
    if ( ( $bwpsoptions['id_enabled'] == 1 ||$bwpsoptions['ll_enabled'] == 1 ) && $this->checklock( $current_user->user_login ) ) {
    
    	wp_clear_auth_cookie();
        @header( 'HTTP/1.0 418 I\'m a teapot' );
        @header( 'Cache-Control: no-cache, must-revalidate' ); 
        @header( 'Expires: Thu, 22 Jun 1978 00:28:00 GMT' );
        die( __( 'error', $this->hook ) );
    
    }

    https://plugins.trac.wordpress.org/browser/better-wp-security/trunk/inc/secure.php#L925

    someone, 24 Января 2014

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

    +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
    19. 19
    if (xmasCard.isTablet)
            {
                if (xmasCard.orient === "portrait")
                {
                    addPositionItems = 2;
                    if (myX === 0)
                    {
                        myX = (window.innerWidth - parseInt($("#snowManNaked").css("width").split("px")[0])) / 2;
                    }
                }
                else if (xmasCard.orient === "landscape")
                {
                    addPositionItems = 1.1933174224343675417661097852029;
                    if (myX === 0)
                    {
                        myX = (window.innerWidth - parseInt($("#snowManNaked").css("width").split("px")[0])) / 2;
                    }
                }
            }

    Код от колумбийских аутсорсеров. На вопрос "а что это за волшебное число такое" был дан ответ - "more numbers you put more precise it gets on all screens".

    cahbtexhuk, 09 Января 2014

    Комментарии (3)
  7. Куча / Говнокод #14324

    +125

    1. 1
    2. 2
    3. 3
    @ECHO OFF
    VESAINF %1
    PAUSE

    Фикс к программе на ассемблере с исходным кодом.
    http://masm32.com/board/index.php?topic=2727.msg29659#msg29659

    LispGovno, 07 Января 2014

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

    −167

    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
    -- =============================================
    --          Create procedure basic template
    -- Предназначена - проставить номер идентичного счета по данной АК
    -- =============================================
    
    CREATE PROCEDURE Num_List_of_Flights
    	
    AS
    -- Результаты группировки - Временная таблица
    SELECT DISTINCT List_of_Flights, Count(List_of_Flights) AS Kol_fo_Flights
    INTO Vrem_Table_Flights
    FROM PPLS2BILLS_OBUF a
    WHERE Flag_Bill=0 and  List_of_Flights Is not Null
    GROUP BY List_of_Flights
    -- Копирую перечень сфомированных счетов в Steck_Table_Flights
    INSERT INTO Steck_Table_Flights 
    SELECT    
      List_of_Flights = S.List_of_Flights,
      Kol_fo_Flights  = S.Kol_fo_Flights 
    FROM dbo.Vrem_Table_Flights AS S
    
    -- Удаляю временную таблицу
    DROP TABLE Vrem_Table_Flights
    
    -- Создаю временную таблицу группировки по счетам (сколько одинаковых счетов )
    SELECT DISTINCT List_of_Flights, Count(List_of_Flights) AS Kol_Flights
    INTO Vrem_Steck_Table_Flights
    FROM Steck_Table_Flights
    GROUP BY List_of_Flights
    
    -- Корректирую номера Flights  и Сбрасываю флаг Flag_Bill в 1 (как обработано)
    UPDATE a
    SET Num_Flights  = b.Kol_Flights,
        Flag_Bill    = 1
    FROM PPLS2BILLS_OBUF a INNER JOIN Vrem_Steck_Table_Flights b
                  ON a.List_of_Flights = b.List_of_Flights
    WHERE Flag_Bill = 0
    -- Удаляю временную таблицу Vrem_Steck_Table_Flights
    DROP TABLE  Vrem_Steck_Table_Flights
    
    GO
    
    -- EXEC Num_List_of_Flights

    никому нельзя верить, а особенно собственным группировкам

    bahamot, 29 Декабря 2013

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

    +153

    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
    <?php
    namespace Custom\Entity;
    
    class slideshow{
        const IBLOCK_ID = SLIDER_ON_INDEX_IBLOCK_ID;
    
        static function getLabel($type){
            $label = "";
            switch($type){
                case NEW_OF_DAY_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
                    $label = '<img class="sticker news_of_day" src="/static/img/labels/news_of_day_l.png"><img class="sticker news_of_day_r" src="/static/img/labels/news_of_day_r.png">';
                    break;
                case HOT_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
                    $label = '<img class="sticker hot infoBlock rsABlock rsNoDrag" src="/static/img/labels/hot.png">';
                    break;
                case SLUH_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
                    $label = '<img class="sticker infoBlock infoBlockLeftBlack rsABlock rsNoDrag" src="/static/img/labels/gossip.png">';
                    break;
                case ITEM_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
                    $label = '<img class="sticker thing_of_week infoBlock rsABlock rsNoDrag" src="/static/img/labels/thing_of_week.png">';
                    break;
                case POPULAR_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
                    $label = '<img class="sticker most_popular infoBlock rsABlock rsNoDrag" src="/static/img/labels/most_popular.png">';
                    break;
                case CHOOSE_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
                    $label = '<img class="sticker editors_choice infoBlock" src="/static/img/labels/editors_choice.png">';
                    break;
                case BEST_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
                    $label = '<img class="sticker the_best infoBlock rsABlock rsNoDrag" src="/static/img/labels/the_best.png">';
                    break;
                case NEW_ENUM_ID_PROPERTY_MAIN_ARTICLES_IBLOCK_ID:
                    $label = '<img class="sticker new infoBlock rsABlock rsNoDrag" src="/static/img/labels/new.png">';
                    break;
            }
            return $label;
        }
    }
    ?>

    И еще один замечательный пример ChinaCode от "грамотных разработчиков на битриксе, которые знают неймспейсы". Особенно порадовал css-класс rsNoDrag, хотя по большому счету надо было бы данный класс назвать "NoDrugs" и взять на вооружение данным "пейсателям".

    sturm, 26 Декабря 2013

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

    +162

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    $.validator.addMethod("phoneNumber",
            function(value, element) {
                 var letterNumber = /^[a-zA-Z]+$/;
                if (value.match(letterNumber)) {
                    return false;
                }
    
                var phoneString = value.replace(/\D/g, '');
                return phoneString.length == 0 || phoneString.length >= 11;
            });

    данная кучка "валидировала" телефонный номер

    Tessen, 13 Декабря 2013

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

    +148

    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
    <?php
    
    /* Почему статические методы — говно */
    
    abstract class BaseNewsPeer {
    …
    	/**
    	 * Method to select one object from the DB.
    	 *
    	 * @param      Criteria $criteria object used to create the SELECT statement.
    	 * @param      PropelPDO $con
    	 * @return     News
    	 * @throws     PropelException Any exceptions caught during processing will be
    	 *		 rethrown wrapped into a PropelException.
    	 */
    	public static function doSelectOne(Criteria $criteria, PropelPDO $con = null)
    	{
    		$critcopy = clone $criteria;
    		$critcopy->setLimit(1);
    		$objects = NewsPeer::doSelect($critcopy, $con);
    		if ($objects) {
    			return $objects[0];
    		}
    		return null;
    	}
    …
    
    class NewsPeer extends BaseNewsPeer
    {
    	…
    }

    kix, 13 Декабря 2013

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