function escapeVCF(value){ return String(value || "") .replace(/\\/g,"\\\\") .replace(/\n/g,"\\n") .replace(/,/g,"\\,") .replace(/;/g,"\\;"); } function saveVCF(){ var vcfLines=[ "BEGIN:VCARD", "VERSION:3.0", "N:Toro Rivera;Gilberto;;;", "FN:"+escapeVCF(CFG.vcfFn), "ORG:"+escapeVCF(CFG.vcfOrg), "TITLE:"+escapeVCF(CFG.vcfTitle), "TEL;TYPE=WORK,VOICE:+19392095873", "TEL;TYPE=CELL,VOICE:+17872438373", "EMAIL;TYPE=INTERNET:"+escapeVCF(CFG.email), "URL:"+CFG.cardUrl, "END:VCARD" ]; var vcard= vcfLines.join("\r\n")+ "\r\n"; var blob= new Blob( [vcard], { type:"text/x-vcard;charset=utf-8" } ); var url= URL.createObjectURL(blob); var link= document.createElement("a"); link.href=url; link.download=CFG.vcfName+".vcf"; link.style.display="none"; document.body.appendChild(link); link.click(); document.body.removeChild(link); setTimeout(function(){ URL.revokeObjectURL(url); },1500); } var qrLoaded=false; function toggleQR(){ var panel= document.getElementById("bc-qr"); var isOpen= panel.classList.contains("open"); if(!qrLoaded){ new QRCode( document.getElementById("qr"), { text:CFG.cardUrl, width:180, height:180, colorDark:"#050609", colorLight:"#FFFFFF", correctLevel:QRCode.CorrectLevel.H } ); qrLoaded=true; } if(isOpen){ panel.classList.remove("open"); }else{ panel.classList.add("open"); } } function shareCard(){ if(navigator.share){ navigator.share({ title:CFG.vcfFn, text:"Contacto de "+CFG.vcfFn+" | Auto Care", url:CFG.cardUrl }).catch(function(){}); }else{ navigator.clipboard .writeText(CFG.cardUrl) .then(function(){ alert("Enlace copiado al portapapeles"); }) .catch(function(){ window.open( CFG.cardUrl, "_blank" ); }); } }
Sigamos en contacto
¡Un gusto conocerte! Conectemos para mantenernos en comunicación.
🤝 Conectemos (function(){ var numero = "17872438373"; var mensaje = "¡Hola, Gilberto! Un gusto conocerte. Te escribo para que sigamos en contacto."; document.getElementById("pp-conectar").href = "https://wa.me/" + numero + "?text=" + encodeURIComponent(mensaje); })();