浏览代码

Создать заготовку основы | Create a stub for base

master
当前提交
fc3f32760c
共有 4 个文件被更改,包括 213 次插入0 次删除
  1. +8
    -0
      0000
  2. +148
    -0
      пуск|run.js
  3. +20
    -0
      пуск|run.череда
  4. +37
    -0
      функции|functions.js

+ 8
- 0
0000 查看文件

@@ -0,0 +1,8 @@
Основа Главреда | Glavred's Base
1.0.0
https://git.opengamestudio.org/kornerr/glavred-osnova-base

x /функции|functions.js

x /пуск|run.js
/пуск|run.череда

+ 148
- 0
пуск|run.js 查看文件

@@ -0,0 +1,148 @@

const ИМЯ = "Главред | Glavred";


// // // //


ЗадатьЗаголовокВкладкиБраузера = мир =>
{
document.title = мир.редактируемыйМодуль.имя;
};


// // // //


УведомитьОбОшибкеЗагрузкиСодержимогоРедактируемогоМодуля = мир =>
{
var сообщение = "ОШИБКА Не удалось загрузить редактируемый модуль из хранилища бразуера | ERROR The module to be edited couldn't be loaded from the browser's storage";
console.error(сообщение);
console.error(мир.указатель);
/*
$(`#${мир.макет.константы.содержимое}`).html(`
<div class="ошибка">
<p>${сообщение}</p>
<p>${мир.указатель}</p>
</div>
`);
*/
};


// // // //


ЗагрузитьСодержимоеРедактируемогоМодуля = мир =>
{
// Пропускаем загрузку, если содержимое уже присутствует.
if (мир.редактируемыйМодуль.содержимое)
{
мир.уведомить("загрузили содержимое");
return;
}

// Загружаем содержимое.
мир.модули.загрузилиСодержимоеСохранённогоМодуля.подписатьРаз(function() {
мир.уведомить("загрузили содержимое");
});
мир.модули.неЗагрузилиСодержимоеСохранённогоМодуля.подписатьРаз(function() {
мир.уведомить("не загрузили содержимое");
});
мир.модули.загрузитьСодержимоеСохранённогоМодуля(мир.указатель);
};


// // // //


ПродолжитьЗагрузку = мир =>
{
мир.уведомить("загрузили содержимое");
};


// // // //


ЗадатьПараметрМодуляГлавредом = мир =>
{
задатьПараметрВСтрокеПоиска("📦", мир.редактируемыйМодуль.указатель);
};


// // // //


НазначитьРедактируемымМодульГлавреда = мир =>
{
мир.редактируемыйМодуль = мир.модули.модульПоИмени(ИМЯ);
};


// // // //


ПроверитьНаличиеРедактируемогоМодуля = мир =>
{
мир.редактируемыйМодуль = мир.модули.модульПоУказателю(мир.указатель);
if (мир.редактируемыйМодуль)
{
мир.уведомить("редактируемый модуль существует");
}
else
{
мир.уведомить("редактируемый модуль не существует");
}
};


// // // //


РазобратьПараметры = мир =>
{
мир.указатель = null;
мир.файл = null;

var параметры = new URLSearchParams(window.location.search);
for (var имя of параметры.keys())
{
var значение = decodeURI(параметры.get(имя));
var имя = decodeURI(имя);
if (имя == "📦")
{
мир.указатель = значение;
}
}
};


// // // //


ЗапуститьМодулиГлавреда = мир =>
{
мир.уведомить("пуск модулей главреда");
};


// // // //


ЗадатьЗаголовок = мир =>
{
$(`#${мир.макет.константы.заголовокЛево}`).html(`
<span class="uk-navbar-item uk-logo">${ИМЯ}</span>
`);
};


// // // //


ВывестиПриветствиеОтГлавреда = мир =>
{
console.debug("Привет от Главреда");
};


+ 20
- 0
пуск|run.череда 查看文件

@@ -0,0 +1,20 @@
пуск главреда
вывести приветствие от главреда
загрузить макет UIK
настроить макет UIK
установить макет UIK
очистить макет UIK от заглушек
задать заголовок
разобрать параметры
проверить наличие редактируемого модуля
редактируемый модуль не существует
назначить редактируемым модуль главреда
задать параметр модуля главредом
продолжить загрузку
редактируемый модуль существует
загрузить содержимое редактируемого модуля
не загрузили содержимое
уведомить об ошибке загрузки содержимого редактируемого модуля
загрузили содержимое
задать заголовок вкладки браузера
запустить модули главреда

+ 37
- 0
функции|functions.js 查看文件

@@ -0,0 +1,37 @@

задатьПараметрВСтрокеПоиска = (ключПараметра, значениеПараметра) =>
{
var строкаПоиска = decodeURI(window.location.search);
var текущийАдрес = decodeURI(window.location.href);

// Заменить параметр.
if (строкаПоиска.includes(`${ключПараметра}=`))
{
var части = строкаПоиска.split(/[\?&]/);
for (var номер in части)
{
var часть = части[номер];
if (часть.startsWith(`${ключПараметра}=`))
{
var значение = часть.split("=")[1];
var адрес = текущийАдрес.replace(значение, значениеПараметра);
history.pushState(null, "", адрес);
break;
}
}
}
// Добавить параметр.
else
{
var префикс = "?";
if (строкаПоиска.startsWith("?"))
{
префикс = "&";
}
var адрес = текущийАдрес + префикс + `${ключПараметра}=` + значениеПараметра;
history.pushState(null, "", адрес);
}
};

setSearchQueryParameter = задатьПараметрВСтрокеПоиска;


正在加载...
取消
保存