Files
2026-09-15 10:35:56 +08:00

110 lines
6.4 KiB
PHTML

<?php
/** @var \Esun\ImageManager\Block\Adminhtml\Image\EditBlock $block */
$image = $block->getImageModel();
?>
<form method="post" action="<?= $block->escapeUrl($block->getSaveUrl()) ?>" enctype="multipart/form-data">
<?= $block->getBlockHtml('formkey') ?>
<input type="hidden" name="image_id" value="<?= (int) $image->getId() ?>">
<div class="page-main-actions"><div class="page-actions">
<a class="action-secondary" href="<?= $block->escapeUrl($block->getBackUrl()) ?>">
<span><?= $block->escapeHtml(__('Back')) ?></span>
</a>
<button class="action-primary" type="submit"><span><?= $block->escapeHtml(__('Save Image')) ?></span></button>
</div></div>
<fieldset class="admin__fieldset">
<div class="admin__field _required">
<label class="admin__field-label"><span><?= $block->escapeHtml(__('Title')) ?></span></label>
<div class="admin__field-control">
<input class="admin__control-text" type="text" name="title" required
value="<?= $block->escapeHtmlAttr((string) $image->getData('title')) ?>">
</div>
</div>
<div class="admin__field _required">
<label class="admin__field-label"><span><?= $block->escapeHtml(__('Category')) ?></span></label>
<div class="admin__field-control">
<select class="admin__control-select" name="category_id" required>
<option value=""><?= $block->escapeHtml(__('Please select')) ?></option>
<?php foreach ($block->getCategories() as $category): ?>
<option value="<?= (int) $category->getId() ?>"
<?= (int) $image->getData('category_id') === (int) $category->getId() ? 'selected' : '' ?>>
<?= $block->escapeHtml($category->getData('name')) ?>
</option>
<?php endforeach; ?>
</select>
<p class="note">
<a href="<?= $block->escapeUrl($block->getCategoryUrl()) ?>" target="_blank">
<?= $block->escapeHtml(__('Create a new category')) ?>
</a>
</p>
</div>
</div>
<div class="admin__field">
<label class="admin__field-label"><span><?= $block->escapeHtml(__('Description')) ?></span></label>
<div class="admin__field-control">
<textarea class="admin__control-textarea" name="description" rows="6"><?= $block->escapeHtml((string) $image->getData('description')) ?></textarea>
</div>
</div>
<?php foreach (['thumbnail' => __('Thumbnail'), 'image' => __('Image'), 'icon' => __('Icon')] as $field => $label): ?>
<?php $path = (string) $image->getData($field . '_path'); ?>
<div class="admin__field">
<label class="admin__field-label"><span><?= $block->escapeHtml($label) ?></span></label>
<div class="admin__field-control">
<?php if ($path): ?>
<div style="margin-bottom:1.5rem">
<strong style="display:block;margin-bottom:.8rem">
<?= $block->escapeHtml(__('Current %1', $label)) ?>
</strong>
<a href="<?= $block->escapeUrl($block->getMediaUrl($path)) ?>"
target="_blank"
rel="noopener">
<img src="<?= $block->escapeUrl($block->getMediaUrl($path)) ?>"
alt="<?= $block->escapeHtmlAttr(__('Current %1', $label)) ?>"
style="display:block;max-width:32rem;max-height:20rem;margin-bottom:1rem;border:1px solid #d6d6d6;background:#fff;padding:.5rem">
</a>
<code style="display:block;margin-bottom:.8rem">
<?= $block->escapeHtml($path) ?>
</code>
<label>
<input type="checkbox"
name="delete_<?= $block->escapeHtmlAttr($field) ?>"
value="1">
<?= $block->escapeHtml(__('Delete current file')) ?>
</label>
</div>
<?php elseif ($image->getId()): ?>
<p class="note" style="margin-bottom:1rem">
<?= $block->escapeHtml(__('No current %1 has been uploaded.', $label)) ?>
</p>
<?php endif; ?>
<input type="file" name="<?= $block->escapeHtmlAttr($field) ?>"
accept="image/jpeg,image/png,image/gif,image/webp">
<p class="note"><?= $block->escapeHtml(__('Allowed: JPG, PNG, GIF and WebP.')) ?></p>
</div>
</div>
<?php endforeach; ?>
<div class="admin__field">
<label class="admin__field-label"><span><?= $block->escapeHtml(__('Link URL')) ?></span></label>
<div class="admin__field-control">
<input class="admin__control-text" type="text" name="link_url"
value="<?= $block->escapeHtmlAttr((string) $image->getData('link_url')) ?>">
</div>
</div>
<div class="admin__field">
<label class="admin__field-label"><span><?= $block->escapeHtml(__('Status')) ?></span></label>
<div class="admin__field-control"><select class="admin__control-select" name="status">
<option value="1" <?= !$image->getId() || (int) $image->getData('status') === 1 ? 'selected' : '' ?>><?= $block->escapeHtml(__('Enabled')) ?></option>
<option value="0" <?= $image->getId() && (int) $image->getData('status') === 0 ? 'selected' : '' ?>><?= $block->escapeHtml(__('Disabled')) ?></option>
</select></div>
</div>
<div class="admin__field">
<label class="admin__field-label"><span><?= $block->escapeHtml(__('Sort Order')) ?></span></label>
<div class="admin__field-control">
<input class="admin__control-text" type="number" name="sort_order"
value="<?= (int) $image->getData('sort_order') ?>">
</div>
</div>
</fieldset>
</form>