1. PHP / Говнокод #11369

    +52

    1. 1
    2. 2
    define(ADS_ACTIVE_TIME, '+1 month');
    $active = date('d.m.Y H:i:s', strtotime(ADS_ACTIVE_TIME, strtotime(date('d.m.Y H:i:s'))));

    Коммерческий проект. Про time() мы не слышали, похоже...

    twsdwf, 06 Июля 2012

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

    +26

    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
    input >> heap;
    	while( heap[0] == '0' ) heap.erase( 0, 1 );
    
    	heaps.push_back( heap );
    
    	input >> heap;
    	while( heap[0] == '0' ) heap.erase( 0, 1 );
    
    	heaps.push_back( heap );
    
    	input >> heap;
    	while( heap[0] == '0' ) heap.erase( 0, 1 );
    
    	heaps.push_back( heap );

    Fai, 05 Июля 2012

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

    +21

    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
    template <typename T> 
    void sort( T array[], size_t length ) {
    	size_t left_index = 0;
    	size_t right_index = length - 1;
    
    	while ( left_index < right_index ) {
    		size_t min_index = min( array, left_index, right_index );
    		swap( array, min_index, left_index );
    
    		size_t max_index = max( array, left_index, right_index );
    		swap( array, max_index, right_index );
    
    		left_index++;
    		right_index--;
    	}
    }

    Fai, 05 Июля 2012

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

    −125

    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 ($f_ISSUE_DATE !~ /^\d\d.\d\d.\d\d\d\d/ && $f_ISSUE_DATE){
                    $e_ISSUE_DATE = 'Дата выдачи паспорта вводится в формате "ДД.ММ.ГГГГ"';
                    $errorCounter ++;
            }
            if ($f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(ул\.)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(бул\.)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(наб\.)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(пер\.)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(пл\.)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(пр\.)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(просп\.)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*(шоссе)\s*(.*)$/ &&
            $f_ADDRESS_OF_SVC_SHOP !~ /^(\w+)\s+(.+?),\s*()\s*(.*)$/)        {
                    $e_ADDRESS_OF_SVC_SHOP = 'Неправильный формат фактического адреса';
                    $errorCounter ++;
            }

    Ебаный стыд!!!
    скопипасчено из попавшегося куска "исподников", идет прям подряд.
    Уж даже и не знаю - что больший пиздец - первая часть или вторая.

    PS. Для тех кто вел себя хорого - конфетка!
    ВЕСЬ, БЛЯДЬ, проект постоен без единого гвозьдя!!! НИ ОДИН объект не пострадал!!!

    Meettya, 05 Июля 2012

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

    +82

    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
    protected string buildInsertString(ForecastTransactionsBean ft)
     {
        String sql = (new StringBuilder("insert into ")).append(getTableName()).append(" (").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append("year,version_num,corp,acct_num,dept_num,cc,").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append("epd_num,est_mar,est_apr,est_may,").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append("est_jun,est_jul,est_aug,est_sep,est_oct,est_nov,").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append("est_dec,est_jan,est_feb,inputby,batch_id,inputdate,").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append("manualetc,forecastnotes,acct_class,resource_group").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(") values ('").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getYear().toString()).append("',").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getVersionNum().toString()).append(",'").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getCorp().toString()).append("','").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getAcctNum().toString()).append("','").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getDeptNum().toString()).append("','").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getCc().toString()).append("','").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEpdNum().toString()).append("',").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstMar().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstApr().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstMay().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstJun().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstJul().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstAug().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstSep().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstOct().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstNov().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstDec().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstJan().toString()).append(",").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getEstFeb().toString()).append(",'").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getInputBy().toString()).append("','").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getBatchId().toString()).append("','").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append(ft.getInputDate().toString()).append("',").toString();
        sql = (new StringBuilder(string.valueOf(sql))).append("0,'Clarity','','')").toString();
        return sql;
     }

    denis90, 05 Июля 2012

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

    +118

    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
    private String compileOwnerName() {
    		return Joiner.on(' ').skipNulls().
    		String firstName = ownerFirstName.getValue();
    		String lastName = ownerLastName.getValue();
    		
    		final StringBuilder buffer = new StringBuilder();
    		boolean first = true;
    		
    		if (firstName != null) {
    			firstName = firstName.trim();
    			
    			if (!"".equals(firstName)) {
    				buffer.append(firstName);
    				first = false;
    			}
    		}
    
    		if (lastName != null) {
    			lastName = lastName.trim();
    			
    			if (!"".equals(lastName)) {
    				if (!first) {
    					buffer.append(" ");
    				}
    				
    				buffer.append(lastName);
    			}
    		}
    		
    		return buffer.toString();
    	}

    В итоге заменено однострочником на Perl:

    return Joiner.on(' ').skipNulls().join(Strings.emptyToNull(ownerFirstName.getValue().trim()),
    ownerLastName.getValue().trim()));

    someone, 05 Июля 2012

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

    +112

    1. 1
    int cutPosition = sb.ToString().IndexOf("                                          \r\n                                          ");

    Коммерческий проект :)

    ddv_demon, 05 Июля 2012

    Комментарии (2)
  8. C++ / Говнокод #11361

    +15

    1. 1
    system("PAUSE")

    Красивое, оптимальное, и самое главное, кроссплатформенное решение для ожидания нажатия клавиши.
    http://habrahabr.ru/post/147104/

    Предупреждая вопрос "где здесь с++", отвечу - автор считал, что он пишет на с++, и даже использовал пару конструкций оттуда - перегрузку функций и new/delete.

    bormand, 05 Июля 2012

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

    +15

    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
    #pragma once
    #include <assert.h>
     
    template<typename T>
    inline T notNull(T arg)
    {
            assert(arg!=NULL);
            return arg;
    }
     
    /*
    //example:
    class AnotherClass;
    
    class SomeClass
    {
    AnotherClass * m_another;
    //...
            SomeClass(AnotherClass * another, /*skipped*/) : m_another(notNull(another)), /*skipped*/;
    }
    */

    Мелочь, конечно же, но всё-таки чушь, несмотря на пользу.

    Xom94ok, 04 Июля 2012

    Комментарии (7)
  10. C++ / Говнокод #11359

    +19

    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
    // хелпер чтобы конвертить типы строк
    template <class S1, class S2>
    struct str_convert {
    	static S1 conv(S2 const & s2) { return str_convert<S2, S1>::conv(s2); }		// по умолчанию ищет специализацию для пары S2, S1
    	static S2 conv(S1 const & s1) { return str_convert<S2, S1>::conv(s1); }
    };
    
    // специализация, чтобы не конвертить одно в одно
    template <class S>
    struct str_convert<S, S> {
    	static S const & conv(S const & s) { return s; };
    };
    
    // специализация, чтобы конвертить std::string <-> std::wstring
    template <>
    struct str_convert<std::string, std::wstring> {
    	static std::string conv(std::wstring const & ws) { return boost::locale::conv::utf_to_utf<char>(ws); }
    	static std::wstring conv(std::string const & s)  { return boost::locale::conv::utf_to_utf<wchar_t>(s); }
    };
    
    // специализация QString <-> std::string
    // skipped
    
    template <class StringType = std::string>
    struct some 
    {
    	typedef StringType		string_type;
    	typedef std::string		utf8_string_type;
    
    	some(string_type const & s = string_type())
    		: inner_string_(s)
    	{}
    
    	template <class S>
    	some(S const & s)
    		: inner_string_(str_convert<S, string_type>::conv(s))
    	{}
    
    	string_type inner_string_;
    };
    
    int main()
    {
    	std::string s = "hello!";
    	some<> test0(s);		  // ok
    	some<> test2("hello!"); // ха-ха, вот еще, пытаться самостоятельно привести к std::string, пиши специализацию для массивов, сука!
    	return 0;
    }

    сегодня ради красоты передачи "literal" в конструктор писал говноспециализации для PodType[N]

    defecate-plusplus, 04 Июля 2012

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