PageSourceSearch

https://megared.com.ar/js/CheckoutPro/checkoutPro.js

js megared.com.ar collected 2026-10-08 21:15:32 UTC 9,896 bytes, 219 lines download raw bytes

1const mp = new MercadoPago('APP_USR-a5cbb5ee-be28-4822-b722-0c739b71a10d' , {
2    locale: "es-AR",
3});
4
5//PRUEBA
6/*const mp = new MercadoPago('APP_USR-5015f01d-442d-4e21-b5bb-d122d7973a3c' , {
7    locale: "es-AR",
8});*/
9
10let form = document.getElementById("Form");
11let urlActual = window.location.href;
12
13document.getElementById("BotonCheckout").addEventListener("click" , async() => {  
14    let erroresFormaPago = [];
15    let erroresCondicionIva = [];
16    let erroresNombre = [];
17    let erroresApellido = [];
18    let erroresRazonSocial = [];
19    let erroresDni = [];
20    let erroresCuit = [];
21    let erroresEmail = [];
22    let erroresTelefono = [];
23    let erroresFormaEnvio = [];
24    let erroresComentarios = [];
25
26    if (form.FormaPago.value == "disabled") {
27        erroresFormaPago.push("* Debes seleccionar una forma de pago");
28    }
29
30    if (form.CondicionIva.value == "disabled") {
31        erroresCondicionIva.push("* Debes seleccionar una condicion");
32    }
33
34    if (form.CondicionIva.value == "Consumidor final") {
35        if (form.Nombre.value == "") {
36            erroresNombre.push("* Debes completar tu nombre");
37        } else if (!(/^[a-zA-ZáéíóúÁÉÍÓÚñÑ\s]+$/.test(form.Nombre.value))) {
38            erroresNombre.push("* El nombre solo puede contener letras");
39        } else if (form.Nombre.value.length > 50) {
40            erroresNombre.push("* El nombre no puede exceder los 50 caracteres");
41        }
42    
43        if (form.Apellido.value == "") {
44            erroresApellido.push("* Debes completar tu apellido");
45        } else if (!(/^[a-zA-ZáéíóúÁÉÍÓÚñÑ\s]+$/.test(form.Apellido.value))) {
46            erroresApellido.push("* El apellido solo puede contener letras");
47        } else if (form.Apellido.value.length > 50) {
48            erroresApellido.push("* El apellido no puede exceder los 50 caracteres");
49        }
50    
51        if (form.Dni.value == "") {
52            erroresDni.push("* Debes completar tu DNI");
53        } else if (!(/^[0-9]+$/.test(form.Dni.value))) {
54            erroresDni.push("* El DNI debe contener solo numeros");
55        } else if ((form.Dni.value.length > 8 || form.Dni.value.length < 7)) {
56            erroresDni.push("* El DNI ingresado no es valido");
57        }
58    }
59    
60    if (form.CondicionIva.value != "Consumidor final" && form.CondicionIva.value != "disabled") {
61        if (form.Cuit.value == "") {
62            erroresCuit.push("* Debes completar tu CUIT");
63        } else if (!(/^[0-9]+$/.test(form.Cuit.value))) {
64            erroresCuit.push("* El CUIT debe contener solo numeros");
65        } else if (form.Cuit.value.length != 11) {
66            erroresCuit.push("* El CUIT ingresado no es valido");
67        }
68        
69        if (form.RazonSocial.value == "") {
70            erroresRazonSocial.push("* Debes completar tu Razon Social");
71        } else if (form.RazonSocial.value.length > 50) {
72            erroresRazonSocial.push("* La razon social no puede exceder los 50 caracteres");
73        }
74    }
75    
76    
77    if (form.Email.value == "") {
78        erroresEmail.push("* Debes completar tu email");
79    }else if (!(/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(form.Email.value))) {
80        erroresEmail.push("* El email ingresado es invalido");
81    }
82
83    if (form.Telefono.value == "") {
84        erroresTelefono.push("* Debes completar tu telefono");
85    } else if (!(/^[0-9]+$/.test(form.Telefono.value))) {
86        erroresTelefono.push("* El telefono debe contener solo numeros");
87    } else if (form.Telefono.value.length > 20) {
88        erroresRazonSocial.push("* El telefono no puede exceder los 20 digitos");
89    }
90
91    if (form.FormaEnvio.value == "disabled") {
92        erroresFormaEnvio.push("* Debes seleccionar una forma de envio");
93    }
94
95    if (form.ComentariosPedido.value.length > 300) {
96        erroresComentarios.push("* Debes escribir menos de 300 caracteres");
97    }
98
99    if (erroresFormaPago.length == 0 && erroresCondicionIva == 0 && erroresNombre == 0 && erroresApellido == 0 && erroresCuit == 0 && erroresDni == 0 && erroresRazonSocial == 0 && erroresEmail == 0 && erroresEmail == 0 && erroresTelefono == 0 && erroresFormaEnvio == 0 && erroresComentarios == 0) {
100        try {
101            let precioTotalHtml = document.getElementById("PrecioTotalCompra").innerText;
102            let precioIvaHtml = document.getElementById("PrecioIVA").innerText;
103
104            let totalSinFormato = precioTotalHtml.replace(/[^0-9,-]/g, '');
105            let ivaSinFormato = precioIvaHtml.replace(/[^0-9,-]/g, '');
106
107            let totalOriginal = parseFloat(totalSinFormato.replace(',', '.'));
108            let ivaOriginal = parseFloat(ivaSinFormato.replace(',', '.'));
109
110            const itemEnvio = {
111                //title: "Envio",
112                //quantity: 1,
113                //unit_price: Number((document.getElementById("PrecioEnvio").innerText).slice(1)),
114                //currency_id: "ARS",
115                //precioTotal: Number((document.getElementById("PrecioTotalCompra").innerText).slice(1)),
116                //precioIVA: Number((document.getElementById("PrecioIVA").innerText).slice(1)),
117                precioTotal: totalOriginal,
118                precioIVA: ivaOriginal,
119                datosPedido: {
120                    formaPago: document.getElementById("FormaPago").value,
121                    formaEnvio: document.getElementById("FormaEnvio").value,
122                    comentarios: document.getElementById("ComentariosPedido").value,
123                },
124                datosCliente: {
125                    nombre: document.getElementById("Nombre").value,
126                    apellido: document.getElementById("Apellido").value,
127                    razonSocial: document.getElementById("RazonSocial").value,
128                    dni: document.getElementById("Dni").value,
129                    cuit: document.getElementById("Cuit").value,
130                    email: document.getElementById("Email").value,
131                    telefono: document.getElementById("Telefono").value,
132                    condicionIva: document.getElementById("CondicionIva").value,
133                }
134            }
135        
136            const response = await fetch("/products/carritoCompras/crearPreferencia", {
137                method: "POST",
138                headers: {
139                    "Content-Type": "application/json"
140                  },
141                body: JSON.stringify(itemEnvio),
142            });
143        
144            const respuestaPostMp = await response.json();
145            window.location.href = respuestaPostMp.initPoint;
146    
147        } catch (error) {
148            //console.log(error);
149            alert ("Error");
150        }
151    } else {
152        let divErrorFormaPago = document.querySelector("div.ErrorFormaPago-CarritoCompras");
153        let divErrorCondicionIva = document.querySelector("div.ErrorCondicionIva-CarritoCompras");
154        let divErrorNombre= document.querySelector("div.ErrorNombre-CarritoCompras");
155        let divErrorApellido = document.querySelector("div.ErrorApellido-CarritoCompras");
156        let divErrorRazonSocial = document.querySelector("div.ErrorRazonSocial-CarritoCompras");
157        let divErrorCuit = document.querySelector("div.ErrorCuit-CarritoCompras");
158        let divErrorDni = document.querySelector("div.ErrorDni-CarritoCompras");
159        let divErrorEmail = document.querySelector("div.ErrorEmail-CarritoCompras");
160        let divErrorTelefono = document.querySelector("div.ErrorTelefono-CarritoCompras");
161        let divErrorFormaEnvio = document.querySelector("div.ErrorFormaEnvio-CarritoCompras");
162        let divErrorComentarios = document.querySelector("div.ErrorComentarios-CarritoCompras");
163
164        divErrorFormaPago.innerHTML = "";
165        erroresFormaPago.forEach((error) => {
166            divErrorFormaPago.innerHTML += "<h3 class = \"TextoError-CarritoCompras\">" + error + "</h3>";
167        })
168
169        divErrorCondicionIva.innerHTML = "";
170        erroresCondicionIva.forEach((error) => {
171            divErrorCondicionIva.innerHTML += "<h3 class = \"TextoError-CarritoCompras\">" + error + "</h3>";
172        })
173
174        divErrorNombre.innerHTML = "";
175        erroresNombre.forEach((error) => {
176            divErrorNombre.innerHTML += "<h3 class = \"TextoError-CarritoCompras\">" + error + "</h3>";
177        })
178
179        divErrorApellido.innerHTML = "";
180        erroresApellido.forEach((error) => {
181            divErrorApellido.innerHTML += "<h3 class = \"TextoError-CarritoCompras\">" + error + "</h3>";
182        })
183
184        divErrorRazonSocial.innerHTML = "";
185        erroresRazonSocial.forEach((error) => {
186            divErrorRazonSocial.innerHTML += "<h3 class = \"TextoError-CarritoCompras\">" + error + "</h3>";
187        })
188
189        divErrorDni.innerHTML = "";
190        erroresDni.forEach((error) => {
191            divErrorDni.innerHTML += "<h3 class = \"TextoError-CarritoCompras\">" + error + "</h3>";
192        })
193
194        divErrorCuit.innerHTML = "";
195        erroresCuit.forEach((error) => {
196            divErrorCuit.innerHTML += "<h3 class = \"TextoError-CarritoCompras\">" + error + "</h3>";
197        })
198
199        divErrorEmail.innerHTML = "";
200        erroresEmail.forEach((error) => {
201            divErrorEmail.innerHTML += "<h3 class = \"TextoError-CarritoCompras\">" + error + "</h3>";
202        })
203
204        divErrorTelefono.innerHTML = "";
205        erroresTelefono.forEach((error) => {
206            divErrorTelefono.innerHTML += "<h3 class = \"TextoError-CarritoCompras\">" + error + "</h3>";
207        })
208
209        divErrorFormaEnvio.innerHTML = "";
210        erroresFormaEnvio.forEach((error) => {
211            divErrorFormaEnvio.innerHTML += "<h3 class = \"TextoError-CarritoCompras\">" + error + "</h3>";
212        })
213
214        divErrorComentarios.innerHTML = "";
215        erroresComentarios.forEach((error) => {
216            divErrorComentarios.innerHTML += "<h3 class = \"TextoError-CarritoCompras\">" + error + "</h3>";
217        })
218    }
219});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.