|
-
-
- // // // //
-
-
- СохранитьФлагиФайлаМодуля = мир =>
- {
- var файлы = Object.keys(мир.редактируемыйМодуль.структура).sort();
- var файл = файлы[мир.номерФайлаМодуля];
- var флаги = {};
- for (var номер = 0; номер < мир.флагиФайлаМодуля.length; ++номер)
- {
- var флаг = мир.флагиФайлаМодуля[номер];
- console.debug("флаг", флаг);
- if (флаг == "x")
- {
- флаги["исполнить"] = true;
- }
- else if (флаг == "2")
- {
- флаги["двоичный"] = true;
- }
- }
- мир.редактируемыйМодуль.структура[файл] = флаги;
- console.debug("сохранить флаги файла модуля", файл, флаги)
- };
-
-
- // // // //
-
-
- ОтслеживатьСменуФлаговУФайловМодуля = мир =>
- {
- var файлы = Object.keys(мир.редактируемыйМодуль.структура).sort();
- for (var номер in файлы)
- {
- const idФлаги = мир.макет.зав.файлыСписокФлаги.replace("%номер%", номер);
- const номерФайла = номер;
- $(`#${idФлаги}`).on("input", function() {
- мир.номерФайлаМодуля = номерФайла;
- мир.флагиФайлаМодуля = $(`#${idФлаги}`).val();
- мир.уведомить("сменили флаги у файла модуля");
- });
- }
- };
-
-
- // // // //
-
-
- СоздатьХранилищеПереименованийФайловМодуля = мир =>
- {
- мир.переименования = {}
- };
-
-
- // // // //
-
-
- СохранитьПереименованиеФайловМодуля = мир =>
- {
- for (var было in мир.переименования)
- {
- var стало = мир.переименования[было];
- мир.редактируемыйМодуль.структура[стало] = мир.редактируемыйМодуль.структура[было];
- мир.редактируемыйМодуль.содержимое[стало] = мир.редактируемыйМодуль.содержимое[было];
- delete мир.редактируемыйМодуль.структура[было];
- delete мир.редактируемыйМодуль.содержимое[было];
- }
-
- мир.переименования = {};
- };
-
-
- // // // //
-
-
- ЗапомнитьПереименованиеФайлаМодуля = мир =>
- {
- var файлы = Object.keys(мир.редактируемыйМодуль.структура).sort();
- var файл = файлы[мир.номерФайлаМодуля];
- мир.переименования[файл] = мир.имяФайлаМодуля;
- console.debug(`НАДО переименовать '${файл}' в '${мир.имяФайлаМодуля}'`)
- };
-
-
- // // // //
-
-
- ОтслеживатьПереименованиеФайловМодуля = мир =>
- {
- var файлы = Object.keys(мир.редактируемыйМодуль.структура).sort();
- for (var номер in файлы)
- {
- const idИмя = мир.макет.зав.файлыСписокИмя.replace("%номер%", номер);
- const номерФайла = номер;
- $(`#${idИмя}`).on("input", function() {
- мир.номерФайлаМодуля = номерФайла;
- мир.имяФайлаМодуля = $(`#${idИмя}`).val();
- мир.уведомить("переименовали файл модуля");
- });
- }
- };
-
-
- // // // //
-
-
- УдалитьФайлМодуля = мир =>
- {
- var файлы = Object.keys(мир.редактируемыйМодуль.структура).sort();
- var файл = файлы[мир.номерФайлаМодуля];
- delete мир.редактируемыйМодуль.структура[файл];
- delete мир.редактируемыйМодуль.содержимое[файл];
- };
-
-
- // // // //
-
-
- СпроситьПодтверждениеУдаленияФайлаМодуля = мир =>
- {
- var файлы = Object.keys(мир.редактируемыйМодуль.структура).sort();
- var файл = файлы[мир.номерФайлаМодуля];
- $(`#${мир.макет.зав.файлыПодтверждениеУдаленияИмя}`).html(файл);
- UIkit.modal($(`#${мир.макет.зав.файлыПодтверждениеУдаления}`)).show();
- };
-
-
- // // // //
-
-
- СоздатьДиалогПодтвержденияУдаленияФайлаМодуля = мир =>
- {
- $(`#${мир.макет.константы.содержимое}`).append(`
-
- <div id="${мир.макет.зав.файлыПодтверждениеУдаления}" uk-modal>
- <div class="uk-modal-dialog">
- <div class="uk-modal-header">
- <h2 class="uk-modal-title">Удалить файл? | Delete the file? </h2>
- </div>
- <div class="uk-modal-body">
- <p id="${мир.макет.зав.файлыПодтверждениеУдаленияИмя}"></p>
- </div>
- <div class="uk-modal-footer uk-text-right">
- <button class="uk-button uk-button-default uk-modal-close" type="button">Отмена | Cancel</button>
- <button id="${мир.макет.зав.файлыПодтверждениеУдаленияУдалить}" class="uk-button uk-button-danger uk-modal-close" type="button">Удалить | Delete</button>
- </div>
- </div>
- </div>
-
- `);
-
- $(`#${мир.макет.зав.файлыПодтверждениеУдаленияУдалить}`).click(function() {
- мир.уведомить("подтвердили удаление файла модуля");
- });
- };
-
-
- // // // //
-
-
- ОтслеживатьУдалениеФайлаМодуля = мир =>
- {
- var файлы = Object.keys(мир.редактируемыйМодуль.структура).sort();
- for (var номер in файлы)
- {
- var idУдалить = мир.макет.зав.файлыСписокУдалить.replace("%номер%", номер);
- const номерФайла = номер;
- $(`#${idУдалить}`).click(function() {
- мир.номерФайлаМодуля = номерФайла;
- мир.уведомить("кнопка удаления файла модуля");
- });
- }
- };
-
-
- // // // //
-
-
- ОчиститьИзменениеФайловМодуля = мир =>
- {
- $(`#${мир.макет.зав.файлыИзменение}`).attr("hidden", true);
- };
-
-
- // // // //
-
-
- ОтобразитьИзменениеФайловМодуля = мир =>
- {
- $(`#${мир.макет.зав.файлыИзменение}`).removeAttr("hidden");
- };
-
-
- // // // //
-
-
- ДобавитьФайлМодуля = мир =>
- {
- мир.редактируемыйМодуль.структура[мир.имяФайлаМодуля] = {};
- мир.редактируемыйМодуль.содержимое[мир.имяФайлаМодуля] = "";
- };
-
-
- // // // //
-
-
- СообщитьОНаличииДубляФайла = мир =>
- {
- var сообщение = "Такое имя файла уже существует | Such file name is already present";
- UIkit.modal.alert(сообщение);
- console.error(сообщение);
- };
-
-
- // // // //
-
-
- ПроверитьОтсутствиеДубляФайла = мир =>
- {
- for (var файл in мир.редактируемыйМодуль.структура)
- {
- if (файл == мир.имяФайлаМодуля)
- {
- мир.уведомить("дубль файла присутствует");
- return;
- }
- мир.уведомить("дубль файла отсутствует");
- }
- };
-
-
- // // // //
-
-
- ОтслеживатьДобавлениеФайлаМодуля = мир =>
- {
- $(`#${мир.макет.зав.добавитьФайлКнопка}`).click(function() {
- мир.имяФайлаМодуля = $(`#${мир.макет.зав.добавитьФайлИмя}`).val();
- мир.уведомить("кнопка добавления файла модуля");
- });
- };
-
-
- // // // //
-
-
- ОтобразитьСписокФайловМодуля = мир =>
- {
- var список = "";
- var файлы = Object.keys(мир.редактируемыйМодуль.структура).sort();
- for (var номер in файлы)
- {
- // Файл.
- var файл = файлы[номер];
-
- // Флаги.
- var строкаФлагов = "";
- var флаги = мир.редактируемыйМодуль.структура[файл];
- for (var флаг in флаги)
- {
- if (флаг == "исполнить")
- {
- строкаФлагов += "x";
- }
- else if (флаг == "двоичный")
- {
- строкаФлагов += "2";
- }
- }
-
- // id.
- var idИмя = мир.макет.зав.файлыСписокИмя.replace("%номер%", номер);
- var idФлаги = мир.макет.зав.файлыСписокФлаги.replace("%номер%", номер);
- var idУдалить = мир.макет.зав.файлыСписокУдалить.replace("%номер%", номер);
-
-
- var имяФайла = файл;
- if (мир.переименования[файл]) {
- имяФайла = мир.переименования[файл];
- }
-
- список += `
- <tr>
- <td>
- <input id="${idИмя}" value="${имяФайла}" class="uk-input uk-margin-small" type="text" placeholder="Имя | Name">
- </td>
- <td>
- <input id="${idФлаги}" value="${строкаФлагов}" class="uk-input uk-margin-small" type="text" placeholder="Флаги | Flags">
- </td>
- <td>
- <button id="${idУдалить}" class="uk-button uk-button-danger">
- <span uk-icon="minus"></span>
- </button>
- </td>
- </tr>
- `;
- }
-
- $(`#${мир.макет.зав.файлыСписок}`).html(список);
- };
-
-
- // // // //
-
-
- ОтобразитьСтруктуруПунктаФайловЗава = мир =>
- {
- $(`#${мир.макет.константы.содержимое}`).html(`
- <div class="зав-отступ">
-
- <div uk-grid style="margin-left: 0px">
- <input id="${мир.макет.зав.добавитьФайлИмя}" class="uk-input uk-width-expand" type="text" placeholder="Имя файла | File name">
- <button id="${мир.макет.зав.добавитьФайлКнопка}" class="uk-button uk-button-primary uk-width-auto uk-margin-left">Добавить файл | Add a file</button>
- </div>
-
- <hr class="uk-divider-icon">
-
- <table class="uk-table uk-table-hover uk-table-divider">
- <thead>
- <tr>
- <th>Файл | File</th>
- <th>Флаги | Flags</th>
- <th>Действия | Actions</th>
- </tr>
- </thead>
- <tbody id="${мир.макет.зав.файлыСписок}">
- </tbody>
- </table>
-
- </div>
- `);
- };
-
-
-
- // // // //
-
-
- ОтобразитьВыборПунктаФайловЗава = мир =>
- {
- $(`#${мир.макет.зав.файлы}`).addClass("uk-active");
- };
|