80 lines
3.5 KiB
PHTML
Executable File
80 lines
3.5 KiB
PHTML
Executable File
<?php $dataSheet = $block->getDataSheet(); ?>
|
|
<div class="prology-dataSheet page-main">
|
|
<link href="<?php echo $block->getAssetUrl('IpSupply_DataSheet::css/datasheet.css'); ?>" type="text/css" rel="stylesheet" />
|
|
<div class="prology-block__content">
|
|
<!-- <div class="prology-block__content-box grid grid-2-cols align-items-center">
|
|
<div class="prology-block__content-text d-flex align-items-start flex-direction-col">
|
|
<h2>DATA SHEET</h2>
|
|
</div>
|
|
</div> -->
|
|
|
|
<div class="prology-block__content-box grid grid-35/65">
|
|
<ul class="stackList">
|
|
<div class="prology-filter-form">
|
|
<form action="" method="GET">
|
|
<input type="hidden" name="page" value="1">
|
|
<input id="search_datasheet" type="text" name="search" value="<?= $dataSheet['searchKey'] ?>" placeholder="Enter file name"/>
|
|
<button id="btn_search_datasheet" type="submit">Search</button>
|
|
</form>
|
|
</div>
|
|
<?php foreach ($dataSheet["data"] as $item): ?>
|
|
<li>
|
|
<h3 class="heading">
|
|
<?= $item->brand." ".$item->title ?>
|
|
</h3>
|
|
<span onclick="viewPDF('<?= $item->urlFile ?>')">[View]</span>
|
|
<span onclick="saveFileFromUrl('<?= $item->urlFile ?>')">[Download]</span>
|
|
</li>
|
|
<?php endforeach; ?>
|
|
</ul>
|
|
<div id="view-pdf" class="border border-radius p-1rem d-none"></div>
|
|
</div>
|
|
<div class="pagination">
|
|
<a href="<?= $dataSheet["previousPage"] ?>">«</a>
|
|
<?php if($dataSheet["haveLeft"] == TRUE): ?>
|
|
<a href="">...</a>
|
|
<?php endif; ?>
|
|
<?php foreach($dataSheet["pagination"] as $item): ?>
|
|
<?php if($dataSheet["activePage"] == $item["index"]): ?>
|
|
<a class="active" href="<?= $item["url"] ?>"><?= $item["index"] ?></a>
|
|
<?php else: ?>
|
|
<a href="<?= $item["url"] ?>"><?= $item["index"] ?></a>
|
|
<?php endif; ?>
|
|
<?php endforeach; ?>
|
|
<?php if($dataSheet["haveRight"] == TRUE): ?>
|
|
<a href="">...</a>
|
|
<?php endif; ?>
|
|
<a href="<?= $dataSheet['nextPage'] ?>">»</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
function viewPDF(fileURL) {
|
|
let elementPDF = document.getElementById("view-pdf");
|
|
elementPDF.classList.add("d-md-flex");
|
|
// elementPDF.style.display = "inline-block";
|
|
elementPDF.innerHTML = "<object type='application/pdf' data='"+fileURL+"#navpanes=0' width='100%' height='100%'></object>";
|
|
}
|
|
|
|
async function saveFileFromUrl(url) {
|
|
try {
|
|
const response = await fetch(url);
|
|
const blob = await response.blob();
|
|
const blobUrl = URL.createObjectURL(blob);
|
|
|
|
const link = document.createElement("a");
|
|
link.href = blobUrl;
|
|
let splitURL = url.split("/");
|
|
link.download = url != "" ? splitURL[splitURL.length - 1] : "download.pdf"
|
|
link.style.display = "none";
|
|
document.body.appendChild(link);
|
|
link.click();
|
|
document.body.removeChild(link);
|
|
|
|
URL.revokeObjectURL(blobUrl);
|
|
} catch (error) {
|
|
console.error("Error saving the file:", error);
|
|
}
|
|
}
|
|
</script>
|