{"id":212,"date":"2025-02-12T14:24:34","date_gmt":"2025-02-12T14:24:34","guid":{"rendered":"https:\/\/sanpedro.argency.com\/autentifica-tu-botella\/"},"modified":"2025-08-05T18:40:55","modified_gmt":"2025-08-05T18:40:55","slug":"autentifica-tu-botella","status":"publish","type":"page","link":"https:\/\/sanpedro.argency.com\/es\/autentifica-tu-botella","title":{"rendered":"AUTENTIFICA TU BOTELLA"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"212\" class=\"elementor elementor-212 elementor-208\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9ee4665 e-flex e-con-boxed e-con e-parent\" data-id=\"9ee4665\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-52faeb7 content_container e-flex e-con-boxed e-con e-child\" data-id=\"52faeb7\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-10ae108 e-con-full e-flex e-con e-child\" data-id=\"10ae108\" data-element_type=\"container\" data-e-type=\"container\" id=\"container-img\">\n\t\t\t\t<div class=\"elementor-element elementor-element-923aa90 elementor-widget elementor-widget-image\" data-id=\"923aa90\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"457\" height=\"329\" src=\"https:\/\/sanpedro.argency.com\/wp-content\/uploads\/2025\/03\/bottles.png\" class=\"attachment-large size-large wp-image-1143\" alt=\"\" srcset=\"https:\/\/sanpedro.argency.com\/wp-content\/uploads\/2025\/03\/bottles.png 457w, https:\/\/sanpedro.argency.com\/wp-content\/uploads\/2025\/03\/bottles-300x216.png 300w\" sizes=\"(max-width: 457px) 100vw, 457px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c21310e e-con-full auth_form_container e-flex e-con e-child\" data-id=\"c21310e\" data-element_type=\"container\" data-e-type=\"container\" id=\"container-info-codes\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e3db441 elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"e3db441\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t   <div class=\"container\">\n        <div class=\"rowTwo\">\n          <h2 class=\"title\">\n INTRODUC\u00cd EL C\u00d3DIGO ALFANUM\u00c9RICO QUE APARECE EN EL BUBBLE TAG\u2122 DE TU BOTELLA DE ALTAIR \/ CABO DE HORNOS\n          <\/h2>\n\n          <div class=\"botell-ingreso\">\n            <div class=\"qr-form\">\n              <form method=\"post\" onsubmit=\"handleSubmit(event)\" action=\"\">\n                <div class=\"userInput\">\n                  <input type=\"text\" name=\"tagNumber\" onfocus=\"hiddenInvalid()\" id=\"tagNumberInput\" placeholder=\"N\u00daMERO DE ETIQUETA\">\n                  <input type=\"hidden\" name=\"Lang\" id=\"LangInput\">\n                  <input type=\"hidden\" name=\"sessionId\" id=\"sessionIdInput\">\n                  <input type=\"submit\" id=\"edit-submit\" name=\"op\" value=\"VERIFICAR\" class=\"form-submit\">\n                  <div id=\"container-info-error\">\n                    <h3>Invalid code<\/h3>\n                  <\/div>\n                <\/div>\n              <\/form>\n            <\/div>\n          <\/div>\n          <div id=\"info-codigo\">\n            <div class=\"loader\"><\/div>\n            <div id=\"contenido-response\" class=\"content\">\n              <div id=\"container-iframe-errors\">\n                <h5 id=\"title-error\"><\/h5>\n                <h5 id=\"lockout-notice\" style=\"color: red !important; display: none\">\n Este c\u00f3digo ha sido bloqueado por 5 minutos. Por favor, intenta de nuevo m\u00e1s tarde. \n                <\/h5>\n                <iframe id=\"error-iframe\" src=\"\"><\/iframe>\n              <\/div>\n              <div id=\"content-response\" class=\"content-response\">\n                <div class=\"row1\">\n                  <div class=\"row1-container-img\">\n                    <img decoding=\"async\" id=\"image_tag_64_bottleshot\" src=\"\" alt=\"Etiquetar imagen\" class=\"bottle-img\">\n                  <\/div>\n                  <div id=\"container-info-success\">\n                    <div>\n                      <div id=\"ref_product\" style=\"display: flex; justify-content: space-around\">\n                        <h2>\n LA ETIQUETA BURBUJA\u2122<br>PARA ESTO ES:\n                        <\/h2>\n                        <div style=\"display: flex; flex-direction: column\">\n                          <div id=\"div_image_tag_64\" style=\"  background-color: #fff; background-position: center; background-repeat: no-repeat; background-size: contain; background-origin: content-box; background-clip: content-box; background-image: inherit; position: relative; width: 118px; height: 72px; border-radius: 5px;  \"><\/div>\n\n                          <span id=\"num_tag\"><\/span>\n                        <\/div>\n                      <\/div>\n                      <hr class=\"divisor\">\n                      <div>\n                        <p class=\"text-info\">\n Observ\u00e1 detenidamente la Etiqueta Burbuja\u2122 que aparece en la pantalla.\n\nCompar\u00e1 la forma, el tama\u00f1o y la posici\u00f3n de las burbujas con la etiqueta de tu botella.\nAsegurate de que el dise\u00f1o de ambas Etiquetas Burbuja\u2122 coincida.\nVerific\u00e1 que el sello est\u00e9 firmemente adherido a la botella y sin da\u00f1os.<br><br>La presencia de una Etiqueta Burbuja\u2122 intacta y coincidente garantiza la autenticidad de la botella.\n                        <\/p>\n                      <\/div>\n                    <\/div>\n                  <\/div>\n                <\/div>\n                <div class=\"row2\">\n                  <p id=\"prd_name\"><\/p>\n                  <p id=\"desc\"><\/p>\n                  <a id=\"prd_url\" href=\"\">\n                    <button>LEER M\u00c1S<\/button>\n                  <\/a>\n                <\/div>\n              <\/div>\n              <div id=\"container-bubbles\" class=\"\">\n                <h5 id=\"title-bubbles\"><\/h5>\n                <form id=\"form-ccp\" style=\"                      display: none;                     flex-direction: column;                     justify-content: center;                     align-items: center;                     gap: 15px;                    \">\n                  <div style=\"display: flex; justify-content: center; gap: 15px\">\n                    <input type=\"text\" name=\"cpp\" id=\"cppInput\" placeholder=\"CPP\">\n                    <input type=\"hidden\" name=\"sessionId\" id=\"sessionIdInput\">\n                    <input type=\"submit\" id=\"edit-submit\" name=\"op\" value=\"VERIFICAR\" class=\"form-submit\">\n                  <\/div>\n                  <div id=\"container-info-error-ccp\" style=\"width: 100%\">\n                    <h3>Invalid code<\/h3>\n                  <\/div>\n                <\/form>\n              <\/div>\n            <\/div>\n          <\/div>\n          <div class=\"parrafo-verif\">\n            <p>\n Con el fin de garantizar la autenticidad de nuestros vinos Altair y Cabo de Hornos, todas nuestras botellas cuentan, desde la cosecha 2022, con un sello de seguridad Prooftag Bubble Seal\u2122. Este sello incluye un c\u00f3digo de burbujas \u00fanico, imposible de reproducir, asociado a un c\u00f3digo QR y a un c\u00f3digo alfanum\u00e9rico. La implementaci\u00f3n de este sistema forma parte del compromiso de Cachapoal Andes con la prevenci\u00f3n eficiente de falsificaciones y con brindar a los consumidores un respaldo de calidad superior.  \n            <\/p>\n            <p>\n En caso de inconvenientes con la autentificaci\u00f3n, por favor cont\u00e1ctanos al correo electr\u00f3nico: <a htref=\"mailto:msuarezl@vspt.cl\">msuarezl@vspt.cl<\/a>\n            <\/p>\n          <\/div>\n        <\/div>\n      <\/div>\n \n    <style>\n      input {\n        outline: none;\n        box-shadow: none;\n      }\n\n      input:focus {\n        outline: none;\n        box-shadow: none;\n      }\n      .container {\n        padding-top: 30px;\n        width: 100%;\n        overflow: hidden;\n      }\n\n      .rowTwo {\n        display: flex;\n        width: 100%;\n        height: auto;\n        padding-top: 10px;\n        padding-bottom: 20px;\n        flex-direction: column;\n        align-items: start;\n        justify-content: flex-start;\n        font-size: 14px !important;\n        text-align: left !important;\n      }\n\n      button:focus {\n        background-color: #bfab88 !important;\n        color: #fff;\n      }\n\n      .rowTwo .parrafo-verif {\n        width: 100%;\n        text-align: left !important;\n      }\n\n      .rowTwo h2 {\n        text-transform: uppercase;\n        color: #bfab88 !important;\n        font-family: \"Gill Sans\", Sans-serif !important;\n        font-size: 16px;\n        font-style: normal;\n        font-weight: 400;\n        line-height: normal;\n        letter-spacing: 1px !important;\n        margin-top: 0px;\n      }\n\n      .rowTwo .parrafo-verif p {\n        font-family: \"Gill Sans\", Sans-serif !important;\n        line-height: 28px;\n        color: #ffffff;\n        text-align: initial !important;\n      }\n\n      .rowTwo .botell-ingreso form {\n        width: 100%;\n        display: flex;\n        flex-direction: column;\n        justify-content: center;\n      }\n\n      .rowTwo .botell-ingreso form .userInput {\n        display: grid;\n        grid-template-columns: 1fr;\n        width: 100%;\n        max-width: 630px;\n        margin: 0px auto;\n        gap: 18px;\n        justify-items: center;\n      }\n\n      .rowTwo .botell-ingreso form .userInput #tagNumberInput {\n        width: 100%;\n        max-width: 360px;\n        padding: 15px 10px;\n        font-size: 1.2em;\n        text-transform: uppercase;\n        \/* border: 1px solid #bebebe; *\/\n        border-radius: 4px;\n      }\n\n      .rowTwo .botell-ingreso form .userInput #tagNumberInput::placeholder {\n        width: 100%;\n        color: #bfab88;\n        opacity: 0.3;\n        text-transform: uppercase;\n      }\n\n      .rowTwo .botell-ingreso form .userInput #tagNumberInput:focus {\n        outline: transparent;\n        background-color: #fff;\n      }\n\n      .rowTwo .botell-ingreso form .userInput #tagNumberInput::placeholder {\n        color: #bfab88;\n        font-family: \"Gill Sans\", Sans-serif !important;\n        background-color: #fff;\n        font-style: uppercase;\n      }\n\n      .rowTwo .botell-ingreso form .userInput .tagNumberError {\n        color: #e13636;\n        font-size: 1.2em;\n        user-select: none;\n        font-style: italic;\n      }\n\n      .form-submit,\n      .button-form {\n        background-color: #fff;\n        width: 100%;\n        max-width: 360px;\n        border-color: #bfab88;\n        border-radius: 0px;\n        padding: 20px 0px 17px;\n        margin: 0px auto;\n        color: #bfab88;\n        font-family: \"Gill Sans\", Sans-serif !important;\n        font-size: 14px;\n        font-style: normal;\n        font-weight: 400;\n        line-height: normal;\n        text-transform: uppercase;\n        letter-spacing: 1.25px;\n      }\n\n      .form-submit:hover,\n      .button-form:hover {\n        background-color: #bfab88;\n        color: #fff;\n      }\n\n      .button-form {\n        margin-top: 30px;\n      }\n      .parrafo-verif {\n        order: 2;\n      }\n      .botell-ingreso {\n        width: 100%;\n        order: 1;\n        margin-bottom: 20px;\n      }\n      .botell-ingreso .qr-form {\n        float: right;\n        height: auto;\n        width: 100%;\n      }\n\n      .botell-ingreso #info-codigo span.tag-number-bold {\n        font-family: \"Gill Sans\", Sans-serif !important;\n      }\n      .botell-ingreso #info-codigo .etiqueta-burbujas-img {\n        width: 100%;\n      }\n\n      #info-codigo {\n        position: relative;\n        display: block;\n        width: auto;\n        height: auto;\n        margin-left: auto;\n        margin-right: auto;\n        padding: 0px 10px;\n        display: flex;\n        text-align: center;\n        align-items: center;\n        flex-direction: column;\n        justify-content: center;\n        display: none;\n      }\n      #container-info-codes * {\n        box-sizing: border-box;\n      }\n      #info-codigo .but-close {\n        float: right;\n        margin-top: -20px;\n        margin-right: -20px;\n      }\n\n      #div_image_tag_64::after {\n        background-position: center;\n        background-repeat: no-repeat;\n        background-size: contain;\n        width: 64px;\n        height: 108px;\n        top: 50%;\n        left: 50%;\n        transform: translate(-50%, -50%) rotate(-90deg);\n      }\n      #div_image_tag_64::before {\n        content: \"\";\n        position: absolute;\n        inset: 0;\n        background-image: inherit;\n        background-position: center;\n        background-repeat: no-repeat;\n        background-size: contain;\n        transform: rotate(-90deg);\n        z-index: 1;\n        pointer-events: none;\n      }\n      #div_image_tag_64 {\n        background-image: none !important;\n        overflow: visible;\n      }\n      #ref_product h2 {\n        color: #bfab88;\n        font-family: \"Gill Sans\";\n        font-size: 20px;\n        font-style: normal;\n        font-weight: 400;\n        line-height: 28px;\n        letter-spacing: 1px;\n        text-transform: uppercase;\n      }\n      #num_tag {\n        color: #f2f2ed;\n        font-family: \"Gill Sans\";\n        font-size: 13px;\n        font-style: normal;\n        font-weight: 400;\n        line-height: 18px;\n        letter-spacing: 1px;\n        text-transform: uppercase;\n        text-align: center;\n      }\n      .divisor {\n        height: 1px;\n        background: #fff;\n        margin: 20px auto !important;\n      }\n      .text-info {\n        font-family: \"Gill Sans\";\n        font-size: 14px;\n        font-style: normal;\n        font-weight: 400;\n        line-height: 21px;\n      }\n      .rowTwo .parrafo-verif-footer {\n        width: 90%;\n        margin-top: 20px;\n        margin-bottom: 20px;\n        padding: 20px;\n        font-size: 1.4em;\n        text-align: center;\n      }\n\n      #container-info-error,\n      #container-info-error-ccp {\n        display: none;\n      }\n\n      #container-info-error h3,\n      #container-info-error-ccp h3 {\n        font-family: \"Gill Sans\", Sans-serif !important;\n        font-weight: 400 !important;\n        margin: auto;\n        color: #ff0000;\n        letter-spacing: 1px;\n        font-size: 16px;\n        text-align: center;\n        margin-top: 0px;\n        padding-top: 0px;\n      }\n\n      #contenido-response {\n        width: 100%;\n\n        flex-direction: column;\n      }\n      .content-response {\n        display: none;\n        color: #fff;\n        align-items: center;\n        flex-direction: column;\n        justify-content: space-around;\n        width: 100%;\n        max-width: 1000px;\n        margin: auto;\n      }\n      .row1 {\n        display: flex;\n        width: 100%;\n        flex-direction: column-reverse;\n        justify-content: center;\n        align-items: center;\n      }\n      .row1 .row1-container-img {\n        width: 320px;\n        height: 320px;\n\n        background-color: #000;\n      }\n      .row2 {\n        width: 100%;\n        margin-top: 100px;\n        border: 1px solid #bfab88;\n        padding: 24px;\n        display: flex;\n        justify-content: center;\n        flex-direction: column;\n      }\n      #container-iframe-errors {\n        width: 100%;\n        flex-direction: column;\n        display: none;\n      }\n\n      #error-iframe {\n        min-height: 1350px;\n      }\n\n      .bubble-list-class {\n        display: flex;\n        flex-direction: row;\n        justify-content: space-between;\n        align-items: center;\n        margin-top: 10px;\n        margin-bottom: 10px;\n        max-width: 80%;\n        margin: 10px auto;\n      }\n      h5 {\n        font-size: 16px;\n        text-align: center;\n        font-family: \"Gill Sans\", Sans-serif !important;\n        font-weight: 400;\n        margin: auto;\n        margin-bottom: 25px;\n      }\n      #container-info-success {\n        display: flex;\n        flex-direction: column;\n        align-items: flex-start;\n        text-align: left;\n        padding: 10px;\n        width: 100%;\n        max-width: 360px;\n      }\n\n      #image_tag_64_bottleshot {\n        display: none;\n      }\n\n      #container-info-success p {\n        font-size: 16px;\n        font-weight: 400;\n      }\n\n      #ref_product {\n        text-align: center;\n        text-transform: uppercase;\n        font-family: \"Gill Sans\", Sans-serif !important;\n        color: #bfab88;\n        font-size: 16px;\n        line-height: normal;\n        letter-spacing: 6px;\n      }\n      #prd_name {\n        color: #fff;\n        text-align: center;\n        font-family: \"Libre Baskerville\", Sans-serif;\n        font-size: 26px;\n        font-style: normal;\n        font-weight: 400;\n        line-height: 53px; \/* 203.846% *\/\n        letter-spacing: -1px;\n        margin: auto;\n        padding: 0 10px;\n        margin-top: -50px;\n        max-width: max-content;\n        background: #0a1723;\n      }\n      #desc {\n        width: 100%;\n        max-width: 345px;\n        margin: 32px auto 20px;\n        text-align: start;\n        font-family: \"Gill Sans\";\n        font-size: 13px;\n        font-style: normal;\n        font-weight: 400;\n        line-height: 29px;\n      }\n      #prd_url {\n        display: none;\n        margin: auto;\n        width: 100%;\n        max-width: 345px;\n      }\n      #prd_url button {\n        color: #bfab88;\n        text-align: center;\n        font-family: \"Gill Sans\";\n        font-size: 18px;\n        font-style: normal;\n        font-weight: 500;\n        line-height: 36px;\n        letter-spacing: 5.4px;\n        text-transform: uppercase;\n        background: transparent;\n        border: 1px solid #bfab88;\n        width: 100%;\n      }\n      .bottle-img {\n        width: 100%;\n        height: 100% !important;\n        margin: auto;\n        object-fit: contain;\n        object-position: center;\n      }\n\n      .burble-img {\n        margin: auto;\n      }\n\n      .button-bubble {\n        background: transparent;\n        border: 0px;\n        padding: 5px;\n        border-radius: 5px;\n      }\n      .button-bubble:hover {\n        background: rgba(175, 157, 157, 0.4);\n      }\n\n      @media (min-width: 768px) {\n        .row1 {\n          flex-direction: row;\n          justify-content: space-around;\n        }\n        .row1 .row1-container-img {\n          width: 450px;\n          height: 450px;\n        }\n        #ref_product {\n          text-align: initial;\n        }\n        .rowTwo .botell-ingreso form .userInput {\n          display: grid;\n          grid-template-columns: 1.4fr 1fr;\n          width: 100%;\n          gap: 18px;\n          justify-items: start;\n        }\n\n        .rowTwo .botell-ingreso form .userInput {\n          justify-items: start;\n        }\n        .rowTwo .parrafo-verif p {\n          text-align: justify;\n        }\n      }\n\n      @media (min-width: 1025px) {\n        .botell-ingreso {\n          width: 100%;\n        }\n      }\n    <\/style>\n    <script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/dompurify\/3.0.9\/purify.min.js\"><\/script>\n\n    <script>\n      function isValidURL(url) {\n        try {\n          new URL(url);\n          return true;\n        } catch (error) {\n          return false;\n        }\n      }\n\n      async function handleSubmitWithCCP(\n        tagNumber,\n        CCP,\n        control_key_id,\n        control_key_name,\n        control_key_label,\n        session_id\n      ) {\n        try {\n          const res = await fetch(\n            \"\/auth2\/prooftag\/prooftag-auth-ajax.php\",\n            {\n              method: \"POST\",\n              headers: {\n                \"Content-Type\": \"application\/json\",\n              },\n              body: JSON.stringify({\n                tag: tagNumber,\n                type: \"1\",\n                control_key_value: CCP,\n                control_key_id: control_key_id,\n                control_key_name: control_key_name,\n                control_key_label: control_key_label,\n                control_session_id: session_id,\n              }),\n            }\n          );\n          const json = await res.json();\n\n          if (json.data) {\n            const data = json.data;\n            document.getElementById(\"container-img\").style.display = \"none\";\n            document.getElementById(\"container-info-codes\").style.width =\n              \"100%\";\n            if (data.msg_id === \"106\") {\n              document.getElementById(\n                \"container-info-error-ccp\"\n              ).style.display = \"flex\";\n            }\n            if (json.data.msg_id === \"0\") {\n              document.getElementById(\n                \"container-info-error-ccp\"\n              ).style.display = \"none\";\n              document.getElementById(\"container-bubbles\").style.display =\n                \"none\";\n              if (!!data.prd_image_64) {\n                document.getElementById(\"content-response\").style.display =\n                  \"flex\";\n                document.getElementById(\n                  \"image_tag_64_bottleshot\"\n                ).style.display = \"flex\";\n                document.getElementById(\"image_tag_64_bottleshot\").src =\n                  \"data:image\/jpg;base64,\" + data.prd_image_64;\n              } else {\n                document.getElementById(\"content-response\").style.display =\n                  \"flex\";\n              }\n              const cleanDesc = DOMPurify.sanitize(data.prd_desc);\n              document.getElementById(\"prd_name\").innerText = data.prd_name;\n              document.getElementById(\"desc\").innerHTML = cleanDesc;\n              document.getElementById(\"num_tag\").innerText = data.num_tag;\n    \n              document.getElementById(\n                \"div_image_tag_64\"\n              ).style.backgroundImage =\n                \"url('data:image\/jpg;base64,\" + data.image_tag_64 + \"')\";\n              let styleTag = document.getElementById(\n                \"dynamic-style-div-image-tag-64-after\"\n              );\n              if (!styleTag) {\n                styleTag = document.createElement(\"style\");\n                styleTag.id = \"dynamic-style-div-image-tag-64-after\";\n                document.head.appendChild(styleTag);\n              }\n              styleTag.innerHTML = `#div_image_tag_64::after { background-image: url('data:image\/jpg;base64,${data.image_tag_64}'); background-position: center; background-repeat: no-repeat; background-size: contain; content: ''; position: absolute; inset: 0; z-index: 2; pointer-events: none; }`;\n\n              if (data.prd_url) {\n                document.getElementById(\"prd_url\").href = data.prd_url;\n                document.getElementById(\"prd_url\").style.display = \"block\";\n              }\n          \n            }\n          }\n        } catch (error) {\n          console.log(error);\n        }\n      }\n\n      async function handleBubblesSubmit(codigo, sessionId, dataValue) {\n        try {\n          const res = await fetch(\n            \"\/auth2\/prooftag\/prooftag-auth-ajax.php\",\n            {\n              method: \"POST\",\n              headers: {\n                \"Content-Type\": \"application\/json\",\n              },\n              body: JSON.stringify({\n                tag: codigo,\n                type: \"2\",\n                control_session_id: sessionId,\n                control_bubble_index: dataValue,\n              }),\n            }\n          );\n          const json = await res.json();\n          console.log(\"json\", json);\n          if (json.data) {\n            const type = json.type;\n            const msg = json.msg;\n            const data = json.data;\n            const status = json.status;\n            document.getElementById(\"container-img\").style.display = \"none\";\n            document.getElementById(\"container-info-codes\").style.width =\n              \"100%\";\n            if (data.msg_id === \"0\") {\n              if (!!data.prd_image_64) {\n                document.getElementById(\"content-response\").style.display =\n                  \"flex\";\n\n                document.getElementById(\n                  \"image_tag_64_bottleshot\"\n                ).style.display = \"flex\";\n                document.getElementById(\"image_tag_64_bottleshot\").src =\n                  \"data:image\/jpg;base64,\" + data.prd_image_64;\n              } else {\n                document.getElementById(\"content-response\").style.display =\n                  \"flex\";\n              }\n              document.getElementById(\"container-bubbles\").style.display =\n                \"none\";\n              document.getElementById(\"prd_name\").innerText = data.prd_name;\n              const cleanDesc = DOMPurify.sanitize(data.prd_desc);\n              document.getElementById(\"desc\").innerHTML = cleanDesc;\n              document.getElementById(\"num_tag\").innerText = data.num_tag;\n           \n              document.getElementById(\n                \"div_image_tag_64\"\n              ).style.backgroundImage =\n                \"url('data:image\/jpg;base64,\" + data.image_tag_64 + \"')\";\n              let styleTag = document.getElementById(\n                \"dynamic-style-div-image-tag-64-after\"\n              );\n              if (!styleTag) {\n                styleTag = document.createElement(\"style\");\n                styleTag.id = \"dynamic-style-div-image-tag-64-after\";\n                document.head.appendChild(styleTag);\n              }\n              styleTag.innerHTML = `#div_image_tag_64::after { background-image: url('data:image\/jpg;base64,${data.image_tag_64}'); background-position: center; background-repeat: no-repeat; background-size: contain; content: ''; position: absolute; inset: 0; z-index: 2; pointer-events: none; }`;\n\n              if (data.prd_url) {\n                document.getElementById(\"prd_url\").href = data.prd_url;\n                document.getElementById(\"prd_url\").style.display = \"block\";\n              }\n            } else if (data.msg_id === \"20\") {\n              document.getElementById(\"lockout-notice\").style.display = \"flex\";\n              document.getElementById(\"lockout-notice\").innerHTML =\n                \"The session has expired since the last call.\";\n            }\n            if (data.iframe_url && isValidURL(data.iframe_url)) {\n              document.getElementById(\"container-bubbles\").style.display =\n                \"none\";\n              document.getElementById(\"container-iframe-errors\").style.display =\n                \"flex\";\n              document.getElementById(\"title-error\").innerText = msg;\n              document.getElementById(\"error-iframe\").src = data.iframe_url;\n            } else {\n              document.getElementById(\n                \"container-info-error-ccp\"\n              ).style.display = \"flex\";\n            }\n          }\n        } catch (error) {\n          console.log(error);\n        }\n      }\n      async function handleSubmit(event) {\n        try {\n          event?.preventDefault();\n          const tagNumber = document.getElementById(\"tagNumberInput\").value;\n          const sessionID = document.getElementById(\"sessionIdInput\").value;\n\n          if (tagNumber.length < 1) {\n            document.getElementById(\"container-info-error\").style.display =\n              \"flex\";\n            return;\n          }\n\n            const res = await fetch(\n              \"\/auth2\/prooftag\/prooftag-auth-ajax.php\",\n              {\n                method: \"POST\",\n                headers: {\n                  \"Content-Type\": \"application\/json\",\n                },\n                body: JSON.stringify({\n                  tag: tagNumber,\n                  sessionID: sessionID,\n                }),\n              }\n            );\n            const json = await res.json();\n\n          if (json.data) {\n            const type = json.type;\n            const msg = json.msg;\n            const data = json.data;\n            const status = json.status;\n\n            document.getElementById(\"container-info-codes\").style.width =\n              \"100%\";\n            if (data.iframe_url && !isValidURL(data.iframe_url)) {\n              document.getElementById(\"info-codigo\").style.display = \"none\";\n              document.getElementById(\"container-info-error\").style.display =\n                \"flex\";\n              document.querySelector(\".loader\").style.display = \"none\";\n            } else {\n              document.querySelector(\".title\").style.display = \"none\";\n              document.getElementById(\"container-img\").style.display = \"none\";\n              document.querySelector(\n                \".content_container\"\n              ).style.gridTemplateColumns = \"1fr\";\n\n              document.querySelector(\".parrafo-verif\").style.display = \"none\";\n              document.querySelector(\".botell-ingreso\").style.display = \"none\";\n              document.querySelector(\".loader\").style.display = \"none\";\n              document.getElementById(\"info-codigo\").style.display = \"flex\";\n              document.getElementById(\"info-codigo\").style.width = \"100%\";\n              document.getElementById(\"contenido-response\").style.display =\n                \"flex\";\n              if (json.data.msg_id === \"0\") {\n                if (!!data.prd_image_64) {\n                  document.getElementById(\"content-response\").style.display =\n                    \"flex\";\n\n                  document.getElementById(\n                    \"image_tag_64_bottleshot\"\n                  ).style.display = \"flex\";\n                  document.getElementById(\"image_tag_64_bottleshot\").src =\n                    \"data:image\/jpg;base64,\" + data.prd_image_64;\n                } else {\n                  document.getElementById(\"content-response\").style.display =\n                    \"flex\";\n                }\n\n                document.getElementById(\"prd_name\").innerText = data.prd_name;\n                const cleanDesc = DOMPurify.sanitize(data.prd_desc);\n                console.log(data.prd_desc, cleanDesc);\n                document.getElementById(\"desc\").innerHTML = cleanDesc;\n                document.getElementById(\"num_tag\").innerText = data.num_tag;\n             \n                document.getElementById(\n                  \"div_image_tag_64\"\n                ).style.backgroundImage =\n                  \"url('data:image\/jpg;base64,\" + data.image_tag_64 + \"')\";\n                let styleTag = document.getElementById(\n                  \"dynamic-style-div-image-tag-64-after\"\n                );\n                if (!styleTag) {\n                  styleTag = document.createElement(\"style\");\n                  styleTag.id = \"dynamic-style-div-image-tag-64-after\";\n                  document.head.appendChild(styleTag);\n                }\n                styleTag.innerHTML = `#div_image_tag_64::after { background-image: url('data:image\/jpg;base64,${data.image_tag_64}'); background-position: center; background-repeat: no-repeat; background-size: contain; content: ''; position: absolute; inset: 0; z-index: 2; pointer-events: none; }`;\n                if (data.prd_url) {\n                  document.getElementById(\"prd_url\").href = data.prd_url;\n                  document.getElementById(\"prd_url\").style.display = \"block\";\n                }\n              } else if (data.iframe_url) {\n                document.getElementById(\"contenido-response\").style.display =\n                  \"flex\";\n                document.getElementById(\n                  \"container-iframe-errors\"\n                ).style.display = \"flex\";\n\n                document.getElementById(\"title-error\").innerText = msg;\n                if (data.msg_id === \"108\" || data.msg_id === \"30\") {\n                  document.getElementById(\"lockout-notice\").style.display =\n                    \"flex\";\n                }\n                if (data.msg_id === \"20\") {\n                  document.getElementById(\"lockout-notice\").style.display =\n                    \"flex\";\n                  document.getElementById(\"lockout-notice\").innerHTML =\n                    \"The session has expired since the last call.\";\n                }\n                document.getElementById(\"error-iframe\").src = data.iframe_url;\n              }\n\n              if (data?.bubbles) {\n                var bubbles = data.bubbles;\n                var containerBubbles =\n                  document.getElementById(\"container-bubbles\");\n                containerBubbles.style.display = \"block\";\n                document.getElementById(\"title-bubbles\").innerText = msg;\n                if (data?.type === \"CONTROL_BUBBLE\") {\n                  var bubbleList = document.createElement(\"div\");\n                  bubbleList.classList.add(\"bubble-list-class\");\n                  bubbles.forEach(function (bubble) {\n                    var button = document.createElement(\"button\");\n                    button.classList.add(\"button-bubble\");\n                    button.addEventListener(\"click\", function () {\n                      console.log(tagNumber, data.session_id, bubble.dataValue);\n                      handleBubblesSubmit(\n                        tagNumber,\n                        data.session_id,\n                        bubble.dataValue\n                      );\n                    });\n                    var img = document.createElement(\"img\");\n                    img.src = \"data:image\/jpg;base64,\" + bubble.dataContent;\n                    button.appendChild(img);\n                    bubbleList.appendChild(button);\n                  });\n                  containerBubbles.appendChild(bubbleList);\n                } else {\n                  console.log(\"CODE CCP\");\n                  var form = document.getElementById(\"form-ccp\");\n                  form.style.display = \"flex\";\n                  form.addEventListener(\"submit\", function (event) {\n                    event.preventDefault();\n                    var codigoInput = document.getElementById(\"cppInput\");\n                    var CCP = codigoInput.value;\n                    console.log(\n                      tagNumber,\n                      CCP,\n                      data.control_key_id,\n                      data.control_key_name,\n                      data.control_key_label,\n                      data.session_id\n                    );\n                    handleSubmitWithCCP(\n                      tagNumber,\n                      CCP,\n                      data.control_key_id,\n                      data.control_key_name,\n                      data.control_key_label,\n                      data.session_id\n                    );\n                  });\n                }\n              }\n            }\n          }\n        } catch (error) {\n          console.log(error);\n        }\n      }\n\n      function hiddenInvalid() {\n        try {\n          let el = document.getElementById(\"container-info-error\");\n          if (el) el.style.display = \"none\";\n        } catch (error) {\n          console.log(error);\n        }\n      }\n\n      try {\n        document.addEventListener(\"DOMContentLoaded\", function () {\n          console.log(\"se ejecuto el script\");\n          let closeButton = document.querySelector(\".but-close\");\n          if (closeButton) {\n            closeButton.addEventListener(\"click\", function (e) {\n              document.getElementById(\"info-codigo\").style.display = \"none\";\n              document.getElementById(\"info-codigo\").innerHTML =\n                \"<div class='loader'><\/div>\";\n              document.querySelector(\".loader\").style.display = \"block\";\n            });\n          }\n\n          let urlParams = new URLSearchParams(window.location.search);\n          let tag = urlParams.get(\"tag\");\n          let sessionId = urlParams.get(\"sessionId\");\n          if (tag || sessionId) {\n            document.getElementById(\"tagNumberInput\").value = tag;\n\n            document.getElementById(\"sessionIdInput\").value = sessionId;\n            handleSubmit();\n          }\n        });\n      } catch (error) {\n        console.log(error);\n      }\n    <\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>INTRODUC\u00cd EL C\u00d3DIGO ALFANUM\u00c9RICO QUE APARECE EN EL BUBBLE TAG\u2122 DE TU BOTELLA DE ALTAIR \/ CABO DE HORNOS Invalid code Este c\u00f3digo ha sido bloqueado por 5 minutos. Por favor, intenta de nuevo m\u00e1s tarde. LA ETIQUETA BURBUJA\u2122PARA ESTO ES: Observ\u00e1 detenidamente la Etiqueta Burbuja\u2122 que aparece en la pantalla. Compar\u00e1 la forma, el [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-212","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>AUTENTIFICA TU BOTELLA - San Pedro<\/title>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"AUTENTIFICA TU BOTELLA - San Pedro\" \/>\n<meta property=\"og:description\" content=\"INTRODUC\u00cd EL C\u00d3DIGO ALFANUM\u00c9RICO QUE APARECE EN EL BUBBLE TAG\u2122 DE TU BOTELLA DE ALTAIR \/ CABO DE HORNOS Invalid code Este c\u00f3digo ha sido bloqueado por 5 minutos. Por favor, intenta de nuevo m\u00e1s tarde. LA ETIQUETA BURBUJA\u2122PARA ESTO ES: Observ\u00e1 detenidamente la Etiqueta Burbuja\u2122 que aparece en la pantalla. Compar\u00e1 la forma, el [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/sanpedro.argency.com\/es\/autentifica-tu-botella\" \/>\n<meta property=\"og:site_name\" content=\"San Pedro\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-05T18:40:55+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/sanpedro.argency.com\/wp-content\/uploads\/2025\/03\/bottles.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/sanpedro.argency.com\\\/es\\\/autentifica-tu-botella\",\"url\":\"https:\\\/\\\/sanpedro.argency.com\\\/es\\\/autentifica-tu-botella\",\"name\":\"AUTENTIFICA TU BOTELLA - San Pedro\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/sanpedro.argency.com\\\/es#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/sanpedro.argency.com\\\/es\\\/autentifica-tu-botella#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/sanpedro.argency.com\\\/es\\\/autentifica-tu-botella#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/sanpedro.argency.com\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/bottles.png\",\"datePublished\":\"2025-02-12T14:24:34+00:00\",\"dateModified\":\"2025-08-05T18:40:55+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/sanpedro.argency.com\\\/es\\\/autentifica-tu-botella#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/sanpedro.argency.com\\\/es\\\/autentifica-tu-botella\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/sanpedro.argency.com\\\/es\\\/autentifica-tu-botella#primaryimage\",\"url\":\"https:\\\/\\\/sanpedro.argency.com\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/bottles.png\",\"contentUrl\":\"https:\\\/\\\/sanpedro.argency.com\\\/wp-content\\\/uploads\\\/2025\\\/03\\\/bottles.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/sanpedro.argency.com\\\/es\\\/autentifica-tu-botella#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/sanpedro.argency.com\\\/es\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"AUTENTIFICA TU BOTELLA\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/sanpedro.argency.com\\\/es#website\",\"url\":\"https:\\\/\\\/sanpedro.argency.com\\\/es\",\"name\":\"San Pedro\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/sanpedro.argency.com\\\/es#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/sanpedro.argency.com\\\/es?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/sanpedro.argency.com\\\/es#organization\",\"name\":\"San Pedro\",\"url\":\"https:\\\/\\\/sanpedro.argency.com\\\/es\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/sanpedro.argency.com\\\/es#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/sanpedro.argency.com\\\/wp-content\\\/uploads\\\/2025\\\/02\\\/logo_menu.png\",\"contentUrl\":\"https:\\\/\\\/sanpedro.argency.com\\\/wp-content\\\/uploads\\\/2025\\\/02\\\/logo_menu.png\",\"width\":371,\"height\":93,\"caption\":\"San Pedro\"},\"image\":{\"@id\":\"https:\\\/\\\/sanpedro.argency.com\\\/es#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"AUTENTIFICA TU BOTELLA - San Pedro","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"es_ES","og_type":"article","og_title":"AUTENTIFICA TU BOTELLA - San Pedro","og_description":"INTRODUC\u00cd EL C\u00d3DIGO ALFANUM\u00c9RICO QUE APARECE EN EL BUBBLE TAG\u2122 DE TU BOTELLA DE ALTAIR \/ CABO DE HORNOS Invalid code Este c\u00f3digo ha sido bloqueado por 5 minutos. Por favor, intenta de nuevo m\u00e1s tarde. LA ETIQUETA BURBUJA\u2122PARA ESTO ES: Observ\u00e1 detenidamente la Etiqueta Burbuja\u2122 que aparece en la pantalla. Compar\u00e1 la forma, el [&hellip;]","og_url":"https:\/\/sanpedro.argency.com\/es\/autentifica-tu-botella","og_site_name":"San Pedro","article_modified_time":"2025-08-05T18:40:55+00:00","og_image":[{"url":"https:\/\/sanpedro.argency.com\/wp-content\/uploads\/2025\/03\/bottles.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Tiempo de lectura":"2 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/sanpedro.argency.com\/es\/autentifica-tu-botella","url":"https:\/\/sanpedro.argency.com\/es\/autentifica-tu-botella","name":"AUTENTIFICA TU BOTELLA - San Pedro","isPartOf":{"@id":"https:\/\/sanpedro.argency.com\/es#website"},"primaryImageOfPage":{"@id":"https:\/\/sanpedro.argency.com\/es\/autentifica-tu-botella#primaryimage"},"image":{"@id":"https:\/\/sanpedro.argency.com\/es\/autentifica-tu-botella#primaryimage"},"thumbnailUrl":"https:\/\/sanpedro.argency.com\/wp-content\/uploads\/2025\/03\/bottles.png","datePublished":"2025-02-12T14:24:34+00:00","dateModified":"2025-08-05T18:40:55+00:00","breadcrumb":{"@id":"https:\/\/sanpedro.argency.com\/es\/autentifica-tu-botella#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/sanpedro.argency.com\/es\/autentifica-tu-botella"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/sanpedro.argency.com\/es\/autentifica-tu-botella#primaryimage","url":"https:\/\/sanpedro.argency.com\/wp-content\/uploads\/2025\/03\/bottles.png","contentUrl":"https:\/\/sanpedro.argency.com\/wp-content\/uploads\/2025\/03\/bottles.png"},{"@type":"BreadcrumbList","@id":"https:\/\/sanpedro.argency.com\/es\/autentifica-tu-botella#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/sanpedro.argency.com\/es"},{"@type":"ListItem","position":2,"name":"AUTENTIFICA TU BOTELLA"}]},{"@type":"WebSite","@id":"https:\/\/sanpedro.argency.com\/es#website","url":"https:\/\/sanpedro.argency.com\/es","name":"San Pedro","description":"","publisher":{"@id":"https:\/\/sanpedro.argency.com\/es#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/sanpedro.argency.com\/es?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/sanpedro.argency.com\/es#organization","name":"San Pedro","url":"https:\/\/sanpedro.argency.com\/es","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/sanpedro.argency.com\/es#\/schema\/logo\/image\/","url":"https:\/\/sanpedro.argency.com\/wp-content\/uploads\/2025\/02\/logo_menu.png","contentUrl":"https:\/\/sanpedro.argency.com\/wp-content\/uploads\/2025\/02\/logo_menu.png","width":371,"height":93,"caption":"San Pedro"},"image":{"@id":"https:\/\/sanpedro.argency.com\/es#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/sanpedro.argency.com\/es\/wp-json\/wp\/v2\/pages\/212","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sanpedro.argency.com\/es\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sanpedro.argency.com\/es\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sanpedro.argency.com\/es\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/sanpedro.argency.com\/es\/wp-json\/wp\/v2\/comments?post=212"}],"version-history":[{"count":0,"href":"https:\/\/sanpedro.argency.com\/es\/wp-json\/wp\/v2\/pages\/212\/revisions"}],"wp:attachment":[{"href":"https:\/\/sanpedro.argency.com\/es\/wp-json\/wp\/v2\/media?parent=212"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}