1. JavaScript / Говнокод #19240

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    } else if(location.href.split('#')[1] == 'optimal') {
            var str = $($('.dropdown-section-title')[1]).text().trim();
            $('#package_select').removeClass('services-package-start').addClass('services-package-optimal');
            $('#package_select').text(str+' ('+$($($('.form_select_body')[1]).find('.dropdown').find('.services-package-optimal')[1]).text().trim()+')');
            $('.package-overview-price p').text(pricesCost[getCookie('language')] + prices[parseInt($($($('.form_select_body')[1]).find('.dropdown').find('.services-package-optimal')[1]).text().trim())]);//+ pricesMonth[getCookie('language')]
            $('.registration-section-right').find('.packages-overview-section').find('.package-overview-price').addClass('services-package-optimal');
            $('.registration-section-left').find('.service-packages-select').find('span.value').removeClass('services-package-start').addClass('services-package-optimal').text(str+' ('+$($($('.form_select_body')[1]).find('.dropdown').find('.services-package-optimal')[1]).text().trim()+')');

    user-dob, 25 Декабря 2015

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

    +3

    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
    const char _LETTERS[] =
    "000000000000000000000000000000000000000000000000000000000000000001111111111<...>";
    const char _DIGITS[] =
    "000000000000000000000000000000000000000000000000111111111100000000000000000<...>";
    const char _CONTROL_CHARS[] =
    "111111111111111111111111111111110000000000000000000000000000000000000000000<...>";
    const char _PUNCT_CHARS[] =
    "000000000000000000000000000000000111011111101111000000000011000110000000000<...>";
    const char _SEP_CHARS[] =
    "000000000000000000000000000000001000000000000000000000000000000000000000000<...>";
    const char _SYM_CHARS[] =
    "000000000000000000000000000000000000100000010000000000000000111000000000000<...>";
    
    #define min(i,l,I) (((i) < (l)) ? (((i) < (I)) ? (i) : (I)) : (((l) < (I)) ? (l) : (I)))
    
    bool CharIsLetter(wchar_t c) {
      return _LETTERS[c] != L'0';
    }
    bool CharIsDigit(wchar_t c) {
      return _DIGITS[c] != L'0';
    }
    bool CharIsControl(wchar_t c) {
      return _CONTROL_CHARS[c] != L'0';
    }
    bool CharIsPunctuation(wchar_t c) {
      return _PUNCT_CHARS[c] != L'0';
    }
    bool CharIsSeparator(wchar_t c) {
      return _SEP_CHARS[c] != L'0';
    }
    bool CharIsSymbol(wchar_t c) {
      return _SYM_CHARS[c] != L'0';
    }

    Лёшенька Кондратьев учится оптимизации

    groser, 25 Декабря 2015

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

    −101

    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
    // Процедура организует выбор элементов по результату запроса
    Процедура ВыбратьЭлементОкончаниеВводаТекста(Элемент, Текст, Значение, СтандартнаяОбработка, ОбработкаПоискаПоСтроке, ТекстПоискаПоСтроке, РезультатЗапроса, ЭтаФорма, ПоследнееЗначениеЭлементаПоискаПоСтроке = Неопределено, 
    											ПриОтсутствииЗначенияОставлятьТекст = Истина, ПоляПоиска, ПолеВыбора, 
    											СтруктураВыбранногоЭлемента = Неопределено, ОсновноеПредставлениеВВидеКода = Ложь,
    											Знач СообщатьПользователюОбОшибкеВводаДанных = Истина)
    
    
    // Процедура организует выбор элементов по результату запроса
    Процедура ВыбратьЭлементОкончаниеВводаАдресногоКлассификатора(Элемент, Текст, Значение, СтандартнаяОбработка, ОбработкаПоискаПоСтроке, ТекстПоискаПоСтроке, РезультатЗапроса, ЭтаФорма, ПоследнееЗначениеЭлементаПоискаПоСтроке = Неопределено, 
    											ПриОтсутствииЗначенияОставлятьТекст = Истина, ПоляПоиска, ПолеВыбора, 
    											СтруктураВыбранногоЭлемента = Неопределено, НачальныйУровеньДетализации = 0, КонечныйУровеньДетализации = 5)
    
    
    // Процедура организует выбор элементов по результату запроса
    Процедура ВыбратьЭлементОкончаниеВводаТекста(Элемент, Текст, Значение, СтандартнаяОбработка, ОбработкаПоискаПоСтроке, ТекстПоискаПоСтроке, РезультатЗапроса, ЭтаФорма, ПоследнееЗначениеЭлементаПоискаПоСтроке = Неопределено, 
    											ПриОтсутствииЗначенияОставлятьТекст = Истина, ПоляПоиска, ПолеВыбора, 
    											СтруктураВыбранногоЭлемента = Неопределено, ОсновноеПредставлениеВВидеКода = Ложь,
    											Знач СообщатьПользователюОбОшибкеВводаДанных = Истина)

    Просто пара заголовков процедур из типовых конфигураций 1С (15 параметров, Карл, там 15 параметров!). Сопроводительные комментарии прилагаются.
    К слову сами процедуры занимают не более 20 строк, но самое забавное заключается в том, что некоторые параметры вообще не используются при работе процедуры.

    CMblCL, 25 Декабря 2015

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    DataControl.b1.   PointerReleased += async (a, b) => { await action(DataControl.b1); };
    DataControl.b2.   PointerReleased += async (a, b) => { await action(DataControl.b2); };
    DataControl.b3.   PointerReleased += async (a, b) => { await action(DataControl.b3); };
    DataControl.b4.   PointerReleased += async (a, b) => { await action(DataControl.b4); };
    DataControl.sub41.PointerReleased += async (a, b) => { await action(DataControl.b1); };
    DataControl.sub42.PointerReleased += async (a, b) => { await action(DataControl.b2); };
    DataControl.sub43.PointerReleased += async (a, b) => { await action(DataControl.b3); };
    DataControl.sub44.PointerReleased += async (a, b) => { await action(DataControl.b4); };

    ffff, 25 Декабря 2015

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

    −94

    1. 1
    Объект=Справочники.ПодразделенияОрганизаций.НайтиПоКоду(Касса.Владелец.Код);

    Разгребаю агиевы конюшни после аутсорсеров. Подобная конструкция встретилась почти в 70 местах в конфигурации. Кто догадается, какого типа владелец у кассы?

    planaric, 24 Декабря 2015

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

    +1

    1. 1
    _workflowQueue = new Queue<IWorkflowInfo>(_workflowQueue.Where(w => !(w == workflow || w.WorkflowGuid == workflow.WorkflowGuid)));

    Вот как надо делать, если из очереди нужно удалить произвольный элемент.
    Использовать List?! Это для слабаков!

    delph_er, 24 Декабря 2015

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

    +3

    1. 1
    * @return boolean "No! Try not. Do. Or do not. There is no try." - Yoda

    sevenflash, 24 Декабря 2015

    Комментарии (0)
  8. Assembler / Говнокод #19223

    +106

    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
    < !DOCTYPE html >
    < html >
    < head >
    < title >Температура процессора< /title >
    < meta http-equiv="content-type" content="text/html; charset=windows-1251" / >
    < asm >
    mov dx, 295h
    mov al, 4Eh
    out dx, al
    inc dx
    in al, dx
    or al, 1
    out dx, al
    dec dx
    mov al, 50h
    out dx, al
    in al, dx
    mov #temperature, al
    < /asm >
    < /head >
    < body >
    < span id="temperature" >< /span >
    < /body >
    < /html >

    https://otvet.mail.ru/question/185609056

    3_dar, 23 Декабря 2015

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

    0

    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
    if (document.querySelector('.instruction-wrapper')) {
      if (!window.requestAnimationFrame) {
    
        window.requestAnimationFrame = (function() {
    
          return window.webkitRequestAnimationFrame ||
            window.mozRequestAnimationFrame ||
            window.oRequestAnimationFrame ||
            window.msRequestAnimationFrame
    
        })();
      }
    
      var animator = {
        stageArray: [
          [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13],
          [14, 15, 16, 17, 18, 19, 20, 21, 22, 23]
        ],
        // min:16,max:25,
        element: document.querySelector('.instruction-wrapper'),
        originalClassName: 'instruction-wrapper',
        currentStage: 1,
        currentStep: 0,
        oldTime: new Date().getTime(),
        timeStep: 1200,
        addStateClass: 'state-', //+stateRange.currentStep
        chaning: true,
        repeat: true,
        debug: true,
        autoplay: true,
        animate: function() {
          requestAnimationFrame(animator.animate);
          if (animator.autoplay) {
            animator.draw();
          }
        },
        classCheckUpdate: function(arg1) {
          this.element.className = this.originalClassName;
          for (var i = 0; i <= arg1; i++) {
            this.element.classList.add(this.addStateClass + '' + i);
          }
        },
        draw: function(arg) {
    
          var time = new Date().getTime();
          // console.log(time - oldTime);
          if (time > this.oldTime + this.timeStep) {
    
    
            if (this.debug) {
              console.log(this.currentStep)
            };
            this.oldTime = time;
    
            if (!arg && !!this.stageArray[this.currentStage][this.currentStep + 1]) {
              console.log('instr-' + 1 + '_' + this.stageArray[this.currentStage][this.currentStep + 1]);
              this.currentStep += 1;
              this.classCheckUpdate(this.stageArray[this.currentStage][this.currentStep])
                // this.element.classList.add(this.addStateClass + '' + this.stageArray[this.currentStage][this.currentStep]);
            } else if (!arg && !this.stageArray[this.currentStage][this.currentStep + 1] && !!this.repeat) {
              this.currentStep = 0;
              console.log('instr-' + 2);
              this.classCheckUpdate(this.stageArray[this.currentStage][this.currentStep])
                // this.element.className = this.originalClassName;
                // this.element.classList.add(this.addStateClass + '' + this.stageArray[this.currentStage][this.currentStep]);
            } else if (!this.stageArray[this.currentStage][this.currentStep + 1] &&
              !this.repeat &&
              this.stageArray[this.currentStage + 1]) {
              this.currentStage += 1;
              console.log('instr-' + 3);
              this.currentStep = this.stageArray[this.currentStage + 1][0];
            } else if (arg > 1) {
              console.log('instr-' + 4);
              this.element.className = this.originalClassName;
              for (var i = 0; i <= arg; i++) {
                this.element.classList.add(this.addStateClass + '' + i);
                this.element.classList.add(this.addStateClass + '' + this.stageArray[this.currentStage][this.currentStep]);
              }
            }
          }
        }
    
      }
      animator.animate();
    }

    Перекулючение классов для анимационного сценария

    mcheguevara2, 23 Декабря 2015

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

    0

    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
    <?
    //Ограничиваем время выполнения скрипта 3-мя минутами
    set_time_limit(180);
    
    //Подключаемся к MySQL, при неудаче выводим ошибку
    mysql_connect("localhost", "torrent", "password") or die("Could not connect to MySQL");
    
    //Выбираем БД, при неудаче выводим ошибку
    mysql_select_db("torrent") or die("Could not select database");
    
    //Переводим все общение с БД в кодировку utf8
    mysql_query("SET NAMES utf8");
    
    //Открываем файл указанный в url переменной "f"
    $fp = fopen($_GET[f], "r");
    
    //Запускаем цикл до конца строк в файле
    while (!feof($fp)) {
            //Считываем строку (да, функцию trim() выполнять не обязательно, но у каждого программиста свои "тараканы")
            $tmp = trim(fgets($fp));
            
            //Преобразуем строку в массив. За разделитель используем ";"
            $torrent = explode('";"', $tmp);
            
            //В первом и последнем элементе удаляем лишние символы "
            $torrent[0] = substr($torrent[0], 1);
            $torrent[6] = substr($torrent[6], 0, (strlen($torrent[6]) - 1));
            
            //Если раскомментировать следующую строку, то можно увидеть как распарсился первый торрент в файле
            //print '<pre>'; print_r($torrent); exit();
            
            //Вставляем данные текущего торрента в таблицу
            mysql_query("INSERT INTO `torrents` 
                (`name`,
                `hash`,
                `date`,
                `size`,
                `topic_id`,
                `cat_id`,
                `cat_name`) 
              VALUES 
                ('" . mysql_real_escape_string($torrent[4]) . "',
                '" . $torrent[3] . "',
                '" . $torrent[6] . "',
                '" . $torrent[5] . "',
                '" . $torrent[2] . "',
                '" . $torrent[0] . "',
                '" . mysql_real_escape_string($torrent[1]) . "')
            ");
    }
    //Закрываем файл
    fclose($fp);
    
    //Выводим сообщение о завершении работы
    print 'complete: ' . $_GET[f];
    ?>

    Импорт CSV в MySQL. Со швабры.

    gost, 23 Декабря 2015

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