|
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
- </head>
- <body>
- <noscript>
- Включите JavaScript | Turn JavaScript on
- </noscript>
- <script>
- 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();
- }
-
- var пуск = localStorage.getItem("0000");
- var сообщение =
- пуск ?
- "Загрузка пускового скрипта из кэша | Loading startup script from the cache" :
- `Загрузка пускового скрипта по сети | Loading startup script over network '${адрес}'`;
- document.body.innerHTML += `<p>${сообщение}</p>`;
- console.debug(сообщение);
-
- setTimeout(
- function()
- {
- if (пуск)
- {
- запуститьGitJSЛокально(пуск);
- }
- else
- {
- запуститьGitJSПоСети(адрес);
- }
- },
- 300
- );
- </script>
- </body>
- </html>
|