jilo-web/app/helpers/render.php

82 lines
4.1 KiB
PHP
Raw Normal View History

<?php
// render config variables array
2024-11-02 15:47:05 +00:00
function renderConfig($configPart, $indent) {
2024-08-19 10:25:09 +00:00
?>
<div style="padding-left: <?= $indent ?>px; padding-bottom: 20px;">
<?php foreach ($configPart as $config_item => $config_value) { ?>
2024-08-19 10:25:09 +00:00
<div class="row mb-1" style="padding-left: <?= $indent ?>px;">
<div class="col-md-4 text-end">
<?= htmlspecialchars($config_item) ?>:
</div>
<?php
if (is_array($config_value)) {
// here we render recursively nested arrays
$indent = $indent + 50;
2024-11-02 15:51:12 +00:00
renderConfig($config_value, $indent);
$indent = 0;
} else {
// if it's not array, just display it
2024-11-02 15:41:02 +00:00
if ($config_item === 'registration_enabled') { ?>
<div class="border col-md-8 text-start">
<?= ($config_value === 1 || $config_value === true) ? 'true' : 'false' ?>
</div>
<?php } else { ?>
2024-08-19 10:25:09 +00:00
<div class="border col-md-8 text-start">
<?= htmlspecialchars($config_value ?? '')?>
</div>
2024-11-02 15:41:02 +00:00
<?php } ?>
<?php } ?>
2024-08-19 10:25:09 +00:00
</div>
<?php } ?>
</div>
2024-08-19 10:25:09 +00:00
<?php
}
2024-10-29 11:38:22 +00:00
// render config variables array
2024-11-02 15:47:05 +00:00
function editConfig($configPart, $indent) {
2024-10-29 11:38:22 +00:00
?>
<div style="padding-left: <?= $indent ?>px; padding-bottom: 20px;">
<?php foreach ($configPart as $config_item => $config_value) { ?>
<div class="row mb-1" style="padding-left: <?= $indent ?>px;">
<div class="col-md-4 text-end">
<label for="<?= htmlspecialchars($config_item) ?>" class="form-label"><?= htmlspecialchars($config_item) ?></label>
</div>
<?php
if (is_array($config_value)) {
// here we render recursively nested arrays
$indent = $indent + 50;
2024-11-02 15:51:12 +00:00
editConfig($config_value, $indent);
2024-10-29 11:38:22 +00:00
$indent = 0;
} else {
// if it's not array, just display it
?>
2024-10-29 11:45:27 +00:00
<div class="col-md-8 text-start">
2024-10-30 13:55:03 +00:00
<?php if ($config_item === 'registration_enabled') { ?>
2024-11-02 15:33:18 +00:00
<input type="hidden" name="<?= htmlspecialchars($config_item) ?>" value="false" />
<input class="form-check-input" type="checkbox" role="switch" name="<?= htmlspecialchars($config_item) ?>" value="true" <?= ($config_value === 1 || $config_value === true) ? 'checked' : '' ?> />
2024-10-30 13:55:03 +00:00
<?php } elseif ($config_item === 'environment') { ?>
<select class="form-control" type="text" name="<?= htmlspecialchars($config_item) ?>">
<option value="development"<?= ($config_value === 'development') ? ' selected' : '' ?>>development</option>
<option value="production"<?= ($config_value === 'production') ? ' selected' : '' ?>>production</option>
</select>
<?php } elseif ($config_item === 'version') {?>
<input class="form-control" type="text" name="<?= htmlspecialchars($config_item) ?>" value="<?= htmlspecialchars($config_value ?? '') ?>" disabled />
<?php } elseif ($config_item === 'db_type') {?>
<input class="form-control" type="text" name="<?= htmlspecialchars($config_item) ?>" value="<?= htmlspecialchars($config_value ?? '') ?>" disabled />
2024-10-30 13:55:03 +00:00
<?php } else { ?>
<input class="form-control" type="text" name="<?= htmlspecialchars($config_item) ?>" value="<?= htmlspecialchars($config_value ?? '') ?>" />
<?php } ?>
2024-10-29 11:38:22 +00:00
</div>
<?php } ?>
</div>
<?php } ?>
</div>
<?php
}
?>