Files
Admin Nasledstvo ac168868ee Initial import
2026-05-01 20:52:04 +03:00

90 lines
4.2 KiB
PHP

<?php
/**
* @var string $media_key
* @var string $object_key
* @var boolean $single_file
* @var array $actions
* @var int $max_file_size
* @var string $error_message
* @var array $files
* @var array $resolutions
* @var string $model_class
* @var int $model_id
*/
foreach ($resolutions as $i => $r) {
$resolutions[$i] = explode(':', $r);
}
if (!empty($files[$object_key])) {
if(isset($files[$object_key][0]) && $files[$object_key][0] == null)
$files[$object_key] = [];
}
?>
<input class="media-key" type="hidden" name="media_key" value="<?= $media_key ?>">
<input class="model-class" type="hidden" name="model_class" value="<?= $model_class ?>">
<input class="model-id" type="hidden" name="model_id" value="<?= $model_id ?>">
<div id="<?= $object_key ?>" class="top-page-panel">
<input class="allowed_resolutions" type="hidden" value='<?= json_encode($resolutions) ?>'>
<input class="max_file_size" type="hidden" value="<?= $max_file_size ?>">
<input class="error_message" type="hidden" value="<?= $error_message ?>">
<div class="action-buttons">
<?php if (!empty($actions['add'])): ?>
<div data-object-key="<?= $object_key ?>"
data-single-file="<?= $single_file ?>"
onclick="addFileImage(this)"
data-edit-mode="<?= !empty($_GET['id']) ?>"
class="btn-ib btn-default ct <?= $single_file == 1 && !empty($files[$object_key]) ? 'disabled' : '' ?>">
<i class="la la-cloud-upload"></i> <?= $actions['add'] ?>
</div>
<?php endif; ?>
<?php if (!empty($actions['edit'])): ?>
<div data-object-key="<?= $object_key ?>" onclick="editFileImage(this)"
class="btnEdit btn-ib btn-default ct disabled"><i class="la la-crop-alt"></i> <?= $actions['edit'] ?>
</div>
<?php endif; ?>
<?php if (!empty($actions['delete'])): ?>
<div onclick="removeFileImage(this)" data-object-key="<?= $object_key ?>"
class="btnDelete btn-ib btn-default ct disabled"><i
class="la la-trash"></i> <?= $actions['delete'] ?>
<span class="delCount">(0)</span>
</div>
<?php endif; ?>
</div>
<div class="files-container" style="<?= !empty($files[$object_key]) ? 'display:flex' : 'display:none' ?>">
<div class="all-files" style="<?= $single_file ? 'margin-top: -7px' : '' ?>">
<label style="<?= $single_file ? 'opacity: 0; height: 0; overflow: hidden' : '' ?>">
<input data-object-key="<?= $object_key ?>" onclick="checkAll(this)" type="checkbox">
<span>Маркирай всички изображения</span>
</label>
</div>
<?php if (!empty($files[$object_key])): ?>
<?php foreach ($files[$object_key] as $i => $file): ?>
<?php if (!empty($file['id'])): ?>
<div data-file-index="<?= $i ?>" class="file-img visible"
data-file-id="<?= $file['id'] ?>">
<img onclick="editSingleFileImage(this)" id="<?= $object_key ?>_<?= $i ?>"
src="<?= $file['src'] ?>"/>
<input type="checkbox"
data-del="<?= $file['id'] ?>"
data-id="<?= $object_key ?>_<?= $i ?>"
data-object-key="<?= $object_key ?>"
data-media-key="<?= $media_key ?>"
data-file-name="<?= $file['file_name'] ?>"
data-file-type="<?= $file['type'] ?>"
data-src-raw="<?= $file['src_raw'] ?>"
data-crop-files='<?= json_encode($file['crop_files']) ?>'
onclick="checkSingle(this)">
<div class="crops">
<?php foreach ($file['crops'] as $crop): ?>
<span><?= $crop ?></span>
<?php endforeach; ?>
</div>
</div>
<?php endif; ?>
<?php endforeach; ?>
<?php endif; ?>
</div>
</div>