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

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

    +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
    $access = 'ACCESS DENIED!';
    foreach ($controolers as $controller_module)
    {
    	if (strtolower($controller_) == $controller_module['controller'] || strtolower($controller_) == 'index' || strtolower($controller_) == 'login')
    	{
    		$access = '';
    		break;
    	}
    }
    if ($access == 'ACCESS DENIED!')
    {
    	echo $access;
    	exit;
    }

    ACCESS DENIED!

    roocster, 23 Февраля 2014

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

    +171

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    if($pos === false){
    $true = true;
    }
    else{
    $true = false;
    }
    if($true){ /* тут код */ }

    Просто оставлю это здесь.

    dbepcepk, 17 Февраля 2014

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

    +80

    1. 1
    2. 2
    if (!getBaseContext().getResources().getConfiguration().locale.getLanguage().equals(((ApplicationController)getApplication()).lang) )
    ((ApplicationController)getApplication()).setLocale(((ApplicationController)getApplication()).lang);

    Ехал дроид через дроид, видит дроид дроид дроид

    govnozmey, 16 Января 2014

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

    +141

    1. 1
    getElementsByTagName("body")[0].appendChild(c),frames.__bkframe.location.replace(B);}}}),e.shift(),"undefined"!=typeof r.ignoreOutsideIframe&&r.ignoreOutsideIframe===!1){e.unshift("ret=jsht"),B=A+"?"+e.join("&"),B=B.substr(0,2000);var G=document.createElement("script");G.src=B,G.type="text/javascript",document.getElementsByTagName("body").item(0).appendChild(G);}}"function"==typeof j&&j(),e=[];}}};for(var i in h){h.hasOwnProperty(i)&&(window.BKTAG[i]=h[i]);}return"function"==typeof window.bk_async&&window.setTimeout(function(){bk_async();},0),h;}),define("../src/aliases",["../src/core"],function(){window.BKTAG.addCtxParam=function(a,b){return BKTAG.addParam("phint",a,b),BKTAG;},window.BKTAG.addBkParam=function(a,b){return BKTAG.addParam("phint","__bk_"+a,b),BKTAG;},window.BKTAG.addPageCtx=window.bk_addPageCtx=window.BKTAG.addUserCtx=window.bk_addUserCtx=function(a,b){return BKTAG.addParam("phint",a,b),BKTAG;},window.BKTAG.doJSTag=window.bk_doJSTag=function(a,b,c){BKTAG.doTag(a,b,!1,null,c);},window.BKTAG.doJSTag2=window.bk_doJSTag2=function(a,b){BKTAG.doTag(a,b);},window.BKTAG.doCarsJSTag=window.bk_doCarsJSTag=function(a,b){BKTAG.doTag(a,b,!0);},window.BKTAG.doPartnerAltTag=window.bk_doPartnerAltTag=function(a,b,c){("undefined"==typeof c||null===c)&&(c=0),BKTAG.doTag(a,b,!1,c);},window.BKTAG.doCallbackTag=window.bk_doCallbackTag=function(a,b,c,d){BKTAG.doTag(a,0,!1,null,c,b,d);},window.BKTAG.doCallbackTagWithTimeOut=window.bk_doCallbackTagWithTimeOut=function(a,b,c,d,e){BKTAG.doTag(a,0,!1,null,c,b,d,e);},window.BKTAG.sendData=function(a){BKTAG.doTag(a);};}),define("mobile",["../vendor/fortyone","../vendor/json2","../src/core","../src/aliases"],function(){}),require("mobile");}();BKTAG.version="3.0.17";

    the end

    bahamot, 14 Января 2014

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

    +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
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    switch ($order[0]['filials_link_type']) {
                    case 0:
                        $this->operator_model->send_partner_mail($order_id);
                        $status = $this->operator_model->send_partner_msg($order_id);
                        foreach ($status as $value) {
                            if (!($value)) {
                                echo "Один из партнеров не получил заказ";
                                break;
                            }
                        }
                        break;
                    case 1:
                        $this->operator_model->send_partner_mail($order_id);
                        $status = $this->operator_model->send_partner_msg($order_id);
                        foreach ($status as $value) {
                            if (!($value)) {
                                echo "Один из партнеров не получил заказ";
                                break;
                            }
                        }
                        break;
                    case 2:
                        $this->operator_model->send_partner_mail($order_id);
                        $status = $this->operator_model->send_partner_msg($order_id);
                        foreach ($status as $value) {
                            if (!($value)) {
                                echo "Один из партнеров не получил заказ";
                                break;
                            }
                        }
                        break;
                    case 3:
                        $this->operator_model->send_partner_mail($order_id);
                        $status = $this->operator_model->send_partner_msg($order_id);
                        foreach ($status as $value) {
                            if (!($value)) {
                                echo "Один из партнеров не получил заказ";
                                break;
                            }
                        }
                        break;
    ...
    ...
    }

    wtf?? O.o

    ragnar, 14 Января 2014

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

    +130

    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
    foreach($filenames as $fk => $fv) {
        if($noBootStrap) {
         $pos = strpos($fv->filename, 'bootstrap');
         if($pos === false) {} else {
          continue;
         }
        }
       ...
    
        if ($fv->menulink != '') {
          $menuLinks  = explode(',', $fv->menulink);
          $isIncluded = in_array((int)$itemid, $menuLinks);
          if ($isIncluded) {
            JHtml::stylesheet($path . $fv->filename );
          }
        } else {
         JHtml::stylesheet($path . $fv->filename );
        }
     }

    @copyright Copyright (C) Jan Pavelka www.phoca.cz
    Я плакал...

    virtual_cia, 12 Января 2014

    Комментарии (8)
  8. Java / Говнокод #14258

    +70

    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
    package gargoyle.heartsong.pages.test;
    
    import gargoyle.heartsong.annotations.model.InjectDAO;
    import gargoyle.heartsong.model.UserEntity;
    import gargoyle.heartsong.services.model.i.DAO;
    
    import java.util.List;
    
    public class TestDAO2 {
    	@InjectDAO(key = Integer.class, value = UserEntity.class)
    	private DAO<Integer, UserEntity> users;
    
    	public List<UserEntity> getUsers() {
    		return this.users.all();
    	}
    }

    дай Люру в руки Tapestry, так он станет программировать на аннотациях.
    это вам уже не программирование "на стрелочках", болезнь прогрессирует.

    да, аннотация @CommitAfter оборачивает тело метода в транзакцию с коммитом и роллбэком при исключении;
    есть аннотация @Notify, которая показывает уведомление, если была ошибка, и меняет возвращаемое значение;
    по аннотациям @AdminPage строится меню админки;
    и наконец, @RolesRequired ограничивает доступ к странице.

    в итоге в классах одни собачки торчат вместо фунциональности. вот, убедитесь сами:
    https://github.com/lure0xaos/HeartSong.git

    Lure Of Chaos, 22 Декабря 2013

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

    +141

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if (connfailed) {
    			KSOCKET_CALLBACK(so, disconnected, error);
    		} else {
    			KSOCKET_CALLBACK(so, connectfailed, error);
    		}

    https://github.com/joyent/illumos-joyent/blob/master/usr/src/uts/common/fs/sockfs/socknotify.c

    myaut, 17 Декабря 2013

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

    +162

    1. 1
    eval('var pattern = /<b style="color:darkmagenta;">' + NickName + '<\\/b>/gim;');

    Да-да, так и делаю. new RegExp? Это как?

    Efog, 12 Декабря 2013

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

    −165

    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
    CREATE PROCEDURE Out_Message_ECntl 
    	--<@param1, sysname, @p1> <datatype_for_param1, , int> = <default_value_for_param1, , 0>, 
    	--<@param2, sysname, @p2> <datatype_for_param2, , int> = <default_value_for_param2, , 0>
    AS BEGIN
         --!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
            /* Для Добавления записей в таблицу PPLS2BILLS_SRCO_MESAGE
               сначала создадим временную таблицу с номерами документа
               и ко-вом рейсов по этой дате */
         --!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    -- Создаем временную таблицу с результатом группировки неотправленных рейсов
    SELECT Flag_Data , COUNT(Flag_Data) AS Kol_Reis
    INTO Vrem_Tabl_Mesage_Vrem 
    FROM PPLS2BILLS_SRCO
    WHERE Flag_Out_EC = 0 --Не отправленные
    GROUP BY  Flag_Data
    -- Таблица - Стек данные в ней сохраняются до полной обр Рейсов по месяцу
    INSERT INTO Steck_Table_Mesage SELECT
          Flag_Data = a.Flag_Data,
          Kol_Reis  = a.Kol_Reis
    FROM Vrem_Tabl_Mesage_Vrem a
    -- Удаляю Vrem_Tabl_Mesage_Vrem
    DROP Table Vrem_Tabl_Mesage_Vrem
    -- Добавляю записи в таблицу PPLS2BILLS_SRCO_MESAGE
    INSERT INTO  PPLS2BILLS_SRCO_MESAGE SELECT  
       DOCUMENT             = Flag_Data, 
       Nom_Document         = dbo.Mesage_Namber(Flag_Data),
       Kol_Reis_In_Docum    = Kol_Reis,
       Cancel_Kol_Reis_Doc  = ( SELECT COUNT(*)
                                FROM PPLS2BILLS_SRCO_DEL a INNER JOIN PPLS2BILLS_SRCO b
                                ON a.PPLS_ID = b.PPLS_ID
                                WHERE a.Flag_Out_EC = 0 and b.Flag_Out_EC = 0 ),
       Greate_Date_Docum    = GetDate(),
       Flag_Out_EC          = 0
    FROM Steck_Table_Mesage WHERE Flag_Data IS NOT NULL
    -- Корректирую записи  №_Сообщения в PPLS2BILLS_SRCO
    UPDATE a SET Flag_Mesage =
                    (SELECT MAX(Nom_Document) FROM PPLS2BILLS_SRCO_MESAGE a
                            INNER JOIN PPLS2BILLS_SRCO b
                            ON a.DOCUMENT = b.Flag_Data )                        
    FROM PPLS2BILLS_SRCO a INNER JOIN PPLS2BILLS_SRCO_MESAGE b
    ON a.Flag_Data = b.DOCUMENT
    WHERE a.Flag_Out_EC = 0
    -- ==================================================================================
    -- Курсор выбирает строки из PPLS2BILLS_SRCO_MESAGE, заполняет Vrem_Tabl_NumReis
    -- ==================================================================================
    -- Создадим временную таблицу 
    if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[Vrem_Tabl_NumReis]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
    drop table [dbo].[Vrem_Tabl_NumReis]
    
    CREATE TABLE [dbo].[Vrem_Tabl_NumReis] (
    	[ID_PPLS] [int] NULL ,
    	[Doc] [char] (8) COLLATE Ukrainian_CI_AI_KS_WS NULL ,
    	[Num] [int] NULL ,
    	[Reis] [int] IDENTITY (1, 1) NOT NULL 
    ) ON [PRIMARY]
    -- Обьявляю курсор
    DECLARE	Cursor_Num_Reis CURSOR 
    FOR SELECT DOCUMENT, Nom_Document 
               FROM PPLS2BILLS_SRCO_MESAGE
     -- Обьявляю переменные для приема полей таблицы
    DECLARE @count int, @DOCUMENT char(8),
            @Nom_Document int
    SELECT @count = 1
    -- Открываю курсор
    OPEN Cursor_Num_Reis  
    FETCH NEXT FROM Cursor_Num_Reis INTO @DOCUMENT, @Nom_Document -- считываю первую запись
    WHILE (@@fetch_status <> -1) -- цикл по записям курсора
    BEGIN	
    -- вставляю в Vrem_Tabl_NumReis (счетчик по выбранным записям)рейсы из PPLS2BILLS_SRCO_MESAGE
    insert into Vrem_Tabl_NumReis  
    select * 
    from dbo.Fun_Num_Reis_in_Mesage(@DOCUMENT,@Nom_Document)
    --корректируем номер рейса в сообщении 
    UPDATE a     
    SET Flag_NumReis_Mes = b.Reis
    FROM PPLS2BILLS_SRCO a INNER JOIN Vrem_Tabl_NumReis b
    ON a.PPLS_ID = b.ID_PPLS
    WHERE a.Flag_Out_EC = 0
    -- Подготавливаю таблицу для нового документа
    truncate table dbo.Vrem_Tabl_NumReis -- при truncate счетчик сбрасывается в 0
    	FETCH NEXT FROM Cursor_Num_Reis INTO @DOCUMENT, @Nom_Document -- переход на следующую запись
    	SELECT @count = @count + 1 -- количество записей
    END
    CLOSE Cursor_Num_Reis -- закрываю курсор
    DEALLOCATE Cursor_Num_Reis -- освобождаю курсор
    --DROP TABLE Vrem_Tabl_NumReis -- удаляю временно созданную таблицу
    END -- Procedure
    GO
    -- ВНИМАНИЕ! - ДОДЕЛАТЬ ПРИ ОТПРАВКЕ ПО ПОЧТЕ УСТ ФЛАГОВ В ТАБЛИЦАХ "ОТПРАВЛЕНО"
    -- И ЗАПОЛНЕНИЕ ТАБЛИЦЫ dbo.PPLS2BILLS_CRCO_Mail_Out
    --truncate table PPLS2BILLS_SRCO_MESAGE
    
    --delete dbo.PPLS2BILLS_SRCO
    --delete dbo.PPLS2BILLS_SRCO_DEL
    --exec dbo.Insert_PPLS2BILLS_SRCO
    --EXEC Insert_PPLS2BILLS_SRCO '17 july, 2002'
    -- exec Out_Message_ECntl

    курсор головного мозга

    bahamot, 11 Декабря 2013

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