if (typeof OV == "undefined" || !OV) {
    var OV = {};
}

OV.newsletter = {};

OV.newsletter.useSpinner = true;

OV.newsletter.subscribe = function(e) {
  YAHOO.util.Event.preventDefault(e);
  var email = YAHOO.util.Dom.get("subscribe_email").value;
  if (email == '') {
    alert("Please enter an email address.");
  }
  else {
    if (OV.newsletter.useSpinner) OV.loading.showSpinner("subscribeSpinner", "subscribeForm");
    var obj = YAHOO.util.Connect.asyncRequest('GET', '/newsletters/subscribe?email=' + email, OV.newsletter.subscribeCallback);
  }
};

OV.newsletter.subscribeCallback = {
  success: function(o){
    var rs = YAHOO.lang.JSON.parse(o.responseText);
    if (rs.success == true) {
      if (OV.newsletter.useSpinner) OV.loading.hideSpinner("subscribeSpinner", "thankYouMsg");
      YAHOO.util.Dom.removeClass('thankYouMsg', 'hide');
      YAHOO.util.Dom.addClass('subscribeForm', 'hide');
    } else {
      if (OV.newsletter.useSpinner) OV.loading.hideSpinner("subscribeSpinner", "subscribeForm");
      alert("Sorry, we were not able to subscribe you to the newsletter: " + rs.error);
    }

  },
  failure: function(o){
    if (OV.newsletter.useSpinner) OV.loading.hideSpinner("subscribeSpinner", "subscribeForm");
    alert('error');
  }
};
