<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
/**
* MaxSite CMS
* (c) https://max-3000.com/
*/
if (!mso_check_allow('new_module_edit')) {
echo t('Доступ запрещен');
return;
}
require 'functions.php';
require 'post.php';
?>
<h1><?= t('Создать модуль юнитов') ?></h1>
<p class="mso-info"><?= t('Для создания нового модуля, выберите подходящий в каталоге <code>store</code>, который будет использоваться в качестве каркаса. Введите имя, под которым будет доступен новый модуль. Если не указывать имя нового модуля, то он будет скопирован как есть, при условии, что его ещё нет в каталоге <code>modules</code> (отмечены символом «+»).') ?></p>
<p class="mso-info"><?= t('Имя модуля задаётся в формате <code>группа/каталог</code> и содержит только английские символы, цифры и символы <code>/ - _</code>') ?></p>
<?php
$files = glob(getinfo('template_dir') . 'store/*/*/index.php');
$arModules = getAllModules($files);
$sel = '';
if ($arModules) {
foreach ($arModules as $nameBlock => $arBlocks) {
$sel .= '<optgroup label="' . $nameBlock . '">';
foreach ($arBlocks as $elem) {
$elem = htmlspecialchars($elem);
$check = file_exists(getinfo('template_dir') . 'modules/' . $elem . '/index.php') ? ' +' : '';
$sel .= '<option value="' . $elem . '">' . $elem . $check . '</option>';
}
$sel .= '</optgroup>';
}
}
?>
<form class="mar30-t" method="post">
<?= mso_form_session('f_session_id') ?>
<div><?= t('Выберите модуль (в <code>store</code>) в качестве каркаса') ?></div>
<select class="mar5-t" name="f_module"><?= $sel ?></select>
<div class="mar20-t"><?= t('Новый модуль (в <code>modules</code>)') ?></div>
<input class="mar5-t" type="text" name="f_newmodule" -pattern="[0-9A-Za-z_\-/]{3,}">
<div><button type="submit" class="mar20-t i-plus button"><?= t('Создать') ?></button></div>
</form>