Файловый менеджер ⚬ 文件管理器 ⚬ File manager
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

146 lines
4.9KB

  1. ОтслеживатьДобавлениеПоддиректории = мир =>
  2. {
  3. $(`#форма_добавление-поддиректории`).submit(function(событие) {
  4. событие.preventDefault();
  5. const новая = $(`#форма_добавление-поддиректории_имя`).val();
  6. мир.новаяДиректория = мир.директория + новая;
  7. мир.уведомить("добавить поддиректорию");
  8. });
  9. };
  10. // // // //
  11. ОтобразитьФормуДобавленияПоддиректории = мир =>
  12. {
  13. const содержимое = `
  14. <hr class="uk-divider-icon">
  15. <form id="форма_добавление-поддиректории" class="uk-padding-small">
  16. <legend class="uk-legend">Добавить поддиректорию 🕸 添加子目录 🕸 Add subdirectory</legend>
  17. <input id="форма_добавление-поддиректории_имя" class="uk-input uk-margin-small" type="text" placeholder="Имя директории 🕸 目录名称 🕸 Directory name">
  18. <button class="uk-button uk-button-primary uk-margin-small">Добавить 🕸 添加 🕸 Add</button>
  19. </form>
  20. `;
  21. $(`#${мир.макет.константы.содержимое}`).append(содержимое);
  22. };
  23. // // // //
  24. ОтобразитьФормуИмениДиректории = мир =>
  25. {
  26. const имя = мир.частиДиректории[мир.частиДиректории.length - 1];
  27. // Исключаем корень, т.е. пустое имя.
  28. if (!имя.length)
  29. {
  30. return;
  31. }
  32. const содержимое = `
  33. <hr class="uk-divider-icon">
  34. <form id="форма_имя-директории" class="uk-padding-small">
  35. <legend class="uk-legend">Имя директории 🕸 目录名称 🕸 Directory name</legend>
  36. <input id="форма_имя-директории_имя" class="uk-input uk-margin-small" type="text" placeholder="Имя директории 🕸 目录名称 🕸 Directory name" value="${имя}">
  37. <button class="uk-button uk-button-primary uk-margin-small">Переименовать 🕸 重命名 🕸 Rename</button>
  38. </form>
  39. `;
  40. $(`#${мир.макет.константы.содержимое}`).append(содержимое);
  41. };
  42. // // // //
  43. ОчиститьОбластьСодержимого = мир =>
  44. {
  45. $(`#${мир.макет.константы.содержимое}`).text("");
  46. };
  47. // // // //
  48. ОтслеживатьВыборЧастиДиректории = мир =>
  49. {
  50. for (var н in мир.частиДиректории)
  51. {
  52. const номер = н;
  53. const ссылка = `части-директории_${н}_ссылка`;
  54. $(`#${ссылка}`).click(function() {
  55. мир.номерВыбраннойЧастиДиректории = номер;
  56. мир.уведомить("выбрали часть директории");
  57. });
  58. }
  59. };
  60. // // // //
  61. ОтобразитьЧастиДиректорииВВидеСсылок = мир =>
  62. {
  63. const домен = window.location.hostname;
  64. var части = мир.частиДиректории.slice();
  65. части[0] = домен + части[0];
  66. var содержимое = "🌐&nbsp;";
  67. for (var н in части)
  68. {
  69. const часть = части[н];
  70. содержимое += `<a id="части-директории_${н}_ссылка">${часть}/</a>`;
  71. }
  72. $(`#${мир.макет.константы.заголовокЛево}`).html(содержимое);
  73. };
  74. // // // //
  75. ОтобразитьДиректориюВЗаголовке = мир =>
  76. {
  77. const домен = window.location.hostname;
  78. const путь = домен + мир.директория;
  79. var текст = `🌐 ${путь}`;
  80. document.title = текст;
  81. };
  82. // // // //
  83. ОтслеживатьВыборФайла = мир =>
  84. {
  85. for (var н in мир.списокФайлов)
  86. {
  87. const номер = н;
  88. const ссылка = `список-файлов_${н}_ссылка`;
  89. $(`#${ссылка}`).click(function() {
  90. мир.номерВыбранногоФайла = номер;
  91. мир.уведомить("выбрали файл");
  92. });
  93. }
  94. };
  95. // // // //
  96. ОтобразитьСписокФайлов = мир =>
  97. {
  98. const список = мир.списокФайлов;
  99. var содержимое = "";
  100. for (var н in список)
  101. {
  102. const элемент = список[н];
  103. содержимое += `
  104. <li id="список-файлов_${н}">
  105. <a id="список-файлов_${н}_ссылка">
  106. ${элемент}
  107. </a>
  108. </li>
  109. `;
  110. }
  111. содержимое = `<ul class="uk-nav uk-nav-default tm-nav">${содержимое}</ul>`;
  112. $(`#${мир.макет.константы.меню}`).html(содержимое);
  113. };