Guest User

Untitled

a guest
Apr 27th, 2018
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.74 KB | None | 0 0
  1. $(function(){
  2.  
  3. $('.mailchimp-form').each(function(_index, _form) {
  4. $(_form).on('submit', sendMailchimpListSubscription);
  5. });
  6.  
  7.  
  8. function sendMailchimpListSubscription(event) {
  9. event.preventDefault();
  10. var uri = '/plugins/mailchimp-list-subscription/';
  11. var form = $(event.currentTarget);
  12. var formEmailField = form.find('[name=email]');
  13. var subscriptionEmail = formEmailField[0].value;
  14. var pk = form.attr('data-instance-pk');
  15. var submitButton = form.find("[type='submit']");
  16. var spinner = form.find(".spinner");
  17. var buttonLabel = form.find(".btn-label");
  18. var action = 'newsletter';
  19. var success_message_container = form.parent().find('.success-message');
  20.  
  21. form.find('.input-wrapper--with-validation').removeClass('input-wrapper--is-invalid');
  22. spinner.fadeIn();
  23. buttonLabel.fadeOut();
  24.  
  25. var setHasError = function (errMsg) {
  26. spinner.fadeOut();
  27. buttonLabel.fadeIn();
  28. if(errMsg.email){
  29. form.find('.input-wrapper--with-validation').addClass('input-wrapper--is-invalid');
  30. form.find('.js-input-error-message.input-wrapper__error-message').html(errMsg.email[0]);
  31. }
  32. };
  33.  
  34. var data = {
  35. pk: pk,
  36. email: subscriptionEmail
  37. };
  38.  
  39. $.ajax({
  40. url: uri,
  41. type: "POST",
  42. data: data,
  43.  
  44. success: function (json) {
  45.  
  46. success_message_container.fadeIn();
  47. form.hide();
  48. },
  49.  
  50. error: function (xhr, errmsg, error) {
  51. console.log('this is error:', xhr);
  52. setHasError(xhr.responseJSON);
  53. }
  54. });
  55. }
  56. });
Add Comment
Please, Sign In to add comment