!function(){"use strict";var e=window.wp.i18n;const{nypost_wp_vars:{sailthru_form_email_validation_url:t,wp_ajax_url:i,sailthru_form_nonce:n,horoscope_list_id:s}}=window.nypScripts,d="newsletter-form--error",o="newsletter-form--success",a="inline-module__title-wrapper--success",r=document.querySelectorAll("[data-nypost-editor='newsletter-block']");function c(e){const t=e.closest(".inline-module__inner");return t?t.querySelector(".inline-module__title-wrapper"):null}const l=function(e,t){let i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"";e.classList.remove(o),e.classList.add(d);const n=e.querySelector(t);n&&n.classList.add("form-error");const s=e.querySelector(".error_msg");s&&i&&(s.innerText=i);const r=c(e);r&&r.classList.remove(a)};function p(r){r.preventDefault(),async function(r){const p=new FormData(r),u=p.get("list_id")===s,_=[{status:"unknown",code:5,description:(0,e.__)("Timeout. Did not get a response in time.","nyp-editor")},{status:"unknown",code:10,description:(0,e.__)("Syntax OK.","nyp-editor")},{status:"unknown",code:20,description:(0,e.__)("Syntax OK and the domain is valid.","nyp-editor")},{status:"unverifiable",code:45,description:(0,e.__)("Domain is a catch all and does not support validation.","nyp-editor")},{status:"valid",code:50,description:(0,e.__)("Valid email address.","nyp-editor")},{status:"invalid",code:100,description:(0,e.__)("General syntax error.","nyp-editor")},{status:"invalid",code:110,description:(0,e.__)("Invalid character in address.","nyp-editor")},{status:"invalid",code:115,description:(0,e.__)("Invalid domain syntax.","nyp-editor")},{status:"invalid",code:120,description:(0,e.__)("Invalid username syntax.","nyp-editor")},{status:"invalid",code:125,description:(0,e.__)("Invalid username syntax for that domain.","nyp-editor")},{status:"invalid",code:130,description:(0,e.__)("Address is too long.","nyp-editor")},{status:"invalid",code:135,description:(0,e.__)("Address has unbalanced parentheses.","nyp-editor")},{status:"invalid",code:140,description:(0,e.__)("Address doesn't have a username.","nyp-editor")},{status:"invalid",code:145,description:(0,e.__)("Address doesn't have a domain.","nyp-editor")},{status:"invalid",code:150,description:(0,e.__)("Address doesn't have an @ sign.","nyp-editor")},{status:"invalid",code:155,description:(0,e.__)("Address has more than one @ sign.","nyp-editor")},{status:"invalid",code:200,description:(0,e.__)("Invalid top-level domain (TLD) in address.","nyp-editor")},{status:"invalid",code:205,description:(0,e.__)("IP address is not allowed as a domain.","nyp-editor")},{status:"invalid",code:210,description:(0,e.__)("Address contains an extra space or character.","nyp-editor")},{status:"invalid",code:215,description:(0,e.__)("Unquoted spaces not allowed in email addresses.","nyp-editor")},{status:"invalid",code:310,description:(0,e.__)("Domain doesn't exist.","nyp-editor")},{status:"invalid",code:315,description:(0,e.__)("Domain doesn't have a valid IP address.","nyp-editor")},{status:"invalid",code:325,description:(0,e.__)("Domain can't receive email.","nyp-editor")},{status:"invalid",code:400,description:(0,e.__)("Mailbox doesn't exist.","nyp-editor")},{status:"invalid",code:410,description:(0,e.__)("The mailbox is full and can't receive email.","nyp-editor")},{status:"invalid",code:420,description:(0,e.__)("Mail isn't accepted for this domain.","nyp-editor")},{status:"invalid",code:500,description:(0,e.__)("Emails with that username aren't accepted.","nyp-editor")},{status:"invalid",code:505,description:(0,e.__)("Emails with that domain aren't accepted.","nyp-editor")},{status:"invalid",code:510,description:(0,e.__)("That address isn't accepted.","nyp-editor")},{status:"invalid",code:520,description:(0,e.__)("Address matched to known bouncers (optional feature).","nyp-editor")},{status:"risky",code:525,description:(0,e.__)("Address is a spamtrap, a known complainer or is suppressed.","nyp-editor")},{status:"risky",code:530,description:(0,e.__)("Address has opted out from commercial email.","nyp-editor")},{status:"unknown",code:999,description:(0,e.__)("System error.","nyp-editor")}];if(u){let t=p.get("birth_month"),i=p.get("birth_day");if(t=Number(t),i=Number(i),!(t>=1&&t<=12&&i>=1&&i<=31))return void l(r,".birthdate-container",(0,e.__)("Please add the required fields.","nyp-editor"))}(async function(e,i){const n=await fetch(t,{body:`email=${encodeURIComponent(e)}&tower_source=${encodeURIComponent("nypost")}`,headers:{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},method:"POST"});return await n.json()})(p.get("email")).then((t=>{if(p.append("action","newsletter_subscription"),p.append("newsletter_subscription",n),!0===t.pass)(async function(e){const t=new URLSearchParams(e),n=await fetch(i,{body:t,headers:{"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},method:"POST",credentials:"same-origin"});return await n.json()})(p).then((t=>{"true"===t.subscribed?async function(e){e.classList.remove(d),e.classList.add(o);const t=c(e);t&&t.classList.add(a)}(r):l(r,".floating-label__input--email",(0,e.__)("System error.","nyp-editor"))}));else{let e="";t.status_code&&(e=_.find((e=>e.code===t.status_code)).description),l(r,".floating-label__input--email",e)}})).catch((e=>{l(r,".floating-label__input--email",e)}))}(r.target)}Array.from(r).forEach((e=>{e.addEventListener("submit",p,!1),e.querySelector(".submit").removeAttribute("disabled")})),document.addEventListener("DOMContentLoaded",(()=>{const e=document.querySelector('select[name="birth_month"]'),t=document.querySelector('select[name="birth_day"]');if(!e||!t)return;const i={1:31,2:29,3:31,4:30,5:31,6:30,7:31,8:31,9:30,10:31,11:30,12:31};e.addEventListener("change",(e=>{if(Number(e.target.value)){const n=i[e.target.value];for(;t.children.length>=29;)t.removeChild(t.lastChild);if(n-t.children.length>0)for(let e=29;e<=n;e+=1){const i=document.createElement("option");i.value=e,i.textContent=e,t.appendChild(i)}t.disabled&&t.removeAttribute("disabled")}else t.disabled||t.setAttribute("disabled","disabled")}))}))}();