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

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

    +4

    1. 1
    if (JSON.stringify(actions[j].user._id).indexOf(user._id) == 1) {

    thepotato, 06 Августа 2015

    Комментарии (2)
  3. 1C / Говнокод #18571

    −99

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    // Mr. Gromozeka 03.08.2014
    
    Движения.ОстаткиНоменклатуры.Записывать = Истина;
    Для Каждого Номенклатура Из ТЧТовары Цикл
        Блокировка = Новый БлокировкаДанных;
        ЭлементБлокировки = Блокировка.Добавить();
        ЭлементБлокировки.Область = "РегистрНакопления.ОстаткиНоменклатуры";
        ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
        ЭлементБлокировки.УстановитьЗначение("Номенклатура",                  Справочники.Номенклатура.НайтиПоНаименованию(Номенклатура.Наименование); 
        ЭлементБлокировки.УстановитьЗначение("ХарактеристикиНоменклатуры", Справочники.Свойства.НайтиПоНаименованию(Номенклатура.ХарактеристикиНоменклатуры.Наименование);
        Блокировка.Заблокировать();
    КонецЦикла

    Блокировка в цикле это грустно мистер Громозека.

    bugagashka, 04 Августа 2015

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

    +999

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    if (empty($params['sId']))
    {
        if (empty($params['sId-text']))
        {
            throw new LogicException('Да быть такого не может, там же required');
        }
        else
        {
            $sm = new Some_Model;
            $params['sId'] = $sm->insert($params['sId-text']);
        }
    }

    DIX315, 03 Августа 2015

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

    +79

    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
    //говнокод из ЮАР)
        public static boolean isValid(Object object){
            if(object == null){
                return false;
            }
            try{
                List l = (List)object;
                return !l.isEmpty();
            }
            catch (ClassCastException ex){
                String string = object.toString();
                return !(("").equals(string.trim()));
            }
        }

    krokozyabr, 24 Июля 2015

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

    +143

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    $style = "{ width: 100%; ";
    if ($count % 2 == 0) {
        $style .= 'background: lightgrey;';
    }
    $style .= "}";

    dannikonov, 23 Июля 2015

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

    +144

    1. 1
    2. 2
    if ( (($i%3) == 0) || ($i==$cnt) ) { // $i mod 3
        if ($i == 6) {

    Без комментариев.

    riseremi, 23 Июля 2015

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

    −123

    1. 1
    2. 2
    3. 3
    4. 4
    URL = '/some/url/here'

    ...
    ...
    url = '{0}'.format(URL)

    нашел в дебрях проекта...

    sennoy, 03 Июля 2015

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

    +142

    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
    function array_to_file($array_name, $array, $filename = 0, $file = 0)
    {
    	$level = 1;
    	if($file == 0) {
    		$level = 0;
    		$file = fopen($filename, "w");
    		if(!$file) {
    			return false;
    		}
    		fwrite($file, "<" . "?\n\$".$array_name." = ");
        }
    
        $cnt = count($array);
        $i = 0;
        fwrite($file, "\narray(\n");
        foreach($array as $key => $value)
        {
    		if($i++ != 0) {
    			fwrite($file, ",\n");
    		}
    		if(is_array($array[$key])) {
    			fwrite($file, "\"".$key."\" => ");
    			array_to_file($array_name, $array[$key], 0, $file);
    		} else  {
    			$value = addcslashes($value, "\""."\\\\");
    			fwrite($file, str_repeat(" ", ($level + 1) * 2) . "\"".$key."\" => \"".$value."\"");
    		}
        }
        fwrite($file, ")");
    
        if($level == 0) {
    		fwrite($file, ";\n?".">");
    		fclose($file);
    		return true;
        }
    }

    alex322, 02 Июля 2015

    Комментарии (2)
  10. SQL / Говнокод #18430

    −160

    1. 1
    n IN (6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25)

    условие n >= 6 выполнено

    lisiy50, 02 Июля 2015

    Комментарии (2)
  11. Java / Говнокод #18421

    +66

    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
    Map<Organization, Collection<IFormula>> comissionFormulasMap = getComissionFormulae(bank, service, a);
                transIterator:
                for (Transaction T : afterBillingMemorandum) {//для каждой транзакции
    
                    if (comissionFormulasMap.isEmpty()) {
                        //System.out.println("Нет формулы для комиссии");
                        afterComissionSet.add(T); //если нет формулы для определения комиссии транзакция попадает в список на расщепление
                    } else {
                        BigDecimal transactionStartValue = T.getStartValue();
                        Set<Transaction> afterComissionForCurrent = new HashSet<>();
                        BigDecimal fullTax = BigDecimal.ZERO;
                        Collection<IFormula> comissionsAKT = new LinkedList<>();
    
                        for (Map.Entry<Organization, Collection<IFormula>> comissionsByBank : comissionFormulasMap.entrySet()) {
                            Organization comissionBank = comissionsByBank.getKey();
                            for (IFormula f : comissionsByBank.getValue()) {//для каждой формулы по комиссии
                                GeneratedTransactionTypes transactionType = f.getGeneratedTransactionTypes(comissionBank);
    
                                if (transactionType == GeneratedTransactionTypes.AKT) {
                                    comissionsAKT.add(f);
                                } else {
                                    BigDecimal commie = f.commission(transactionStartValue);//Определяем значение комиссии
                                    if (commie.compareTo(BigDecimal.ZERO) == 0)
                                        continue; //Комиссия 0 нам не интересна, переходим к следующей формуле
                                    fullTax = fullTax.add(commie);//складываем комиссии
                                    if (fullTax.compareTo(transactionStartValue) == 1) {
                                        log.error("Помилка зняття комісії. Сума комісій більша 100 %. Транзакція не буде оброблена. Транзакція: {}", T.toBaseString());
                                        continue transIterator;
                                    } else {
                                        afterComissionForCurrent.add(T.getComissionTransaction(f.getOrganization(), commie, transactionType));
                                    }
                                }
                            }
                        }
    //
    //                    afterComissionSet.addAll(afterComissionForCurrent);
    //                    afterComissionForCurrent.clear();
    
                        //Далі зняття по акту
                        BigDecimal afterComissionStartValue = transactionStartValue.subtract(fullTax);
                        BigDecimal aktFullTax = BigDecimal.ZERO;
                        for (IFormula f : comissionsAKT) {
                            GeneratedTransactionTypes transactionType = GeneratedTransactionTypes.AKT;
    
                            BigDecimal commie = f.commission(afterComissionStartValue);
                            if (commie.compareTo(BigDecimal.ZERO) == 0)
                                continue;
                            BigDecimal newFullTax = aktFullTax.add(commie);
                            if (newFullTax.compareTo(afterComissionStartValue) > 0) {
                                continue;
                            }
                            aktFullTax = newFullTax;
                            afterComissionForCurrent.add(T.getComissionTransaction(f.getOrganization(), commie, transactionType));
                        }
    
    
                        afterComissionSet.add(T.getRestTransaction(fullTax.add(aktFullTax)));
                        afterComissionSet.addAll(afterComissionForCurrent);
                    }
                }

    Писал один товарещ, притом взрослый и сформировавшийся как личность )

    ekh, 30 Июня 2015

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