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

    +1

    1. 1
    2. 2
    var xc = /^true$/.test("false");
    var yc = xc;

    google ad manager (gpt.js)

    khv2online, 29 Июля 2020

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

    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
    import { combineEpics, ofType } from 'redux-observable'
    
    import { map, switchMap, catchError, filter, mergeAll } from 'rxjs/operators'
    import { of, from } from 'rxjs'
    import * as R from 'ramda'
    
    import * as TICKETS_ACTION_TYPES from './tickets.types'
    import * as TicketsActions from './tickets.actions'
    import * as TicketsSelectors from './tickets.selectors'
    import { /* TICKET_TYPES,*/ TICKET_STEPS } from './constants'
    import mockAPI from 'services/mockAPI'
    
    export const getTicketsEpic = (action$, state$) =>
      from(
        R.map(
          (step) =>
            action$.pipe(
              filter(
                R.either(
                  R.both(R.propEq('type', TICKETS_ACTION_TYPES.GET_TICKETS_BY_STEP), R.pathEq(['payload', 'step'], step)),
                  R.propEq('type', TICKETS_ACTION_TYPES.GET_ALL_TICKETS)
                )
              ),
              switchMap((action) => {
                if (
                  action.type !== TICKETS_ACTION_TYPES.GET_ALL_TICKETS &&
                  TicketsSelectors.ticketsAllDirtySelector(state$.value)
                ) {
                  return of(TicketsActions.getAllTickets())
                } else if (!TicketsSelectors.ticketsByStepDirtySelector(step, state$.value)) {
                  return of(TicketsActions.getTicketsByStepSuccess(step, null, true))
                }
                return from(
                  // Mocks tickets API
                  // TODO: Replace by real request
                  mockAPI.getTicketsByStep(step)
                ).pipe(
                  map((data) => TicketsActions.getTicketsByStepSuccess(step, data)),
                  catchError((err) => of(TicketsActions.getTicketsByStepError(step, err)))
                )
              })
            ),
          R.values(TICKET_STEPS)
        )
      ).pipe(mergeAll())

    Редукс нам уже не интересен, нам с поподвыподвертами подавай, чтоб тупо болванку показать.

    NickPepper, 25 Июля 2020

    Комментарии (19)
  3. JavaScript / Говнокод #26819

    +1

    1. 1
    2. 2
    const regExp = new RegExp(filterValue.toLowerCase())
    return templates.filter((tmpl) => regExp.test(tmpl.title.toLowerCase()))

    Высрал "синьор", "тимлид" с большим опытом и головой.

    NickPepper, 25 Июля 2020

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

    −1

    1. 1
    2. 2
    3. 3
    <script>
    if
    </script>

    Гавнокод

    LorenzoTwin, 24 Июля 2020

    Комментарии (76)
  5. JavaScript / Говнокод #26760

    +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
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    function s(t) {
        for (var e = ["yo", "zh", "kh", "ts", "ch", "sch", "shch", "sh", "eh", "yu", "ya", "YO", "ZH", "KH", "TS", "CH", "SCH", "SHCH", "SH", "EH", "YU", "YA", "'"], n = ["ё", "ж", "х", "ц", "ч", "щ", "щ", "ш", "э", "ю", "я", "Ё", "Ж", "Х", "Ц", "Ч", "Щ", "Щ", "Ш", "Э", "Ю", "Я", "ь"], r = t, i = 0, o = e.length; i < o; i++) {
            r = r.split(e[i]).join(n[i]);
        }
        for (var s = "abvgdezijklmnoprstufhcyABVGDEZIJKLMNOPRSTUFHCYёЁ", a = 0, c = s.length; a < c; a++) {
            r = r.split(s.charAt(a)).join("абвгдезийклмнопрстуфхцыАБВГДЕЗИЙКЛМНОПРСТУФХЦЫеЕ".charAt(a));
        }
        return r === t ? null : r
    }
    
    function a(t) {
        for (var e = ["yo", "zh", "kh", "ts", "ch", "sch", "shch", "sh", "eh", "yu", "ya", "YO", "ZH", "KH", "TS", "CH", "SCH", "SHCH", "SH", "EH", "YU", "YA", "'"], n = ["ё", "ж", "х", "ц", "ч", "щ", "щ", "ш", "э", "ю", "я", "Ё", "Ж", "Х", "Ц", "Ч", "Щ", "Щ", "Ш", "Э", "Ю", "Я", "ь"], r = "абвгдезийклмнопрстуфхцыАБВГДЕЗИЙКЛМНОПРСТУФХЦЫеЕ", i = t, o = 0; o < n.length; o++) {
            i = i.split(n[o]).join(e[o]);
        }
        for (var s = 0; s < r.length; s++) {
            i = i.split(r.charAt(s)).join("abvgdezijklmnoprstufhcyABVGDEZIJKLMNOPRSTUFHCYёЁ".charAt(s));
        }
        return i === t ? null : i
    }
    
    function c(t) {
        for (var e = "qwertyuiop[]asdfghjkl;'zxcvbnm,./`", n = t, r = 0; r < e.length; r++) {
            n = n.split(e.charAt(r)).join("йцукенгшщзхъфывапролджэячсмитьбю.ё".charAt(r));
        }
        return n == t ? null : n
    }

    Те же конташники. На каждую ворецию транслитерации мы будем сплитить строку в массив и джойнить его обратно. Какая эффективность )))

    Fike, 18 Июня 2020

    Комментарии (11)
  6. JavaScript / Говнокод #26759

    +1

    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
    function(t) {
        switch (t) {
            case 1:
                return g.emailNotConfirmed;
            case 2:
                return g.showCaptcha;
            case 3:
                return g.authFailed;
            case 4:
                return g.makeRedirect;
            case 5:
                return g.reload;
            case 6:
                return g.mobileActivationRequired;
            case 7:
                return g.showMessage;
            case 8:
                return g.showError;
            case 9:
                return g.votesPayment;
            case 10:
                return g.zeroZone;
            case 11:
            case 12:
                return Object(g.mobileValidationRequired)(t);
            case 13:
                return g.evalCode;
            case 14:
                return g.otpBox;
            case 15:
                return g.passwordValidationRequired;
            default:
                return Object(g.defaultHandler)(t)
        }
    }(t)

    https://vk.com/js/cmodules/bundles/common.2ce877ca4bd415d95d03.js?51fe80b96 a07a7861643

    #байтоклюйство #спичечная-экономика #олимпиадники #ebivk

    Fike, 18 Июня 2020

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

    +2

    1. 1
    2. 2
    3. 3
    nameState() {
        return this.name.length > 2 ? true : false
    }

    Из документации Bootstrap Vue
    https://bootstrap-vue.org/docs/components/form-input#contextual-states

    JonMagon, 06 Июня 2020

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

    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
    import * as React from 'react';
    import {CityFromSelector} from './components/cityFromSelector';
    import {CountryToSelector} from './components/countryToSelector';
    import {MealsTypeSelector} from './components/mealsTypeSelector';
    import {DepartureDatesRangeSelector} from './components/departureDatesRangeSelector';
    import {HotelCategoriesSelector} from './components/hotelCategoriesSelector';
    import {ResortSelector} from './components/resortSelector';
    import {HotelsSelector} from './components/hotelsSelector';
    import {TouristsSelector} from './components/touristsSelector';
    import {OperatorsSelector} from './components/operatorsSelector';
    import {NightsCountRangeSelector} from './components/nightsCountRangeSelector';
    import {PriceRangeSelector} from './components/priceRangeSelector';
    import {FlightInfo} from './components/flightInfo';
    import {SearchFormActionCreator} from './search/searchFormActionCreator';
    import {HotelsCountPopup} from './components/hotelsCountLimitPopup';
    import * as throttle from 'lodash/throttle';
    import * as filter from 'lodash/filter';
    import * as union from 'lodash/union';
    import * as merge from 'lodash/merge';
    import * as reduce from 'lodash/reduce';
    import * as chunk from 'lodash/chunk';
    import * as difference from 'lodash/difference';
    import * as differenceBy from 'lodash/differenceBy';
    import { Tour } from 'sletat-api-services/lib/ModuleApiServices/Main.svc/GetTours/Tour';
    import { logViewedTours } from 'sletat-api-services/lib/GraphApiServices/Main.svc/LogViewedTours/LogViewedTours';
    import { OilTax } from 'sletat-api-services/lib/ModuleApiServices/Main.svc/GetTours/OilTax';
    import { VisaFee } from 'sletat-api-services/lib/ModuleApiServices/Main.svc/GetTours/VisaFee';
    import { getHotelImageSrc } from 'sletat-common-utils/lib/tour/getHotelImageSrc';
    import { declineByCount } from 'sletat-common-utils/lib/format/declineByCount';
    import { Tour as GetToursTour } from 'sletat-api-services/lib/ModuleApiServices/Main.svc/GetTours/Tour';
    import { Tour } from './tour';
    import { IVisaFee } from './visaFee';
    import { IOilTax } from './oilTaxes';
    import { UiPopup } from 'react-sletat-uikit/lib/ui-popup/UiPopup';
    import { UiLoader } from 'react-sletat-uikit/lib/ui-loader/UiLoader';
    import {
        SendConfirmEmailResults,
        recoverySendConfirmEmail,
        registrationSendConfirmEmail
    } from 'sletat-api-services/lib/SletatServices/Services/SendConfirmEmail/SendConfirmEmail';
    import { authentification } from 'sletat-api-services/lib/SletatServices/Authentification';
    import LoginPopup from './components/Login';
    import RegistrationPopup from './components/Registration';
    import RecoveryPopup from './components/Recovery';
    import SuccessPopup from './components/Success';
    import { PopupTypes } from './constants';

    может это уже нормально в современном фронтенде

    tablecell, 02 Июня 2020

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

    +1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    吾有一術。名之曰「斐波那契」。欲行是術。必先得一數。曰「甲」。乃行是術曰。
    	若「甲」等於零者乃得零也
    	若「甲」等於一者乃得一也
    	減「甲」以一。減「甲」以二。名之曰「乙」。曰「丙」。
    	施「斐波那契」於「乙」。名之曰「丁」。
    	施「斐波那契」於「丙」。名之曰「戊」。
    	加「丁」以「戊」。名之曰「己」。
    	乃得「己」。
    是謂「斐波那契」之術也。
    
    施「斐波那契」於十二。書之。

    文言 wenyan-lang
    Числа Фибоначчи.

    https://github.com/wenyan-lang/wenyan

    jojaxon, 01 Июня 2020

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

    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
    <!DOCTYPE html>
    <head>
        <meta charset="utf-8"/>
    </head>
    <body>
    <canvas id='pixel_canvas'></canvas>
    <pre id='text_canvas'></pre>
    <script>
        'use strict';
        function tryFetch() {
            const array = arguments[0];
            const onError = arguments[arguments.length - 1];
            let result = array;
            for (let i = 1; i < arguments.length - 1; ++i) {
                if (arguments[i] < result.length) {
                    result = result[arguments[i]];
                } else {
                    return onError;
                }
            }
            return result;
        }
    
        function bitmap2tetramap(bitmap) {
            let tetramap = []
            for (let i = 0; i < bitmap.length; i += 2) {
                tetramap.push([]);
                for (let j = 0; j < bitmap[i].length; j += 2) {
                    tetramap[tetramap.length - 1].push(
                        tryFetch(bitmap, i, j, 0) << 3 |
                        tryFetch(bitmap, i, j + 1, 0) << 2 |
                        tryFetch(bitmap, i + 1, j, 0) << 1 |
                        tryFetch(bitmap, i + 1, j + 1, 0)
                    );
                }
            }
            return tetramap;
        }
    
        function renderTetramap(tetramap) {
            const tiles = [
                ' ', '▗', '▖', '▄',
    
                '▝', '▐', '▞', '▟',
    
                '▘', '▚', '▌', '▙',
    
                '▀', '▜', '▛', '█'
            ];
            return tetramap.map(row => row.map(i => tiles[i]).join('')).join('<br>');
        }
    
        function renderBitmap(bitmap) {
            return renderTetramap(bitmap2tetramap(bitmap));
        }
    
        function rgba2bitmap(rgba, width, height) {
            let bitmap = [];
            for (let i = 0; i < height; ++i) {
                bitmap.push([]);
                for (let j = 0; j < width; ++j) {
                    const currentRGBAElementIndex = (i * width * 4) + j * 4;
                    const red = rgba[currentRGBAElementIndex];
                    const green = rgba[currentRGBAElementIndex + 1];
                    const blue = rgba[currentRGBAElementIndex + 2];
                    const a = rgba[currentRGBAElementIndex + 3];
                    bitmap[i].push((red + green + blue + a) / 4 > 0? 1 : 0);
                }
            }
            return bitmap;
        }
    
        function renderImageData(imageData) {
            return renderBitmap(rgba2bitmap(imageData.data, imageData.width, imageData.height));
        }
    
        const ctx = pixel_canvas.getContext("2d");
        ctx.font = "16px serif";
        ctx.fillText("Какой багор )))", 0, 16);
    
        text_canvas.innerHTML = renderImageData(ctx.getImageData(0, 0, pixel_canvas.width, pixel_canvas.height));
    </script>
    </body>

    HIV, 28 Мая 2020

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