1. 1C / Говнокод #19005

    −96

    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
    Функция мПолучитьДанныеПоОтсрочкеОплатыРТУнаДт(тРТУ, тДт, тНедоплатаПоРТУ, теРегЗапись="", текЗаказыПокупателей="", текЗнакЗаказыПокупателей="=", текОтрицаниеЗнакаЗаказыПокупателей=Ложь, тРазрешенныхДнейОтсрочки=0, тМаксДеньПогашения="", КЛ_тРТУ="" , тРТУ_Дата="", тСтрокаТЗотчета, УровеньПоЕжеМесКва=0) // релиз 3.3 доб. , тСтрокаТЗотчета , УровеньПоЕжеМесква=0  // релиз 3.1 доб. , тРТУ_Дата=""
    	                        текРТУ_Дата=?(ТипЗнч(тРТУ_Дата)=Тип("Дата") И НЕ тРТУ_Дата='00010101', тРТУ_Дата, тРТУ.Дата); // релиз 3.1 доб.
    //...	
    	КЛ_тРТУ=теРегЗапись.теРегистратор; тЕстьЕжемес=теРегЗапись.ДеньПогашенияМесяц>0   И теРегЗапись.ДеньПогашенияМесяц<=31;   
    	                                     тЕстьЕжеква=теРегЗапись.ДеньПогашенияКвартал>0 И теРегЗапись.ДеньПогашенияКвартал<=31; 
    		Если      тЕстьЕжемес И теРегЗапись.ДеньМесяцЭтоСледующийЗаОтгрузкой Тогда
    тМаксДеньПогашения=Мин(Дата(Год(ДобавитьМесяц(текРТУ_Дата,1)),Месяц(ДобавитьМесяц(текРТУ_Дата,1)),теРегЗапись.ДеньПогашенияМесяц), теРегЗапись.ДатаОкончания);   // релиз 3.1 зам. тРТУ.Дата на текРТУ_Дата
    		ИначеЕсли тЕстьЕжеква И Найти("/3/6/9/12/","/"+Строка(Месяц(текРТУ_Дата))+"/")<>0 И теРегЗапись.ДеньПогашенияКвартал>День(текРТУ_Дата) Тогда             // релиз 3.1 зам. тРТУ.Дата на текРТУ_Дата
    тМаксДеньПогашения=Мин(Дата(Год(текРТУ_Дата),Месяц(текРТУ_Дата),теРегЗапись.ДеньПогашенияКвартал), теРегЗапись.ДатаОкончания);                                   // релиз 3.1 зам. тРТУ.Дата на текРТУ_Дата                                         
            ИначеЕсли тЕстьЕжемес И ?(Найти("/3/6/9/12/","/"+Строка(Месяц(текРТУ_Дата))+"/")=0,Истина,НЕ тЕстьЕжеква) И теРегЗапись.ДеньПогашенияМесяц>День(текРТУ_Дата)   // релиз 3.1 зам. тРТУ.Дата на текРТУ_Дата 
                    И НЕ(УровеньПоЕжеМесКва=1) Тогда  // релиз 3.3 доб. строку
    тМаксДеньПогашения=Мин(Дата(Год(текРТУ_Дата),Месяц(текРТУ_Дата),теРегЗапись.ДеньПогашенияМесяц), теРегЗапись.ДатаОкончания); ПроверитьЕжеМесКваНаНеполноеПогашение(1,теРегЗапись,тСтрокаТЗотчета); // релиз 3.3 доб. ПроверитьЕжеМесКваНаНеполноеПогашение(1,теРегЗапись,тСтрокаТЗотчета); // релиз 3.1 зам. тРТУ.Дата на текРТУ_Дата                                      
    		ИначеЕсли тЕстьЕжеква И Найти("/3/6/9/12/","/"+Строка(Месяц(ДобавитьМесяц(текРТУ_Дата,1)))+"/")<>0 Тогда                                                 // релиз 3.1 зам. тРТУ.Дата на текРТУ_Дата
    тМаксДеньПогашения=Мин(Дата(Год(ДобавитьМесяц(текРТУ_Дата,1)),Месяц(ДобавитьМесяц(текРТУ_Дата,1)),теРегЗапись.ДеньПогашенияКвартал), теРегЗапись.ДатаОкончания);ПроверитьЕжеМесКваНаНеполноеПогашение(2,теРегЗапись,тСтрокаТЗотчета); // релиз 3.3 доб. ПроверитьЕжеМесКваНаНеполноеПогашение(2,теРегЗапись,тСтрокаТЗотчета); // релиз 3.1 зам. тРТУ.Дата на текРТУ_Дата                                         
            ИначеЕсли тЕстьЕжемес 
                    И НЕ(УровеньПоЕжеМесКва=1 И тМаксДеньПогашения>=Мин(Дата(Год(ДобавитьМесяц(текРТУ_Дата,1)),Месяц(ДобавитьМесяц(текРТУ_Дата,1)),теРегЗапись.ДеньПогашенияМесяц), теРегЗапись.ДатаОкончания)) Тогда  // релиз 3.3 доб. строку
    
    	//...
    		
    	                          тМаксДеньПогашения=НачалоДня(тМаксДеньПогашения);
    	тРазрешенныхДнейОтсрочки=(тМаксДеньПогашения-НачалоДня(текРТУ_Дата))/(24*60*60); // релиз 3.1 зам. тРТУ.Дата на текРТУ_Дата
    	Возврат                  (тМаксДеньПогашения-НачалоДня(тДт))/(24*60*60);
    КонецФункции

    Там, говорят, работы на час: посмотреть как в отчете данные собираются и перенести то, что надо. Открываю отчет, а там с два десятка вот таких функций и процедур. Орфография и пунктуация сохранена, жаль вся функция не поместилась.

    HomoAlbus, 11 Ноября 2015

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

    +2

    1. 1
    2. 2
    -- Hehehe
    typeGroups ll = (\(t, tt) -> printf "\n~~~~~~~~~~~~~~~\n%s\n~~~~~~~~~~~~~~~\n%s" t (show tt))  >>= (nub . map (_measInfoId &&&(snd .unzip . M.toList . _measTypes)) . (>>= _measInfo) . (>>= _measData)) $ (concat `fmap` mapM (\file -> runX $ readXml file >>> parseFile)) ll

    скрипт, высранный в спешке для обработки данных в одной задаче перерос в утилиту

    CHayT, 10 Ноября 2015

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    $HighSpeed = new HighLoad();
    	$redis = new Redis();
    	$redis->connect($HighSpeed->passwd);
    	$redis->auth('ХХХХХХХХХХХХХХХ');
    	$redis->select(1);

    Всё что после первой строки уже реализовано в самом классе

    proweb, 10 Ноября 2015

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

    −2

    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
    $( '.radio-check-value' ).on( 'change', '.check_value', function(){
    	var checkedVal = $( this ).val();
    	console.log( checkedVal );
    	var nonCheck = checkedVal == 'default' ? 'measure' : 'default';
    	var parentBlock = $( this ).parent().parent();
    	if( parentBlock.find( '[data-units=' + checkedVal + ']' ).hasClass( 'nonactiv' ) ){
    		parentBlock.find( '.count-units.' + nonCheck ).removeClass( 'active' );
    		parentBlock.find( '.count-units.' + nonCheck ).addClass( 'nonactiv' );
    		parentBlock.find( '[data-units=' + nonCheck + ']' ).removeClass( 'active' );
    		parentBlock.find( '[data-units=' + nonCheck + ']' ).addClass( 'nonactiv' );
    		parentBlock.find( '[data-units=' + checkedVal + ']' ).removeClass( 'nonactiv' );
    		parentBlock.find( '[data-units=' + checkedVal + ']' ).addClass( 'active' );
    		parentBlock.find( '.count-units.' + checkedVal ).removeClass( 'nonactiv' );
    		parentBlock.find( '.count-units.' + checkedVal ).addClass( 'active' );
    		parentBlock.find( '.check_value.' + nonCheck ).removeAttr( 'checked' );
    	}
    } );

    Обработчик нестандартного поведения чекбоксов.

    fglukhov, 10 Ноября 2015

    Комментарии (0)
  5. 1C / Говнокод #18998

    −96

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Если ОтражатьВБухгалтерскомУчете = Истина Тогда
    		Если Лев(Номер, 3) <> ТекПрефикс Тогда	Номер = "";	УстановитьНовыйНомер(); КонецЕсли;
    	Иначе
    		Если Лев(Номер, 3) = ТекПрефикс Тогда	Номер = "";	УстановитьНовыйНомер(); КонецЕсли;
    КонецЕсли;

    В чем смысл проверки на соответствие префиксу остается только гадать...

    imxored, 10 Ноября 2015

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

    +11

    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
    public class Solution
    {
        public static void main(String[] args)
        {
    
            int a = 1, b = 2, c = 3, d = 4, e = 5, f = 6, g = 7, i = 8, j = 9, k = 10;
            System.out.println( + ( a + b ));
            System.out.println( + ( a + b + c ));
            System.out.println( + ( a + b + c + d ));
            System.out.println( + ( a + b + c + d + e ));
            System.out.println( + ( a + b + c + d + e + f ));
            System.out.println( + ( a + b + c + d + e + f + g ));
            System.out.println( + ( a + b + c + d + e + f + g + i ));
            System.out.println( + ( a + b + c + d + e + f + g + i + j ));
            System.out.println( + ( a + b + c + d + e + f + g + i + j + k ));
    
    
    
        }
    }

    Вывести на экран сумму чисел от 1 до 10 построчно.

    luminary, 09 Ноября 2015

    Комментарии (68)
  7. JavaScript / Говнокод #18996

    −3

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    var api = angular.module('GithubApi', []);
    api.controller('GithubStatus', function ($scope, $http) {
        $http.get('/api.json')
            .success(function (response) { $scope.api = response; });
    });

    Пейсатели ж.скрипт фреймоврков не перестают радовать. Код несколько упрощен, но суть должна быть очевидна каждому: переменная api будет затерта как только она будет создана строкой типа "[object Object]" потому что в $scope есть поле с таким же значением.

    wvxvw, 09 Ноября 2015

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

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    <?
    $key = crc32("release") ^ 0x817990;
    $header_bg = '#' . substr(base_convert(crc32($DBName) ^ $key, 10, 16), 0, 6);
    ?>
    <div id="top_header" style="background:<?= $header_bg ?>">

    На доменах с похожими названиями живут продакшн и версии для разработки. Заказчик путается при тестировании, а потом разрабы удивляются тестовым данным в рабочей базе.
    Вот так была реализована цветовая дифференциация штанов сайтов в зависимости от имени БД. Подобрать им имя базы, которое даст коллизию, что ли...

    clauclauclau, 09 Ноября 2015

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

    +7

    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
    for(i = 1; i <67; i++){
     if(i==1){ k="б"; l="b"; }
     if(i==2){ k="в"; l=bwvk; }
     if(i==3){ k="г"; l="g"; }
     if(i==4){ k="д"; l="d"; }
     if(i==5){ k="ё"; l=bjok; }
     if(i==6){ k="ж"; l=bzhk; }
     if(i==7){ k="и"; l="i"; }
     if(i==8){ k="Б"; l="B"; }
     if(i==9){ k="л"; l="l"; }
     if(i==10){ k="м"; l="m"; }
     if(i==11){ k="н"; l="n"; }
     if(i==12){ k="о"; l="o"; }
     if(i==13){ k="п"; l="p"; }
     if(i==14){ k="р"; l="r"; }
     if(i==15){ k="ф"; l="f"; }
     if(i==16){ k="щ"; l=bshhk; }
     if(i==17){ k="ч"; l=bchk; }
     if(i==18){ k="ш"; l=bschk; }
     if(i==19){ k="ц"; l=bczk; }
     if(i==20){ k="х"; l=bhhk; }
     if(i==21){ k="ъ"; l=btsk; }
     if(i==22){ k="ь"; l=bmsk; }
     if(i==23){ k="э"; l=bjek; }
     if(i==24){ k="ю"; l=bjuk; }
     if(i==25){ k="я"; l=bjak; }
     if(i==26){ k="а"; l="a"; }
     if(i==27){ k="е"; l="e"; }
     if(i==28){ k="з"; l=bzzk; }
     if(i==29){ k="й"; l=biik; }
     if(i==30){ k="с"; l="s"; }
     if(i==31){ k="т"; l="t"; }
     if(i==32){ k="у"; l="u"; }
     if(i==33){ k="ы"; l=bysk; }
     if(i==34){ k="к"; l="k"; }
     if(i==35){ k="В"; l=bwvg; }
     if(i==36){ k="Г"; l="G"; }
     if(i==37){ k="Д"; l="D"; }
     if(i==38){ k="Ё"; l=bjog; }
     if(i==39){ k="Ж"; l=bzhg; }
     if(i==40){ k="И"; l="I"; }
     if(i==41){ k="К"; l="K"; }
     if(i==42){ k="Л"; l="L"; }
     if(i==43){ k="М"; l="M"; }
     if(i==44){ k="Н"; l="N"; }
     if(i==45){ k="О"; l="O"; }
     if(i==46){ k="П"; l="P"; }
     if(i==47){ k="Р"; l="R"; }
     if(i==48){ k="Ф"; l="F"; }
     if(i==49){ k="Щ"; l=bshhg; }
     if(i==50){ k="Ч"; l=bchg; }
     if(i==51){ k="Ш"; l=bschg; }
     if(i==52){ k="Ц"; l=bczg; }
     if(i==53){ k="Х"; l=bhhg; }
     if(i==54){ k="Ъ"; l=btsg; }
     if(i==55){ k="Ь"; l=bmsg; }
     if(i==56){ k="Э"; l=bjeg; }
     if(i==57){ k="Ю"; l=bjug; }
     if(i==58){ k="Я"; l=bjag; }
     if(i==59){ k="А"; l="A"; }
     if(i==60){ k="Е"; l="E"; }
     if(i==61){ k="З"; l=bzzg; }
     if(i==62){ k="Й"; l=biig; }
     if(i==63){ k="С"; l="S"; }
     if(i==64){ k="Т"; l="T"; }
     if(i==65){ k="У"; l="U"; }
     if(i==66){ k="Ы"; l=bysg; }
     t=input;
    while (t.indexOf(k)>-1){
    p=t.indexOf(k);
    t=(t.substring(0, p)+l+t.substring((p + k.length), t.length));
    input=t; }
     }

    Массивы? Replace? Это не наш метод!
    (Copyright (c) 2012 dslru.eu)

    Bhudh, 09 Ноября 2015

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

    +4

    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
    $ARR_number = array('kjh55jnk456','hjkhg8dd3df5','sdyty479s6f6gts7','sjoerudv76isert','esrg467ueri7129ujgd','sergy745stg','9084sa61syhggsdf','serfsg1734th','sdsdf453hnjdr','dfiaef435345y3h4');
    
     $i = rand(0,9);
    
     $primer = "<img src='img/number/$ARR_number[$i].png' width='25' height='21'>";
    
     $primer .= "<span style='font-size:24px;'><b>+</b></span>";
    
     $j = rand(0,9);
    
     $primer .= "<img src='img/number/$ARR_number[$j].png' width='25' height='21'>";
    
     $primer .= "<span style='font-size:24px;'><b>=</b></span>";
    
     $rechen_primer = $i + $j;
    
     $summa_number = ((($rechen_primer*1024)+((228-$rechen_primer*2)*132))*32)*$rechen_primer*3;

    этот адский пиздец "автор-пейсатель" называет капчей

    fgmmaster, 09 Ноября 2015

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