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

    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
    var адрес = localStorage.getItem("пуск");
                if (!адрес)
                {
                    адрес = "https://bitbucket.org/gitjs/0000/raw/master/0000.js";
                }
    
                var gitjs = {};
    
                gitjs.uuid = function()
                {
                    // https://stackoverflow.com/a/2117523
                    return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(
                        /[xy]/g,
                        function(c)
                        {
                            var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);
                            return v.toString(16);
                        }
                    );
                };
    
                function запуститьGitJSЛокально(пуск)
                {
                    eval(пуск);
                    запуститьGitJS();
                }
    
                function запуститьGitJSПоСети(адрес)
                {
                    function загрузилиПуск(пуск)
                    {
                        localStorage.setItem("0000", пуск);
                        eval(пуск);
                        запуститьGitJS();
                    }
                    function неУдалосьЗагрузитьПуск(ошибка)
                    {
                        var сообщение = `ОШИБКА ⚬ 错误 ⚬ ERROR: '${ошибка}'`
                        console.error(сообщение);
                        document.body.append(сообщение);
                    }
    
                    var запрос = new XMLHttpRequest();
                    запрос.onreadystatechange = function()
                    {
                        if (this.readyState == 4)
                        {
                            if (this.status == 200)
                            {
                                загрузилиПуск(this.responseText);
                            }
                            else
                            {
                                неУдалосьЗагрузитьПуск(this.status);
                            }
                        }
                    }
                    запрос.open("GET", адрес + "?" + gitjs.uuid());
                    запрос.send();
    
                    console.debug("Загрузка пускового скрипта по сети  Loading startup script over network");
                    console.debug(адрес);
                }
    
                function версияАктуальна(содержимое)
                {
                    var ожидаемаяВерсия = "1.2.1";
                    var перваяСтрока = содержимое.split(/\n/)[0];
                    var ч = перваяСтрока.split(/"/);
                    return ч.length == 5 && ч[0] == "gitjs[" && ч[1] == "ijlj" && ч[3] == ожидаемаяВерсия;
                }
    
                var пуск = localStorage.getItem("0000");
    
                if (пуск && версияАктуальна(пуск))
                {
                    запуститьGitJSЛокально(пуск);
                }
                else
                {
                    запуститьGitJSПоСети(адрес);
                }

    афтар: https://gitlab.com/gitjs/gitjs.gitlab.io/-/blob/master/index.html

    Запостил: kapu, 01 Февраля 2021

    Комментарии (5) RSS

    Добавить комментарий