var scriptPath = "https://static.advance.net/static/common/js/piano-frame.js";
var script = document.createElement("script");
script.onload = function(e) {
function runPiano() {
var config = {
type: 'eoa',
version: '',
};
window.Advance.piano.build(config);
}
window.Advance.piano.start(runPiano);
}
script.type = "text/javascript"; script.async = true; script.src = scriptPath; document.head.appendChild(script);
window.addEventListener("message", function (e) {
// We verify that the error message is coming from Piano, so it must be what we're looking for.
if (typeof e.data.piano !== 'undefined') {
// Get the object with the result.
var result = e.data.piano;
// We know how this object should be structured, so we're checking for the "success" field.
if (result.object.breakpoint) {
// Add the viewport class to the main Our Story element
var container = document.getElementsByClassName('eoa')[0];
var containerClass = 'eoa--' + result.object.breakpoint;
container.classList.add(containerClass);
}
if (result.object.type === 'newsletter') {
// We're expecting it to be false, so we can show an error message.
var message = document.getElementById('EOA_text');
var form = document.getElementById('EOA_form');
var errorText = document.getElementById('EOA_error');
if (result.success) {
// Show success message
message.textContent = result.message;
// Hide form field, button, and any error messages
form.style.display = 'none';
errorText.style.display = 'none';
} else {
// Show error message
errorText.textContent = result.message;
errorText.style.display = 'block';
}
}
}
return;
}, false);