CAt Af Ultima Iamagen carga al estar visible, Correciones diario de pagos, Productos servicios franquicia sincronizacion campos de inventario

This commit is contained in:
rakcsle
2025-05-15 16:59:36 -07:00
parent abf059b133
commit bb79c34056
8 changed files with 332 additions and 264 deletions

View File

@@ -254,7 +254,9 @@
<div>
Encontrados:<b><asp:Literal ID="LtlTotalRegistros" runat="server"></asp:Literal></b>
</div>
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" EmptyDataText="No se Encontró Activo Fijo Registrado" ToolTip="Listado de Activos Fijos" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" GridLines="None">
<asp:GridView ID="GvDatos" runat="server" AutoGenerateColumns="False" EmptyDataText="No se Encontró Activo Fijo Registrado" ToolTip="Listado de Activos Fijos" CssClass="table table-striped table-advance table-hover Widthall ScrollAD" GridLines="None"
DataKeyNames="RutaUltimaImagen"
>
<Columns>
<%-- 0 --%>
@@ -432,10 +434,15 @@
<div class="cbp-item graphic">
<div class="cbp-caption">
<div class="cbp-caption-defaultWrap">
<img class="cbp-img-ajustada" src='<%# String.Format("/ashx/SIGWeb.ashx?Metodo=GetImg&r={0}", Extensiones.Encripta(Eval("RutaUltimaImagen").ToString)) %>'
<%--<asp:Image CssClass="cbp-img-ajustada" ID="ImgUltimaImagen" Visible="false" runat="server" Width="150px" Height="150px" onclick="abrirModal(this.src)" />--%>
<%--<img class="cbp-img-ajustada" src='<%# String.Format("/ashx/SIGWeb.ashx?Metodo=GetImg&r={0}", Extensiones.Encripta(Eval("RutaUltimaImagen").ToString)) %>'
onerror="this.style.display='none';"
onclick="abrirModal(this.src)">
<%--<img class="cbp-img-ajustada lazy-img" data-src='<%# String.Format("/ashx/SIGWeb.ashx?Metodo=GetImg&r={0}", Extensiones.Encripta(Eval("RutaUltimaImagen").ToString)) %>' onerror="this.style.display='none';" alt="">--%>
onclick="abrirModal(this.src)">--%>
<img class="cbp-img-ajustada lazy-img" data-src='<%# String.Format("/ashx/SIGWeb.ashx?Metodo=GetImg&r={0}", Extensiones.Encripta(Eval("RutaUltimaImagen").ToString)) %>'
onerror="this.style.display='none';"
onclick="abrirModal(this.src)"
alt="">
</div>
<div class="cbp-caption-activeWrap">
<div class="cbp-l-caption-alignCenter">
@@ -447,6 +454,7 @@
</div>
</div>
</div>
</ItemTemplate>
</asp:TemplateField>
@@ -573,7 +581,7 @@
</asp:Content>
<asp:Content ID="Content7" ContentPlaceHolderID="JS" runat="Server">
<%-- <script src="/Metronic/assets/global/scripts/datatable.js"></script>
<%--<script src="/Metronic/assets/global/scripts/datatable.js"></script>
<script src="/Metronic/assets/global/plugins/datatables/all.min.js"></script>
<script type="text/javascript">
var OrdenarGV = function () {
@@ -588,32 +596,44 @@
</script>--%>
<%--<script>
document.addEventListener("DOMContentLoaded", function () {
const lazyImages = document.querySelectorAll("img.lazy-img");
<script type="text/javascript">
// Observador global para que no se duplique
var lazyObserver = null;
const observer = new IntersectionObserver(function (entries, observer) {
function initLazyImages() {
// Crea el observador solo la primera vez
if (!lazyObserver) {
lazyObserver = new IntersectionObserver(function (entries, observer) {
entries.forEach(function (entry) {
if (entry.isIntersecting) {
const img = entry.target;
const src = img.getAttribute("data-src");
var img = entry.target;
var src = img.getAttribute("data-src");
if (src) {
img.src = src;
img.src = src; // carga real
img.removeAttribute("data-src");
}
observer.unobserve(img);
observer.unobserve(img); // ya no lo necesitamos
}
});
}, {
rootMargin: "100px", // anticipa un poco la carga
rootMargin: "100px",
threshold: 0.01
});
}
// Engancha todas las imágenes nuevas que aún tengan data-src
document
.querySelectorAll("img.lazy-img[data-src]")
.forEach(function (img) { lazyObserver.observe(img); });
}
// 1) Primera carga completa
document.addEventListener("DOMContentLoaded", initLazyImages);
// 2) Cada vez que un UpdatePanel termine su post-back
Sys.Application.add_load(initLazyImages);
</script>
lazyImages.forEach(function (img) {
observer.observe(img);
});
});
</script>--%>
<script>
function verEnPantallaCompleta(imgElement) {
if (imgElement.requestFullscreen) {