MailChimp for WordPress - Version 4.0.12

Version Description

Download this release

Release Info

Developer DvanKooten
Plugin Icon 128x128 MailChimp for WordPress
Version 4.0.12
Comparing to
See all releases

Code changes from version 4.0.11 to 4.0.12

CHANGELOG.md CHANGED
@@ -1,6 +1,25 @@
1
  Changelog
2
  =========
3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  #### 4.0.11 - December 9, 2016
5
 
6
  **Fixes**
1
  Changelog
2
  =========
3
 
4
+ #### 4.0.12 - January 16, 2017
5
+
6
+ **Fixes**
7
+
8
+ - Don't call `stripslashes` on POST data twice.
9
+
10
+ **Improvements**
11
+
12
+ - Plugin review notice is now dismissible over AJAX.
13
+ - Improved formatting of birthday fields.
14
+ - Updated Polish translations, thanks to Mateusz Lomber.
15
+ - Updated German translations, thanks to Sven de Vries.
16
+
17
+ **Additions**
18
+
19
+ - Add `update_ecommerce_store_product` method to API class.
20
+ - Throw form specific JavaScript events, like `15.subscribed` to hook into "subscribed" events for form with ID 15.
21
+
22
+
23
  #### 4.0.11 - December 9, 2016
24
 
25
  **Fixes**
assets/js/forms-api.js CHANGED
@@ -48,14 +48,20 @@ function handleFormRequest(form, action, errors, data){
48
  }
49
 
50
  // trigger events
51
- forms.trigger( 'submitted', [form]);
 
52
 
53
  if( errors ) {
54
  forms.trigger('error', [form, errors]);
 
55
  } else {
56
  // form was successfully submitted
57
  forms.trigger('success', [form, data]);
 
 
 
58
  forms.trigger(action + "d", [form, data]);
 
59
  }
60
  });
61
  }
@@ -98,6 +104,7 @@ for(var i=0; i<listeners.length;i++) {
98
  Gator(document.body).on('submit', '.mc4wp-form', function(event) {
99
  var form = forms.getByElement(event.target || event.srcElement);
100
  forms.trigger('submit', [form, event]);
 
101
  });
102
 
103
  Gator(document.body).on('focus', '.mc4wp-form', function(event) {
@@ -105,6 +112,7 @@ Gator(document.body).on('focus', '.mc4wp-form', function(event) {
105
 
106
  if( ! form.started ) {
107
  forms.trigger('started', [form, event]);
 
108
  form.started = true;
109
  }
110
  });
@@ -112,6 +120,7 @@ Gator(document.body).on('focus', '.mc4wp-form', function(event) {
112
  Gator(document.body).on('change', '.mc4wp-form', function(event) {
113
  var form = forms.getByElement(event.target || event.srcElement);
114
  forms.trigger('change', [form,event]);
 
115
  });
116
 
117
  if( config.submitted_form ) {
@@ -223,25 +232,13 @@ function all() {
223
  return forms;
224
  }
225
 
226
- function on(event,callback) {
227
- return events.on(event,callback);
228
- }
229
-
230
- function trigger(event,args) {
231
- return events.trigger(event,args);
232
- }
233
-
234
- function off(event,callback) {
235
- return events.off(event,callback);
236
- }
237
-
238
  module.exports = {
239
  "all": all,
240
  "get": get,
241
  "getByElement": getByElement,
242
- "on": on,
243
- "trigger": trigger,
244
- "off": off
245
  };
246
 
247
 
48
  }
49
 
50
  // trigger events
51
+ forms.trigger('submitted', [form]);
52
+ forms.trigger(form.id + '.submitted', [form]);
53
 
54
  if( errors ) {
55
  forms.trigger('error', [form, errors]);
56
+ forms.trigger(form.id + '.error', [form, errors]);
57
  } else {
58
  // form was successfully submitted
59
  forms.trigger('success', [form, data]);
60
+ forms.trigger(form.id + ',success', [form, data]);
61
+
62
+ // subscribed / unsubscribed
63
  forms.trigger(action + "d", [form, data]);
64
+ forms.trigger(form.id + "." + action + "d", [form, data]);
65
  }
66
  });
67
  }
104
  Gator(document.body).on('submit', '.mc4wp-form', function(event) {
105
  var form = forms.getByElement(event.target || event.srcElement);
106
  forms.trigger('submit', [form, event]);
107
+ forms.trigger(form.id + '.submit', [ form, event]);
108
  });
109
 
110
  Gator(document.body).on('focus', '.mc4wp-form', function(event) {
112
 
113
  if( ! form.started ) {
114
  forms.trigger('started', [form, event]);
115
+ forms.trigger(form.id + '.started', [form, event]);
116
  form.started = true;
117
  }
118
  });
120
  Gator(document.body).on('change', '.mc4wp-form', function(event) {
121
  var form = forms.getByElement(event.target || event.srcElement);
122
  forms.trigger('change', [form,event]);
123
+ forms.trigger(form.id + '.change', [form,event]);
124
  });
125
 
126
  if( config.submitted_form ) {
232
  return forms;
233
  }
234
 
 
 
 
 
 
 
 
 
 
 
 
 
235
  module.exports = {
236
  "all": all,
237
  "get": get,
238
  "getByElement": getByElement,
239
+ "on": events.on.bind(events),
240
+ "trigger": events.trigger.bind(events),
241
+ "off": events.off.bind(events)
242
  };
243
 
244
 
assets/js/forms-api.min.js CHANGED
@@ -1,2 +1,2 @@
1
- !function(){var e=void 0,t=void 0;!function n(t,r,i){function o(a,c){if(!r[a]){if(!t[a]){var u="function"==typeof e&&e;if(!c&&u)return u(a,!0);if(s)return s(a,!0);var f=new Error("Cannot find module '"+a+"'");throw f.code="MODULE_NOT_FOUND",f}var l=r[a]={exports:{}};t[a][0].call(l.exports,function(e){var n=t[a][1][e];return o(n?n:e)},l,l.exports,n,t,r,i)}return r[a].exports}for(var s="function"==typeof e&&e,a=0;a<i.length;a++)o(i[a]);return o}({1:[function(e,t,n){"use strict";function r(e){var t="animated"===f.auto_scroll,n={behavior:t?"smooth":"instant"};e.element.scrollIntoView(n)}function i(e,t,n,i){var o=document.body.clientHeight,s=Date.now();n&&e.setData(i),f.auto_scroll&&r(e),window.addEventListener("load",function(){var a=Date.now()-s;f.auto_scroll&&a<800&&document.body.clientHeight!=o&&r(e),c.trigger("submitted",[e]),n?c.trigger("error",[e,n]):(c.trigger("success",[e,i]),c.trigger(t+"d",[e,i]))})}function o(e,t,n){return function(){var r=this.value.trim(),i="radio"!==this.getAttribute("type")&&"checked"!==this.getAttribute("type")||this.checked,o=i&&(r===t&&""!==t||""===t&&r.length>0);n?e.style.display=o?"":"none":e.style.display=o?"none":""}}var s=window.mc4wp||{};if(window.addEventListener&&!s.ready){var a=e("gator"),c=e("./forms/forms.js"),u=window.mc4wp&&window.mc4wp.listeners?window.mc4wp.listeners:[],f=window.mc4wp_forms_config||{},l=document.querySelectorAll(".mc4wp-form [data-show-if], .mc4wp-form [data-hide-if]");[].forEach.call(l,function(e){for(var t=!!e.getAttribute("data-show-if"),n=t?e.getAttribute("data-show-if").split(":"):e.getAttribute("data-hide-if").split(":"),r=document.querySelectorAll('.mc4wp-form [name="'+n[0]+'"]'),i=n[1]||"",s=o(e,i,t),a=0;a<r.length;a++)r[a].addEventListener("change",s),r[a].addEventListener("keyup",s),s.call(r[a])});for(var h=0;h<u.length;h++)c.on(u[h].event,u[h].callback);if(a(document.body).on("submit",".mc4wp-form",function(e){var t=c.getByElement(e.target||e.srcElement);c.trigger("submit",[t,e])}),a(document.body).on("focus",".mc4wp-form",function(e){var t=c.getByElement(e.target||e.srcElement);t.started||(c.trigger("started",[t,e]),t.started=!0)}),a(document.body).on("change",".mc4wp-form",function(e){var t=c.getByElement(e.target||e.srcElement);c.trigger("change",[t,e])}),f.submitted_form){var d=f.submitted_form,m=document.getElementById(d.element_id),p=c.getByElement(m);i(p,d.action,d.errors,d.data)}s.forms=c,s.ready=!0,window.mc4wp=s}},{"./forms/forms.js":3,gator:5}],2:[function(e,t,n){"use strict";var r=e("form-serialize"),i=e("populate.js"),o=function(e,t){this.id=e,this.element=t||document.createElement("form"),this.name=this.element.getAttribute("data-name")||"Form #"+this.id,this.errors=[],this.started=!1};o.prototype.setData=function(e){try{i(this.element,e)}catch(t){console.error(t)}},o.prototype.getData=function(){return r(this.element,{hash:!0})},o.prototype.getSerializedData=function(){return r(this.element)},o.prototype.setResponse=function(e){this.element.querySelector(".mc4wp-response").innerHTML=e},o.prototype.reset=function(){this.setResponse(""),this.element.querySelector(".mc4wp-form-fields").style.display="",this.element.reset()},t.exports=o},{"form-serialize":4,"populate.js":6}],3:[function(e,t,n){"use strict";function r(e){for(var t=0;t<d.length;t++)if(d[t].id==e)return d[t];var n=document.querySelector(".mc4wp-form-"+e);return o(n,e)}function i(e){for(var t=e.form||e,n=0;n<d.length;n++)if(d[n].element==t)return d[n];return o(t)}function o(e,t){t=t||parseInt(e.getAttribute("data-id"))||0;var n=new l(t,e);return d.push(n),n}function s(){return d}function a(e,t){return h.on(e,t)}function c(e,t){return h.trigger(e,t)}function u(e,t){return h.off(e,t)}var f=e("wolfy87-eventemitter"),l=e("./form.js"),h=new f,d=[];t.exports={all:s,get:r,getByElement:i,on:a,trigger:c,off:u}},{"./form.js":2,"wolfy87-eventemitter":7}],4:[function(e,t,n){function r(e,t){"object"!=typeof t?t={hash:!!t}:void 0===t.hash&&(t.hash=!0);for(var n=t.hash?{}:"",r=t.serializer||(t.hash?s:a),i=e&&e.elements?e.elements:[],o=Object.create(null),f=0;f<i.length;++f){var l=i[f];if((t.disabled||!l.disabled)&&l.name&&u.test(l.nodeName)&&!c.test(l.type)){var h=l.name,d=l.value;if("checkbox"!==l.type&&"radio"!==l.type||l.checked||(d=void 0),t.empty){if("checkbox"!==l.type||l.checked||(d=""),"radio"===l.type&&(o[l.name]||l.checked?l.checked&&(o[l.name]=!0):o[l.name]=!1),!d&&"radio"==l.type)continue}else if(!d)continue;if("select-multiple"!==l.type)n=r(n,h,d);else{d=[];for(var m=l.options,p=!1,v=0;v<m.length;++v){var g=m[v],y=t.empty&&!g.value,w=g.value||y;g.selected&&w&&(p=!0,n=t.hash&&"[]"!==h.slice(h.length-2)?r(n,h+"[]",g.value):r(n,h,g.value))}!p&&t.empty&&(n=r(n,h,""))}}}if(t.empty)for(var h in o)o[h]||(n=r(n,h,""));return n}function i(e){var t=[],n=/^([^\[\]]*)/,r=new RegExp(f),i=n.exec(e);for(i[1]&&t.push(i[1]);null!==(i=r.exec(e));)t.push(i[1]);return t}function o(e,t,n){if(0===t.length)return e=n;var r=t.shift(),i=r.match(/^\[(.+?)\]$/);if("[]"===r)return e=e||[],Array.isArray(e)?e.push(o(null,t,n)):(e._values=e._values||[],e._values.push(o(null,t,n))),e;if(i){var s=i[1],a=+s;isNaN(a)?(e=e||{},e[s]=o(e[s],t,n)):(e=e||[],e[a]=o(e[a],t,n))}else e[r]=o(e[r],t,n);return e}function s(e,t,n){var r=t.match(f);if(r){var s=i(t);o(e,s,n)}else{var a=e[t];a?(Array.isArray(a)||(e[t]=[a]),e[t].push(n)):e[t]=n}return e}function a(e,t,n){return n=n.replace(/(\r)?\n/g,"\r\n"),n=encodeURIComponent(n),n=n.replace(/%20/g,"+"),e+(e?"&":"")+encodeURIComponent(t)+"="+n}var c=/^(?:submit|button|image|reset|file)$/i,u=/^(?:input|select|textarea|keygen)/i,f=/(\[[^\[\]]*\])/g;t.exports=r},{}],5:[function(e,t,n){!function(){function e(e,t,n){var r="blur"==t||"focus"==t;e.element.addEventListener(t,n,r)}function n(e){e.preventDefault(),e.stopPropagation()}function r(e){return f?f:f=e.matches?e.matches:e.webkitMatchesSelector?e.webkitMatchesSelector:e.mozMatchesSelector?e.mozMatchesSelector:e.msMatchesSelector?e.msMatchesSelector:e.oMatchesSelector?e.oMatchesSelector:u.matchesSelector}function i(e,t,n){if("_root"==t)return n;if(e!==n)return r(e).call(e,t)?e:e.parentNode?(l++,i(e.parentNode,t,n)):void 0}function o(e,t,n,r){d[e.id]||(d[e.id]={}),d[e.id][t]||(d[e.id][t]={}),d[e.id][t][n]||(d[e.id][t][n]=[]),d[e.id][t][n].push(r)}function s(e,t,n,r){if(d[e.id])if(t){if(!r&&!n)return void(d[e.id][t]={});if(!r)return void delete d[e.id][t][n];if(d[e.id][t][n])for(var i=0;i<d[e.id][t][n].length;i++)if(d[e.id][t][n][i]===r){d[e.id][t][n].splice(i,1);break}}else for(var o in d[e.id])d[e.id].hasOwnProperty(o)&&(d[e.id][o]={})}function a(e,t,n){if(d[e][n]){var r,o,s=t.target||t.srcElement,a={},c=0,f=0;l=0;for(r in d[e][n])d[e][n].hasOwnProperty(r)&&(o=i(s,r,m[e].element),o&&u.matchesEvent(n,m[e].element,o,"_root"==r,t)&&(l++,d[e][n][r].match=o,a[l]=d[e][n][r]));for(t.stopPropagation=function(){t.cancelBubble=!0},c=0;c<=l;c++)if(a[c])for(f=0;f<a[c].length;f++){if(a[c][f].call(a[c].match,t)===!1)return void u.cancel(t);if(t.cancelBubble)return}}}function c(e,t,n,r){function i(e){return function(t){a(f,t,e)}}if(this.element){e instanceof Array||(e=[e]),n||"function"!=typeof t||(n=t,t="_root");var c,f=this.id;for(c=0;c<e.length;c++)r?s(this,e[c],t,n):(d[f]&&d[f][e[c]]||u.addEvent(this,e[c],i(e[c])),o(this,e[c],t,n));return this}}function u(e,t){if(!(this instanceof u)){for(var n in m)if(m[n].element===e)return m[n];return h++,m[h]=new u(e,h),m[h]}this.element=e,this.id=t}var f,l=0,h=0,d={},m={};u.prototype.on=function(e,t,n){return c.call(this,e,t,n)},u.prototype.off=function(e,t,n){return c.call(this,e,t,n,!0)},u.matchesSelector=function(){},u.cancel=n,u.addEvent=e,u.matchesEvent=function(){return!0},"undefined"!=typeof t&&t.exports&&(t.exports=u),window.Gator=u}()},{}],6:[function(e,n,r){!function(e){var r=function(e,t,n){for(var i in t)if(t.hasOwnProperty(i)){var o=i,s=t[i];if("undefined"!=typeof n&&(o=n+"["+i+"]"),s.constructor===Array)o+="[]";else if("object"==typeof s){r(e,s,o);continue}var a=e.elements.namedItem(o);if(a){var c=a.type||a[0].type;switch(c){default:a.value=s;break;case"radio":case"checkbox":for(var u=0;u<a.length;u++)a[u].checked=s.indexOf(a[u].value)>-1;break;case"select-multiple":for(var f=s.constructor==Array?s:[s],l=0;l<a.options.length;l++)a.options[l].selected|=f.indexOf(a.options[l].value)>-1;break;case"select":case"select-one":a.value=s.toString()||s}}}};"function"==typeof t&&"object"==typeof t.amd&&t.amd?t(function(){return r}):"undefined"!=typeof n&&n.exports?n.exports=r:e.populate=r}(this)},{}],7:[function(e,n,r){(function(){"use strict";function e(){}function r(e,t){for(var n=e.length;n--;)if(e[n].listener===t)return n;return-1}function i(e){return function(){return this[e].apply(this,arguments)}}var o=e.prototype,s=this,a=s.EventEmitter;o.getListeners=function(e){var t,n,r=this._getEvents();if(e instanceof RegExp){t={};for(n in r)r.hasOwnProperty(n)&&e.test(n)&&(t[n]=r[n])}else t=r[e]||(r[e]=[]);return t},o.flattenListeners=function(e){var t,n=[];for(t=0;t<e.length;t+=1)n.push(e[t].listener);return n},o.getListenersAsObject=function(e){var t,n=this.getListeners(e);return n instanceof Array&&(t={},t[e]=n),t||n},o.addListener=function(e,t){var n,i=this.getListenersAsObject(e),o="object"==typeof t;for(n in i)i.hasOwnProperty(n)&&r(i[n],t)===-1&&i[n].push(o?t:{listener:t,once:!1});return this},o.on=i("addListener"),o.addOnceListener=function(e,t){return this.addListener(e,{listener:t,once:!0})},o.once=i("addOnceListener"),o.defineEvent=function(e){return this.getListeners(e),this},o.defineEvents=function(e){for(var t=0;t<e.length;t+=1)this.defineEvent(e[t]);return this},o.removeListener=function(e,t){var n,i,o=this.getListenersAsObject(e);for(i in o)o.hasOwnProperty(i)&&(n=r(o[i],t),n!==-1&&o[i].splice(n,1));return this},o.off=i("removeListener"),o.addListeners=function(e,t){return this.manipulateListeners(!1,e,t)},o.removeListeners=function(e,t){return this.manipulateListeners(!0,e,t)},o.manipulateListeners=function(e,t,n){var r,i,o=e?this.removeListener:this.addListener,s=e?this.removeListeners:this.addListeners;if("object"!=typeof t||t instanceof RegExp)for(r=n.length;r--;)o.call(this,t,n[r]);else for(r in t)t.hasOwnProperty(r)&&(i=t[r])&&("function"==typeof i?o.call(this,r,i):s.call(this,r,i));return this},o.removeEvent=function(e){var t,n=typeof e,r=this._getEvents();if("string"===n)delete r[e];else if(e instanceof RegExp)for(t in r)r.hasOwnProperty(t)&&e.test(t)&&delete r[t];else delete this._events;return this},o.removeAllListeners=i("removeEvent"),o.emitEvent=function(e,t){var n,r,i,o,s,a=this.getListenersAsObject(e);for(o in a)if(a.hasOwnProperty(o))for(n=a[o].slice(0),i=n.length;i--;)r=n[i],r.once===!0&&this.removeListener(e,r.listener),s=r.listener.apply(this,t||[]),s===this._getOnceReturnValue()&&this.removeListener(e,r.listener);return this},o.trigger=i("emitEvent"),o.emit=function(e){var t=Array.prototype.slice.call(arguments,1);return this.emitEvent(e,t)},o.setOnceReturnValue=function(e){return this._onceReturnValue=e,this},o._getOnceReturnValue=function(){return!this.hasOwnProperty("_onceReturnValue")||this._onceReturnValue},o._getEvents=function(){return this._events||(this._events={})},e.noConflict=function(){return s.EventEmitter=a,e},"function"==typeof t&&t.amd?t(function(){return e}):"object"==typeof n&&n.exports?n.exports=e:s.EventEmitter=e}).call(this)},{}]},{},[1])}();
2
  //# sourceMappingURL=forms-api.min.js.map
1
+ !function(){var e=void 0,t=void 0;!function n(t,r,i){function o(a,c){if(!r[a]){if(!t[a]){var u="function"==typeof e&&e;if(!c&&u)return u(a,!0);if(s)return s(a,!0);var f=new Error("Cannot find module '"+a+"'");throw f.code="MODULE_NOT_FOUND",f}var l=r[a]={exports:{}};t[a][0].call(l.exports,function(e){var n=t[a][1][e];return o(n?n:e)},l,l.exports,n,t,r,i)}return r[a].exports}for(var s="function"==typeof e&&e,a=0;a<i.length;a++)o(i[a]);return o}({1:[function(e,t,n){"use strict";function r(e){var t="animated"===f.auto_scroll,n={behavior:t?"smooth":"instant"};e.element.scrollIntoView(n)}function i(e,t,n,i){var o=document.body.clientHeight,s=Date.now();n&&e.setData(i),f.auto_scroll&&r(e),window.addEventListener("load",function(){var a=Date.now()-s;f.auto_scroll&&a<800&&document.body.clientHeight!=o&&r(e),c.trigger("submitted",[e]),c.trigger(e.id+".submitted",[e]),n?(c.trigger("error",[e,n]),c.trigger(e.id+".error",[e,n])):(c.trigger("success",[e,i]),c.trigger(e.id+",success",[e,i]),c.trigger(t+"d",[e,i]),c.trigger(e.id+"."+t+"d",[e,i]))})}function o(e,t,n){return function(){var r=this.value.trim(),i="radio"!==this.getAttribute("type")&&"checked"!==this.getAttribute("type")||this.checked,o=i&&(r===t&&""!==t||""===t&&r.length>0);n?e.style.display=o?"":"none":e.style.display=o?"none":""}}var s=window.mc4wp||{};if(window.addEventListener&&!s.ready){var a=e("gator"),c=e("./forms/forms.js"),u=window.mc4wp&&window.mc4wp.listeners?window.mc4wp.listeners:[],f=window.mc4wp_forms_config||{},l=document.querySelectorAll(".mc4wp-form [data-show-if], .mc4wp-form [data-hide-if]");[].forEach.call(l,function(e){for(var t=!!e.getAttribute("data-show-if"),n=t?e.getAttribute("data-show-if").split(":"):e.getAttribute("data-hide-if").split(":"),r=document.querySelectorAll('.mc4wp-form [name="'+n[0]+'"]'),i=n[1]||"",s=o(e,i,t),a=0;a<r.length;a++)r[a].addEventListener("change",s),r[a].addEventListener("keyup",s),s.call(r[a])});for(var d=0;d<u.length;d++)c.on(u[d].event,u[d].callback);if(a(document.body).on("submit",".mc4wp-form",function(e){var t=c.getByElement(e.target||e.srcElement);c.trigger("submit",[t,e]),c.trigger(t.id+".submit",[t,e])}),a(document.body).on("focus",".mc4wp-form",function(e){var t=c.getByElement(e.target||e.srcElement);t.started||(c.trigger("started",[t,e]),c.trigger(t.id+".started",[t,e]),t.started=!0)}),a(document.body).on("change",".mc4wp-form",function(e){var t=c.getByElement(e.target||e.srcElement);c.trigger("change",[t,e]),c.trigger(t.id+".change",[t,e])}),f.submitted_form){var h=f.submitted_form,m=document.getElementById(h.element_id),p=c.getByElement(m);i(p,h.action,h.errors,h.data)}s.forms=c,s.ready=!0,window.mc4wp=s}},{"./forms/forms.js":3,gator:5}],2:[function(e,t,n){"use strict";var r=e("form-serialize"),i=e("populate.js"),o=function(e,t){this.id=e,this.element=t||document.createElement("form"),this.name=this.element.getAttribute("data-name")||"Form #"+this.id,this.errors=[],this.started=!1};o.prototype.setData=function(e){try{i(this.element,e)}catch(t){console.error(t)}},o.prototype.getData=function(){return r(this.element,{hash:!0})},o.prototype.getSerializedData=function(){return r(this.element)},o.prototype.setResponse=function(e){this.element.querySelector(".mc4wp-response").innerHTML=e},o.prototype.reset=function(){this.setResponse(""),this.element.querySelector(".mc4wp-form-fields").style.display="",this.element.reset()},t.exports=o},{"form-serialize":4,"populate.js":6}],3:[function(e,t,n){"use strict";function r(e){for(var t=0;t<f.length;t++)if(f[t].id==e)return f[t];var n=document.querySelector(".mc4wp-form-"+e);return o(n,e)}function i(e){for(var t=e.form||e,n=0;n<f.length;n++)if(f[n].element==t)return f[n];return o(t)}function o(e,t){t=t||parseInt(e.getAttribute("data-id"))||0;var n=new c(t,e);return f.push(n),n}function s(){return f}var a=e("wolfy87-eventemitter"),c=e("./form.js"),u=new a,f=[];t.exports={all:s,get:r,getByElement:i,on:u.on.bind(u),trigger:u.trigger.bind(u),off:u.off.bind(u)}},{"./form.js":2,"wolfy87-eventemitter":7}],4:[function(e,t,n){function r(e,t){"object"!=typeof t?t={hash:!!t}:void 0===t.hash&&(t.hash=!0);for(var n=t.hash?{}:"",r=t.serializer||(t.hash?s:a),i=e&&e.elements?e.elements:[],o=Object.create(null),f=0;f<i.length;++f){var l=i[f];if((t.disabled||!l.disabled)&&l.name&&u.test(l.nodeName)&&!c.test(l.type)){var d=l.name,h=l.value;if("checkbox"!==l.type&&"radio"!==l.type||l.checked||(h=void 0),t.empty){if("checkbox"!==l.type||l.checked||(h=""),"radio"===l.type&&(o[l.name]||l.checked?l.checked&&(o[l.name]=!0):o[l.name]=!1),!h&&"radio"==l.type)continue}else if(!h)continue;if("select-multiple"!==l.type)n=r(n,d,h);else{h=[];for(var m=l.options,p=!1,v=0;v<m.length;++v){var g=m[v],y=t.empty&&!g.value,w=g.value||y;g.selected&&w&&(p=!0,n=t.hash&&"[]"!==d.slice(d.length-2)?r(n,d+"[]",g.value):r(n,d,g.value))}!p&&t.empty&&(n=r(n,d,""))}}}if(t.empty)for(var d in o)o[d]||(n=r(n,d,""));return n}function i(e){var t=[],n=/^([^\[\]]*)/,r=new RegExp(f),i=n.exec(e);for(i[1]&&t.push(i[1]);null!==(i=r.exec(e));)t.push(i[1]);return t}function o(e,t,n){if(0===t.length)return e=n;var r=t.shift(),i=r.match(/^\[(.+?)\]$/);if("[]"===r)return e=e||[],Array.isArray(e)?e.push(o(null,t,n)):(e._values=e._values||[],e._values.push(o(null,t,n))),e;if(i){var s=i[1],a=+s;isNaN(a)?(e=e||{},e[s]=o(e[s],t,n)):(e=e||[],e[a]=o(e[a],t,n))}else e[r]=o(e[r],t,n);return e}function s(e,t,n){var r=t.match(f);if(r){var s=i(t);o(e,s,n)}else{var a=e[t];a?(Array.isArray(a)||(e[t]=[a]),e[t].push(n)):e[t]=n}return e}function a(e,t,n){return n=n.replace(/(\r)?\n/g,"\r\n"),n=encodeURIComponent(n),n=n.replace(/%20/g,"+"),e+(e?"&":"")+encodeURIComponent(t)+"="+n}var c=/^(?:submit|button|image|reset|file)$/i,u=/^(?:input|select|textarea|keygen)/i,f=/(\[[^\[\]]*\])/g;t.exports=r},{}],5:[function(e,t,n){!function(){function e(e,t,n){var r="blur"==t||"focus"==t;e.element.addEventListener(t,n,r)}function n(e){e.preventDefault(),e.stopPropagation()}function r(e){return f?f:f=e.matches?e.matches:e.webkitMatchesSelector?e.webkitMatchesSelector:e.mozMatchesSelector?e.mozMatchesSelector:e.msMatchesSelector?e.msMatchesSelector:e.oMatchesSelector?e.oMatchesSelector:u.matchesSelector}function i(e,t,n){if("_root"==t)return n;if(e!==n)return r(e).call(e,t)?e:e.parentNode?(l++,i(e.parentNode,t,n)):void 0}function o(e,t,n,r){h[e.id]||(h[e.id]={}),h[e.id][t]||(h[e.id][t]={}),h[e.id][t][n]||(h[e.id][t][n]=[]),h[e.id][t][n].push(r)}function s(e,t,n,r){if(h[e.id])if(t){if(!r&&!n)return void(h[e.id][t]={});if(!r)return void delete h[e.id][t][n];if(h[e.id][t][n])for(var i=0;i<h[e.id][t][n].length;i++)if(h[e.id][t][n][i]===r){h[e.id][t][n].splice(i,1);break}}else for(var o in h[e.id])h[e.id].hasOwnProperty(o)&&(h[e.id][o]={})}function a(e,t,n){if(h[e][n]){var r,o,s=t.target||t.srcElement,a={},c=0,f=0;l=0;for(r in h[e][n])h[e][n].hasOwnProperty(r)&&(o=i(s,r,m[e].element),o&&u.matchesEvent(n,m[e].element,o,"_root"==r,t)&&(l++,h[e][n][r].match=o,a[l]=h[e][n][r]));for(t.stopPropagation=function(){t.cancelBubble=!0},c=0;c<=l;c++)if(a[c])for(f=0;f<a[c].length;f++){if(a[c][f].call(a[c].match,t)===!1)return void u.cancel(t);if(t.cancelBubble)return}}}function c(e,t,n,r){function i(e){return function(t){a(f,t,e)}}if(this.element){e instanceof Array||(e=[e]),n||"function"!=typeof t||(n=t,t="_root");var c,f=this.id;for(c=0;c<e.length;c++)r?s(this,e[c],t,n):(h[f]&&h[f][e[c]]||u.addEvent(this,e[c],i(e[c])),o(this,e[c],t,n));return this}}function u(e,t){if(!(this instanceof u)){for(var n in m)if(m[n].element===e)return m[n];return d++,m[d]=new u(e,d),m[d]}this.element=e,this.id=t}var f,l=0,d=0,h={},m={};u.prototype.on=function(e,t,n){return c.call(this,e,t,n)},u.prototype.off=function(e,t,n){return c.call(this,e,t,n,!0)},u.matchesSelector=function(){},u.cancel=n,u.addEvent=e,u.matchesEvent=function(){return!0},"undefined"!=typeof t&&t.exports&&(t.exports=u),window.Gator=u}()},{}],6:[function(e,n,r){!function(e){var r=function(e,t,n){for(var i in t)if(t.hasOwnProperty(i)){var o=i,s=t[i];if("undefined"!=typeof n&&(o=n+"["+i+"]"),s.constructor===Array)o+="[]";else if("object"==typeof s){r(e,s,o);continue}var a=e.elements.namedItem(o);if(a){var c=a.type||a[0].type;switch(c){default:a.value=s;break;case"radio":case"checkbox":for(var u=0;u<a.length;u++)a[u].checked=s.indexOf(a[u].value)>-1;break;case"select-multiple":for(var f=s.constructor==Array?s:[s],l=0;l<a.options.length;l++)a.options[l].selected|=f.indexOf(a.options[l].value)>-1;break;case"select":case"select-one":a.value=s.toString()||s}}}};"function"==typeof t&&"object"==typeof t.amd&&t.amd?t(function(){return r}):"undefined"!=typeof n&&n.exports?n.exports=r:e.populate=r}(this)},{}],7:[function(e,n,r){(function(){"use strict";function e(){}function r(e,t){for(var n=e.length;n--;)if(e[n].listener===t)return n;return-1}function i(e){return function(){return this[e].apply(this,arguments)}}var o=e.prototype,s=this,a=s.EventEmitter;o.getListeners=function(e){var t,n,r=this._getEvents();if(e instanceof RegExp){t={};for(n in r)r.hasOwnProperty(n)&&e.test(n)&&(t[n]=r[n])}else t=r[e]||(r[e]=[]);return t},o.flattenListeners=function(e){var t,n=[];for(t=0;t<e.length;t+=1)n.push(e[t].listener);return n},o.getListenersAsObject=function(e){var t,n=this.getListeners(e);return n instanceof Array&&(t={},t[e]=n),t||n},o.addListener=function(e,t){var n,i=this.getListenersAsObject(e),o="object"==typeof t;for(n in i)i.hasOwnProperty(n)&&r(i[n],t)===-1&&i[n].push(o?t:{listener:t,once:!1});return this},o.on=i("addListener"),o.addOnceListener=function(e,t){return this.addListener(e,{listener:t,once:!0})},o.once=i("addOnceListener"),o.defineEvent=function(e){return this.getListeners(e),this},o.defineEvents=function(e){for(var t=0;t<e.length;t+=1)this.defineEvent(e[t]);return this},o.removeListener=function(e,t){var n,i,o=this.getListenersAsObject(e);for(i in o)o.hasOwnProperty(i)&&(n=r(o[i],t),n!==-1&&o[i].splice(n,1));return this},o.off=i("removeListener"),o.addListeners=function(e,t){return this.manipulateListeners(!1,e,t)},o.removeListeners=function(e,t){return this.manipulateListeners(!0,e,t)},o.manipulateListeners=function(e,t,n){var r,i,o=e?this.removeListener:this.addListener,s=e?this.removeListeners:this.addListeners;if("object"!=typeof t||t instanceof RegExp)for(r=n.length;r--;)o.call(this,t,n[r]);else for(r in t)t.hasOwnProperty(r)&&(i=t[r])&&("function"==typeof i?o.call(this,r,i):s.call(this,r,i));return this},o.removeEvent=function(e){var t,n=typeof e,r=this._getEvents();if("string"===n)delete r[e];else if(e instanceof RegExp)for(t in r)r.hasOwnProperty(t)&&e.test(t)&&delete r[t];else delete this._events;return this},o.removeAllListeners=i("removeEvent"),o.emitEvent=function(e,t){var n,r,i,o,s,a=this.getListenersAsObject(e);for(o in a)if(a.hasOwnProperty(o))for(n=a[o].slice(0),i=n.length;i--;)r=n[i],r.once===!0&&this.removeListener(e,r.listener),s=r.listener.apply(this,t||[]),s===this._getOnceReturnValue()&&this.removeListener(e,r.listener);return this},o.trigger=i("emitEvent"),o.emit=function(e){var t=Array.prototype.slice.call(arguments,1);return this.emitEvent(e,t)},o.setOnceReturnValue=function(e){return this._onceReturnValue=e,this},o._getOnceReturnValue=function(){return!this.hasOwnProperty("_onceReturnValue")||this._onceReturnValue},o._getEvents=function(){return this._events||(this._events={})},e.noConflict=function(){return s.EventEmitter=a,e},"function"==typeof t&&t.amd?t(function(){return e}):"object"==typeof n&&n.exports?n.exports=e:s.EventEmitter=e}).call(this)},{}]},{},[1])}();
2
  //# sourceMappingURL=forms-api.min.js.map
assets/js/forms-api.min.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["forms-api.js"],"names":["require","undefined","define","e","t","n","r","s","o","u","a","i","f","Error","code","l","exports","call","length","1","module","scrollToForm","form","animate","config","auto_scroll","args","behavior","element","scrollIntoView","handleFormRequest","action","errors","data","pageHeight","document","body","clientHeight","timeStart","Date","now","setData","window","addEventListener","timeElapsed","forms","trigger","toggleElement","el","expectedValue","show","value","this","trim","checked","getAttribute","conditionMet","style","display","mc4wp","ready","Gator","listeners","mc4wp_forms_config","optionalInputs","querySelectorAll","forEach","condition","split","fields","callback","on","event","getByElement","target","srcElement","started","submitted_form","formConfig","getElementById","element_id","./forms/forms.js","gator","2","serialize","populate","Form","id","createElement","name","prototype","console","error","getData","hash","getSerializedData","setResponse","msg","querySelector","innerHTML","reset","form-serialize","populate.js","3","get","formId","formElement","createFromElement","parseInt","push","all","events","off","EventEmitter","./form.js","wolfy87-eventemitter","4","options","result","serializer","hash_serializer","str_serialize","elements","radio_store","Object","create","disabled","k_r_success_contrls","test","nodeName","k_r_submitter","type","key","val","empty","selectOptions","isSelectedOptions","j","option","allowedEmpty","hasValue","selected","slice","parse_keys","string","keys","prefix","children","RegExp","brackets","match","exec","hash_assign","shift","between","Array","isArray","_values","index","isNaN","matches","existing","replace","encodeURIComponent","5","_addEvent","useCapture","_cancel","preventDefault","stopPropagation","_getMatcher","_matcher","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","matchesSelector","_matchesSelector","selector","boundElement","parentNode","_level","_addHandler","_handlers","_removeHandler","splice","hasOwnProperty","_handleEvent","_gatorInstances","matchesEvent","cancelBubble","cancel","_bind","remove","_getGlobalCallback","addEvent","_id","6","root","basename","constructor","namedItem","indexOf","values","k","toString","amd","7","indexOfListener","listener","alias","apply","arguments","proto","originalGlobalValue","getListeners","evt","response","_getEvents","flattenListeners","flatListeners","getListenersAsObject","addListener","listenerIsWrapped","once","addOnceListener","defineEvent","defineEvents","evts","removeListener","addListeners","manipulateListeners","removeListeners","single","multiple","removeEvent","_events","removeAllListeners","emitEvent","listenersMap","_getOnceReturnValue","emit","setOnceReturnValue","_onceReturnValue","noConflict"],"mappings":"CAAA,WAAe,GAAIA,GAAUC,OAAeC,EAASD,QAAW,QAAUE,GAAEC,EAAEC,EAAEC,GAAG,QAASC,GAAEC,EAAEC,GAAG,IAAIJ,EAAEG,GAAG,CAAC,IAAIJ,EAAEI,GAAG,CAAC,GAAIE,GAAkB,kBAATV,IAAqBA,CAAQ,KAAIS,GAAGC,EAAE,MAAOA,GAAEF,GAAE,EAAI,IAAGG,EAAE,MAAOA,GAAEH,GAAE,EAAI,IAAII,GAAE,GAAIC,OAAM,uBAAuBL,EAAE,IAAK,MAAMI,GAAEE,KAAK,mBAAmBF,EAAE,GAAIG,GAAEV,EAAEG,IAAIQ,WAAYZ,GAAEI,GAAG,GAAGS,KAAKF,EAAEC,QAAQ,SAASb,GAAG,GAAIE,GAAED,EAAEI,GAAG,GAAGL,EAAG,OAAOI,GAAEF,EAAEA,EAAEF,IAAIY,EAAEA,EAAEC,QAAQb,EAAEC,EAAEC,EAAEC,GAAG,MAAOD,GAAEG,GAAGQ,QAAkD,IAAI,GAA1CL,GAAkB,kBAATX,IAAqBA,EAAgBQ,EAAE,EAAEA,EAAEF,EAAEY,OAAOV,IAAID,EAAED,EAAEE,GAAI,OAAOD,KAAKY,GAAG,SAASnB,EAAQoB,EAAOJ,GACvhB,YAiBA,SAASK,GAAaC,GACrB,GAAIC,GAAiC,aAAvBC,EAAOC,YACjBC,GACHC,SAAUJ,EAAU,SAAW,UAEhCD,GAAKM,QAAQC,eAAeH,GAG7B,QAASI,GAAkBR,EAAMS,EAAQC,EAAQC,GAChD,GAAIC,GAAaC,SAASC,KAAKC,aAC3BC,EAAYC,KAAKC,KAGjBR,IACHV,EAAKmB,QAAQR,GAGVT,EAAOC,aACVJ,EAAaC,GAIdoB,OAAOC,iBAAiB,OAAQ,WAC/B,GAAIC,GAAcL,KAAKC,MAAQF,CAI3Bd,GAAOC,aAAemB,EAAc,KAAOT,SAASC,KAAKC,cAAgBH,GAC5Eb,EAAaC,GAIduB,EAAMC,QAAS,aAAcxB,IAEzBU,EACHa,EAAMC,QAAQ,SAAUxB,EAAMU,KAG9Ba,EAAMC,QAAQ,WAAYxB,EAAMW,IAChCY,EAAMC,QAAQf,EAAS,KAAMT,EAAMW,OAKtC,QAASc,GAAcC,EAAIC,EAAeC,GACzC,MAAO,YACN,GAAIC,GAAQC,KAAKD,MAAME,OACnBC,EAA0C,UAA9BF,KAAKG,aAAa,SAAqD,YAA9BH,KAAKG,aAAa,SAA2BH,KAAKE,QACvGE,EAAeF,IAAeH,IAAUF,GAAmC,KAAlBA,GAA8C,KAAlBA,GAAwBE,EAAMjC,OAAS,EAC7HgC,GACFF,EAAGS,MAAMC,QAAU,EAAmB,GAAK,OAE3CV,EAAGS,MAAMC,QAAU,EAAmB,OAAS,IAnElD,GAAIC,GAAQjB,OAAOiB,SAGnB,IAAMjB,OAAOC,mBAAoBgB,EAAMC,MAAvC,CAKA,GAAIC,GAAQ7D,EAAQ,SAChB6C,EAAQ7C,EAAQ,oBAChB8D,EAAYpB,OAAOiB,OAASjB,OAAOiB,MAAMG,UAAYpB,OAAOiB,MAAMG,aAClEtC,EAASkB,OAAOqB,uBAChBC,EAAiB7B,SAAS8B,iBAAiB,6DA6D5CC,QAAQjD,KAAK+C,EAAgB,SAAShB,GAOxC,IAAI,GANAE,KAASF,EAAGO,aAAa,gBACzBY,EAAYjB,EAAOF,EAAGO,aAAa,gBAAgBa,MAAM,KAAOpB,EAAGO,aAAa,gBAAgBa,MAAM,KACtGC,EAASlC,SAAS8B,iBAAiB,sBAAwBE,EAAU,GAAK,MAC1ElB,EAAgBkB,EAAU,IAAM,GAChCG,EAAWvB,EAAcC,EAAIC,EAAeC,GAExCvC,EAAE,EAAGA,EAAE0D,EAAOnD,OAAQP,IAC7B0D,EAAO1D,GAAGgC,iBAAiB,SAAU2B,GACrCD,EAAO1D,GAAGgC,iBAAiB,QAAS2B,GACpCA,EAASrD,KAAKoD,EAAO1D,KAMvB,KAAI,GAAIA,GAAE,EAAGA,EAAEmD,EAAU5C,OAAOP,IAC/BkC,EAAM0B,GAAGT,EAAUnD,GAAG6D,MAAOV,EAAUnD,GAAG2D,SAuB3C,IAnBAT,EAAM1B,SAASC,MAAMmC,GAAG,SAAU,cAAe,SAASC,GACzD,GAAIlD,GAAOuB,EAAM4B,aAAaD,EAAME,QAAUF,EAAMG,WACpD9B,GAAMC,QAAQ,UAAWxB,EAAMkD,MAGhCX,EAAM1B,SAASC,MAAMmC,GAAG,QAAS,cAAe,SAASC,GACxD,GAAIlD,GAAOuB,EAAM4B,aAAaD,EAAME,QAAUF,EAAMG,WAE9CrD,GAAKsD,UACV/B,EAAMC,QAAQ,WAAYxB,EAAMkD,IAChClD,EAAKsD,SAAU,KAIjBf,EAAM1B,SAASC,MAAMmC,GAAG,SAAU,cAAe,SAASC,GACzD,GAAIlD,GAAOuB,EAAM4B,aAAaD,EAAME,QAAUF,EAAMG,WACpD9B,GAAMC,QAAQ,UAAWxB,EAAKkD,MAG3BhD,EAAOqD,eAAiB,CAC3B,GAAIC,GAAatD,EAAOqD,eACvBjD,EAAUO,SAAS4C,eAAeD,EAAWE,YAC7C1D,EAAOuB,EAAM4B,aAAa7C,EAE3BE,GAAkBR,EAAMwD,EAAW/C,OAAQ+C,EAAW9C,OAAQ8C,EAAW7C,MAK1E0B,EAAMd,MAAQA,EACdc,EAAMC,OAAQ,EACdlB,OAAOiB,MAAQA,KAEZsB,mBAAmB,EAAEC,MAAQ,IAAIC,GAAG,SAASnF,EAAQoB,EAAOJ,GAC/D,YAEA,IAAIoE,GAAYpF,EAAQ,kBACpBqF,EAAWrF,EAAQ,eAEnBsF,EAAO,SAASC,EAAI3D,GACvBwB,KAAKmC,GAAKA,EACVnC,KAAKxB,QAAUA,GAAWO,SAASqD,cAAc,QACjDpC,KAAKqC,KAAOrC,KAAKxB,QAAQ2B,aAAa,cAAgB,SAAWH,KAAKmC,GACtEnC,KAAKpB,UACLoB,KAAKwB,SAAU,EAGhBU,GAAKI,UAAUjD,QAAU,SAASR,GACjC,IACCoD,EAASjC,KAAKxB,QAASK,GACtB,MAAM9B,GACPwF,QAAQC,MAAMzF,KAIhBmF,EAAKI,UAAUG,QAAU,WACxB,MAAOT,GAAUhC,KAAKxB,SAAWkE,MAAM,KAGxCR,EAAKI,UAAUK,kBAAoB,WAClC,MAAOX,GAAUhC,KAAKxB,UAGvB0D,EAAKI,UAAUM,YAAc,SAAUC,GACtC7C,KAAKxB,QAAQsE,cAAc,mBAAmBC,UAAYF,GAI3DX,EAAKI,UAAUU,MAAQ,WACtBhD,KAAK4C,YAAY,IACjB5C,KAAKxB,QAAQsE,cAAc,sBAAsBzC,MAAMC,QAAU,GACjEN,KAAKxB,QAAQwE,SAGdhF,EAAOJ,QAAUsE,IAEde,iBAAiB,EAAEC,cAAc,IAAIC,GAAG,SAASvG,EAAQoB,EAAOJ,GACnE,YAYA,SAASwF,GAAIC,GAGZ,IAAI,GAAI9F,GAAE,EAAGA,EAAEkC,EAAM3B,OAAOP,IAC3B,GAAGkC,EAAMlC,GAAG4E,IAAMkB,EACjB,MAAO5D,GAAMlC,EAKf,IAAI+F,GAAcvE,SAAS+D,cAAc,eAAiBO,EAC1D,OAAOE,GAAkBD,EAAYD,GAItC,QAAShC,GAAa7C,GAGrB,IAAI,GAFA8E,GAAc9E,EAAQN,MAAQM,EAE1BjB,EAAE,EAAGA,EAAIkC,EAAM3B,OAAQP,IAC9B,GAAGkC,EAAMlC,GAAGiB,SAAW8E,EACtB,MAAO7D,GAAMlC,EAIf,OAAOgG,GAAkBD,GAI1B,QAASC,GAAkBD,EAAanB,GACvCA,EAAKA,GAAMqB,SAAUF,EAAYnD,aAAa,aAAgB,CAC9D,IAAIjC,GAAO,GAAIgE,GAAKC,EAAImB,EAExB,OADA7D,GAAMgE,KAAKvF,GACJA,EAGR,QAASwF,KACR,MAAOjE,GAGR,QAAS0B,GAAGC,EAAMF,GACjB,MAAOyC,GAAOxC,GAAGC,EAAMF,GAGxB,QAASxB,GAAQ0B,EAAM9C,GACtB,MAAOqF,GAAOjE,QAAQ0B,EAAM9C,GAG7B,QAASsF,GAAIxC,EAAMF,GAClB,MAAOyC,GAAOC,IAAIxC,EAAMF,GAzDzB,GAAI2C,GAAejH,EAAQ,wBACvBsF,EAAOtF,EAAQ,aAGf+G,EAAS,GAAIE,GACbpE,IAuDJzB,GAAOJ,SACN8F,IAAOA,EACPN,IAAOA,EACP/B,aAAgBA,EAChBF,GAAMA,EACNzB,QAAWA,EACXkE,IAAOA,KAILE,YAAY,EAAEC,uBAAuB,IAAIC,GAAG,SAASpH,EAAQoB,EAAOJ,GAyBvE,QAASoE,GAAU9D,EAAM+F,GACC,gBAAXA,GACPA,GAAYvB,OAAQuB,GAEEpH,SAAjBoH,EAAQvB,OACbuB,EAAQvB,MAAO,EAWnB,KAAK,GARDwB,GAAUD,EAAY,QAAS,GAC/BE,EAAaF,EAAQE,aAAgBF,EAAY,KAAIG,EAAkBC,GAEvEC,EAAWpG,GAAQA,EAAKoG,SAAWpG,EAAKoG,YAGxCC,EAAcC,OAAOC,OAAO,MAEvBlH,EAAE,EAAIA,EAAE+G,EAASxG,SAAWP,EAAG,CACpC,GAAIiB,GAAU8F,EAAS/G,EAGvB,KAAM0G,EAAQS,WAAYlG,EAAQkG,WAAclG,EAAQ6D,MAInDsC,EAAoBC,KAAKpG,EAAQqG,YAClCC,EAAcF,KAAKpG,EAAQuG,MAD/B,CAKA,GAAIC,GAAMxG,EAAQ6D,KACd4C,EAAMzG,EAAQuB,KASlB,IALsB,aAAjBvB,EAAQuG,MAAwC,UAAjBvG,EAAQuG,MAAsBvG,EAAQ0B,UACtE+E,EAAMpI,QAINoH,EAAQiB,OAiBR,GAfqB,aAAjB1G,EAAQuG,MAAwBvG,EAAQ0B,UACxC+E,EAAM,IAIW,UAAjBzG,EAAQuG,OACHR,EAAY/F,EAAQ6D,OAAU7D,EAAQ0B,QAGlC1B,EAAQ0B,UACbqE,EAAY/F,EAAQ6D,OAAQ,GAH5BkC,EAAY/F,EAAQ6D,OAAQ,IAQ/B4C,GAAuB,SAAhBzG,EAAQuG,KAChB,aAKJ,KAAKE,EACD,QAKR,IAAqB,oBAAjBzG,EAAQuG,KAkCZb,EAASC,EAAWD,EAAQc,EAAKC,OAlCjC,CACIA,IAIA,KAAK,GAFDE,GAAgB3G,EAAQyF,QACxBmB,GAAoB,EACfC,EAAE,EAAIA,EAAEF,EAAcrH,SAAWuH,EAAG,CACzC,GAAIC,GAASH,EAAcE,GACvBE,EAAetB,EAAQiB,QAAUI,EAAOvF,MACxCyF,EAAYF,EAAOvF,OAASwF,CAC5BD,GAAOG,UAAYD,IACnBJ,GAAoB,EAQhBlB,EADAD,EAAQvB,MAAsC,OAA9BsC,EAAIU,MAAMV,EAAIlH,OAAS,GAC9BqG,EAAWD,EAAQc,EAAM,KAAMM,EAAOvF,OAGtCoE,EAAWD,EAAQc,EAAKM,EAAOvF,SAM/CqF,GAAqBnB,EAAQiB,QAC9BhB,EAASC,EAAWD,EAAQc,EAAK,OAU7C,GAAIf,EAAQiB,MACR,IAAK,GAAIF,KAAOT,GACPA,EAAYS,KACbd,EAASC,EAAWD,EAAQc,EAAK,IAK7C,OAAOd,GAGX,QAASyB,GAAWC,GAChB,GAAIC,MACAC,EAAS,cACTC,EAAW,GAAIC,QAAOC,GACtBC,EAAQJ,EAAOK,KAAKP,EAMxB,KAJIM,EAAM,IACNL,EAAKpC,KAAKyC,EAAM,IAGuB,QAAnCA,EAAQH,EAASI,KAAKP,KAC1BC,EAAKpC,KAAKyC,EAAM,GAGpB,OAAOL,GAGX,QAASO,GAAYlC,EAAQ2B,EAAM9F,GAC/B,GAAoB,IAAhB8F,EAAK/H,OAEL,MADAoG,GAASnE,CAIb,IAAIiF,GAAMa,EAAKQ,QACXC,EAAUtB,EAAIkB,MAAM,cAExB,IAAY,OAARlB,EAgBA,MAfAd,GAASA,MAELqC,MAAMC,QAAQtC,GACdA,EAAOT,KAAK2C,EAAY,KAAMP,EAAM9F,KAQpCmE,EAAOuC,QAAUvC,EAAOuC,YACxBvC,EAAOuC,QAAQhD,KAAK2C,EAAY,KAAMP,EAAM9F,KAGzCmE,CAIX,IAAKoC,EAGA,CACD,GAAIV,GAASU,EAAQ,GAIjBI,GAASd,CAITe,OAAMD,IACNxC,EAASA,MACTA,EAAO0B,GAAUQ,EAAYlC,EAAO0B,GAASC,EAAM9F,KAGnDmE,EAASA,MACTA,EAAOwC,GAASN,EAAYlC,EAAOwC,GAAQb,EAAM9F,QAjBrDmE,GAAOc,GAAOoB,EAAYlC,EAAOc,GAAMa,EAAM9F,EAqBjD,OAAOmE,GAIX,QAASE,GAAgBF,EAAQc,EAAKjF,GAClC,GAAI6G,GAAU5B,EAAIkB,MAAMD,EAKxB,IAAIW,EAAS,CACT,GAAIf,GAAOF,EAAWX,EACtBoB,GAAYlC,EAAQ2B,EAAM9F,OAEzB,CAED,GAAI8G,GAAW3C,EAAOc,EAQlB6B,IACKN,MAAMC,QAAQK,KACf3C,EAAOc,IAAS6B,IAGpB3C,EAAOc,GAAKvB,KAAK1D,IAGjBmE,EAAOc,GAAOjF,EAItB,MAAOmE,GAIX,QAASG,GAAcH,EAAQc,EAAKjF,GAOhC,MALAA,GAAQA,EAAM+G,QAAQ,WAAY,QAClC/G,EAAQgH,mBAAmBhH,GAG3BA,EAAQA,EAAM+G,QAAQ,OAAQ,KACvB5C,GAAUA,EAAS,IAAM,IAAM6C,mBAAmB/B,GAAO,IAAMjF,EA3P1E,GAAI+E,GAAgB,wCAGhBH,EAAsB,qCAGtBsB,EAAW,iBAwPfjI,GAAOJ,QAAUoE,OAEXgF,GAAG,SAASpK,EAAQoB,EAAOJ,IAmCjC,WAOI,QAASqJ,GAAUnF,EAAOiD,EAAM7D,GAI5B,GAAIgG,GAAqB,QAARnC,GAA0B,SAARA,CACnCjD,GAAMtD,QAAQe,iBAAiBwF,EAAM7D,EAAUgG,GAGnD,QAASC,GAAQpK,GACbA,EAAEqK,iBACFrK,EAAEsK,kBASN,QAASC,GAAY9I,GACjB,MAAI+I,GACOA,EAIPA,EADA/I,EAAQoI,QACGpI,EAAQoI,QAInBpI,EAAQgJ,sBACGhJ,EAAQgJ,sBAInBhJ,EAAQiJ,mBACGjJ,EAAQiJ,mBAInBjJ,EAAQkJ,kBACGlJ,EAAQkJ,kBAInBlJ,EAAQmJ,iBACGnJ,EAAQmJ,iBAMZlH,EAAMmH,gBAYrB,QAASC,GAAiBrJ,EAASsJ,EAAUC,GAGzC,GAAgB,SAAZD,EACA,MAAOC,EAKX,IAAIvJ,IAAYuJ,EAKhB,MAAIT,GAAY9I,GAASX,KAAKW,EAASsJ,GAC5BtJ,EAQPA,EAAQwJ,YACRC,IACOJ,EAAiBrJ,EAAQwJ,WAAYF,EAAUC,IAF1D,OAMJ,QAASG,GAAYpG,EAAOV,EAAO0G,EAAU5G,GACpCiH,EAAUrG,EAAMK,MACjBgG,EAAUrG,EAAMK,QAGfgG,EAAUrG,EAAMK,IAAIf,KACrB+G,EAAUrG,EAAMK,IAAIf,OAGnB+G,EAAUrG,EAAMK,IAAIf,GAAO0G,KAC5BK,EAAUrG,EAAMK,IAAIf,GAAO0G,OAG/BK,EAAUrG,EAAMK,IAAIf,GAAO0G,GAAUrE,KAAKvC,GAG9C,QAASkH,GAAetG,EAAOV,EAAO0G,EAAU5G,GAI5C,GAAKiH,EAAUrG,EAAMK,IAMrB,GAAKf,EAAL,CAWA,IAAKF,IAAa4G,EAEd,YADAK,EAAUrG,EAAMK,IAAIf,MAOxB,KAAKF,EAED,kBADOiH,GAAUrG,EAAMK,IAAIf,GAAO0G,EAOtC,IAAKK,EAAUrG,EAAMK,IAAIf,GAAO0G,GAMhC,IAAK,GAAIvK,GAAI,EAAGA,EAAI4K,EAAUrG,EAAMK,IAAIf,GAAO0G,GAAUhK,OAAQP,IAC7D,GAAI4K,EAAUrG,EAAMK,IAAIf,GAAO0G,GAAUvK,KAAO2D,EAAU,CACtDiH,EAAUrG,EAAMK,IAAIf,GAAO0G,GAAUO,OAAO9K,EAAG,EAC/C,YAnCJ,KAAK,GAAIwH,KAAQoD,GAAUrG,EAAMK,IACzBgG,EAAUrG,EAAMK,IAAImG,eAAevD,KACnCoD,EAAUrG,EAAMK,IAAI4C,OAsCpC,QAASwD,GAAapG,EAAIpF,EAAGgI,GACzB,GAAKoD,EAAUhG,GAAI4C,GAAnB,CAIA,GACI+C,GACA5B,EAFA5E,EAASvE,EAAEuE,QAAUvE,EAAEwE,WAGvBqF,KACArJ,EAAI,EACJ8H,EAAI,CAGR4C,GAAS,CACT,KAAKH,IAAYK,GAAUhG,GAAI4C,GACvBoD,EAAUhG,GAAI4C,GAAMuD,eAAeR,KACnC5B,EAAQ2B,EAAiBvG,EAAQwG,EAAUU,EAAgBrG,GAAI3D,SAE3D0H,GAASzF,EAAMgI,aAAa1D,EAAMyD,EAAgBrG,GAAI3D,QAAS0H,EAAmB,SAAZ4B,EAAqB/K,KAC3FkL,IACAE,EAAUhG,GAAI4C,GAAM+C,GAAU5B,MAAQA,EACtCU,EAAQqB,GAAUE,EAAUhG,GAAI4C,GAAM+C,IAWlD,KAJA/K,EAAEsK,gBAAkB,WAChBtK,EAAE2L,cAAe,GAGhBnL,EAAI,EAAGA,GAAK0K,EAAQ1K,IACrB,GAAIqJ,EAAQrJ,GACR,IAAK8H,EAAI,EAAGA,EAAIuB,EAAQrJ,GAAGO,OAAQuH,IAAK,CACpC,GAAIuB,EAAQrJ,GAAG8H,GAAGxH,KAAK+I,EAAQrJ,GAAG2I,MAAOnJ,MAAO,EAE5C,WADA0D,GAAMkI,OAAO5L,EAIjB,IAAIA,EAAE2L,aACF,SAgBpB,QAASE,GAAMjF,EAAQmE,EAAU5G,EAAU2H,GAoBvC,QAASC,GAAmB/D,GACxB,MAAO,UAAShI,GACZwL,EAAapG,EAAIpF,EAAGgI,IAlB5B,GAAK/E,KAAKxB,QAAV,CAIMmF,YAAkB4C,SACpB5C,GAAUA,IAGTzC,GAAgC,kBAAd,KACnBA,EAAW4G,EACXA,EAAW,QAGf,IACIvK,GADA4E,EAAKnC,KAAKmC,EASd,KAAK5E,EAAI,EAAGA,EAAIoG,EAAO7F,OAAQP,IACvBsL,EACAT,EAAepI,KAAM2D,EAAOpG,GAAIuK,EAAU5G,IAIzCiH,EAAUhG,IAAQgG,EAAUhG,GAAIwB,EAAOpG,KACxCkD,EAAMsI,SAAS/I,KAAM2D,EAAOpG,GAAIuL,EAAmBnF,EAAOpG,KAG9D2K,EAAYlI,KAAM2D,EAAOpG,GAAIuK,EAAU5G,GAG3C,OAAOlB,OAQX,QAASS,GAAMjC,EAAS2D,GAGpB,KAAMnC,eAAgBS,IAAQ,CAM1B,IAAK,GAAIuE,KAAOwD,GACZ,GAAIA,EAAgBxD,GAAKxG,UAAYA,EACjC,MAAOgK,GAAgBxD,EAO/B,OAHAgE,KACAR,EAAgBQ,GAAO,GAAIvI,GAAMjC,EAASwK,GAEnCR,EAAgBQ,GAG3BhJ,KAAKxB,QAAUA,EACfwB,KAAKmC,GAAKA,EAnSd,GAAIoF,GACAU,EAAS,EACTe,EAAM,EACNb,KACAK,IA0SJ/H,GAAM6B,UAAUnB,GAAK,SAASwC,EAAQmE,EAAU5G,GAC5C,MAAO0H,GAAM/K,KAAKmC,KAAM2D,EAAQmE,EAAU5G,IAW9CT,EAAM6B,UAAUsB,IAAM,SAASD,EAAQmE,EAAU5G,GAC7C,MAAO0H,GAAM/K,KAAKmC,KAAM2D,EAAQmE,EAAU5G,GAAU,IAGxDT,EAAMmH,gBAAkB,aACxBnH,EAAMkI,OAASxB,EACf1G,EAAMsI,SAAW9B,EACjBxG,EAAMgI,aAAe,WACjB,OAAO,GAGW,mBAAXzK,IAA0BA,EAAOJ,UACxCI,EAAOJ,QAAU6C,GAGrBnB,OAAOmB,MAAQA,UAGbwI,GAAG,SAASrM,EAAQoB,EAAOJ,IAE/B,SAASsL,GASV,GAAIjH,GAAW,SAAU/D,EAAMW,EAAMsK,GAEpC,IAAI,GAAInE,KAAOnG,GAEd,GAAMA,EAAKyJ,eAAgBtD,GAA3B,CAIA,GAAI3C,GAAO2C,EACPjF,EAAQlB,EAAKmG,EAOjB,IAJwB,mBAAf,KACR3C,EAAO8G,EAAW,IAAMnE,EAAM,KAG5BjF,EAAMqJ,cAAgB7C,MACxBlE,GAAQ,SACF,IAAmB,gBAATtC,GAAmB,CACnCkC,EAAU/D,EAAM6B,EAAOsC,EACvB,UAID,GAAI7D,GAAUN,EAAKoG,SAAS+E,UAAWhH,EACvC,IAAM7D,EAAN,CAIA,GAAIuG,GAAOvG,EAAQuG,MAAQvG,EAAQ,GAAGuG,IAEtC,QAAOA,GACN,QACCvG,EAAQuB,MAAQA,CAChB,MAED,KAAK,QACL,IAAK,WACJ,IAAK,GAAIsF,GAAE,EAAGA,EAAI7G,EAAQV,OAAQuH,IACjC7G,EAAQ6G,GAAGnF,QAAYH,EAAMuJ,QAAQ9K,EAAQ6G,GAAGtF,SAEjD,MAED,KAAK,kBAGJ,IAAI,GAFAwJ,GAASxJ,EAAMqJ,aAAe7C,MAAQxG,GAASA,GAE3CyJ,EAAI,EAAGA,EAAIhL,EAAQyF,QAAQnG,OAAQ0L,IAC1ChL,EAAQyF,QAAQuF,GAAG/D,UAAa8D,EAAOD,QAAQ9K,EAAQyF,QAAQuF,GAAGzJ,SAEnE,MAED,KAAK,SACL,IAAK,aACJvB,EAAQuB,MAAQA,EAAM0J,YAAc1J,KAUlB,mBAAVjD,IAA6C,gBAAdA,GAAO4M,KAAmB5M,EAAO4M,IAC3E5M,EAAO,WACN,MAAOmF,KAEqB,mBAAXjE,IAA0BA,EAAOJ,QACnDI,EAAOJ,QAAUqE,EAEjBiH,EAAKjH,SAAWA,GAGhBjC,WACI2J,GAAG,SAAS/M,EAAQoB,EAAOJ,IAQ/B,WACE,YAQA,SAASiG,MAeT,QAAS+F,GAAgBlJ,EAAWmJ,GAEhC,IADA,GAAItM,GAAImD,EAAU5C,OACXP,KACH,GAAImD,EAAUnD,GAAGsM,WAAaA,EAC1B,MAAOtM,EAIf,UAUJ,QAASuM,GAAMzH,GACX,MAAO,YACH,MAAOrC,MAAKqC,GAAM0H,MAAM/J,KAAMgK,YAhCtC,GAAIC,GAAQpG,EAAavB,UACrB1E,EAAUoC,KACVkK,EAAsBtM,EAAQiG,YA2ClCoG,GAAME,aAAe,SAAsBC,GACvC,GACIC,GACArF,EAFArB,EAAS3D,KAAKsK,YAMlB,IAAIF,YAAepE,QAAQ,CACvBqE,IACA,KAAKrF,IAAOrB,GACJA,EAAO2E,eAAetD,IAAQoF,EAAIxF,KAAKI,KACvCqF,EAASrF,GAAOrB,EAAOqB,QAK/BqF,GAAW1G,EAAOyG,KAASzG,EAAOyG,MAGtC,OAAOC,IASXJ,EAAMM,iBAAmB,SAA0B7J,GAC/C,GACInD,GADAiN,IAGJ,KAAKjN,EAAI,EAAGA,EAAImD,EAAU5C,OAAQP,GAAK,EACnCiN,EAAc/G,KAAK/C,EAAUnD,GAAGsM,SAGpC,OAAOW,IASXP,EAAMQ,qBAAuB,SAA8BL,GACvD,GACIC,GADA3J,EAAYV,KAAKmK,aAAaC,EAQlC,OALI1J,aAAqB6F,SACrB8D,KACAA,EAASD,GAAO1J,GAGb2J,GAAY3J,GAavBuJ,EAAMS,YAAc,SAAqBN,EAAKP,GAC1C,GAEI7E,GAFAtE,EAAYV,KAAKyK,qBAAqBL,GACtCO,EAAwC,gBAAbd,EAG/B,KAAK7E,IAAOtE,GACJA,EAAU4H,eAAetD,IAAQ4E,EAAgBlJ,EAAUsE,GAAM6E,SACjEnJ,EAAUsE,GAAKvB,KAAKkH,EAAoBd,GACpCA,SAAUA,EACVe,MAAM,GAKlB,OAAO5K,OAMXiK,EAAM9I,GAAK2I,EAAM,eAUjBG,EAAMY,gBAAkB,SAAyBT,EAAKP,GAClD,MAAO7J,MAAK0K,YAAYN,GACpBP,SAAUA,EACVe,MAAM,KAOdX,EAAMW,KAAOd,EAAM,mBASnBG,EAAMa,YAAc,SAAqBV,GAErC,MADApK,MAAKmK,aAAaC,GACXpK,MASXiK,EAAMc,aAAe,SAAsBC,GACvC,IAAK,GAAIzN,GAAI,EAAGA,EAAIyN,EAAKlN,OAAQP,GAAK,EAClCyC,KAAK8K,YAAYE,EAAKzN,GAE1B,OAAOyC,OAWXiK,EAAMgB,eAAiB,SAAwBb,EAAKP,GAChD,GACInD,GACA1B,EAFAtE,EAAYV,KAAKyK,qBAAqBL,EAI1C,KAAKpF,IAAOtE,GACJA,EAAU4H,eAAetD,KACzB0B,EAAQkD,EAAgBlJ,EAAUsE,GAAM6E,GAEpCnD,QACAhG,EAAUsE,GAAKqD,OAAO3B,EAAO,GAKzC,OAAO1G,OAMXiK,EAAMrG,IAAMkG,EAAM,kBAYlBG,EAAMiB,aAAe,SAAsBd,EAAK1J,GAE5C,MAAOV,MAAKmL,qBAAoB,EAAOf,EAAK1J,IAahDuJ,EAAMmB,gBAAkB,SAAyBhB,EAAK1J,GAElD,MAAOV,MAAKmL,qBAAoB,EAAMf,EAAK1J,IAe/CuJ,EAAMkB,oBAAsB,SAA6BtC,EAAQuB,EAAK1J,GAClE,GAAInD,GACAwC,EACAsL,EAASxC,EAAS7I,KAAKiL,eAAiBjL,KAAK0K,YAC7CY,EAAWzC,EAAS7I,KAAKoL,gBAAkBpL,KAAKkL,YAGpD,IAAmB,gBAARd,IAAsBA,YAAepE,QAmB5C,IADAzI,EAAImD,EAAU5C,OACPP,KACH8N,EAAOxN,KAAKmC,KAAMoK,EAAK1J,EAAUnD,QAnBrC,KAAKA,IAAK6M,GACFA,EAAI9B,eAAe/K,KAAOwC,EAAQqK,EAAI7M,MAEjB,kBAAVwC,GACPsL,EAAOxN,KAAKmC,KAAMzC,EAAGwC,GAIrBuL,EAASzN,KAAKmC,KAAMzC,EAAGwC,GAevC,OAAOC,OAYXiK,EAAMsB,YAAc,SAAqBnB,GACrC,GAEIpF,GAFAD,QAAcqF,GACdzG,EAAS3D,KAAKsK,YAIlB,IAAa,WAATvF,QAEOpB,GAAOyG,OAEb,IAAIA,YAAepE,QAEpB,IAAKhB,IAAOrB,GACJA,EAAO2E,eAAetD,IAAQoF,EAAIxF,KAAKI,UAChCrB,GAAOqB,cAMfhF,MAAKwL,OAGhB,OAAOxL,OAQXiK,EAAMwB,mBAAqB3B,EAAM,eAcjCG,EAAMyB,UAAY,SAAmBtB,EAAK9L,GACtC,GACIoC,GACAmJ,EACAtM,EACAyH,EACAqF,EALAsB,EAAe3L,KAAKyK,qBAAqBL,EAO7C,KAAKpF,IAAO2G,GACR,GAAIA,EAAarD,eAAetD,GAI5B,IAHAtE,EAAYiL,EAAa3G,GAAKU,MAAM,GACpCnI,EAAImD,EAAU5C,OAEPP,KAGHsM,EAAWnJ,EAAUnD,GAEjBsM,EAASe,QAAS,GAClB5K,KAAKiL,eAAeb,EAAKP,EAASA,UAGtCQ,EAAWR,EAASA,SAASE,MAAM/J,KAAM1B,OAErC+L,IAAarK,KAAK4L,uBAClB5L,KAAKiL,eAAeb,EAAKP,EAASA,SAMlD,OAAO7J,OAMXiK,EAAMvK,QAAUoK,EAAM,aAUtBG,EAAM4B,KAAO,SAAczB,GACvB,GAAI9L,GAAOiI,MAAMjE,UAAUoD,MAAM7H,KAAKmM,UAAW,EACjD,OAAOhK,MAAK0L,UAAUtB,EAAK9L,IAW/B2L,EAAM6B,mBAAqB,SAA4B/L,GAEnD,MADAC,MAAK+L,iBAAmBhM,EACjBC,MAWXiK,EAAM2B,oBAAsB,WACxB,OAAI5L,KAAKsI,eAAe,qBACbtI,KAAK+L,kBAapB9B,EAAMK,WAAa,WACf,MAAOtK,MAAKwL,UAAYxL,KAAKwL,aAQjC3H,EAAamI,WAAa,WAEtB,MADApO,GAAQiG,aAAeqG,EAChBrG,GAIW,kBAAX/G,IAAyBA,EAAO4M,IACvC5M,EAAO,WACH,MAAO+G,KAGY,gBAAX7F,IAAuBA,EAAOJ,QAC1CI,EAAOJ,QAAUiG,EAGjBjG,EAAQiG,aAAeA,IAE7BhG,KAAKmC,gBAEI","file":"forms-api.min.js","sourcesContent":["(function () { var require = undefined; var define = undefined; (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){\n'use strict';\n\nvar mc4wp = window.mc4wp || {};\n\n// bail early if we're on IE8 OR if already inited (when script is included twice)\nif( ! window.addEventListener || mc4wp.ready ) {\n\treturn;\n}\n\n// deps & vars\nvar Gator = require('gator');\nvar forms = require('./forms/forms.js');\nvar listeners = window.mc4wp && window.mc4wp.listeners ? window.mc4wp.listeners : [];\nvar config = window.mc4wp_forms_config || {};\nvar optionalInputs = document.querySelectorAll('.mc4wp-form [data-show-if], .mc4wp-form [data-hide-if]');\n\n// funcs\nfunction scrollToForm(form) {\n\tvar animate = config.auto_scroll === 'animated';\n\tvar args = {\n\t\tbehavior: animate ? \"smooth\" : \"instant\"\n\t};\n\tform.element.scrollIntoView(args);\n}\n\nfunction handleFormRequest(form, action, errors, data){\n\tvar pageHeight = document.body.clientHeight;\n\tvar timeStart = Date.now();\n\n\t// re-populate form\n\tif( errors ) {\n\t\tform.setData(data);\n\t}\n\n\tif( config.auto_scroll ) {\n\t\tscrollToForm(form);\n\t}\n\n\t// trigger events on window.load so all other scripts have loaded\n\twindow.addEventListener('load', function() {\n\t\tvar timeElapsed = Date.now() - timeStart;\n\n\t\t// scroll to form again if page height changed since last scroll\n\t\t// (only if load didn't take more than 0.8 seconds to prevent overtaking user scroll)\n\t\tif( config.auto_scroll && timeElapsed < 800 && document.body.clientHeight != pageHeight ) {\n\t\t\tscrollToForm(form);\n\t\t}\n\n\t\t// trigger events\n\t\tforms.trigger( 'submitted', [form]);\n\n\t\tif( errors ) {\n\t\t\tforms.trigger('error', [form, errors]);\n\t\t} else {\n\t\t\t// form was successfully submitted\n\t\t\tforms.trigger('success', [form, data]);\n\t\t\tforms.trigger(action + \"d\", [form, data]);\n\t\t}\n\t});\n}\n\nfunction toggleElement(el, expectedValue, show ) {\n\treturn function() {\n\t\tvar value = this.value.trim();\n\t\tvar checked = ( this.getAttribute('type') !== 'radio' && this.getAttribute('type') !== 'checked' ) || this.checked;\n\t\tvar conditionMet = checked && ( ( value === expectedValue && expectedValue !== \"\" ) || ( expectedValue === \"\" && value.length > 0 ) );\n\t\tif(show){\n\t\t\tel.style.display = ( conditionMet ) ? '' : 'none';\n\t\t}else{\n\t\t\tel.style.display = ( conditionMet ) ? 'none' : '';\n\t\t}\n\t}\n}\n\n// hide fields with [data-show-if] attribute\n[].forEach.call(optionalInputs, function(el) {\n\tvar show = !!el.getAttribute('data-show-if');\n\tvar condition = show ? el.getAttribute('data-show-if').split(':') : el.getAttribute('data-hide-if').split(':');\n\tvar fields = document.querySelectorAll('.mc4wp-form [name=\"' + condition[0] + '\"]');\n\tvar expectedValue = condition[1] || \"\";\n\tvar callback = toggleElement(el, expectedValue, show);\n\n\tfor(var i=0; i<fields.length; i++) {\n\t\tfields[i].addEventListener('change', callback);\n\t\tfields[i].addEventListener('keyup', callback);\n\t\tcallback.call(fields[i]);\n\t}\n});\n\n\n// register early listeners\nfor(var i=0; i<listeners.length;i++) {\n\tforms.on(listeners[i].event, listeners[i].callback);\n}\n\n// Bind browser events to form events (using delegation)\nGator(document.body).on('submit', '.mc4wp-form', function(event) {\n\tvar form = forms.getByElement(event.target || event.srcElement);\n\tforms.trigger('submit', [form, event]);\n});\n\nGator(document.body).on('focus', '.mc4wp-form', function(event) {\n\tvar form = forms.getByElement(event.target || event.srcElement);\n\n\tif( ! form.started ) {\n\t\tforms.trigger('started', [form, event]);\n\t\tform.started = true;\n\t}\n});\n\nGator(document.body).on('change', '.mc4wp-form', function(event) {\n\tvar form = forms.getByElement(event.target || event.srcElement);\n\tforms.trigger('change', [form,event]);\n});\n\nif( config.submitted_form ) {\n\tvar formConfig = config.submitted_form,\n\t\telement = document.getElementById(formConfig.element_id),\n\t\tform = forms.getByElement(element);\n\n\thandleFormRequest(form, formConfig.action, formConfig.errors, formConfig.data);\n}\n\n\n// expose forms object\nmc4wp.forms = forms;\nmc4wp.ready = true;\nwindow.mc4wp = mc4wp;\n\n},{\"./forms/forms.js\":3,\"gator\":5}],2:[function(require,module,exports){\n'use strict';\n\nvar serialize = require('form-serialize');\nvar populate = require('populate.js');\n\nvar Form = function(id, element) {\n\tthis.id = id;\n\tthis.element = element || document.createElement('form');\n\tthis.name = this.element.getAttribute('data-name') || \"Form #\" + this.id;\n\tthis.errors = [];\n\tthis.started = false;\n};\n\nForm.prototype.setData = function(data) {\n\ttry {\n\t\tpopulate(this.element, data);\n\t} catch(e) {\n\t\tconsole.error(e);\n\t}\n};\n\nForm.prototype.getData = function() {\n\treturn serialize(this.element, { hash: true });\n};\n\nForm.prototype.getSerializedData = function() {\n\treturn serialize(this.element);\n};\n\nForm.prototype.setResponse = function( msg ) {\n\tthis.element.querySelector('.mc4wp-response').innerHTML = msg;\n};\n\n// revert back to original state\nForm.prototype.reset = function() {\n\tthis.setResponse('');\n\tthis.element.querySelector('.mc4wp-form-fields').style.display = '';\n\tthis.element.reset();\n};\n\nmodule.exports = Form;\n\n},{\"form-serialize\":4,\"populate.js\":6}],3:[function(require,module,exports){\n'use strict';\n\n// deps\nvar EventEmitter = require('wolfy87-eventemitter');\nvar Form = require('./form.js');\n\n// variables\nvar events = new EventEmitter();\nvar forms = [];\n\n// get form by its id\n// please note that this will get the FIRST occurence of the form with that ID on the page\nfunction get(formId) {\n\n\t// do we have form for this one already?\n\tfor(var i=0; i<forms.length;i++) {\n\t\tif(forms[i].id == formId) {\n\t\t\treturn forms[i];\n\t\t}\n\t}\n\n\t// try to create from first occurence of this element\n\tvar formElement = document.querySelector('.mc4wp-form-' + formId);\n\treturn createFromElement(formElement,formId);\n}\n\n// get form by <form> element (or any input in form)\nfunction getByElement(element) {\n\tvar formElement = element.form || element;\n\n\tfor(var i=0; i < forms.length; i++) {\n\t\tif(forms[i].element == formElement) {\n\t\t\treturn forms[i];\n\t\t}\n\t}\n\n\treturn createFromElement(formElement);\n}\n\n// create form object from <form> element\nfunction createFromElement(formElement, id) {\n\tid = id || parseInt( formElement.getAttribute('data-id') ) || 0;\n\tvar form = new Form(id, formElement);\n\tforms.push(form);\n\treturn form;\n}\n\nfunction all() {\n\treturn forms;\n}\n\nfunction on(event,callback) {\n\treturn events.on(event,callback);\n}\n\nfunction trigger(event,args) {\n\treturn events.trigger(event,args);\n}\n\nfunction off(event,callback) {\n\treturn events.off(event,callback);\n}\n\nmodule.exports = {\n\t\"all\": all,\n\t\"get\": get,\n\t\"getByElement\": getByElement,\n\t\"on\": on,\n\t\"trigger\": trigger,\n\t\"off\": off\n};\n\n\n},{\"./form.js\":2,\"wolfy87-eventemitter\":7}],4:[function(require,module,exports){\n// get successful control from form and assemble into object\n// http://www.w3.org/TR/html401/interact/forms.html#h-17.13.2\n\n// types which indicate a submit action and are not successful controls\n// these will be ignored\nvar k_r_submitter = /^(?:submit|button|image|reset|file)$/i;\n\n// node names which could be successful controls\nvar k_r_success_contrls = /^(?:input|select|textarea|keygen)/i;\n\n// Matches bracket notation.\nvar brackets = /(\\[[^\\[\\]]*\\])/g;\n\n// serializes form fields\n// @param form MUST be an HTMLForm element\n// @param options is an optional argument to configure the serialization. Default output\n// with no options specified is a url encoded string\n// - hash: [true | false] Configure the output type. If true, the output will\n// be a js object.\n// - serializer: [function] Optional serializer function to override the default one.\n// The function takes 3 arguments (result, key, value) and should return new result\n// hash and url encoded str serializers are provided with this module\n// - disabled: [true | false]. If true serialize disabled fields.\n// - empty: [true | false]. If true serialize empty fields\nfunction serialize(form, options) {\n if (typeof options != 'object') {\n options = { hash: !!options };\n }\n else if (options.hash === undefined) {\n options.hash = true;\n }\n\n var result = (options.hash) ? {} : '';\n var serializer = options.serializer || ((options.hash) ? hash_serializer : str_serialize);\n\n var elements = form && form.elements ? form.elements : [];\n\n //Object store each radio and set if it's empty or not\n var radio_store = Object.create(null);\n\n for (var i=0 ; i<elements.length ; ++i) {\n var element = elements[i];\n\n // ingore disabled fields\n if ((!options.disabled && element.disabled) || !element.name) {\n continue;\n }\n // ignore anyhting that is not considered a success field\n if (!k_r_success_contrls.test(element.nodeName) ||\n k_r_submitter.test(element.type)) {\n continue;\n }\n\n var key = element.name;\n var val = element.value;\n\n // we can't just use element.value for checkboxes cause some browsers lie to us\n // they say \"on\" for value when the box isn't checked\n if ((element.type === 'checkbox' || element.type === 'radio') && !element.checked) {\n val = undefined;\n }\n\n // If we want empty elements\n if (options.empty) {\n // for checkbox\n if (element.type === 'checkbox' && !element.checked) {\n val = '';\n }\n\n // for radio\n if (element.type === 'radio') {\n if (!radio_store[element.name] && !element.checked) {\n radio_store[element.name] = false;\n }\n else if (element.checked) {\n radio_store[element.name] = true;\n }\n }\n\n // if options empty is true, continue only if its radio\n if (!val && element.type == 'radio') {\n continue;\n }\n }\n else {\n // value-less fields are ignored unless options.empty is true\n if (!val) {\n continue;\n }\n }\n\n // multi select boxes\n if (element.type === 'select-multiple') {\n val = [];\n\n var selectOptions = element.options;\n var isSelectedOptions = false;\n for (var j=0 ; j<selectOptions.length ; ++j) {\n var option = selectOptions[j];\n var allowedEmpty = options.empty && !option.value;\n var hasValue = (option.value || allowedEmpty);\n if (option.selected && hasValue) {\n isSelectedOptions = true;\n\n // If using a hash serializer be sure to add the\n // correct notation for an array in the multi-select\n // context. Here the name attribute on the select element\n // might be missing the trailing bracket pair. Both names\n // \"foo\" and \"foo[]\" should be arrays.\n if (options.hash && key.slice(key.length - 2) !== '[]') {\n result = serializer(result, key + '[]', option.value);\n }\n else {\n result = serializer(result, key, option.value);\n }\n }\n }\n\n // Serialize if no selected options and options.empty is true\n if (!isSelectedOptions && options.empty) {\n result = serializer(result, key, '');\n }\n\n continue;\n }\n\n result = serializer(result, key, val);\n }\n\n // Check for all empty radio buttons and serialize them with key=\"\"\n if (options.empty) {\n for (var key in radio_store) {\n if (!radio_store[key]) {\n result = serializer(result, key, '');\n }\n }\n }\n\n return result;\n}\n\nfunction parse_keys(string) {\n var keys = [];\n var prefix = /^([^\\[\\]]*)/;\n var children = new RegExp(brackets);\n var match = prefix.exec(string);\n\n if (match[1]) {\n keys.push(match[1]);\n }\n\n while ((match = children.exec(string)) !== null) {\n keys.push(match[1]);\n }\n\n return keys;\n}\n\nfunction hash_assign(result, keys, value) {\n if (keys.length === 0) {\n result = value;\n return result;\n }\n\n var key = keys.shift();\n var between = key.match(/^\\[(.+?)\\]$/);\n\n if (key === '[]') {\n result = result || [];\n\n if (Array.isArray(result)) {\n result.push(hash_assign(null, keys, value));\n }\n else {\n // This might be the result of bad name attributes like \"[][foo]\",\n // in this case the original `result` object will already be\n // assigned to an object literal. Rather than coerce the object to\n // an array, or cause an exception the attribute \"_values\" is\n // assigned as an array.\n result._values = result._values || [];\n result._values.push(hash_assign(null, keys, value));\n }\n\n return result;\n }\n\n // Key is an attribute name and can be assigned directly.\n if (!between) {\n result[key] = hash_assign(result[key], keys, value);\n }\n else {\n var string = between[1];\n // +var converts the variable into a number\n // better than parseInt because it doesn't truncate away trailing\n // letters and actually fails if whole thing is not a number\n var index = +string;\n\n // If the characters between the brackets is not a number it is an\n // attribute name and can be assigned directly.\n if (isNaN(index)) {\n result = result || {};\n result[string] = hash_assign(result[string], keys, value);\n }\n else {\n result = result || [];\n result[index] = hash_assign(result[index], keys, value);\n }\n }\n\n return result;\n}\n\n// Object/hash encoding serializer.\nfunction hash_serializer(result, key, value) {\n var matches = key.match(brackets);\n\n // Has brackets? Use the recursive assignment function to walk the keys,\n // construct any missing objects in the result tree and make the assignment\n // at the end of the chain.\n if (matches) {\n var keys = parse_keys(key);\n hash_assign(result, keys, value);\n }\n else {\n // Non bracket notation can make assignments directly.\n var existing = result[key];\n\n // If the value has been assigned already (for instance when a radio and\n // a checkbox have the same name attribute) convert the previous value\n // into an array before pushing into it.\n //\n // NOTE: If this requirement were removed all hash creation and\n // assignment could go through `hash_assign`.\n if (existing) {\n if (!Array.isArray(existing)) {\n result[key] = [ existing ];\n }\n\n result[key].push(value);\n }\n else {\n result[key] = value;\n }\n }\n\n return result;\n}\n\n// urlform encoding serializer\nfunction str_serialize(result, key, value) {\n // encode newlines as \\r\\n cause the html spec says so\n value = value.replace(/(\\r)?\\n/g, '\\r\\n');\n value = encodeURIComponent(value);\n\n // spaces should be '+' rather than '%20'.\n value = value.replace(/%20/g, '+');\n return result + (result ? '&' : '') + encodeURIComponent(key) + '=' + value;\n}\n\nmodule.exports = serialize;\n\n},{}],5:[function(require,module,exports){\n/**\n * Copyright 2014 Craig Campbell\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * GATOR.JS\n * Simple Event Delegation\n *\n * @version 1.2.4\n *\n * Compatible with IE 9+, FF 3.6+, Safari 5+, Chrome\n *\n * Include legacy.js for compatibility with older browsers\n *\n * .-._ _ _ _ _ _ _ _ _\n * .-''-.__.-'00 '-' ' ' ' ' ' ' ' '-.\n * '.___ ' . .--_'-' '-' '-' _'-' '._\n * V: V 'vv-' '_ '. .' _..' '.'.\n * '=.____.=_.--' :_.__.__:_ '. : :\n * (((____.-' '-. / : :\n * (((-'\\ .' /\n * _____..' .'\n * '-._____.-'\n */\n(function() {\n var _matcher,\n _level = 0,\n _id = 0,\n _handlers = {},\n _gatorInstances = {};\n\n function _addEvent(gator, type, callback) {\n\n // blur and focus do not bubble up but if you use event capturing\n // then you will get them\n var useCapture = type == 'blur' || type == 'focus';\n gator.element.addEventListener(type, callback, useCapture);\n }\n\n function _cancel(e) {\n e.preventDefault();\n e.stopPropagation();\n }\n\n /**\n * returns function to use for determining if an element\n * matches a query selector\n *\n * @returns {Function}\n */\n function _getMatcher(element) {\n if (_matcher) {\n return _matcher;\n }\n\n if (element.matches) {\n _matcher = element.matches;\n return _matcher;\n }\n\n if (element.webkitMatchesSelector) {\n _matcher = element.webkitMatchesSelector;\n return _matcher;\n }\n\n if (element.mozMatchesSelector) {\n _matcher = element.mozMatchesSelector;\n return _matcher;\n }\n\n if (element.msMatchesSelector) {\n _matcher = element.msMatchesSelector;\n return _matcher;\n }\n\n if (element.oMatchesSelector) {\n _matcher = element.oMatchesSelector;\n return _matcher;\n }\n\n // if it doesn't match a native browser method\n // fall back to the gator function\n _matcher = Gator.matchesSelector;\n return _matcher;\n }\n\n /**\n * determines if the specified element matches a given selector\n *\n * @param {Node} element - the element to compare against the selector\n * @param {string} selector\n * @param {Node} boundElement - the element the listener was attached to\n * @returns {void|Node}\n */\n function _matchesSelector(element, selector, boundElement) {\n\n // no selector means this event was bound directly to this element\n if (selector == '_root') {\n return boundElement;\n }\n\n // if we have moved up to the element you bound the event to\n // then we have come too far\n if (element === boundElement) {\n return;\n }\n\n // if this is a match then we are done!\n if (_getMatcher(element).call(element, selector)) {\n return element;\n }\n\n // if this element did not match but has a parent we should try\n // going up the tree to see if any of the parent elements match\n // for example if you are looking for a click on an <a> tag but there\n // is a <span> inside of the a tag that it is the target,\n // it should still work\n if (element.parentNode) {\n _level++;\n return _matchesSelector(element.parentNode, selector, boundElement);\n }\n }\n\n function _addHandler(gator, event, selector, callback) {\n if (!_handlers[gator.id]) {\n _handlers[gator.id] = {};\n }\n\n if (!_handlers[gator.id][event]) {\n _handlers[gator.id][event] = {};\n }\n\n if (!_handlers[gator.id][event][selector]) {\n _handlers[gator.id][event][selector] = [];\n }\n\n _handlers[gator.id][event][selector].push(callback);\n }\n\n function _removeHandler(gator, event, selector, callback) {\n\n // if there are no events tied to this element at all\n // then don't do anything\n if (!_handlers[gator.id]) {\n return;\n }\n\n // if there is no event type specified then remove all events\n // example: Gator(element).off()\n if (!event) {\n for (var type in _handlers[gator.id]) {\n if (_handlers[gator.id].hasOwnProperty(type)) {\n _handlers[gator.id][type] = {};\n }\n }\n return;\n }\n\n // if no callback or selector is specified remove all events of this type\n // example: Gator(element).off('click')\n if (!callback && !selector) {\n _handlers[gator.id][event] = {};\n return;\n }\n\n // if a selector is specified but no callback remove all events\n // for this selector\n // example: Gator(element).off('click', '.sub-element')\n if (!callback) {\n delete _handlers[gator.id][event][selector];\n return;\n }\n\n // if we have specified an event type, selector, and callback then we\n // need to make sure there are callbacks tied to this selector to\n // begin with. if there aren't then we can stop here\n if (!_handlers[gator.id][event][selector]) {\n return;\n }\n\n // if there are then loop through all the callbacks and if we find\n // one that matches remove it from the array\n for (var i = 0; i < _handlers[gator.id][event][selector].length; i++) {\n if (_handlers[gator.id][event][selector][i] === callback) {\n _handlers[gator.id][event][selector].splice(i, 1);\n break;\n }\n }\n }\n\n function _handleEvent(id, e, type) {\n if (!_handlers[id][type]) {\n return;\n }\n\n var target = e.target || e.srcElement,\n selector,\n match,\n matches = {},\n i = 0,\n j = 0;\n\n // find all events that match\n _level = 0;\n for (selector in _handlers[id][type]) {\n if (_handlers[id][type].hasOwnProperty(selector)) {\n match = _matchesSelector(target, selector, _gatorInstances[id].element);\n\n if (match && Gator.matchesEvent(type, _gatorInstances[id].element, match, selector == '_root', e)) {\n _level++;\n _handlers[id][type][selector].match = match;\n matches[_level] = _handlers[id][type][selector];\n }\n }\n }\n\n // stopPropagation() fails to set cancelBubble to true in Webkit\n // @see http://code.google.com/p/chromium/issues/detail?id=162270\n e.stopPropagation = function() {\n e.cancelBubble = true;\n };\n\n for (i = 0; i <= _level; i++) {\n if (matches[i]) {\n for (j = 0; j < matches[i].length; j++) {\n if (matches[i][j].call(matches[i].match, e) === false) {\n Gator.cancel(e);\n return;\n }\n\n if (e.cancelBubble) {\n return;\n }\n }\n }\n }\n }\n\n /**\n * binds the specified events to the element\n *\n * @param {string|Array} events\n * @param {string} selector\n * @param {Function} callback\n * @param {boolean=} remove\n * @returns {Object}\n */\n function _bind(events, selector, callback, remove) {\n\n // fail silently if you pass null or undefined as an alement\n // in the Gator constructor\n if (!this.element) {\n return;\n }\n\n if (!(events instanceof Array)) {\n events = [events];\n }\n\n if (!callback && typeof(selector) == 'function') {\n callback = selector;\n selector = '_root';\n }\n\n var id = this.id,\n i;\n\n function _getGlobalCallback(type) {\n return function(e) {\n _handleEvent(id, e, type);\n };\n }\n\n for (i = 0; i < events.length; i++) {\n if (remove) {\n _removeHandler(this, events[i], selector, callback);\n continue;\n }\n\n if (!_handlers[id] || !_handlers[id][events[i]]) {\n Gator.addEvent(this, events[i], _getGlobalCallback(events[i]));\n }\n\n _addHandler(this, events[i], selector, callback);\n }\n\n return this;\n }\n\n /**\n * Gator object constructor\n *\n * @param {Node} element\n */\n function Gator(element, id) {\n\n // called as function\n if (!(this instanceof Gator)) {\n // only keep one Gator instance per node to make sure that\n // we don't create a ton of new objects if you want to delegate\n // multiple events from the same node\n //\n // for example: Gator(document).on(...\n for (var key in _gatorInstances) {\n if (_gatorInstances[key].element === element) {\n return _gatorInstances[key];\n }\n }\n\n _id++;\n _gatorInstances[_id] = new Gator(element, _id);\n\n return _gatorInstances[_id];\n }\n\n this.element = element;\n this.id = id;\n }\n\n /**\n * adds an event\n *\n * @param {string|Array} events\n * @param {string} selector\n * @param {Function} callback\n * @returns {Object}\n */\n Gator.prototype.on = function(events, selector, callback) {\n return _bind.call(this, events, selector, callback);\n };\n\n /**\n * removes an event\n *\n * @param {string|Array} events\n * @param {string} selector\n * @param {Function} callback\n * @returns {Object}\n */\n Gator.prototype.off = function(events, selector, callback) {\n return _bind.call(this, events, selector, callback, true);\n };\n\n Gator.matchesSelector = function() {};\n Gator.cancel = _cancel;\n Gator.addEvent = _addEvent;\n Gator.matchesEvent = function() {\n return true;\n };\n\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = Gator;\n }\n\n window.Gator = Gator;\n}) ();\n\n},{}],6:[function(require,module,exports){\n/*! populate.js v1.0.2 by @dannyvankooten | MIT license */\n;(function(root) {\n\n\t/**\n\t * Populate form fields from a JSON object.\n\t *\n\t * @param form object The form element containing your input fields.\n\t * @param data array JSON data to populate the fields with.\n\t * @param basename string Optional basename which is added to `name` attributes\n\t */\n\tvar populate = function( form, data, basename) {\n\n\t\tfor(var key in data) {\n\n\t\t\tif( ! data.hasOwnProperty( key ) ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tvar name = key;\n\t\t\tvar value = data[key];\n\n\t\t\t// handle array name attributes\n\t\t\tif(typeof(basename) !== \"undefined\") {\n\t\t\t\tname = basename + \"[\" + key + \"]\";\n\t\t\t}\n\n\t\t\tif(value.constructor === Array) {\n\t\t\t\tname += '[]';\n\t\t\t} else if(typeof value == \"object\") {\n\t\t\t\tpopulate( form, value, name);\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// only proceed if element is set\n\t\t\tvar element = form.elements.namedItem( name );\n\t\t\tif( ! element ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tvar type = element.type || element[0].type;\n\n\t\t\tswitch(type ) {\n\t\t\t\tdefault:\n\t\t\t\t\telement.value = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'radio':\n\t\t\t\tcase 'checkbox':\n\t\t\t\t\tfor( var j=0; j < element.length; j++ ) {\n\t\t\t\t\t\telement[j].checked = ( value.indexOf(element[j].value) > -1 );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'select-multiple':\n\t\t\t\t\tvar values = value.constructor == Array ? value : [value];\n\n\t\t\t\t\tfor(var k = 0; k < element.options.length; k++) {\n\t\t\t\t\t\telement.options[k].selected |= (values.indexOf(element.options[k].value) > -1 );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'select':\n\t\t\t\tcase 'select-one':\n\t\t\t\t\telement.value = value.toString() || value;\n\t\t\t\t\tbreak;\n\n\t\t\t}\n\n\t\t}\n\n\t};\n\n\t// Play nice with AMD, CommonJS or a plain global object.\n\tif ( typeof define == 'function' && typeof define.amd == 'object' && define.amd ) {\n\t\tdefine(function() {\n\t\t\treturn populate;\n\t\t});\n\t}\telse if ( typeof module !== 'undefined' && module.exports ) {\n\t\tmodule.exports = populate;\n\t} else {\n\t\troot.populate = populate;\n\t}\n\n}(this));\n},{}],7:[function(require,module,exports){\n/*!\n * EventEmitter v4.2.11 - git.io/ee\n * Unlicense - http://unlicense.org/\n * Oliver Caldwell - http://oli.me.uk/\n * @preserve\n */\n\n;(function () {\n 'use strict';\n\n /**\n * Class for managing events.\n * Can be extended to provide event functionality in other classes.\n *\n * @class EventEmitter Manages event registering and emitting.\n */\n function EventEmitter() {}\n\n // Shortcuts to improve speed and size\n var proto = EventEmitter.prototype;\n var exports = this;\n var originalGlobalValue = exports.EventEmitter;\n\n /**\n * Finds the index of the listener for the event in its storage array.\n *\n * @param {Function[]} listeners Array of listeners to search through.\n * @param {Function} listener Method to look for.\n * @return {Number} Index of the specified listener, -1 if not found\n * @api private\n */\n function indexOfListener(listeners, listener) {\n var i = listeners.length;\n while (i--) {\n if (listeners[i].listener === listener) {\n return i;\n }\n }\n\n return -1;\n }\n\n /**\n * Alias a method while keeping the context correct, to allow for overwriting of target method.\n *\n * @param {String} name The name of the target method.\n * @return {Function} The aliased method\n * @api private\n */\n function alias(name) {\n return function aliasClosure() {\n return this[name].apply(this, arguments);\n };\n }\n\n /**\n * Returns the listener array for the specified event.\n * Will initialise the event object and listener arrays if required.\n * Will return an object if you use a regex search. The object contains keys for each matched event. So /ba[rz]/ might return an object containing bar and baz. But only if you have either defined them with defineEvent or added some listeners to them.\n * Each property in the object response is an array of listener functions.\n *\n * @param {String|RegExp} evt Name of the event to return the listeners from.\n * @return {Function[]|Object} All listener functions for the event.\n */\n proto.getListeners = function getListeners(evt) {\n var events = this._getEvents();\n var response;\n var key;\n\n // Return a concatenated array of all matching events if\n // the selector is a regular expression.\n if (evt instanceof RegExp) {\n response = {};\n for (key in events) {\n if (events.hasOwnProperty(key) && evt.test(key)) {\n response[key] = events[key];\n }\n }\n }\n else {\n response = events[evt] || (events[evt] = []);\n }\n\n return response;\n };\n\n /**\n * Takes a list of listener objects and flattens it into a list of listener functions.\n *\n * @param {Object[]} listeners Raw listener objects.\n * @return {Function[]} Just the listener functions.\n */\n proto.flattenListeners = function flattenListeners(listeners) {\n var flatListeners = [];\n var i;\n\n for (i = 0; i < listeners.length; i += 1) {\n flatListeners.push(listeners[i].listener);\n }\n\n return flatListeners;\n };\n\n /**\n * Fetches the requested listeners via getListeners but will always return the results inside an object. This is mainly for internal use but others may find it useful.\n *\n * @param {String|RegExp} evt Name of the event to return the listeners from.\n * @return {Object} All listener functions for an event in an object.\n */\n proto.getListenersAsObject = function getListenersAsObject(evt) {\n var listeners = this.getListeners(evt);\n var response;\n\n if (listeners instanceof Array) {\n response = {};\n response[evt] = listeners;\n }\n\n return response || listeners;\n };\n\n /**\n * Adds a listener function to the specified event.\n * The listener will not be added if it is a duplicate.\n * If the listener returns true then it will be removed after it is called.\n * If you pass a regular expression as the event name then the listener will be added to all events that match it.\n *\n * @param {String|RegExp} evt Name of the event to attach the listener to.\n * @param {Function} listener Method to be called when the event is emitted. If the function returns true then it will be removed after calling.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.addListener = function addListener(evt, listener) {\n var listeners = this.getListenersAsObject(evt);\n var listenerIsWrapped = typeof listener === 'object';\n var key;\n\n for (key in listeners) {\n if (listeners.hasOwnProperty(key) && indexOfListener(listeners[key], listener) === -1) {\n listeners[key].push(listenerIsWrapped ? listener : {\n listener: listener,\n once: false\n });\n }\n }\n\n return this;\n };\n\n /**\n * Alias of addListener\n */\n proto.on = alias('addListener');\n\n /**\n * Semi-alias of addListener. It will add a listener that will be\n * automatically removed after its first execution.\n *\n * @param {String|RegExp} evt Name of the event to attach the listener to.\n * @param {Function} listener Method to be called when the event is emitted. If the function returns true then it will be removed after calling.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.addOnceListener = function addOnceListener(evt, listener) {\n return this.addListener(evt, {\n listener: listener,\n once: true\n });\n };\n\n /**\n * Alias of addOnceListener.\n */\n proto.once = alias('addOnceListener');\n\n /**\n * Defines an event name. This is required if you want to use a regex to add a listener to multiple events at once. If you don't do this then how do you expect it to know what event to add to? Should it just add to every possible match for a regex? No. That is scary and bad.\n * You need to tell it what event names should be matched by a regex.\n *\n * @param {String} evt Name of the event to create.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.defineEvent = function defineEvent(evt) {\n this.getListeners(evt);\n return this;\n };\n\n /**\n * Uses defineEvent to define multiple events.\n *\n * @param {String[]} evts An array of event names to define.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.defineEvents = function defineEvents(evts) {\n for (var i = 0; i < evts.length; i += 1) {\n this.defineEvent(evts[i]);\n }\n return this;\n };\n\n /**\n * Removes a listener function from the specified event.\n * When passed a regular expression as the event name, it will remove the listener from all events that match it.\n *\n * @param {String|RegExp} evt Name of the event to remove the listener from.\n * @param {Function} listener Method to remove from the event.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.removeListener = function removeListener(evt, listener) {\n var listeners = this.getListenersAsObject(evt);\n var index;\n var key;\n\n for (key in listeners) {\n if (listeners.hasOwnProperty(key)) {\n index = indexOfListener(listeners[key], listener);\n\n if (index !== -1) {\n listeners[key].splice(index, 1);\n }\n }\n }\n\n return this;\n };\n\n /**\n * Alias of removeListener\n */\n proto.off = alias('removeListener');\n\n /**\n * Adds listeners in bulk using the manipulateListeners method.\n * If you pass an object as the second argument you can add to multiple events at once. The object should contain key value pairs of events and listeners or listener arrays. You can also pass it an event name and an array of listeners to be added.\n * You can also pass it a regular expression to add the array of listeners to all events that match it.\n * Yeah, this function does quite a bit. That's probably a bad thing.\n *\n * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to add to multiple events at once.\n * @param {Function[]} [listeners] An optional array of listener functions to add.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.addListeners = function addListeners(evt, listeners) {\n // Pass through to manipulateListeners\n return this.manipulateListeners(false, evt, listeners);\n };\n\n /**\n * Removes listeners in bulk using the manipulateListeners method.\n * If you pass an object as the second argument you can remove from multiple events at once. The object should contain key value pairs of events and listeners or listener arrays.\n * You can also pass it an event name and an array of listeners to be removed.\n * You can also pass it a regular expression to remove the listeners from all events that match it.\n *\n * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to remove from multiple events at once.\n * @param {Function[]} [listeners] An optional array of listener functions to remove.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.removeListeners = function removeListeners(evt, listeners) {\n // Pass through to manipulateListeners\n return this.manipulateListeners(true, evt, listeners);\n };\n\n /**\n * Edits listeners in bulk. The addListeners and removeListeners methods both use this to do their job. You should really use those instead, this is a little lower level.\n * The first argument will determine if the listeners are removed (true) or added (false).\n * If you pass an object as the second argument you can add/remove from multiple events at once. The object should contain key value pairs of events and listeners or listener arrays.\n * You can also pass it an event name and an array of listeners to be added/removed.\n * You can also pass it a regular expression to manipulate the listeners of all events that match it.\n *\n * @param {Boolean} remove True if you want to remove listeners, false if you want to add.\n * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to add/remove from multiple events at once.\n * @param {Function[]} [listeners] An optional array of listener functions to add/remove.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.manipulateListeners = function manipulateListeners(remove, evt, listeners) {\n var i;\n var value;\n var single = remove ? this.removeListener : this.addListener;\n var multiple = remove ? this.removeListeners : this.addListeners;\n\n // If evt is an object then pass each of its properties to this method\n if (typeof evt === 'object' && !(evt instanceof RegExp)) {\n for (i in evt) {\n if (evt.hasOwnProperty(i) && (value = evt[i])) {\n // Pass the single listener straight through to the singular method\n if (typeof value === 'function') {\n single.call(this, i, value);\n }\n else {\n // Otherwise pass back to the multiple function\n multiple.call(this, i, value);\n }\n }\n }\n }\n else {\n // So evt must be a string\n // And listeners must be an array of listeners\n // Loop over it and pass each one to the multiple method\n i = listeners.length;\n while (i--) {\n single.call(this, evt, listeners[i]);\n }\n }\n\n return this;\n };\n\n /**\n * Removes all listeners from a specified event.\n * If you do not specify an event then all listeners will be removed.\n * That means every event will be emptied.\n * You can also pass a regex to remove all events that match it.\n *\n * @param {String|RegExp} [evt] Optional name of the event to remove all listeners for. Will remove from every event if not passed.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.removeEvent = function removeEvent(evt) {\n var type = typeof evt;\n var events = this._getEvents();\n var key;\n\n // Remove different things depending on the state of evt\n if (type === 'string') {\n // Remove all listeners for the specified event\n delete events[evt];\n }\n else if (evt instanceof RegExp) {\n // Remove all events matching the regex.\n for (key in events) {\n if (events.hasOwnProperty(key) && evt.test(key)) {\n delete events[key];\n }\n }\n }\n else {\n // Remove all listeners in all events\n delete this._events;\n }\n\n return this;\n };\n\n /**\n * Alias of removeEvent.\n *\n * Added to mirror the node API.\n */\n proto.removeAllListeners = alias('removeEvent');\n\n /**\n * Emits an event of your choice.\n * When emitted, every listener attached to that event will be executed.\n * If you pass the optional argument array then those arguments will be passed to every listener upon execution.\n * Because it uses `apply`, your array of arguments will be passed as if you wrote them out separately.\n * So they will not arrive within the array on the other side, they will be separate.\n * You can also pass a regular expression to emit to all events that match it.\n *\n * @param {String|RegExp} evt Name of the event to emit and execute listeners for.\n * @param {Array} [args] Optional array of arguments to be passed to each listener.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.emitEvent = function emitEvent(evt, args) {\n var listenersMap = this.getListenersAsObject(evt);\n var listeners;\n var listener;\n var i;\n var key;\n var response;\n\n for (key in listenersMap) {\n if (listenersMap.hasOwnProperty(key)) {\n listeners = listenersMap[key].slice(0);\n i = listeners.length;\n\n while (i--) {\n // If the listener returns true then it shall be removed from the event\n // The function is executed either with a basic call or an apply if there is an args array\n listener = listeners[i];\n\n if (listener.once === true) {\n this.removeListener(evt, listener.listener);\n }\n\n response = listener.listener.apply(this, args || []);\n\n if (response === this._getOnceReturnValue()) {\n this.removeListener(evt, listener.listener);\n }\n }\n }\n }\n\n return this;\n };\n\n /**\n * Alias of emitEvent\n */\n proto.trigger = alias('emitEvent');\n\n /**\n * Subtly different from emitEvent in that it will pass its arguments on to the listeners, as opposed to taking a single array of arguments to pass on.\n * As with emitEvent, you can pass a regex in place of the event name to emit to all events that match it.\n *\n * @param {String|RegExp} evt Name of the event to emit and execute listeners for.\n * @param {...*} Optional additional arguments to be passed to each listener.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.emit = function emit(evt) {\n var args = Array.prototype.slice.call(arguments, 1);\n return this.emitEvent(evt, args);\n };\n\n /**\n * Sets the current value to check against when executing listeners. If a\n * listeners return value matches the one set here then it will be removed\n * after execution. This value defaults to true.\n *\n * @param {*} value The new value to check for when executing listeners.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.setOnceReturnValue = function setOnceReturnValue(value) {\n this._onceReturnValue = value;\n return this;\n };\n\n /**\n * Fetches the current value to check against when executing listeners. If\n * the listeners return value matches this one then it should be removed\n * automatically. It will return true by default.\n *\n * @return {*|Boolean} The current value to check for or the default, true.\n * @api private\n */\n proto._getOnceReturnValue = function _getOnceReturnValue() {\n if (this.hasOwnProperty('_onceReturnValue')) {\n return this._onceReturnValue;\n }\n else {\n return true;\n }\n };\n\n /**\n * Fetches the events object and creates one if required.\n *\n * @return {Object} The events storage object.\n * @api private\n */\n proto._getEvents = function _getEvents() {\n return this._events || (this._events = {});\n };\n\n /**\n * Reverts the global {@link EventEmitter} to its previous value and returns a reference to this version.\n *\n * @return {Function} Non conflicting EventEmitter class.\n */\n EventEmitter.noConflict = function noConflict() {\n exports.EventEmitter = originalGlobalValue;\n return EventEmitter;\n };\n\n // Expose the class either via AMD, CommonJS or the global object\n if (typeof define === 'function' && define.amd) {\n define(function () {\n return EventEmitter;\n });\n }\n else if (typeof module === 'object' && module.exports){\n module.exports = EventEmitter;\n }\n else {\n exports.EventEmitter = EventEmitter;\n }\n}.call(this));\n\n},{}]},{},[1]);\n })();"]}
1
+ {"version":3,"sources":["forms-api.js"],"names":["require","undefined","define","e","t","n","r","s","o","u","a","i","f","Error","code","l","exports","call","length","1","module","scrollToForm","form","animate","config","auto_scroll","args","behavior","element","scrollIntoView","handleFormRequest","action","errors","data","pageHeight","document","body","clientHeight","timeStart","Date","now","setData","window","addEventListener","timeElapsed","forms","trigger","id","toggleElement","el","expectedValue","show","value","this","trim","checked","getAttribute","conditionMet","style","display","mc4wp","ready","Gator","listeners","mc4wp_forms_config","optionalInputs","querySelectorAll","forEach","condition","split","fields","callback","on","event","getByElement","target","srcElement","started","submitted_form","formConfig","getElementById","element_id","./forms/forms.js","gator","2","serialize","populate","Form","createElement","name","prototype","console","error","getData","hash","getSerializedData","setResponse","msg","querySelector","innerHTML","reset","form-serialize","populate.js","3","get","formId","formElement","createFromElement","parseInt","push","all","EventEmitter","events","bind","off","./form.js","wolfy87-eventemitter","4","options","result","serializer","hash_serializer","str_serialize","elements","radio_store","Object","create","disabled","k_r_success_contrls","test","nodeName","k_r_submitter","type","key","val","empty","selectOptions","isSelectedOptions","j","option","allowedEmpty","hasValue","selected","slice","parse_keys","string","keys","prefix","children","RegExp","brackets","match","exec","hash_assign","shift","between","Array","isArray","_values","index","isNaN","matches","existing","replace","encodeURIComponent","5","_addEvent","useCapture","_cancel","preventDefault","stopPropagation","_getMatcher","_matcher","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","matchesSelector","_matchesSelector","selector","boundElement","parentNode","_level","_addHandler","_handlers","_removeHandler","splice","hasOwnProperty","_handleEvent","_gatorInstances","matchesEvent","cancelBubble","cancel","_bind","remove","_getGlobalCallback","addEvent","_id","6","root","basename","constructor","namedItem","indexOf","values","k","toString","amd","7","indexOfListener","listener","alias","apply","arguments","proto","originalGlobalValue","getListeners","evt","response","_getEvents","flattenListeners","flatListeners","getListenersAsObject","addListener","listenerIsWrapped","once","addOnceListener","defineEvent","defineEvents","evts","removeListener","addListeners","manipulateListeners","removeListeners","single","multiple","removeEvent","_events","removeAllListeners","emitEvent","listenersMap","_getOnceReturnValue","emit","setOnceReturnValue","_onceReturnValue","noConflict"],"mappings":"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","file":"forms-api.min.js","sourcesContent":["(function () { var require = undefined; var define = undefined; (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){\n'use strict';\n\nvar mc4wp = window.mc4wp || {};\n\n// bail early if we're on IE8 OR if already inited (when script is included twice)\nif( ! window.addEventListener || mc4wp.ready ) {\n\treturn;\n}\n\n// deps & vars\nvar Gator = require('gator');\nvar forms = require('./forms/forms.js');\nvar listeners = window.mc4wp && window.mc4wp.listeners ? window.mc4wp.listeners : [];\nvar config = window.mc4wp_forms_config || {};\nvar optionalInputs = document.querySelectorAll('.mc4wp-form [data-show-if], .mc4wp-form [data-hide-if]');\n\n// funcs\nfunction scrollToForm(form) {\n\tvar animate = config.auto_scroll === 'animated';\n\tvar args = {\n\t\tbehavior: animate ? \"smooth\" : \"instant\"\n\t};\n\tform.element.scrollIntoView(args);\n}\n\nfunction handleFormRequest(form, action, errors, data){\n\tvar pageHeight = document.body.clientHeight;\n\tvar timeStart = Date.now();\n\n\t// re-populate form\n\tif( errors ) {\n\t\tform.setData(data);\n\t}\n\n\tif( config.auto_scroll ) {\n\t\tscrollToForm(form);\n\t}\n\n\t// trigger events on window.load so all other scripts have loaded\n\twindow.addEventListener('load', function() {\n\t\tvar timeElapsed = Date.now() - timeStart;\n\n\t\t// scroll to form again if page height changed since last scroll\n\t\t// (only if load didn't take more than 0.8 seconds to prevent overtaking user scroll)\n\t\tif( config.auto_scroll && timeElapsed < 800 && document.body.clientHeight != pageHeight ) {\n\t\t\tscrollToForm(form);\n\t\t}\n\n\t\t// trigger events\n\t\tforms.trigger('submitted', [form]);\n\t\tforms.trigger(form.id + '.submitted', [form]);\n\n\t\tif( errors ) {\n\t\t\tforms.trigger('error', [form, errors]);\n\t\t\tforms.trigger(form.id + '.error', [form, errors]);\n\t\t} else {\n\t\t\t// form was successfully submitted\n\t\t\tforms.trigger('success', [form, data]);\n\t\t\tforms.trigger(form.id + ',success', [form, data]);\n\n\t\t\t// subscribed / unsubscribed\n\t\t\tforms.trigger(action + \"d\", [form, data]);\n\t\t\tforms.trigger(form.id + \".\" + action + \"d\", [form, data]);\n\t\t}\n\t});\n}\n\nfunction toggleElement(el, expectedValue, show ) {\n\treturn function() {\n\t\tvar value = this.value.trim();\n\t\tvar checked = ( this.getAttribute('type') !== 'radio' && this.getAttribute('type') !== 'checked' ) || this.checked;\n\t\tvar conditionMet = checked && ( ( value === expectedValue && expectedValue !== \"\" ) || ( expectedValue === \"\" && value.length > 0 ) );\n\t\tif(show){\n\t\t\tel.style.display = ( conditionMet ) ? '' : 'none';\n\t\t}else{\n\t\t\tel.style.display = ( conditionMet ) ? 'none' : '';\n\t\t}\n\t}\n}\n\n// hide fields with [data-show-if] attribute\n[].forEach.call(optionalInputs, function(el) {\n\tvar show = !!el.getAttribute('data-show-if');\n\tvar condition = show ? el.getAttribute('data-show-if').split(':') : el.getAttribute('data-hide-if').split(':');\n\tvar fields = document.querySelectorAll('.mc4wp-form [name=\"' + condition[0] + '\"]');\n\tvar expectedValue = condition[1] || \"\";\n\tvar callback = toggleElement(el, expectedValue, show);\n\n\tfor(var i=0; i<fields.length; i++) {\n\t\tfields[i].addEventListener('change', callback);\n\t\tfields[i].addEventListener('keyup', callback);\n\t\tcallback.call(fields[i]);\n\t}\n});\n\n\n// register early listeners\nfor(var i=0; i<listeners.length;i++) {\n\tforms.on(listeners[i].event, listeners[i].callback);\n}\n\n// Bind browser events to form events (using delegation)\nGator(document.body).on('submit', '.mc4wp-form', function(event) {\n\tvar form = forms.getByElement(event.target || event.srcElement);\n\tforms.trigger('submit', [form, event]);\n\tforms.trigger(form.id + '.submit', [ form, event]);\n});\n\nGator(document.body).on('focus', '.mc4wp-form', function(event) {\n\tvar form = forms.getByElement(event.target || event.srcElement);\n\n\tif( ! form.started ) {\n\t\tforms.trigger('started', [form, event]);\n\t\tforms.trigger(form.id + '.started', [form, event]);\n\t\tform.started = true;\n\t}\n});\n\nGator(document.body).on('change', '.mc4wp-form', function(event) {\n\tvar form = forms.getByElement(event.target || event.srcElement);\n\tforms.trigger('change', [form,event]);\n\tforms.trigger(form.id + '.change', [form,event]);\n});\n\nif( config.submitted_form ) {\n\tvar formConfig = config.submitted_form,\n\t\telement = document.getElementById(formConfig.element_id),\n\t\tform = forms.getByElement(element);\n\n\thandleFormRequest(form, formConfig.action, formConfig.errors, formConfig.data);\n}\n\n\n// expose forms object\nmc4wp.forms = forms;\nmc4wp.ready = true;\nwindow.mc4wp = mc4wp;\n\n},{\"./forms/forms.js\":3,\"gator\":5}],2:[function(require,module,exports){\n'use strict';\n\nvar serialize = require('form-serialize');\nvar populate = require('populate.js');\n\nvar Form = function(id, element) {\n\tthis.id = id;\n\tthis.element = element || document.createElement('form');\n\tthis.name = this.element.getAttribute('data-name') || \"Form #\" + this.id;\n\tthis.errors = [];\n\tthis.started = false;\n};\n\nForm.prototype.setData = function(data) {\n\ttry {\n\t\tpopulate(this.element, data);\n\t} catch(e) {\n\t\tconsole.error(e);\n\t}\n};\n\nForm.prototype.getData = function() {\n\treturn serialize(this.element, { hash: true });\n};\n\nForm.prototype.getSerializedData = function() {\n\treturn serialize(this.element);\n};\n\nForm.prototype.setResponse = function( msg ) {\n\tthis.element.querySelector('.mc4wp-response').innerHTML = msg;\n};\n\n// revert back to original state\nForm.prototype.reset = function() {\n\tthis.setResponse('');\n\tthis.element.querySelector('.mc4wp-form-fields').style.display = '';\n\tthis.element.reset();\n};\n\nmodule.exports = Form;\n\n},{\"form-serialize\":4,\"populate.js\":6}],3:[function(require,module,exports){\n'use strict';\n\n// deps\nvar EventEmitter = require('wolfy87-eventemitter');\nvar Form = require('./form.js');\n\n// variables\nvar events = new EventEmitter();\nvar forms = [];\n\n// get form by its id\n// please note that this will get the FIRST occurence of the form with that ID on the page\nfunction get(formId) {\n\n\t// do we have form for this one already?\n\tfor(var i=0; i<forms.length;i++) {\n\t\tif(forms[i].id == formId) {\n\t\t\treturn forms[i];\n\t\t}\n\t}\n\n\t// try to create from first occurence of this element\n\tvar formElement = document.querySelector('.mc4wp-form-' + formId);\n\treturn createFromElement(formElement,formId);\n}\n\n// get form by <form> element (or any input in form)\nfunction getByElement(element) {\n\tvar formElement = element.form || element;\n\n\tfor(var i=0; i < forms.length; i++) {\n\t\tif(forms[i].element == formElement) {\n\t\t\treturn forms[i];\n\t\t}\n\t}\n\n\treturn createFromElement(formElement);\n}\n\n// create form object from <form> element\nfunction createFromElement(formElement, id) {\n\tid = id || parseInt( formElement.getAttribute('data-id') ) || 0;\n\tvar form = new Form(id, formElement);\n\tforms.push(form);\n\treturn form;\n}\n\nfunction all() {\n\treturn forms;\n}\n\nmodule.exports = {\n\t\"all\": all,\n\t\"get\": get,\n\t\"getByElement\": getByElement,\n\t\"on\": events.on.bind(events),\n\t\"trigger\": events.trigger.bind(events),\n\t\"off\": events.off.bind(events)\n};\n\n\n},{\"./form.js\":2,\"wolfy87-eventemitter\":7}],4:[function(require,module,exports){\n// get successful control from form and assemble into object\n// http://www.w3.org/TR/html401/interact/forms.html#h-17.13.2\n\n// types which indicate a submit action and are not successful controls\n// these will be ignored\nvar k_r_submitter = /^(?:submit|button|image|reset|file)$/i;\n\n// node names which could be successful controls\nvar k_r_success_contrls = /^(?:input|select|textarea|keygen)/i;\n\n// Matches bracket notation.\nvar brackets = /(\\[[^\\[\\]]*\\])/g;\n\n// serializes form fields\n// @param form MUST be an HTMLForm element\n// @param options is an optional argument to configure the serialization. Default output\n// with no options specified is a url encoded string\n// - hash: [true | false] Configure the output type. If true, the output will\n// be a js object.\n// - serializer: [function] Optional serializer function to override the default one.\n// The function takes 3 arguments (result, key, value) and should return new result\n// hash and url encoded str serializers are provided with this module\n// - disabled: [true | false]. If true serialize disabled fields.\n// - empty: [true | false]. If true serialize empty fields\nfunction serialize(form, options) {\n if (typeof options != 'object') {\n options = { hash: !!options };\n }\n else if (options.hash === undefined) {\n options.hash = true;\n }\n\n var result = (options.hash) ? {} : '';\n var serializer = options.serializer || ((options.hash) ? hash_serializer : str_serialize);\n\n var elements = form && form.elements ? form.elements : [];\n\n //Object store each radio and set if it's empty or not\n var radio_store = Object.create(null);\n\n for (var i=0 ; i<elements.length ; ++i) {\n var element = elements[i];\n\n // ingore disabled fields\n if ((!options.disabled && element.disabled) || !element.name) {\n continue;\n }\n // ignore anyhting that is not considered a success field\n if (!k_r_success_contrls.test(element.nodeName) ||\n k_r_submitter.test(element.type)) {\n continue;\n }\n\n var key = element.name;\n var val = element.value;\n\n // we can't just use element.value for checkboxes cause some browsers lie to us\n // they say \"on\" for value when the box isn't checked\n if ((element.type === 'checkbox' || element.type === 'radio') && !element.checked) {\n val = undefined;\n }\n\n // If we want empty elements\n if (options.empty) {\n // for checkbox\n if (element.type === 'checkbox' && !element.checked) {\n val = '';\n }\n\n // for radio\n if (element.type === 'radio') {\n if (!radio_store[element.name] && !element.checked) {\n radio_store[element.name] = false;\n }\n else if (element.checked) {\n radio_store[element.name] = true;\n }\n }\n\n // if options empty is true, continue only if its radio\n if (!val && element.type == 'radio') {\n continue;\n }\n }\n else {\n // value-less fields are ignored unless options.empty is true\n if (!val) {\n continue;\n }\n }\n\n // multi select boxes\n if (element.type === 'select-multiple') {\n val = [];\n\n var selectOptions = element.options;\n var isSelectedOptions = false;\n for (var j=0 ; j<selectOptions.length ; ++j) {\n var option = selectOptions[j];\n var allowedEmpty = options.empty && !option.value;\n var hasValue = (option.value || allowedEmpty);\n if (option.selected && hasValue) {\n isSelectedOptions = true;\n\n // If using a hash serializer be sure to add the\n // correct notation for an array in the multi-select\n // context. Here the name attribute on the select element\n // might be missing the trailing bracket pair. Both names\n // \"foo\" and \"foo[]\" should be arrays.\n if (options.hash && key.slice(key.length - 2) !== '[]') {\n result = serializer(result, key + '[]', option.value);\n }\n else {\n result = serializer(result, key, option.value);\n }\n }\n }\n\n // Serialize if no selected options and options.empty is true\n if (!isSelectedOptions && options.empty) {\n result = serializer(result, key, '');\n }\n\n continue;\n }\n\n result = serializer(result, key, val);\n }\n\n // Check for all empty radio buttons and serialize them with key=\"\"\n if (options.empty) {\n for (var key in radio_store) {\n if (!radio_store[key]) {\n result = serializer(result, key, '');\n }\n }\n }\n\n return result;\n}\n\nfunction parse_keys(string) {\n var keys = [];\n var prefix = /^([^\\[\\]]*)/;\n var children = new RegExp(brackets);\n var match = prefix.exec(string);\n\n if (match[1]) {\n keys.push(match[1]);\n }\n\n while ((match = children.exec(string)) !== null) {\n keys.push(match[1]);\n }\n\n return keys;\n}\n\nfunction hash_assign(result, keys, value) {\n if (keys.length === 0) {\n result = value;\n return result;\n }\n\n var key = keys.shift();\n var between = key.match(/^\\[(.+?)\\]$/);\n\n if (key === '[]') {\n result = result || [];\n\n if (Array.isArray(result)) {\n result.push(hash_assign(null, keys, value));\n }\n else {\n // This might be the result of bad name attributes like \"[][foo]\",\n // in this case the original `result` object will already be\n // assigned to an object literal. Rather than coerce the object to\n // an array, or cause an exception the attribute \"_values\" is\n // assigned as an array.\n result._values = result._values || [];\n result._values.push(hash_assign(null, keys, value));\n }\n\n return result;\n }\n\n // Key is an attribute name and can be assigned directly.\n if (!between) {\n result[key] = hash_assign(result[key], keys, value);\n }\n else {\n var string = between[1];\n // +var converts the variable into a number\n // better than parseInt because it doesn't truncate away trailing\n // letters and actually fails if whole thing is not a number\n var index = +string;\n\n // If the characters between the brackets is not a number it is an\n // attribute name and can be assigned directly.\n if (isNaN(index)) {\n result = result || {};\n result[string] = hash_assign(result[string], keys, value);\n }\n else {\n result = result || [];\n result[index] = hash_assign(result[index], keys, value);\n }\n }\n\n return result;\n}\n\n// Object/hash encoding serializer.\nfunction hash_serializer(result, key, value) {\n var matches = key.match(brackets);\n\n // Has brackets? Use the recursive assignment function to walk the keys,\n // construct any missing objects in the result tree and make the assignment\n // at the end of the chain.\n if (matches) {\n var keys = parse_keys(key);\n hash_assign(result, keys, value);\n }\n else {\n // Non bracket notation can make assignments directly.\n var existing = result[key];\n\n // If the value has been assigned already (for instance when a radio and\n // a checkbox have the same name attribute) convert the previous value\n // into an array before pushing into it.\n //\n // NOTE: If this requirement were removed all hash creation and\n // assignment could go through `hash_assign`.\n if (existing) {\n if (!Array.isArray(existing)) {\n result[key] = [ existing ];\n }\n\n result[key].push(value);\n }\n else {\n result[key] = value;\n }\n }\n\n return result;\n}\n\n// urlform encoding serializer\nfunction str_serialize(result, key, value) {\n // encode newlines as \\r\\n cause the html spec says so\n value = value.replace(/(\\r)?\\n/g, '\\r\\n');\n value = encodeURIComponent(value);\n\n // spaces should be '+' rather than '%20'.\n value = value.replace(/%20/g, '+');\n return result + (result ? '&' : '') + encodeURIComponent(key) + '=' + value;\n}\n\nmodule.exports = serialize;\n\n},{}],5:[function(require,module,exports){\n/**\n * Copyright 2014 Craig Campbell\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * GATOR.JS\n * Simple Event Delegation\n *\n * @version 1.2.4\n *\n * Compatible with IE 9+, FF 3.6+, Safari 5+, Chrome\n *\n * Include legacy.js for compatibility with older browsers\n *\n * .-._ _ _ _ _ _ _ _ _\n * .-''-.__.-'00 '-' ' ' ' ' ' ' ' '-.\n * '.___ ' . .--_'-' '-' '-' _'-' '._\n * V: V 'vv-' '_ '. .' _..' '.'.\n * '=.____.=_.--' :_.__.__:_ '. : :\n * (((____.-' '-. / : :\n * (((-'\\ .' /\n * _____..' .'\n * '-._____.-'\n */\n(function() {\n var _matcher,\n _level = 0,\n _id = 0,\n _handlers = {},\n _gatorInstances = {};\n\n function _addEvent(gator, type, callback) {\n\n // blur and focus do not bubble up but if you use event capturing\n // then you will get them\n var useCapture = type == 'blur' || type == 'focus';\n gator.element.addEventListener(type, callback, useCapture);\n }\n\n function _cancel(e) {\n e.preventDefault();\n e.stopPropagation();\n }\n\n /**\n * returns function to use for determining if an element\n * matches a query selector\n *\n * @returns {Function}\n */\n function _getMatcher(element) {\n if (_matcher) {\n return _matcher;\n }\n\n if (element.matches) {\n _matcher = element.matches;\n return _matcher;\n }\n\n if (element.webkitMatchesSelector) {\n _matcher = element.webkitMatchesSelector;\n return _matcher;\n }\n\n if (element.mozMatchesSelector) {\n _matcher = element.mozMatchesSelector;\n return _matcher;\n }\n\n if (element.msMatchesSelector) {\n _matcher = element.msMatchesSelector;\n return _matcher;\n }\n\n if (element.oMatchesSelector) {\n _matcher = element.oMatchesSelector;\n return _matcher;\n }\n\n // if it doesn't match a native browser method\n // fall back to the gator function\n _matcher = Gator.matchesSelector;\n return _matcher;\n }\n\n /**\n * determines if the specified element matches a given selector\n *\n * @param {Node} element - the element to compare against the selector\n * @param {string} selector\n * @param {Node} boundElement - the element the listener was attached to\n * @returns {void|Node}\n */\n function _matchesSelector(element, selector, boundElement) {\n\n // no selector means this event was bound directly to this element\n if (selector == '_root') {\n return boundElement;\n }\n\n // if we have moved up to the element you bound the event to\n // then we have come too far\n if (element === boundElement) {\n return;\n }\n\n // if this is a match then we are done!\n if (_getMatcher(element).call(element, selector)) {\n return element;\n }\n\n // if this element did not match but has a parent we should try\n // going up the tree to see if any of the parent elements match\n // for example if you are looking for a click on an <a> tag but there\n // is a <span> inside of the a tag that it is the target,\n // it should still work\n if (element.parentNode) {\n _level++;\n return _matchesSelector(element.parentNode, selector, boundElement);\n }\n }\n\n function _addHandler(gator, event, selector, callback) {\n if (!_handlers[gator.id]) {\n _handlers[gator.id] = {};\n }\n\n if (!_handlers[gator.id][event]) {\n _handlers[gator.id][event] = {};\n }\n\n if (!_handlers[gator.id][event][selector]) {\n _handlers[gator.id][event][selector] = [];\n }\n\n _handlers[gator.id][event][selector].push(callback);\n }\n\n function _removeHandler(gator, event, selector, callback) {\n\n // if there are no events tied to this element at all\n // then don't do anything\n if (!_handlers[gator.id]) {\n return;\n }\n\n // if there is no event type specified then remove all events\n // example: Gator(element).off()\n if (!event) {\n for (var type in _handlers[gator.id]) {\n if (_handlers[gator.id].hasOwnProperty(type)) {\n _handlers[gator.id][type] = {};\n }\n }\n return;\n }\n\n // if no callback or selector is specified remove all events of this type\n // example: Gator(element).off('click')\n if (!callback && !selector) {\n _handlers[gator.id][event] = {};\n return;\n }\n\n // if a selector is specified but no callback remove all events\n // for this selector\n // example: Gator(element).off('click', '.sub-element')\n if (!callback) {\n delete _handlers[gator.id][event][selector];\n return;\n }\n\n // if we have specified an event type, selector, and callback then we\n // need to make sure there are callbacks tied to this selector to\n // begin with. if there aren't then we can stop here\n if (!_handlers[gator.id][event][selector]) {\n return;\n }\n\n // if there are then loop through all the callbacks and if we find\n // one that matches remove it from the array\n for (var i = 0; i < _handlers[gator.id][event][selector].length; i++) {\n if (_handlers[gator.id][event][selector][i] === callback) {\n _handlers[gator.id][event][selector].splice(i, 1);\n break;\n }\n }\n }\n\n function _handleEvent(id, e, type) {\n if (!_handlers[id][type]) {\n return;\n }\n\n var target = e.target || e.srcElement,\n selector,\n match,\n matches = {},\n i = 0,\n j = 0;\n\n // find all events that match\n _level = 0;\n for (selector in _handlers[id][type]) {\n if (_handlers[id][type].hasOwnProperty(selector)) {\n match = _matchesSelector(target, selector, _gatorInstances[id].element);\n\n if (match && Gator.matchesEvent(type, _gatorInstances[id].element, match, selector == '_root', e)) {\n _level++;\n _handlers[id][type][selector].match = match;\n matches[_level] = _handlers[id][type][selector];\n }\n }\n }\n\n // stopPropagation() fails to set cancelBubble to true in Webkit\n // @see http://code.google.com/p/chromium/issues/detail?id=162270\n e.stopPropagation = function() {\n e.cancelBubble = true;\n };\n\n for (i = 0; i <= _level; i++) {\n if (matches[i]) {\n for (j = 0; j < matches[i].length; j++) {\n if (matches[i][j].call(matches[i].match, e) === false) {\n Gator.cancel(e);\n return;\n }\n\n if (e.cancelBubble) {\n return;\n }\n }\n }\n }\n }\n\n /**\n * binds the specified events to the element\n *\n * @param {string|Array} events\n * @param {string} selector\n * @param {Function} callback\n * @param {boolean=} remove\n * @returns {Object}\n */\n function _bind(events, selector, callback, remove) {\n\n // fail silently if you pass null or undefined as an alement\n // in the Gator constructor\n if (!this.element) {\n return;\n }\n\n if (!(events instanceof Array)) {\n events = [events];\n }\n\n if (!callback && typeof(selector) == 'function') {\n callback = selector;\n selector = '_root';\n }\n\n var id = this.id,\n i;\n\n function _getGlobalCallback(type) {\n return function(e) {\n _handleEvent(id, e, type);\n };\n }\n\n for (i = 0; i < events.length; i++) {\n if (remove) {\n _removeHandler(this, events[i], selector, callback);\n continue;\n }\n\n if (!_handlers[id] || !_handlers[id][events[i]]) {\n Gator.addEvent(this, events[i], _getGlobalCallback(events[i]));\n }\n\n _addHandler(this, events[i], selector, callback);\n }\n\n return this;\n }\n\n /**\n * Gator object constructor\n *\n * @param {Node} element\n */\n function Gator(element, id) {\n\n // called as function\n if (!(this instanceof Gator)) {\n // only keep one Gator instance per node to make sure that\n // we don't create a ton of new objects if you want to delegate\n // multiple events from the same node\n //\n // for example: Gator(document).on(...\n for (var key in _gatorInstances) {\n if (_gatorInstances[key].element === element) {\n return _gatorInstances[key];\n }\n }\n\n _id++;\n _gatorInstances[_id] = new Gator(element, _id);\n\n return _gatorInstances[_id];\n }\n\n this.element = element;\n this.id = id;\n }\n\n /**\n * adds an event\n *\n * @param {string|Array} events\n * @param {string} selector\n * @param {Function} callback\n * @returns {Object}\n */\n Gator.prototype.on = function(events, selector, callback) {\n return _bind.call(this, events, selector, callback);\n };\n\n /**\n * removes an event\n *\n * @param {string|Array} events\n * @param {string} selector\n * @param {Function} callback\n * @returns {Object}\n */\n Gator.prototype.off = function(events, selector, callback) {\n return _bind.call(this, events, selector, callback, true);\n };\n\n Gator.matchesSelector = function() {};\n Gator.cancel = _cancel;\n Gator.addEvent = _addEvent;\n Gator.matchesEvent = function() {\n return true;\n };\n\n if (typeof module !== 'undefined' && module.exports) {\n module.exports = Gator;\n }\n\n window.Gator = Gator;\n}) ();\n\n},{}],6:[function(require,module,exports){\n/*! populate.js v1.0.2 by @dannyvankooten | MIT license */\n;(function(root) {\n\n\t/**\n\t * Populate form fields from a JSON object.\n\t *\n\t * @param form object The form element containing your input fields.\n\t * @param data array JSON data to populate the fields with.\n\t * @param basename string Optional basename which is added to `name` attributes\n\t */\n\tvar populate = function( form, data, basename) {\n\n\t\tfor(var key in data) {\n\n\t\t\tif( ! data.hasOwnProperty( key ) ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tvar name = key;\n\t\t\tvar value = data[key];\n\n\t\t\t// handle array name attributes\n\t\t\tif(typeof(basename) !== \"undefined\") {\n\t\t\t\tname = basename + \"[\" + key + \"]\";\n\t\t\t}\n\n\t\t\tif(value.constructor === Array) {\n\t\t\t\tname += '[]';\n\t\t\t} else if(typeof value == \"object\") {\n\t\t\t\tpopulate( form, value, name);\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// only proceed if element is set\n\t\t\tvar element = form.elements.namedItem( name );\n\t\t\tif( ! element ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tvar type = element.type || element[0].type;\n\n\t\t\tswitch(type ) {\n\t\t\t\tdefault:\n\t\t\t\t\telement.value = value;\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'radio':\n\t\t\t\tcase 'checkbox':\n\t\t\t\t\tfor( var j=0; j < element.length; j++ ) {\n\t\t\t\t\t\telement[j].checked = ( value.indexOf(element[j].value) > -1 );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'select-multiple':\n\t\t\t\t\tvar values = value.constructor == Array ? value : [value];\n\n\t\t\t\t\tfor(var k = 0; k < element.options.length; k++) {\n\t\t\t\t\t\telement.options[k].selected |= (values.indexOf(element.options[k].value) > -1 );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase 'select':\n\t\t\t\tcase 'select-one':\n\t\t\t\t\telement.value = value.toString() || value;\n\t\t\t\t\tbreak;\n\n\t\t\t}\n\n\t\t}\n\n\t};\n\n\t// Play nice with AMD, CommonJS or a plain global object.\n\tif ( typeof define == 'function' && typeof define.amd == 'object' && define.amd ) {\n\t\tdefine(function() {\n\t\t\treturn populate;\n\t\t});\n\t}\telse if ( typeof module !== 'undefined' && module.exports ) {\n\t\tmodule.exports = populate;\n\t} else {\n\t\troot.populate = populate;\n\t}\n\n}(this));\n},{}],7:[function(require,module,exports){\n/*!\n * EventEmitter v4.2.11 - git.io/ee\n * Unlicense - http://unlicense.org/\n * Oliver Caldwell - http://oli.me.uk/\n * @preserve\n */\n\n;(function () {\n 'use strict';\n\n /**\n * Class for managing events.\n * Can be extended to provide event functionality in other classes.\n *\n * @class EventEmitter Manages event registering and emitting.\n */\n function EventEmitter() {}\n\n // Shortcuts to improve speed and size\n var proto = EventEmitter.prototype;\n var exports = this;\n var originalGlobalValue = exports.EventEmitter;\n\n /**\n * Finds the index of the listener for the event in its storage array.\n *\n * @param {Function[]} listeners Array of listeners to search through.\n * @param {Function} listener Method to look for.\n * @return {Number} Index of the specified listener, -1 if not found\n * @api private\n */\n function indexOfListener(listeners, listener) {\n var i = listeners.length;\n while (i--) {\n if (listeners[i].listener === listener) {\n return i;\n }\n }\n\n return -1;\n }\n\n /**\n * Alias a method while keeping the context correct, to allow for overwriting of target method.\n *\n * @param {String} name The name of the target method.\n * @return {Function} The aliased method\n * @api private\n */\n function alias(name) {\n return function aliasClosure() {\n return this[name].apply(this, arguments);\n };\n }\n\n /**\n * Returns the listener array for the specified event.\n * Will initialise the event object and listener arrays if required.\n * Will return an object if you use a regex search. The object contains keys for each matched event. So /ba[rz]/ might return an object containing bar and baz. But only if you have either defined them with defineEvent or added some listeners to them.\n * Each property in the object response is an array of listener functions.\n *\n * @param {String|RegExp} evt Name of the event to return the listeners from.\n * @return {Function[]|Object} All listener functions for the event.\n */\n proto.getListeners = function getListeners(evt) {\n var events = this._getEvents();\n var response;\n var key;\n\n // Return a concatenated array of all matching events if\n // the selector is a regular expression.\n if (evt instanceof RegExp) {\n response = {};\n for (key in events) {\n if (events.hasOwnProperty(key) && evt.test(key)) {\n response[key] = events[key];\n }\n }\n }\n else {\n response = events[evt] || (events[evt] = []);\n }\n\n return response;\n };\n\n /**\n * Takes a list of listener objects and flattens it into a list of listener functions.\n *\n * @param {Object[]} listeners Raw listener objects.\n * @return {Function[]} Just the listener functions.\n */\n proto.flattenListeners = function flattenListeners(listeners) {\n var flatListeners = [];\n var i;\n\n for (i = 0; i < listeners.length; i += 1) {\n flatListeners.push(listeners[i].listener);\n }\n\n return flatListeners;\n };\n\n /**\n * Fetches the requested listeners via getListeners but will always return the results inside an object. This is mainly for internal use but others may find it useful.\n *\n * @param {String|RegExp} evt Name of the event to return the listeners from.\n * @return {Object} All listener functions for an event in an object.\n */\n proto.getListenersAsObject = function getListenersAsObject(evt) {\n var listeners = this.getListeners(evt);\n var response;\n\n if (listeners instanceof Array) {\n response = {};\n response[evt] = listeners;\n }\n\n return response || listeners;\n };\n\n /**\n * Adds a listener function to the specified event.\n * The listener will not be added if it is a duplicate.\n * If the listener returns true then it will be removed after it is called.\n * If you pass a regular expression as the event name then the listener will be added to all events that match it.\n *\n * @param {String|RegExp} evt Name of the event to attach the listener to.\n * @param {Function} listener Method to be called when the event is emitted. If the function returns true then it will be removed after calling.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.addListener = function addListener(evt, listener) {\n var listeners = this.getListenersAsObject(evt);\n var listenerIsWrapped = typeof listener === 'object';\n var key;\n\n for (key in listeners) {\n if (listeners.hasOwnProperty(key) && indexOfListener(listeners[key], listener) === -1) {\n listeners[key].push(listenerIsWrapped ? listener : {\n listener: listener,\n once: false\n });\n }\n }\n\n return this;\n };\n\n /**\n * Alias of addListener\n */\n proto.on = alias('addListener');\n\n /**\n * Semi-alias of addListener. It will add a listener that will be\n * automatically removed after its first execution.\n *\n * @param {String|RegExp} evt Name of the event to attach the listener to.\n * @param {Function} listener Method to be called when the event is emitted. If the function returns true then it will be removed after calling.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.addOnceListener = function addOnceListener(evt, listener) {\n return this.addListener(evt, {\n listener: listener,\n once: true\n });\n };\n\n /**\n * Alias of addOnceListener.\n */\n proto.once = alias('addOnceListener');\n\n /**\n * Defines an event name. This is required if you want to use a regex to add a listener to multiple events at once. If you don't do this then how do you expect it to know what event to add to? Should it just add to every possible match for a regex? No. That is scary and bad.\n * You need to tell it what event names should be matched by a regex.\n *\n * @param {String} evt Name of the event to create.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.defineEvent = function defineEvent(evt) {\n this.getListeners(evt);\n return this;\n };\n\n /**\n * Uses defineEvent to define multiple events.\n *\n * @param {String[]} evts An array of event names to define.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.defineEvents = function defineEvents(evts) {\n for (var i = 0; i < evts.length; i += 1) {\n this.defineEvent(evts[i]);\n }\n return this;\n };\n\n /**\n * Removes a listener function from the specified event.\n * When passed a regular expression as the event name, it will remove the listener from all events that match it.\n *\n * @param {String|RegExp} evt Name of the event to remove the listener from.\n * @param {Function} listener Method to remove from the event.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.removeListener = function removeListener(evt, listener) {\n var listeners = this.getListenersAsObject(evt);\n var index;\n var key;\n\n for (key in listeners) {\n if (listeners.hasOwnProperty(key)) {\n index = indexOfListener(listeners[key], listener);\n\n if (index !== -1) {\n listeners[key].splice(index, 1);\n }\n }\n }\n\n return this;\n };\n\n /**\n * Alias of removeListener\n */\n proto.off = alias('removeListener');\n\n /**\n * Adds listeners in bulk using the manipulateListeners method.\n * If you pass an object as the second argument you can add to multiple events at once. The object should contain key value pairs of events and listeners or listener arrays. You can also pass it an event name and an array of listeners to be added.\n * You can also pass it a regular expression to add the array of listeners to all events that match it.\n * Yeah, this function does quite a bit. That's probably a bad thing.\n *\n * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to add to multiple events at once.\n * @param {Function[]} [listeners] An optional array of listener functions to add.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.addListeners = function addListeners(evt, listeners) {\n // Pass through to manipulateListeners\n return this.manipulateListeners(false, evt, listeners);\n };\n\n /**\n * Removes listeners in bulk using the manipulateListeners method.\n * If you pass an object as the second argument you can remove from multiple events at once. The object should contain key value pairs of events and listeners or listener arrays.\n * You can also pass it an event name and an array of listeners to be removed.\n * You can also pass it a regular expression to remove the listeners from all events that match it.\n *\n * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to remove from multiple events at once.\n * @param {Function[]} [listeners] An optional array of listener functions to remove.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.removeListeners = function removeListeners(evt, listeners) {\n // Pass through to manipulateListeners\n return this.manipulateListeners(true, evt, listeners);\n };\n\n /**\n * Edits listeners in bulk. The addListeners and removeListeners methods both use this to do their job. You should really use those instead, this is a little lower level.\n * The first argument will determine if the listeners are removed (true) or added (false).\n * If you pass an object as the second argument you can add/remove from multiple events at once. The object should contain key value pairs of events and listeners or listener arrays.\n * You can also pass it an event name and an array of listeners to be added/removed.\n * You can also pass it a regular expression to manipulate the listeners of all events that match it.\n *\n * @param {Boolean} remove True if you want to remove listeners, false if you want to add.\n * @param {String|Object|RegExp} evt An event name if you will pass an array of listeners next. An object if you wish to add/remove from multiple events at once.\n * @param {Function[]} [listeners] An optional array of listener functions to add/remove.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.manipulateListeners = function manipulateListeners(remove, evt, listeners) {\n var i;\n var value;\n var single = remove ? this.removeListener : this.addListener;\n var multiple = remove ? this.removeListeners : this.addListeners;\n\n // If evt is an object then pass each of its properties to this method\n if (typeof evt === 'object' && !(evt instanceof RegExp)) {\n for (i in evt) {\n if (evt.hasOwnProperty(i) && (value = evt[i])) {\n // Pass the single listener straight through to the singular method\n if (typeof value === 'function') {\n single.call(this, i, value);\n }\n else {\n // Otherwise pass back to the multiple function\n multiple.call(this, i, value);\n }\n }\n }\n }\n else {\n // So evt must be a string\n // And listeners must be an array of listeners\n // Loop over it and pass each one to the multiple method\n i = listeners.length;\n while (i--) {\n single.call(this, evt, listeners[i]);\n }\n }\n\n return this;\n };\n\n /**\n * Removes all listeners from a specified event.\n * If you do not specify an event then all listeners will be removed.\n * That means every event will be emptied.\n * You can also pass a regex to remove all events that match it.\n *\n * @param {String|RegExp} [evt] Optional name of the event to remove all listeners for. Will remove from every event if not passed.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.removeEvent = function removeEvent(evt) {\n var type = typeof evt;\n var events = this._getEvents();\n var key;\n\n // Remove different things depending on the state of evt\n if (type === 'string') {\n // Remove all listeners for the specified event\n delete events[evt];\n }\n else if (evt instanceof RegExp) {\n // Remove all events matching the regex.\n for (key in events) {\n if (events.hasOwnProperty(key) && evt.test(key)) {\n delete events[key];\n }\n }\n }\n else {\n // Remove all listeners in all events\n delete this._events;\n }\n\n return this;\n };\n\n /**\n * Alias of removeEvent.\n *\n * Added to mirror the node API.\n */\n proto.removeAllListeners = alias('removeEvent');\n\n /**\n * Emits an event of your choice.\n * When emitted, every listener attached to that event will be executed.\n * If you pass the optional argument array then those arguments will be passed to every listener upon execution.\n * Because it uses `apply`, your array of arguments will be passed as if you wrote them out separately.\n * So they will not arrive within the array on the other side, they will be separate.\n * You can also pass a regular expression to emit to all events that match it.\n *\n * @param {String|RegExp} evt Name of the event to emit and execute listeners for.\n * @param {Array} [args] Optional array of arguments to be passed to each listener.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.emitEvent = function emitEvent(evt, args) {\n var listenersMap = this.getListenersAsObject(evt);\n var listeners;\n var listener;\n var i;\n var key;\n var response;\n\n for (key in listenersMap) {\n if (listenersMap.hasOwnProperty(key)) {\n listeners = listenersMap[key].slice(0);\n i = listeners.length;\n\n while (i--) {\n // If the listener returns true then it shall be removed from the event\n // The function is executed either with a basic call or an apply if there is an args array\n listener = listeners[i];\n\n if (listener.once === true) {\n this.removeListener(evt, listener.listener);\n }\n\n response = listener.listener.apply(this, args || []);\n\n if (response === this._getOnceReturnValue()) {\n this.removeListener(evt, listener.listener);\n }\n }\n }\n }\n\n return this;\n };\n\n /**\n * Alias of emitEvent\n */\n proto.trigger = alias('emitEvent');\n\n /**\n * Subtly different from emitEvent in that it will pass its arguments on to the listeners, as opposed to taking a single array of arguments to pass on.\n * As with emitEvent, you can pass a regex in place of the event name to emit to all events that match it.\n *\n * @param {String|RegExp} evt Name of the event to emit and execute listeners for.\n * @param {...*} Optional additional arguments to be passed to each listener.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.emit = function emit(evt) {\n var args = Array.prototype.slice.call(arguments, 1);\n return this.emitEvent(evt, args);\n };\n\n /**\n * Sets the current value to check against when executing listeners. If a\n * listeners return value matches the one set here then it will be removed\n * after execution. This value defaults to true.\n *\n * @param {*} value The new value to check for when executing listeners.\n * @return {Object} Current instance of EventEmitter for chaining.\n */\n proto.setOnceReturnValue = function setOnceReturnValue(value) {\n this._onceReturnValue = value;\n return this;\n };\n\n /**\n * Fetches the current value to check against when executing listeners. If\n * the listeners return value matches this one then it should be removed\n * automatically. It will return true by default.\n *\n * @return {*|Boolean} The current value to check for or the default, true.\n * @api private\n */\n proto._getOnceReturnValue = function _getOnceReturnValue() {\n if (this.hasOwnProperty('_onceReturnValue')) {\n return this._onceReturnValue;\n }\n else {\n return true;\n }\n };\n\n /**\n * Fetches the events object and creates one if required.\n *\n * @return {Object} The events storage object.\n * @api private\n */\n proto._getEvents = function _getEvents() {\n return this._events || (this._events = {});\n };\n\n /**\n * Reverts the global {@link EventEmitter} to its previous value and returns a reference to this version.\n *\n * @return {Function} Non conflicting EventEmitter class.\n */\n EventEmitter.noConflict = function noConflict() {\n exports.EventEmitter = originalGlobalValue;\n return EventEmitter;\n };\n\n // Expose the class either via AMD, CommonJS or the global object\n if (typeof define === 'function' && define.amd) {\n define(function () {\n return EventEmitter;\n });\n }\n else if (typeof module === 'object' && module.exports){\n module.exports = EventEmitter;\n }\n else {\n exports.EventEmitter = EventEmitter;\n }\n}.call(this));\n\n},{}]},{},[1]);\n })();"]}
includes/admin/class-review-notice.php CHANGED
@@ -63,13 +63,14 @@ class MC4WP_Admin_Review_Notice {
63
  return false;
64
  }
65
 
66
- echo '<div class="notice notice-info mc4wp-is-dismissible">';
67
  echo '<p>';
68
  echo __( 'You\'ve been using MailChimp for WordPress for some time now; we hope you love it!', 'mailchimp-for-wp' ) . ' <br />';
69
  echo sprintf( __( 'If you do, please <a href="%s">leave us a 5★ rating on WordPress.org</a>. It would be of great help to us.', 'mailchimp-for-wp' ), 'https://wordpress.org/support/view/plugin-reviews/mailchimp-for-wp?rate=5#new-post' );
70
  echo '</p>';
71
- echo '<form method="POST"><button type="submit" class="notice-dismiss"><span class="screen-reader-text">'. __( 'Dismiss this notice.', 'mailchimp-for-wp' ) .'</span></button><input type="hidden" name="_mc4wp_action" value="dismiss_review_notice"/></form>';
72
  echo '</div>';
 
73
  return true;
74
  }
75
 
63
  return false;
64
  }
65
 
66
+ echo '<div class="notice notice-info mc4wp-is-dismissible" id="mc4wp-review-notice">';
67
  echo '<p>';
68
  echo __( 'You\'ve been using MailChimp for WordPress for some time now; we hope you love it!', 'mailchimp-for-wp' ) . ' <br />';
69
  echo sprintf( __( 'If you do, please <a href="%s">leave us a 5★ rating on WordPress.org</a>. It would be of great help to us.', 'mailchimp-for-wp' ), 'https://wordpress.org/support/view/plugin-reviews/mailchimp-for-wp?rate=5#new-post' );
70
  echo '</p>';
71
+ echo '<form method="POST" id="mc4wp-dismiss-review-form"><button type="submit" class="notice-dismiss"><span class="screen-reader-text">'. __( 'Dismiss this notice.', 'mailchimp-for-wp' ) .'</span></button><input type="hidden" name="_mc4wp_action" value="dismiss_review_notice"/></form>';
72
  echo '</div>';
73
+ echo "<script>window.jQuery('#mc4wp-review-notice form').submit(function(e) { e.preventDefault(); window.jQuery.post( ajaxurl, { _mc4wp_action: 'dismiss_review_notice' }, function() { window.jQuery('#mc4wp-review-notice').fadeOut(); }); });</script>";
74
  return true;
75
  }
76
 
includes/api/class-api-v3.php CHANGED
@@ -434,6 +434,20 @@ class MC4WP_API_v3 {
434
  return $this->client->post( $resource, $args );
435
  }
436
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
437
  /**
438
  * @link http://developer.mailchimp.com/documentation/mailchimp/reference/ecommerce/stores/products/#delete-delete_ecommerce_stores_store_id_products_product_id
439
  *
434
  return $this->client->post( $resource, $args );
435
  }
436
 
437
+ /**
438
+ * @link http://developer.mailchimp.com/documentation/mailchimp/reference/ecommerce/stores/products/#edit-patch_ecommerce_stores_store_id_products_product_id
439
+ *
440
+ * @param string $store_id
441
+ * @param string $product_id
442
+ * @param array $args
443
+ *
444
+ * @return object
445
+ */
446
+ public function update_ecommerce_store_product( $store_id, $product_id, array $args ) {
447
+ $resource = sprintf( '/ecommerce/stores/%s/products/%s', $store_id, $product_id );
448
+ return $this->client->patch( $resource, $args );
449
+ }
450
+
451
  /**
452
  * @link http://developer.mailchimp.com/documentation/mailchimp/reference/ecommerce/stores/products/#delete-delete_ecommerce_stores_store_id_products_product_id
453
  *
includes/class-field-formatter.php CHANGED
@@ -69,12 +69,13 @@ class MC4WP_Field_Formatter {
69
  // if first part looks like a day, flip order so month (or even year) comes first
70
  // this allows `strtotime` to understand `dd/mm` values
71
  $values = explode( '/', $value );
72
- if( $values[0] > 12 && $values[0] <= 31 ) {
73
  $values = array_reverse ( $values );
74
  $value = join( '/', $values );
75
  }
76
 
77
- $value = (string) date( 'm/d', strtotime( $value ) );
 
78
  return $value;
79
  }
80
 
69
  // if first part looks like a day, flip order so month (or even year) comes first
70
  // this allows `strtotime` to understand `dd/mm` values
71
  $values = explode( '/', $value );
72
+ if( $values[0] > 12 && $values[0] <= 31 && isset( $values[1] ) && $values[1] <= 12 ) {
73
  $values = array_reverse ( $values );
74
  $value = join( '/', $values );
75
  }
76
 
77
+ $value = (string) date('m/d', strtotime( $value ) );
78
+
79
  return $value;
80
  }
81
 
includes/class-mailchimp.php CHANGED
@@ -144,7 +144,12 @@ class MC4WP_MailChimp {
144
  * @return boolean
145
  */
146
  public function list_has_subscriber( $list_id, $email_address ) {
147
- $data = $this->api->get_list_member( $list_id, $email_address );
 
 
 
 
 
148
  return ! empty( $data->id ) && $data->status === 'subscribed';
149
  }
150
 
144
  * @return boolean
145
  */
146
  public function list_has_subscriber( $list_id, $email_address ) {
147
+ try{
148
+ $data = $this->api->get_list_member( $list_id, $email_address );
149
+ } catch( MC4WP_API_Resource_Not_Found_Exception $e ) {
150
+ return false;
151
+ }
152
+
153
  return ! empty( $data->id ) && $data->status === 'subscribed';
154
  }
155
 
includes/forms/class-admin.php CHANGED
@@ -126,7 +126,7 @@ class MC4WP_Forms_Admin {
126
 
127
  check_admin_referer( 'add_form', '_mc4wp_nonce' );
128
 
129
- $form_data = stripslashes_deep( $_POST['mc4wp_form'] );
130
  $form_content = include MC4WP_PLUGIN_DIR . 'config/default-form-content.php';
131
 
132
  // Fix for MultiSite stripping KSES for roles other than administrator
@@ -265,7 +265,7 @@ class MC4WP_Forms_Admin {
265
  check_admin_referer( 'edit_form', '_mc4wp_nonce' );
266
  $form_id = (int) $_POST['mc4wp_form_id'];
267
 
268
- $form_data = stripslashes_deep( $_POST['mc4wp_form'] );
269
  $form_data['ID'] = $form_id;
270
 
271
  $this->save_form( $form_data );
@@ -316,7 +316,7 @@ class MC4WP_Forms_Admin {
316
  $preview_id = (int) get_option( 'mc4wp_form_preview_id', 0 );
317
 
318
  // get data
319
- $form_data = stripslashes_deep( $_POST['mc4wp_form'] );
320
  $form_data['ID'] = $preview_id;
321
  $form_data['status'] = 'preview';
322
  $real_preview_id = $this->save_form( $form_data );
126
 
127
  check_admin_referer( 'add_form', '_mc4wp_nonce' );
128
 
129
+ $form_data = $_POST['mc4wp_form'];
130
  $form_content = include MC4WP_PLUGIN_DIR . 'config/default-form-content.php';
131
 
132
  // Fix for MultiSite stripping KSES for roles other than administrator
265
  check_admin_referer( 'edit_form', '_mc4wp_nonce' );
266
  $form_id = (int) $_POST['mc4wp_form_id'];
267
 
268
+ $form_data = $_POST['mc4wp_form'];
269
  $form_data['ID'] = $form_id;
270
 
271
  $this->save_form( $form_data );
316
  $preview_id = (int) get_option( 'mc4wp_form_preview_id', 0 );
317
 
318
  // get data
319
+ $form_data = $_POST['mc4wp_form'];
320
  $form_data['ID'] = $preview_id;
321
  $form_data['status'] = 'preview';
322
  $real_preview_id = $this->save_form( $form_data );
includes/forms/class-asset-manager.php CHANGED
@@ -8,11 +8,6 @@
8
  */
9
  class MC4WP_Form_Asset_Manager {
10
 
11
- /**
12
- * @var bool
13
- */
14
- protected $dummy_printed = false;
15
-
16
  /**
17
  * @var bool
18
  */
@@ -192,18 +187,11 @@ class MC4WP_Form_Asset_Manager {
192
  * Load JavaScript files
193
  */
194
  public function before_output_form() {
195
-
196
- // only run once
197
- if( $this->dummy_printed ) {
198
- return;
199
- }
200
-
201
  // print dummy JS
202
  $this->print_dummy_javascript();
203
 
204
  // set flags
205
  $this->load_scripts = true;
206
- $this->dummy_printed = true;
207
  }
208
 
209
  /**
8
  */
9
  class MC4WP_Form_Asset_Manager {
10
 
 
 
 
 
 
11
  /**
12
  * @var bool
13
  */
187
  * Load JavaScript files
188
  */
189
  public function before_output_form() {
 
 
 
 
 
 
190
  // print dummy JS
191
  $this->print_dummy_javascript();
192
 
193
  // set flags
194
  $this->load_scripts = true;
 
195
  }
196
 
197
  /**
languages/mailchimp-for-wp-de_DE.mo CHANGED
Binary file
languages/mailchimp-for-wp-de_DE.po CHANGED
@@ -13,15 +13,16 @@
13
  # Stefan Oderbolz <oderbolz@gmail.com>, 2015
14
  # Steffi Zehnder, 2016
15
  # Sven B. <sven.balje@esb-stade.de>, 2015
16
- # Tobias Vogler <tobi@tvdesign.ch>, 2016
 
17
  # Uwe <uwe.keim@gmail.com>, 2015
18
  msgid ""
19
  msgstr ""
20
  "Project-Id-Version: MailChimp for WordPress\n"
21
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/mailchimp-for-wp\n"
22
  "POT-Creation-Date: 2015-11-30 10:15:18+00:00\n"
23
- "PO-Revision-Date: 2016-08-06 18:12+0000\n"
24
- "Last-Translator: Steffi Zehnder\n"
25
  "Language-Team: German (Germany) (http://www.transifex.com/ibericode/mailchimp-for-wordpress/language/de_DE/)\n"
26
  "MIME-Version: 1.0\n"
27
  "Content-Type: text/plain; charset=UTF-8\n"
@@ -49,7 +50,7 @@ msgstr "Danke, deine Registrierung war erfolgreich! Bitte prüfe dein E-Mail-Kon
49
 
50
  #: config/default-form-messages.php:9
51
  msgid "Oops. Something went wrong. Please try again later."
52
- msgstr "Oops. Irgendwas ist schief gelaufen. Bitte versuche es später noch mal."
53
 
54
  #: config/default-form-messages.php:13
55
  msgid "Please provide a valid email address."
@@ -351,7 +352,7 @@ msgstr "MailChimp Listen neu laden"
351
 
352
  #: includes/forms/views/parts/dynamic-content-tags.php:6
353
  msgid "Add dynamic form variable"
354
- msgstr ""
355
 
356
  #: includes/forms/views/parts/dynamic-content-tags.php:8
357
  msgid ""
@@ -369,7 +370,7 @@ msgstr "Vom Theme %s übernehmen"
369
 
370
  #: includes/forms/views/tabs/form-appearance.php:6
371
  msgid "Basic"
372
- msgstr ""
373
 
374
  #: includes/forms/views/tabs/form-appearance.php:7
375
  msgid "Form Themes"
@@ -397,7 +398,7 @@ msgstr "Blaues Theme"
397
 
398
  #: includes/forms/views/tabs/form-appearance.php:25
399
  msgid "Form Appearance"
400
- msgstr ""
401
 
402
  #: includes/forms/views/tabs/form-appearance.php:29
403
  msgid "Form Style"
@@ -662,7 +663,7 @@ msgstr "%s-Integration aktivieren? Es wird eine Sign-Up-Checkbox zum Formular hi
662
 
663
  #: includes/integrations/views/integration-settings.php:64
664
  msgid "Implicit?"
665
- msgstr ""
666
 
667
  #: includes/integrations/views/integration-settings.php:68
668
  msgid ""
@@ -724,7 +725,7 @@ msgid ""
724
  "fields</a> or <a href=\"%s\">log into your MailChimp account</a> and make "
725
  "sure only the email & name fields are marked as required fields for the "
726
  "selected list(s)."
727
- msgstr ""
728
 
729
  #: includes/integrations/views/integrations.php:30
730
  msgid "Enabled"
@@ -860,7 +861,7 @@ msgstr "Integration mit Contact Form 7: Konfiguriere die folgenden Einstellungen
860
  msgid ""
861
  "To get a custom integration to work, include the following HTML in the form "
862
  "you are trying to integrate with."
863
- msgstr ""
864
 
865
  #: integrations/woocommerce/class-woocommerce.php:102
866
  msgid "Order #%d"
13
  # Stefan Oderbolz <oderbolz@gmail.com>, 2015
14
  # Steffi Zehnder, 2016
15
  # Sven B. <sven.balje@esb-stade.de>, 2015
16
+ # Sven de Vries <signor.aglie@gmail.com>, 2016
17
+ # Tobias Vogler <inactive+tobiv@transifex.com>, 2016
18
  # Uwe <uwe.keim@gmail.com>, 2015
19
  msgid ""
20
  msgstr ""
21
  "Project-Id-Version: MailChimp for WordPress\n"
22
  "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/mailchimp-for-wp\n"
23
  "POT-Creation-Date: 2015-11-30 10:15:18+00:00\n"
24
+ "PO-Revision-Date: 2016-12-18 10:42+0000\n"
25
+ "Last-Translator: Sven de Vries <signor.aglie@gmail.com>\n"
26
  "Language-Team: German (Germany) (http://www.transifex.com/ibericode/mailchimp-for-wordpress/language/de_DE/)\n"
27
  "MIME-Version: 1.0\n"
28
  "Content-Type: text/plain; charset=UTF-8\n"
50
 
51
  #: config/default-form-messages.php:9
52
  msgid "Oops. Something went wrong. Please try again later."
53
+ msgstr "Hoppla. Irgendwas ist schief gelaufen. Bitte versuche es später noch mal."
54
 
55
  #: config/default-form-messages.php:13
56
  msgid "Please provide a valid email address."
352
 
353
  #: includes/forms/views/parts/dynamic-content-tags.php:6
354
  msgid "Add dynamic form variable"
355
+ msgstr "Dynamische Formular-Variablen hinzufügen"
356
 
357
  #: includes/forms/views/parts/dynamic-content-tags.php:8
358
  msgid ""
370
 
371
  #: includes/forms/views/tabs/form-appearance.php:6
372
  msgid "Basic"
373
+ msgstr "Standard"
374
 
375
  #: includes/forms/views/tabs/form-appearance.php:7
376
  msgid "Form Themes"
398
 
399
  #: includes/forms/views/tabs/form-appearance.php:25
400
  msgid "Form Appearance"
401
+ msgstr "Formulargestaltung"
402
 
403
  #: includes/forms/views/tabs/form-appearance.php:29
404
  msgid "Form Style"
663
 
664
  #: includes/integrations/views/integration-settings.php:64
665
  msgid "Implicit?"
666
+ msgstr "erforderlich?"
667
 
668
  #: includes/integrations/views/integration-settings.php:68
669
  msgid ""
725
  "fields</a> or <a href=\"%s\">log into your MailChimp account</a> and make "
726
  "sure only the email & name fields are marked as required fields for the "
727
  "selected list(s)."
728
+ msgstr "Sie müssen alles so einstellen, dass das Plugin <a href=\"%s\">alle zum Absenden des Formulars erforderlichen Felder ihres Formulars enthält</a> oder sich bei <a href=\"%s\">Mailchimp einloggen</a> und nur das E-Mail & Name-Feld für Ihre Liste(n) als \"erforderlich\" (required) markieren."
729
 
730
  #: includes/integrations/views/integrations.php:30
731
  msgid "Enabled"
861
  msgid ""
862
  "To get a custom integration to work, include the following HTML in the form "
863
  "you are trying to integrate with."
864
+ msgstr "Damit die angepasste Integration funktioniert, müssen Sie folgendes HTML in das entsprechende Formular einfügen."
865
 
866
  #: integrations/woocommerce/class-woocommerce.php:102
867
  msgid "Order #%d"
languages/mailchimp-for-wp-pl_PL.mo CHANGED
Binary file
languages/mailchimp-for-wp-pl_PL.po CHANGED
@@ -1,1634 +1,882 @@
1
- # Copyright (C) 2014 Danny van Kooten
2
- # This file is distributed under the GPL v3.
3
  # Translators:
 
 
 
 
 
4
  msgid ""
5
  msgstr ""
6
  "Project-Id-Version: MailChimp for WordPress\n"
7
- "Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/mailchimp-for-wp\n"
8
- "POT-Creation-Date: 2014-12-09 19:20:27+00:00\n"
9
- "PO-Revision-Date: 2014-12-09 19:20+0000\n"
10
- "Last-Translator: Danny van Kooten <dannyvankooten@gmail.com>\n"
11
- "Language-Team: Polish (Poland) (http://www.transifex.com/projects/p/mailchimp-for-wordpress/language/pl_PL/)\n"
12
  "MIME-Version: 1.0\n"
13
  "Content-Type: text/plain; charset=UTF-8\n"
14
  "Content-Transfer-Encoding: 8bit\n"
15
  "Language: pl_PL\n"
16
  "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
17
- "X-Generator: grunt-wp-i18n 0.4.4\n"
18
- "X-Poedit-Basepath: .\n"
19
- "X-Poedit-Bookmarks: \n"
20
- "X-Poedit-Country: UNITED STATES\n"
21
- "X-Poedit-KeywordsList: __;_e;_x:1,2c;_ex:1,2c;_n:1,2; _nx:1,2,4c;_n_noop:1,2;_nx_noop:1,2,3c;esc_attr__; esc_html__;esc_attr_e; esc_html_e;esc_attr_x:1,2c; esc_html_x:1,2c;\n"
22
- "X-Poedit-Language: English\n"
23
- "X-Poedit-SearchPath-0: .\n"
24
- "X-Poedit-SourceCharset: utf-8\n"
25
- "X-Textdomain-Support: yes\n"
26
-
27
- #: mailchimp-for-wordpress/includes/class-admin.php:130
28
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:185
29
- msgid "Settings"
30
- msgstr ""
31
-
32
- #: mailchimp-for-wordpress/includes/class-admin.php:149
33
- #: mailchimp-for-wordpress/includes/class-admin.php:163
34
- msgid "Upgrade to Pro"
35
- msgstr ""
36
-
37
- #: mailchimp-for-wordpress/includes/class-admin.php:160
38
- #: mailchimp-for-wordpress/includes/views/api-settings.php:12
39
- #: mailchimp-for-wordpress/includes/views/form-settings.php:106
40
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:10
41
- msgid "MailChimp Settings"
42
- msgstr ""
43
-
44
- #: mailchimp-for-wordpress/includes/class-admin.php:161
45
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:572
46
- msgid "Checkboxes"
47
- msgstr ""
48
-
49
- #: mailchimp-for-wordpress/includes/class-admin.php:162
50
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:573
51
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-form-settings.php:10
52
- msgid "Forms"
53
- msgstr ""
54
-
55
- #: mailchimp-for-wordpress/includes/class-admin.php:299
56
- msgid "This option is only available in MailChimp for WordPress Pro."
57
- msgstr ""
58
-
59
- #: mailchimp-for-wordpress/includes/class-admin.php:313
60
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:671
61
- msgid "Comment form"
62
- msgstr ""
63
-
64
- #: mailchimp-for-wordpress/includes/class-admin.php:314
65
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:672
66
- msgid "Registration form"
67
- msgstr ""
68
-
69
- #: mailchimp-for-wordpress/includes/class-admin.php:318
70
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:676
71
- msgid "MultiSite forms"
72
- msgstr ""
73
-
74
- #: mailchimp-for-wordpress/includes/class-admin.php:322
75
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:680
76
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:231
77
- msgid "BuddyPress registration"
78
- msgstr ""
79
-
80
- #: mailchimp-for-wordpress/includes/class-admin.php:330
81
- #: mailchimp-for-wordpress/includes/class-admin.php:334
82
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:688
83
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:692
84
- msgid "%s checkout"
85
- msgstr ""
86
-
87
- #: mailchimp-for-wordpress/includes/class-admin.php:363
88
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:738
89
- msgid "Renewed MailChimp cache."
90
- msgstr ""
91
-
92
- #: mailchimp-for-wordpress/includes/class-admin.php:365
93
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:740
94
- msgid "Failed to renew MailChimp cache - please try again later."
95
- msgstr ""
96
-
97
- #: mailchimp-for-wordpress/includes/class-admin.php:398
98
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:313
99
- msgid "An EMAIL field. Example: <code>%s</code>"
100
- msgstr ""
101
-
102
- #: mailchimp-for-wordpress/includes/class-admin.php:404
103
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:319
104
- msgid "A submit button. Example: <code>%s</code>"
105
- msgstr ""
106
-
107
- #: mailchimp-for-wordpress/includes/class-admin.php:404
108
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:319
109
- msgid "Sign Up"
110
- msgstr ""
111
-
112
- #: mailchimp-for-wordpress/includes/class-admin.php:429
113
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:347
114
- msgid "A '%s' field"
115
- msgstr ""
116
-
117
- #: mailchimp-for-wordpress/includes/class-form-request.php:675
118
- msgid "Please select at least one list to subscribe to."
119
- msgstr ""
120
-
121
- #: mailchimp-for-wordpress/includes/class-widget.php:20
122
- msgid "MailChimp Sign-Up Form"
123
- msgstr ""
124
-
125
- #: mailchimp-for-wordpress/includes/class-widget.php:21
126
- msgid "Displays your MailChimp for WordPress sign-up form"
127
- msgstr ""
128
-
129
- #: mailchimp-for-wordpress/includes/class-widget.php:62
130
- #: mailchimp-for-wordpress-pro/includes/class-widget.php:69
131
- msgid "Newsletter"
132
- msgstr ""
133
-
134
- #: mailchimp-for-wordpress/includes/class-widget.php:65
135
- #: mailchimp-for-wordpress-pro/includes/class-widget.php:80
136
- msgid "Title:"
137
- msgstr ""
138
-
139
- #: mailchimp-for-wordpress/includes/class-widget.php:69
140
- msgid ""
141
- "You can edit your sign-up form in the %sMailChimp for WordPress form "
142
- "settings%s."
143
- msgstr ""
144
 
145
- #: mailchimp-for-wordpress/includes/functions/general.php:21
146
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:285
147
- #: mailchimp-for-wordpress-pro/includes/class-mailchimp.php:135
148
  msgid "Email address"
149
- msgstr ""
150
 
151
- #: mailchimp-for-wordpress/includes/functions/general.php:22
152
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:284
153
  msgid "Your email address"
154
- msgstr ""
155
 
156
- #: mailchimp-for-wordpress/includes/functions/general.php:23
157
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:286
158
  msgid "Sign up"
159
- msgstr ""
160
-
161
- #: mailchimp-for-wordpress/includes/functions/general.php:30
162
- #: mailchimp-for-wordpress-pro/includes/functions/general.php:27
163
- msgid "Sign me up for the newsletter!"
164
- msgstr ""
165
 
166
- #: mailchimp-for-wordpress/includes/functions/general.php:47
167
  msgid ""
168
- "Thank you, your sign-up request was successful! Please check your e-mail "
169
- "inbox."
170
- msgstr ""
171
 
172
- #: mailchimp-for-wordpress/includes/functions/general.php:48
173
- #: mailchimp-for-wordpress-pro/includes/functions/general.php:51
174
  msgid "Oops. Something went wrong. Please try again later."
175
- msgstr ""
176
 
177
- #: mailchimp-for-wordpress/includes/functions/general.php:49
178
- #: mailchimp-for-wordpress-pro/includes/functions/general.php:52
179
  msgid "Please provide a valid email address."
180
- msgstr ""
181
 
182
- #: mailchimp-for-wordpress/includes/functions/general.php:50
183
- #: mailchimp-for-wordpress-pro/includes/functions/general.php:53
184
  msgid "Given email address is already subscribed, thank you!"
185
- msgstr ""
186
-
187
- #: mailchimp-for-wordpress/includes/functions/general.php:51
188
- #: mailchimp-for-wordpress-pro/includes/functions/general.php:54
189
- msgid "Please complete the CAPTCHA."
190
- msgstr ""
191
 
192
- #: mailchimp-for-wordpress/includes/functions/general.php:52
193
- #: mailchimp-for-wordpress-pro/includes/functions/general.php:55
194
  msgid "Please fill in the required fields."
195
- msgstr ""
196
-
197
- #: mailchimp-for-wordpress/includes/integrations/class-cf7.php:44
198
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:52
199
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:91
200
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:96
201
- #: mailchimp-for-wordpress/includes/views/form-settings.php:113
202
- #: mailchimp-for-wordpress/includes/views/form-settings.php:126
203
- #: mailchimp-for-wordpress/includes/views/form-settings.php:136
204
- #: mailchimp-for-wordpress/includes/views/form-settings.php:147
205
- #: mailchimp-for-wordpress/includes/views/form-settings.php:166
206
- #: mailchimp-for-wordpress/includes/views/form-settings.php:180
207
- #: mailchimp-for-wordpress-pro/includes/integrations/class-cf7.php:44
208
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:17
209
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:37
210
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:56
211
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:75
212
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:98
213
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:116
214
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:139
215
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:52
216
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:60
217
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:99
218
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:104
219
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:59
220
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:72
221
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:82
222
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:97
223
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:115
224
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:123
225
- msgid "Yes"
226
- msgstr ""
227
-
228
- #: mailchimp-for-wordpress/includes/integrations/class-cf7.php:44
229
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:56
230
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:91
231
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:96
232
- #: mailchimp-for-wordpress/includes/views/form-settings.php:27
233
- #: mailchimp-for-wordpress/includes/views/form-settings.php:117
234
- #: mailchimp-for-wordpress/includes/views/form-settings.php:128
235
- #: mailchimp-for-wordpress/includes/views/form-settings.php:138
236
- #: mailchimp-for-wordpress/includes/views/form-settings.php:151
237
- #: mailchimp-for-wordpress/includes/views/form-settings.php:170
238
- #: mailchimp-for-wordpress/includes/views/form-settings.php:184
239
- #: mailchimp-for-wordpress-pro/includes/integrations/class-cf7.php:44
240
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:21
241
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:41
242
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:60
243
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:79
244
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:102
245
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:120
246
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:140
247
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:52
248
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:62
249
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:99
250
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:104
251
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:22
252
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:63
253
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:73
254
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:86
255
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:101
256
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:116
257
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:124
258
- msgid "No"
259
- msgstr ""
260
-
261
- #: mailchimp-for-wordpress/includes/integrations/class-integration.php:212
262
- #: mailchimp-for-wordpress/includes/integrations/class-integration.php:215
263
- #: mailchimp-for-wordpress/includes/integrations/class-integration.php:293
264
- #: mailchimp-for-wordpress/includes/integrations/class-integration.php:302
265
- msgid "MailChimp for WordPress - Error"
266
- msgstr ""
267
-
268
- #: mailchimp-for-wordpress/includes/integrations/class-integration.php:213
269
- msgid ""
270
- "Please select a list to subscribe to in the <a href=\"%s\">checkbox "
271
- "settings</a>."
272
- msgstr ""
273
-
274
- #: mailchimp-for-wordpress/includes/integrations/class-integration.php:214
275
- #: mailchimp-for-wordpress/includes/integrations/class-integration.php:301
276
- msgid "This message is only visible to administrators for debugging purposes."
277
- msgstr ""
278
-
279
- #: mailchimp-for-wordpress/includes/integrations/class-integration.php:294
280
- msgid ""
281
- "The MailChimp server returned the following error message as a response to "
282
- "our sign-up request:"
283
- msgstr ""
284
-
285
- #: mailchimp-for-wordpress/includes/integrations/class-integration.php:296
286
- msgid "This is the data that was sent to MailChimp:"
287
- msgstr ""
288
-
289
- #: mailchimp-for-wordpress/includes/integrations/class-integration.php:297
290
- #: mailchimp-for-wordpress-pro/includes/class-form-request.php:638
291
- msgid "Email address:"
292
- msgstr ""
293
-
294
- #: mailchimp-for-wordpress/includes/integrations/class-integration.php:299
295
- msgid "Merge variables:"
296
- msgstr ""
297
-
298
- #. Plugin Name of the plugin/theme
299
- msgid "MailChimp for WordPress"
300
- msgstr ""
301
-
302
- #: mailchimp-for-wordpress/includes/views/api-settings.php:22
303
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-general-settings.php:19
304
- msgid "API Settings"
305
- msgstr ""
306
-
307
- #: mailchimp-for-wordpress/includes/views/api-settings.php:24
308
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-general-settings.php:21
309
- msgid "CONNECTED"
310
- msgstr ""
311
-
312
- #: mailchimp-for-wordpress/includes/views/api-settings.php:26
313
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-general-settings.php:23
314
- msgid "NOT CONNECTED"
315
- msgstr ""
316
-
317
- #: mailchimp-for-wordpress/includes/views/api-settings.php:32
318
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-general-settings.php:29
319
- msgid "API Key"
320
- msgstr ""
321
-
322
- #: mailchimp-for-wordpress/includes/views/api-settings.php:34
323
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-general-settings.php:31
324
- msgid "Your MailChimp API key"
325
- msgstr ""
326
-
327
- #: mailchimp-for-wordpress/includes/views/api-settings.php:35
328
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-general-settings.php:32
329
- msgid "Get your API key here."
330
- msgstr ""
331
-
332
- #: mailchimp-for-wordpress/includes/views/api-settings.php:47
333
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-general-settings.php:48
334
- msgid "MailChimp Data"
335
- msgstr ""
336
-
337
- #: mailchimp-for-wordpress/includes/views/api-settings.php:48
338
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-general-settings.php:49
339
- msgid ""
340
- "The table below shows your MailChimp lists data. If you applied changes to "
341
- "your MailChimp lists, please use the following button to renew your cached "
342
- "data."
343
- msgstr ""
344
-
345
- #: mailchimp-for-wordpress/includes/views/api-settings.php:54
346
- #: mailchimp-for-wordpress/includes/views/api-settings.php:125
347
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-general-settings.php:55
348
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-general-settings.php:126
349
- msgid "Renew MailChimp lists"
350
- msgstr ""
351
-
352
- #: mailchimp-for-wordpress/includes/views/api-settings.php:112
353
- msgid "No lists were found in your MailChimp account"
354
- msgstr ""
355
-
356
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:11
357
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:11
358
- msgid "Checkbox Settings"
359
- msgstr ""
360
-
361
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:16
362
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:14
363
- msgid ""
364
- "To use sign-up checkboxes, select at least one list and one form to add the "
365
- "checkbox to."
366
- msgstr ""
367
-
368
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:21
369
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:21
370
- msgid "MailChimp settings for checkboxes"
371
- msgstr ""
372
-
373
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:25
374
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:26
375
- msgid ""
376
- "If you want to use sign-up checkboxes, select at least one MailChimp list to"
377
- " subscribe people to."
378
- msgstr ""
379
-
380
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:31
381
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:34
382
- msgid "MailChimp Lists"
383
- msgstr ""
384
-
385
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:35
386
- #: mailchimp-for-wordpress/includes/views/form-settings.php:48
387
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:17
388
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:38
389
- msgid "No lists found, %sare you connected to MailChimp?%s"
390
- msgstr ""
391
-
392
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:42
393
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:45
394
- msgid ""
395
- "Select the list(s) to which people who check the checkbox should be "
396
- "subscribed."
397
- msgstr ""
398
-
399
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:48
400
- #: mailchimp-for-wordpress/includes/views/form-settings.php:109
401
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:13
402
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:51
403
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:55
404
- msgid "Double opt-in?"
405
- msgstr ""
406
-
407
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:59
408
- #: mailchimp-for-wordpress/includes/views/form-settings.php:120
409
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:28
410
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:53
411
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:66
412
- msgid ""
413
- "Select \"yes\" if you want people to confirm their email address before "
414
- "being subscribed (recommended)"
415
- msgstr ""
416
-
417
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:63
418
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:68
419
- msgid "Checkbox settings"
420
- msgstr ""
421
-
422
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:67
423
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:71
424
- msgid "Add the checkbox to these forms"
425
- msgstr ""
426
-
427
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:79
428
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:78
429
- msgid "Selecting a form will automatically add the sign-up checkbox to it."
430
- msgstr ""
431
-
432
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:83
433
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:91
434
- msgid "Checkbox label text"
435
- msgstr ""
436
-
437
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:86
438
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:94
439
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:134
440
- msgid "HTML tags like %s are allowed in the label text."
441
- msgstr ""
442
-
443
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:90
444
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:98
445
- msgid "Pre-check the checkbox?"
446
- msgstr ""
447
-
448
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:95
449
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:103
450
- msgid "Load some default CSS?"
451
- msgstr ""
452
-
453
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:97
454
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:105
455
- msgid "Select \"yes\" if the checkbox appears in a weird place."
456
- msgstr ""
457
-
458
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:100
459
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:108
460
- msgid "WooCommerce checkbox position"
461
- msgstr ""
462
-
463
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:103
464
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:111
465
- msgid "After the billing details"
466
- msgstr ""
467
-
468
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:104
469
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:112
470
- msgid "After the additional information"
471
- msgstr ""
472
-
473
- #: mailchimp-for-wordpress/includes/views/checkbox-settings.php:107
474
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:115
475
- msgid ""
476
- "Choose the position for the checkbox in your WooCommerce checkout form."
477
- msgstr ""
478
-
479
- #: mailchimp-for-wordpress/includes/views/form-settings.php:9
480
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:431
481
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:91
482
- msgid "Form Settings"
483
- msgstr ""
484
-
485
- #: mailchimp-for-wordpress/includes/views/form-settings.php:15
486
- msgid ""
487
- "To use the MailChimp sign-up form, configure the form below and then either "
488
- "paste %s in the content of a post or page or use the widget."
489
- msgstr ""
490
-
491
- #: mailchimp-for-wordpress/includes/views/form-settings.php:20
492
- msgid "Required form settings"
493
- msgstr ""
494
 
495
- #: mailchimp-for-wordpress/includes/views/form-settings.php:24
496
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:19
497
- msgid "Load form styles (CSS)?"
498
- msgstr ""
499
-
500
- #: mailchimp-for-wordpress/includes/views/form-settings.php:28
501
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:23
502
- msgid "Yes, load basic form styles"
503
- msgstr ""
504
-
505
- #: mailchimp-for-wordpress/includes/views/form-settings.php:29
506
- #: mailchimp-for-wordpress/includes/views/form-settings.php:36
507
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:20
508
- msgid "(PRO ONLY)"
509
- msgstr ""
510
-
511
- #: mailchimp-for-wordpress/includes/views/form-settings.php:29
512
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:24
513
- msgid "Yes, load my custom form styles"
514
- msgstr ""
515
-
516
- #: mailchimp-for-wordpress/includes/views/form-settings.php:30
517
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:25
518
- msgid "Yes, load default form theme"
519
- msgstr ""
520
-
521
- #: mailchimp-for-wordpress/includes/views/form-settings.php:31
522
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:26
523
- msgid "Light Theme"
524
- msgstr ""
525
-
526
- #: mailchimp-for-wordpress/includes/views/form-settings.php:32
527
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:27
528
- msgid "Red Theme"
529
- msgstr ""
530
-
531
- #: mailchimp-for-wordpress/includes/views/form-settings.php:33
532
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:28
533
- msgid "Green Theme"
534
- msgstr ""
535
-
536
- #: mailchimp-for-wordpress/includes/views/form-settings.php:34
537
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:29
538
- msgid "Blue Theme"
539
- msgstr ""
540
-
541
- #: mailchimp-for-wordpress/includes/views/form-settings.php:35
542
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:30
543
- msgid "Dark Theme"
544
- msgstr ""
545
-
546
- #: mailchimp-for-wordpress/includes/views/form-settings.php:36
547
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:31
548
- msgid "Custom Color Theme"
549
- msgstr ""
550
-
551
- #: mailchimp-for-wordpress/includes/views/form-settings.php:41
552
- msgid ""
553
- "If you want to load some default CSS styles, select \"basic formatting "
554
- "styles\" or choose one of the color themes"
555
- msgstr ""
556
-
557
- #: mailchimp-for-wordpress/includes/views/form-settings.php:45
558
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:14
559
- msgid "Lists this form subscribes to"
560
- msgstr ""
561
-
562
- #: mailchimp-for-wordpress/includes/views/form-settings.php:63
563
- msgid ""
564
- "Select the list(s) to which people who submit this form should be "
565
- "subscribed."
566
- msgstr ""
567
-
568
- #: mailchimp-for-wordpress/includes/views/form-settings.php:69
569
- msgid "Form mark-up"
570
- msgstr ""
571
-
572
- #: mailchimp-for-wordpress/includes/views/form-settings.php:75
573
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:359
574
- msgid "Your form is missing the following (required) form fields:"
575
- msgstr ""
576
-
577
- #: mailchimp-for-wordpress/includes/views/form-settings.php:92
578
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:87
579
- msgid ""
580
- "Use the shortcode %s to display this form inside a post, page or text "
581
- "widget."
582
- msgstr ""
583
-
584
- #: mailchimp-for-wordpress/includes/views/form-settings.php:123
585
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:71
586
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:57
587
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:70
588
- msgid "Send Welcome Email?"
589
- msgstr ""
590
-
591
- #: mailchimp-for-wordpress/includes/views/form-settings.php:130
592
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:86
593
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:64
594
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:75
595
- msgid ""
596
- "Select \"yes\" if you want to send your lists Welcome Email if a subscribe "
597
- "succeeds (only when double opt-in is disabled)."
598
- msgstr ""
599
-
600
- #: mailchimp-for-wordpress/includes/views/form-settings.php:133
601
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:33
602
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:78
603
- msgid "Update existing subscribers?"
604
- msgstr ""
605
-
606
- #: mailchimp-for-wordpress/includes/views/form-settings.php:140
607
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:47
608
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:89
609
- msgid ""
610
- "Select \"yes\" if you want to update existing subscribers (instead of "
611
- "showing the \"already subscribed\" message)."
612
- msgstr ""
613
-
614
- #: mailchimp-for-wordpress/includes/views/form-settings.php:143
615
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:52
616
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:93
617
- msgid "Replace interest groups?"
618
- msgstr ""
619
-
620
- #: mailchimp-for-wordpress/includes/views/form-settings.php:154
621
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:66
622
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:104
623
- msgid ""
624
- "Select \"yes\" if you want to replace the interest groups with the groups "
625
- "provided instead of adding the provided groups to the member's interest "
626
- "groups (only when updating a subscriber)."
627
- msgstr ""
628
 
629
- #: mailchimp-for-wordpress/includes/views/form-settings.php:158
630
- msgid "Form Settings & Messages"
631
- msgstr ""
632
 
633
- #: mailchimp-for-wordpress/includes/views/form-settings.php:162
634
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:94
635
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:113
636
- msgid "Enable AJAX form submission?"
637
- msgstr ""
638
-
639
- #: mailchimp-for-wordpress/includes/views/form-settings.php:173
640
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:108
641
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:118
642
- msgid "Select \"yes\" if you want to use AJAX (JavaScript) to submit forms."
643
- msgstr ""
644
-
645
- #: mailchimp-for-wordpress/includes/views/form-settings.php:176
646
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:112
647
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:121
648
- msgid "Hide form after a successful sign-up?"
649
- msgstr ""
650
-
651
- #: mailchimp-for-wordpress/includes/views/form-settings.php:187
652
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:126
653
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:126
654
- msgid "Select \"yes\" to hide the form fields after a successful sign-up."
655
- msgstr ""
656
-
657
- #: mailchimp-for-wordpress/includes/views/form-settings.php:190
658
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:130
659
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:129
660
- msgid "Redirect to URL after successful sign-ups"
661
- msgstr ""
662
-
663
- #: mailchimp-for-wordpress/includes/views/form-settings.php:192
664
- msgid "Example: %s"
665
- msgstr ""
666
-
667
- #: mailchimp-for-wordpress/includes/views/form-settings.php:193
668
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:133
669
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:132
670
- msgid ""
671
- "Leave empty or enter 0 for no redirection. Use complete (absolute) URLs, "
672
- "including <code>http://</code>"
673
- msgstr ""
674
-
675
- #: mailchimp-for-wordpress/includes/views/form-settings.php:197
676
- msgid "Success message"
677
- msgstr ""
678
-
679
- #: mailchimp-for-wordpress/includes/views/form-settings.php:201
680
- msgid "Invalid email address message"
681
- msgstr ""
682
-
683
- #: mailchimp-for-wordpress/includes/views/form-settings.php:205
684
- msgid "Required field missing message"
685
- msgstr ""
686
 
687
- #: mailchimp-for-wordpress/includes/views/form-settings.php:209
688
- msgid "Already subscribed message"
689
- msgstr ""
690
-
691
- #: mailchimp-for-wordpress/includes/views/form-settings.php:214
692
- msgid "Invalid CAPTCHA message"
693
- msgstr ""
694
-
695
- #: mailchimp-for-wordpress/includes/views/form-settings.php:219
696
- msgid "General error message"
697
- msgstr ""
698
-
699
- #: mailchimp-for-wordpress/includes/views/form-settings.php:225
700
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:181
701
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:169
702
- msgid "HTML tags like %s are allowed in the message fields."
703
- msgstr ""
704
-
705
- #: mailchimp-for-wordpress/includes/views/form-settings.php:239
706
- msgid "Building your sign-up form"
707
- msgstr ""
708
-
709
- #: mailchimp-for-wordpress/includes/views/form-settings.php:240
710
- msgid ""
711
- "At a minimum, your form should include just an %s field and a submit button."
712
- msgstr ""
713
-
714
- #: mailchimp-for-wordpress/includes/views/form-settings.php:241
715
- msgid ""
716
- "Add more form fields if your selected lists require more fields. Field names"
717
- " should match the field tags of the selected lists. Use the \"Add a new "
718
- "field\" tool to have the HTML generated for you."
719
- msgstr ""
720
-
721
- #: mailchimp-for-wordpress/includes/views/form-settings.php:243
722
- msgid "Form Styling"
723
- msgstr ""
724
-
725
- #: mailchimp-for-wordpress/includes/views/form-settings.php:244
726
- msgid "Alter the visual appearance of the form by applying CSS rules to %s."
727
- msgstr ""
728
-
729
- #: mailchimp-for-wordpress/includes/views/form-settings.php:245
730
- msgid ""
731
- "You can add the CSS rules to your theme stylesheet using the <a "
732
- "href=\"%s\">Theme Editor</a> or by editing %s over FTP. Alternatively, use a"
733
- " plugin like %s"
734
- msgstr ""
735
-
736
- #: mailchimp-for-wordpress/includes/views/form-settings.php:246
737
- msgid ""
738
- "The <a href=\"%s\" target=\"_blank\">plugin FAQ</a> lists the various CSS "
739
- "selectors you can use to target the different form elements."
740
- msgstr ""
741
-
742
- #: mailchimp-for-wordpress/includes/views/form-settings.php:247
743
- msgid ""
744
- "If you need an easier way to style your forms, <a href=\"%s\">upgrade to "
745
- "MailChimp for WordPress Pro</a>. It comes with a \"Styles Builder\" that "
746
- "lets you customize form styles without writing any code."
747
- msgstr ""
748
-
749
- #: mailchimp-for-wordpress/includes/views/form-settings.php:249
750
- msgid "Form variables"
751
- msgstr ""
752
-
753
- #: mailchimp-for-wordpress/includes/views/form-settings.php:250
754
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:473
755
- msgid "Use the following variables to add some dynamic content to your form."
756
- msgstr ""
757
-
758
- #: mailchimp-for-wordpress/includes/views/form-settings.php:257
759
- #: mailchimp-for-wordpress-pro/includes/views/parts/admin-text-variables.php:13
760
- msgid "Replaced with the visitor's email (if set in URL or cookie)."
761
- msgstr ""
762
-
763
- #: mailchimp-for-wordpress/includes/views/form-settings.php:261
764
- #: mailchimp-for-wordpress-pro/includes/views/parts/admin-text-variables.php:17
765
- msgid "Replaced with the form response (error or success messages)."
766
- msgstr ""
767
-
768
- #: mailchimp-for-wordpress/includes/views/form-settings.php:266
769
- #: mailchimp-for-wordpress-pro/includes/views/parts/admin-text-variables.php:22
770
- msgid "Replaced with a captcha field."
771
- msgstr ""
772
-
773
- #: mailchimp-for-wordpress/includes/views/form-settings.php:271
774
- #: mailchimp-for-wordpress-pro/includes/views/parts/admin-text-variables.php:27
775
- msgid "Replaced with the number of subscribers on the selected list(s)"
776
- msgstr ""
777
-
778
- #: mailchimp-for-wordpress/includes/views/form-settings.php:275
779
- #: mailchimp-for-wordpress-pro/includes/views/parts/admin-text-variables.php:31
780
- msgid "Replaced with the current site language, eg: %s"
781
- msgstr ""
782
-
783
- #: mailchimp-for-wordpress/includes/views/form-settings.php:279
784
- #: mailchimp-for-wordpress-pro/includes/views/parts/admin-text-variables.php:35
785
- msgid "Replaced with the visitor's IP address"
786
- msgstr ""
787
-
788
- #: mailchimp-for-wordpress/includes/views/form-settings.php:283
789
- #: mailchimp-for-wordpress-pro/includes/views/parts/admin-text-variables.php:39
790
- msgid "Replaced with the current date (yyyy/mm/dd eg: %s)"
791
- msgstr ""
792
-
793
- #: mailchimp-for-wordpress/includes/views/form-settings.php:287
794
- #: mailchimp-for-wordpress-pro/includes/views/parts/admin-text-variables.php:43
795
- msgid "Replaced with the current time (hh:mm:ss eg: %s)"
796
- msgstr ""
797
-
798
- #: mailchimp-for-wordpress/includes/views/form-settings.php:291
799
- #: mailchimp-for-wordpress-pro/includes/views/parts/admin-text-variables.php:47
800
- msgid ""
801
- "Replaced with the logged in user's email (or nothing, if there is no logged "
802
- "in user)"
803
- msgstr ""
804
-
805
- #: mailchimp-for-wordpress/includes/views/form-settings.php:295
806
- #: mailchimp-for-wordpress-pro/includes/views/parts/admin-text-variables.php:51
807
- msgid "First name of the current user"
808
- msgstr ""
809
-
810
- #: mailchimp-for-wordpress/includes/views/form-settings.php:299
811
- #: mailchimp-for-wordpress-pro/includes/views/parts/admin-text-variables.php:55
812
- msgid "Last name of the current user"
813
- msgstr ""
814
-
815
- #: mailchimp-for-wordpress/includes/views/form-settings.php:303
816
- #: mailchimp-for-wordpress-pro/includes/views/parts/admin-text-variables.php:59
817
- msgid "Current user ID"
818
- msgstr ""
819
-
820
- #: mailchimp-for-wordpress/includes/views/form-settings.php:307
821
- #: mailchimp-for-wordpress-pro/includes/views/parts/admin-text-variables.php:63
822
- msgid "Current URL"
823
- msgstr ""
824
-
825
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:10
826
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:29
827
- msgid "Add a new field"
828
- msgstr ""
829
-
830
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:12
831
- msgid "Use the tool below to generate the HTML for your form fields."
832
- msgstr ""
833
-
834
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:15
835
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:32
836
- msgid "Select MailChimp field.."
837
- msgstr ""
838
-
839
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:19
840
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:36
841
- msgid "Submit Button"
842
- msgstr ""
843
-
844
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:20
845
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:37
846
- msgid "Lists Choice"
847
- msgstr ""
848
-
849
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:28
850
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:45
851
- msgid "Label"
852
- msgstr ""
853
-
854
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:28
855
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:33
856
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:38
857
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:45
858
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:50
859
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:55
860
- msgid "(optional)"
861
- msgstr ""
862
-
863
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:33
864
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:50
865
- msgid "Placeholder"
866
- msgstr ""
867
-
868
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:38
869
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:55
870
- msgid "Initial value"
871
- msgstr ""
872
-
873
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:43
874
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:60
875
- msgid "Labels"
876
- msgstr ""
877
-
878
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:43
879
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:60
880
- msgid "(leave empty to hide)"
881
- msgstr ""
882
-
883
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:48
884
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:65
885
- msgid "Wrap in paragraph %s tags?"
886
- msgstr ""
887
-
888
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:53
889
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:69
890
- msgid "Required field?"
891
- msgstr ""
892
-
893
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:57
894
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:73
895
- msgid "Add to form"
896
- msgstr ""
897
 
898
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:61
899
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:77
900
- msgid "Generated HTML"
901
- msgstr ""
902
 
903
- #: mailchimp-for-wordpress/includes/views/parts/admin-field-wizard.php:68
904
- msgid "Select at least one list first."
905
- msgstr ""
906
 
907
- #: mailchimp-for-wordpress/includes/views/parts/admin-footer.php:9
908
  msgid ""
909
- "MailChimp for WordPress is in need of translations. Is the plugin not "
910
- "translated in your language or do you spot errors with the current "
911
- "translations? Helping out is easy! Head over to <a href=\"%s\">the "
912
- "translation project and click \"help translate\"</a>."
913
- msgstr ""
914
 
915
- #: mailchimp-for-wordpress/includes/views/parts/admin-footer.php:10
916
  msgid ""
917
- "Enjoying this plugin? <a href=\"%s\">Upgrade to MailChimp for WordPress Pro "
918
- "now</a> for an even better plugin, you will love it."
919
- msgstr ""
920
 
921
- #: mailchimp-for-wordpress/includes/views/parts/admin-footer.php:11
922
- #: mailchimp-for-wordpress-pro/includes/views/parts/admin-footer.php:10
923
- msgid ""
924
- "This plugin is not developed by or affiliated with MailChimp in any way."
925
- msgstr ""
926
 
927
- #: mailchimp-for-wordpress/includes/views/parts/admin-need-support.php:9
928
- msgid "Looking for support?"
929
- msgstr ""
 
930
 
931
- #: mailchimp-for-wordpress/includes/views/parts/admin-need-support.php:10
932
- msgid ""
933
- "Make sure to look at the <a href=\"%s\">frequently asked questions</a> or "
934
- "use the <a href=\"%s\">support forums</a> on WordPress.org."
935
- msgstr ""
936
 
937
- #: mailchimp-for-wordpress/includes/views/parts/admin-need-support.php:11
938
  msgid ""
939
- "If you need priority support, please <a href=\"%s\">upgrade to the premium "
940
- "version</a>."
941
- msgstr ""
942
 
943
- #: mailchimp-for-wordpress/includes/views/parts/admin-need-support.php:15
944
- msgid "Show a token of your appreciation"
945
- msgstr ""
946
 
947
- #: mailchimp-for-wordpress/includes/views/parts/admin-need-support.php:17
948
- msgid "Upgrade to MailChimp for WordPress Pro"
949
- msgstr ""
 
 
950
 
951
- #: mailchimp-for-wordpress/includes/views/parts/admin-need-support.php:18
952
- msgid "Leave a %s plugin review on WordPress.org"
953
- msgstr ""
954
 
955
- #: mailchimp-for-wordpress/includes/views/parts/admin-need-support.php:19
956
- msgid "I am using MailChimp for WordPress by @DannyvanKooten - it is great!"
957
- msgstr ""
958
 
959
- #: mailchimp-for-wordpress/includes/views/parts/admin-need-support.php:19
960
- msgid "Tweet about MailChimp for WordPress"
961
- msgstr ""
962
 
963
- #: mailchimp-for-wordpress/includes/views/parts/admin-need-support.php:20
964
- msgid ""
965
- "Review the plugin on your blog and link to <a href=\"%s\">the plugin "
966
- "page</a>."
967
- msgstr ""
968
 
969
- #: mailchimp-for-wordpress/includes/views/parts/admin-need-support.php:21
970
- msgid "Vote \"works\" on the WordPress.org plugin page"
971
- msgstr ""
972
 
973
- #: mailchimp-for-wordpress/includes/views/parts/admin-need-support.php:25
974
- msgid "About the developer"
975
- msgstr ""
976
 
977
- #: mailchimp-for-wordpress/includes/views/parts/admin-upgrade-to-pro.php:11
978
- msgid ""
979
- "This plugin has an even better premium version, I am sure you will love it."
980
- msgstr ""
981
 
982
- #: mailchimp-for-wordpress/includes/views/parts/admin-upgrade-to-pro.php:12
983
- msgid ""
984
- "Pro features include better and multiple forms, advanced and easy form "
985
- "styling, more default themes, detailed statistics and priority support."
986
- msgstr ""
987
 
988
- #: mailchimp-for-wordpress/includes/views/parts/admin-upgrade-to-pro.php:13
989
- msgid "More information about MailChimp for WP Pro"
990
- msgstr ""
991
 
992
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:204
993
- msgid "Documentation"
994
- msgstr ""
995
 
996
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:247
997
- msgid "Save Form"
998
- msgstr ""
999
 
1000
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:251
1001
- msgid "Update Form"
1002
- msgstr ""
1003
 
1004
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:302
1005
- msgid "Back to general form settings"
1006
- msgstr ""
1007
 
1008
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:304
1009
- msgid "Form updated."
1010
- msgstr ""
1011
 
1012
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:305
1013
- msgid "Form saved."
1014
- msgstr ""
 
1015
 
1016
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:432
1017
- msgid "Optional Settings"
1018
- msgstr ""
1019
 
1020
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:433
1021
- msgid "Form Variables"
1022
- msgstr ""
1023
 
1024
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:571
1025
- msgid "MailChimp & License"
1026
- msgstr ""
1027
 
1028
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:574
1029
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-reports.php:10
1030
- msgid "Reports"
1031
- msgstr ""
1032
 
1033
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:728
1034
- msgid ""
1035
- "Please make sure the plugin is connected to MailChimp. <a "
1036
- "href=\"%s\">Provide a valid API key.</a>"
1037
- msgstr ""
1038
 
1039
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:830
1040
- msgid "End date can't be before the start date"
1041
- msgstr ""
1042
 
1043
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:862
1044
- msgid ""
1045
- "You disabled logging using the %s filter. Re-enable it to use the Reports "
1046
- "page."
1047
- msgstr ""
1048
 
1049
- #: mailchimp-for-wordpress-pro/includes/admin/class-admin.php:878
1050
- msgid ""
1051
- "<strong>Welcome to MailChimp for WordPress Pro!</strong> We transfered the "
1052
- "settings you had set in the Lite version, please <a href=\"%s\">deactivate "
1053
- "it now</a> to prevent problems"
1054
- msgstr ""
1055
 
1056
- #: mailchimp-for-wordpress-pro/includes/admin/class-styles-builder.php:319
1057
- msgid ""
1058
- "Couldn't create the stylesheet. Manually add the generated CSS to your theme"
1059
- " stylesheet by using the %sTheme Editor%s or use FTP and edit <em>%s</em>."
1060
- msgstr ""
1061
 
1062
- #: mailchimp-for-wordpress-pro/includes/admin/class-styles-builder.php:320
1063
- msgid "%sShow generated CSS%s"
1064
- msgstr ""
1065
 
1066
- #: mailchimp-for-wordpress-pro/includes/admin/class-styles-builder.php:331
1067
- msgid ""
1068
- "To apply these styles on your website, select \"load custom form styles\" in"
1069
- " the %sform settings%s"
1070
- msgstr ""
1071
 
1072
- #: mailchimp-for-wordpress-pro/includes/admin/class-styles-builder.php:332
1073
- msgid "The %sCSS Stylesheet%s has been created."
1074
- msgstr ""
1075
 
1076
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-license-manager.php:152
1077
- msgid "I know. Don't bug me."
1078
- msgstr ""
1079
 
1080
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-license-manager.php:171
1081
  msgid ""
1082
- "<b>Warning!</b> You're blocking external requests which means you won't be "
1083
- "able to get %s updates. Please add %s to %s."
1084
- msgstr ""
1085
 
1086
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-license-manager.php:213
1087
- msgid "Your %s license has been activated. You have an unlimited license. "
1088
- msgstr ""
1089
 
1090
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-license-manager.php:215
1091
- msgid "Your %s license has been activated. You have used %d/%d activations. "
1092
- msgstr ""
1093
 
1094
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-license-manager.php:220
1095
- msgid "<a href=\"%s\">Did you know you can upgrade your license?</a>"
1096
- msgstr ""
1097
 
1098
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-license-manager.php:224
1099
- msgid ""
1100
- "<a href=\"%s\">Your license is expiring in %d days, would you like to extend"
1101
- " it?</a>"
1102
- msgstr ""
1103
 
1104
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-license-manager.php:233
1105
- msgid ""
1106
- "You've reached your activation limit. You must <a href=\"%s\">reset</a> or "
1107
- "<a href=\"%s\">upgrade your license</a> to use it on this site."
1108
- msgstr ""
1109
 
1110
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-license-manager.php:237
1111
- msgid ""
1112
- "Your license has expired. You must <a href=\"%s\">renew your license</a> if "
1113
- "you want to use it again."
1114
- msgstr ""
1115
 
1116
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-license-manager.php:240
1117
- msgid "Failed to activate your license, your license key seems to be invalid."
1118
- msgstr ""
1119
 
1120
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-license-manager.php:265
1121
- msgid "Your %s license has been deactivated."
1122
- msgstr ""
1123
 
1124
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-license-manager.php:270
1125
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:69
1126
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:78
1127
- msgid ""
1128
- "Your plugin license has expired. You will no longer have access to plugin "
1129
- "updates unless you <a href=\"%s\">renew your license</a>."
1130
- msgstr ""
1131
 
1132
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-license-manager.php:272
1133
- msgid "Failed to deactivate your %s license."
1134
- msgstr ""
1135
 
1136
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-license-manager.php:310
1137
- msgid "Request error: \"%s\""
1138
- msgstr ""
1139
 
1140
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-license-manager.php:469
1141
- msgid "%s: License Settings"
1142
- msgstr ""
1143
 
1144
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-plugin-license-manager.php:67
1145
- msgid ""
1146
- "%s is network activated, please contact your site administrator to manage "
1147
- "the license."
1148
- msgstr ""
1149
 
1150
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-update-manager.php:69
1151
- msgid ""
1152
- "%s failed to check for updates because of the following error: <em>%s</em>"
1153
- msgstr ""
1154
 
1155
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/class-update-manager.php:131
 
 
 
 
 
1156
  msgid ""
1157
- "This site has not been activated properly on dannyvankooten.com and thus "
1158
- "cannot check for future updates. Please activate your site with a valid "
1159
- "license key."
1160
- msgstr ""
1161
 
1162
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:23
1163
- msgid "License status"
1164
- msgstr ""
1165
 
1166
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:26
1167
- msgid "ACTIVE"
1168
- msgstr ""
1169
 
1170
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:26
1171
- msgid "you are receiving updates"
1172
- msgstr ""
1173
 
1174
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:28
1175
- msgid "EXPIRED"
1176
  msgstr ""
1177
 
1178
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:28
1179
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:30
1180
- msgid "you are <strong>not</strong> receiving updates."
1181
- msgstr ""
1182
 
1183
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:30
1184
- msgid "INACTIVE"
1185
- msgstr ""
 
 
1186
 
1187
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:35
1188
- msgid "Toggle license status"
1189
- msgstr ""
 
1190
 
1191
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:39
1192
- msgid "Deactivate License"
1193
  msgstr ""
1194
 
1195
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:40
1196
  msgid ""
1197
- "(deactivate your license so you can activate it on another WordPress site)"
1198
- msgstr ""
 
1199
 
1200
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:44
1201
- msgid "Activate License"
1202
- msgstr ""
1203
 
1204
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:46
1205
- msgid "Please enter a license key in the field below first."
1206
- msgstr ""
1207
 
1208
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:54
1209
- msgid "License Key"
1210
- msgstr ""
1211
 
1212
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:56
1213
- msgid "Paste your license key here, as found in the email receipt."
1214
- msgstr ""
1215
 
1216
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:58
1217
- msgid "You defined your license key using the %s PHP constant."
1218
- msgstr ""
1219
 
1220
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:82
1221
- msgid "Your %s license will expire on %s."
1222
- msgstr ""
1223
 
1224
- #: mailchimp-for-wordpress-pro/includes/admin/license-manager/views/form.php:86
1225
- msgid "%sRenew your license now%s."
1226
- msgstr ""
1227
 
1228
- #: mailchimp-for-wordpress-pro/includes/class-form-manager.php:241
1229
- msgid "<strong>Error:</strong> Please specify a form ID. Example: %s."
1230
- msgstr ""
1231
 
1232
- #: mailchimp-for-wordpress-pro/includes/class-form-manager.php:255
1233
- msgid ""
1234
- "<strong>Error:</strong> Sign-up form not found. Please check if you used the"
1235
- " correct form ID."
1236
- msgstr ""
1237
 
1238
- #: mailchimp-for-wordpress-pro/includes/class-form-request.php:621
1239
- msgid "New MailChimp Sign-Up"
1240
- msgstr ""
1241
 
1242
- #: mailchimp-for-wordpress-pro/includes/class-form-request.php:629
1243
- msgid "New Sign-Up"
1244
- msgstr ""
1245
 
1246
- #: mailchimp-for-wordpress-pro/includes/class-form-request.php:630
1247
- msgid "<strong>%s</strong> signed-up at %s on %s using the form \"%s\"."
1248
- msgstr ""
 
 
1249
 
1250
- #: mailchimp-for-wordpress-pro/includes/class-form-request.php:635
1251
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:54
1252
- msgid "List"
1253
- msgstr ""
1254
 
1255
- #: mailchimp-for-wordpress-pro/includes/class-form-request.php:675
1256
- msgid "Other fields"
1257
- msgstr ""
1258
 
1259
- #: mailchimp-for-wordpress-pro/includes/class-form-request.php:692
1260
- msgid ""
1261
- "Note that you've enabled double opt-in for the \"%s\" form. The user won't "
1262
- "be added to the selected MailChimp lists until they confirm their email "
1263
- "address."
1264
- msgstr ""
1265
 
1266
- #: mailchimp-for-wordpress-pro/includes/class-form-request.php:694
1267
- msgid "This email was auto-sent by the MailChimp for WordPress plugin."
1268
- msgstr ""
1269
 
1270
- #: mailchimp-for-wordpress-pro/includes/class-mailchimp.php:140
1271
- msgid "IP Address"
1272
- msgstr ""
 
 
1273
 
1274
- #: mailchimp-for-wordpress-pro/includes/class-widget.php:20
1275
- msgid "MailChimp for WP Form"
1276
- msgstr ""
1277
 
1278
- #: mailchimp-for-wordpress-pro/includes/class-widget.php:21
1279
- msgid "Displays one of your MailChimp for WordPress sign-up forms"
1280
- msgstr ""
1281
 
1282
- #: mailchimp-for-wordpress-pro/includes/class-widget.php:43
1283
  msgid ""
1284
- "Please select the sign-up form you'd like to show here in the <a "
1285
- "href=\"%s\">widget settings</a>."
1286
- msgstr ""
1287
 
1288
- #: mailchimp-for-wordpress-pro/includes/class-widget.php:84
1289
- msgid "Form:"
1290
- msgstr ""
1291
 
1292
- #: mailchimp-for-wordpress-pro/includes/class-widget.php:86
1293
- msgid "Select the form to show"
1294
- msgstr ""
1295
 
1296
- #: mailchimp-for-wordpress-pro/includes/class-widget.php:94
1297
- msgid "You don't have any sign-up forms. <a href=\"%s\">Create one now.</a>"
1298
- msgstr ""
1299
 
1300
- #: mailchimp-for-wordpress-pro/includes/functions/general.php:50
1301
  msgid ""
1302
- "Thank you, your sign-up request was successful! Please check your email "
1303
- "inbox to confirm."
1304
- msgstr ""
1305
 
1306
- #: mailchimp-for-wordpress-pro/includes/tables/class-forms-table.php:35
1307
- msgid "ID"
1308
- msgstr ""
1309
 
1310
- #: mailchimp-for-wordpress-pro/includes/tables/class-forms-table.php:36
1311
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:226
1312
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:341
1313
- msgid "Form"
1314
- msgstr ""
1315
 
1316
- #: mailchimp-for-wordpress-pro/includes/tables/class-forms-table.php:37
1317
- msgid "Shortcode"
1318
- msgstr ""
1319
 
1320
- #: mailchimp-for-wordpress-pro/includes/tables/class-forms-table.php:38
1321
- msgid "List(s)"
1322
- msgstr ""
1323
 
1324
- #: mailchimp-for-wordpress-pro/includes/tables/class-forms-table.php:39
1325
- msgid "Last edited"
1326
- msgstr ""
1327
 
1328
- #: mailchimp-for-wordpress-pro/includes/tables/class-forms-table.php:76
1329
- #: mailchimp-for-wordpress-pro/includes/tables/class-forms-table.php:80
1330
- msgid "Edit Form"
 
1331
  msgstr ""
1332
 
1333
- #: mailchimp-for-wordpress-pro/includes/tables/class-forms-table.php:77
1334
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:188
1335
- msgid "Delete"
1336
  msgstr ""
1337
 
1338
- #: mailchimp-for-wordpress-pro/includes/tables/class-forms-table.php:98
1339
- msgid "No MailChimp list(s) selected yet."
 
 
1340
  msgstr ""
1341
 
1342
- #: mailchimp-for-wordpress-pro/includes/tables/class-forms-table.php:105
1343
- msgid "You have not created any sign-up forms yet. Time to do so!"
1344
  msgstr ""
1345
 
1346
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:33
1347
- msgid "Subscriber Log"
1348
- msgstr ""
1349
 
1350
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:34
1351
- msgid "Subscriber Logs"
1352
  msgstr ""
1353
 
1354
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:53
1355
- msgid "Email"
1356
  msgstr ""
1357
 
1358
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:55
1359
- msgid "Type"
 
1360
  msgstr ""
1361
 
1362
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:56
1363
- msgid "Source"
 
 
1364
  msgstr ""
1365
 
1366
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:57
1367
- msgid "Data"
1368
- msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1369
 
1370
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:58
1371
- msgid "Subscribed"
 
 
 
1372
  msgstr ""
1373
 
1374
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:116
1375
- msgid "Log items deleted."
1376
  msgstr ""
1377
 
1378
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:209
1379
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:215
1380
- msgid "Comment"
 
 
1381
  msgstr ""
1382
 
1383
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:209
1384
- msgid "deleted"
1385
- msgstr ""
 
1386
 
1387
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:219
1388
- msgid "Registration"
 
 
 
1389
  msgstr ""
1390
 
1391
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:235
1392
- msgid "MultiSite registration"
1393
- msgstr ""
 
1394
 
1395
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:239
1396
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:243
1397
- msgid "Checkout"
 
 
1398
  msgstr ""
1399
 
1400
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:248
1401
- msgid "Contact Form 7"
1402
- msgstr ""
 
1403
 
1404
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:252
1405
- msgid "bbPress: New Topic"
1406
- msgstr ""
1407
 
1408
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:256
1409
- msgid "bbPress: New Reply"
1410
- msgstr ""
1411
 
1412
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:262
1413
- msgid "Other Form"
1414
- msgstr ""
1415
 
1416
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:312
1417
- msgid "No subscribe requests found."
1418
- msgstr ""
 
 
 
 
1419
 
1420
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:335
1421
- msgid "All"
 
 
1422
  msgstr ""
1423
 
1424
- #: mailchimp-for-wordpress-pro/includes/tables/class-log-table.php:347
1425
- msgid "Checkbox"
 
 
 
 
 
 
 
 
 
 
 
 
1426
  msgstr ""
1427
 
1428
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:8
1429
  msgid ""
1430
- "Any settings you specify here will override the <a href=\"%s\">general form "
1431
- "settings</a>. If no setting is specified, the corresponding general setting "
1432
- "value will be used."
1433
- msgstr ""
1434
 
1435
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:25
1436
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:45
1437
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:64
1438
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:83
1439
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:106
1440
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:124
1441
- msgid "Inherit"
1442
  msgstr ""
1443
 
1444
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:137
1445
- msgid "Send an email copy of the form data?"
1446
- msgstr ""
 
 
 
 
 
 
1447
 
1448
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:141
1449
  msgid ""
1450
- "Tick \"yes\" if you want to receive an email with the form data for every "
1451
- "sign-up request."
1452
- msgstr ""
1453
 
1454
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:144
1455
- msgid "Send the copy to this email:"
1456
- msgstr ""
1457
 
1458
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:150
1459
- msgid "Messages"
1460
  msgstr ""
1461
 
1462
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:153
1463
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:140
1464
- msgid "Success"
1465
- msgstr ""
1466
 
1467
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:157
1468
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:145
1469
- msgid "Invalid email address"
1470
- msgstr ""
1471
 
1472
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:161
1473
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:149
1474
- msgid "Required field missing"
1475
- msgstr ""
1476
 
1477
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:165
1478
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:153
1479
- msgid "Already subscribed"
1480
- msgstr ""
1481
 
1482
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:170
1483
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:159
1484
- msgid "Invalid CAPTCHA"
1485
- msgstr ""
1486
 
1487
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/optional-form-settings.php:175
1488
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:164
1489
- msgid "Other errors"
1490
- msgstr ""
1491
 
1492
- #: mailchimp-for-wordpress-pro/includes/views/metaboxes/required-form-settings.php:86
1493
- msgid "Form usage"
 
 
1494
  msgstr ""
1495
 
1496
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:86
1497
  msgid ""
1498
- "Use %s in your Contact Form 7 mark-up to add a sign-up checkbox to your CF7 "
1499
- "forms."
 
 
1500
  msgstr ""
1501
 
1502
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:122
1503
- msgid "Custom label texts"
1504
  msgstr ""
1505
 
1506
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-checkbox-settings.php:123
 
 
 
 
 
 
 
 
1507
  msgid ""
1508
- "Override the default checkbox label text for any given checkbox using the "
1509
- "fields below."
1510
  msgstr ""
1511
 
1512
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-form-settings.php:13
1513
- msgid "Forms & Settings"
1514
- msgstr ""
1515
 
1516
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-form-settings.php:14
1517
- msgid "CSS Styles Builder"
1518
- msgstr ""
1519
 
1520
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-general-settings.php:10
1521
- msgid "License & API Settings"
1522
- msgstr ""
1523
 
1524
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-general-settings.php:113
1525
- msgid "No lists were found in your MailChimp account."
1526
- msgstr ""
1527
 
1528
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-reports.php:14
1529
- msgid "Statistics"
1530
- msgstr ""
1531
 
1532
- #: mailchimp-for-wordpress-pro/includes/views/pages/admin-reports.php:15
1533
- msgid "Log"
1534
- msgstr ""
1535
 
1536
- #: mailchimp-for-wordpress-pro/includes/views/parts/admin-footer.php:9
1537
- msgid ""
1538
- "Need help? Have a look at the <a href=\"%s\">plugin documentation</a> or "
1539
- "email me directly at <a href=\"%s\">support@mc4wp.com</a>."
1540
- msgstr ""
1541
 
1542
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-css-builder.php:10
1543
- msgid "Use the fields below to create custom styling rules for your forms."
1544
  msgstr ""
1545
 
1546
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-css-builder.php:15
1547
- msgid "Select form to build styles for:"
1548
- msgstr ""
1549
 
1550
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-css-builder.php:26
1551
- msgid "Create at least one form first."
1552
  msgstr ""
1553
 
1554
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-css-builder.php:41
1555
- msgid "You need to have JavaScript enabled to see a preview of your form."
 
 
1556
  msgstr ""
1557
 
1558
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-css-builder.php:223
1559
- msgid "Are you sure you want to delete all custom styles for this form?"
1560
  msgstr ""
1561
 
1562
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-css-builder.php:223
1563
- msgid "Delete Form Styles"
 
 
 
 
1564
  msgstr ""
1565
 
1566
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-css-builder.php:224
1567
- msgid "Use to delete all styles for this form"
 
1568
  msgstr ""
1569
 
1570
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-css-builder.php:231
1571
- msgid "Build CSS File"
1572
  msgstr ""
1573
 
1574
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:8
1575
- msgid "Sign-Up Forms"
 
 
 
1576
  msgstr ""
1577
 
1578
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:8
1579
- msgid "Create New Form"
1580
  msgstr ""
1581
 
1582
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:16
1583
- msgid "General form settings"
1584
  msgstr ""
1585
 
1586
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:36
1587
- msgid ""
1588
- "If you %screated a custom stylesheet%s and want it to be loaded, select "
1589
- "\"custom form styles\". Otherwise, choose the basic formatting styles or one"
1590
- " of the default themes."
1591
- msgstr ""
 
 
 
 
 
1592
 
1593
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:40
1594
- msgid "Select Color"
1595
  msgstr ""
1596
 
1597
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:48
1598
- msgid "Save all changes"
1599
  msgstr ""
1600
 
1601
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:50
1602
- msgid "Default MailChimp settings"
1603
  msgstr ""
1604
 
1605
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:51
1606
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:109
1607
  msgid ""
1608
- "The following settings apply to <strong>all</strong> forms but can be "
1609
- "overridden on a per-form basis."
1610
  msgstr ""
1611
 
1612
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:108
1613
- msgid "Default Form Settings"
 
 
1614
  msgstr ""
1615
 
1616
- #: mailchimp-for-wordpress-pro/includes/views/tabs/admin-forms-general-settings.php:137
1617
- msgid "Default Messages"
1618
- msgstr ""
 
 
 
 
1619
 
1620
  #. Plugin URI of the plugin/theme
1621
- msgid "https://mc4wp.com/"
1622
- msgstr ""
 
 
1623
 
1624
  #. Description of the plugin/theme
1625
- msgid "Adds various sign-up methods to your website."
 
 
1626
  msgstr ""
1627
 
1628
  #. Author of the plugin/theme
1629
- msgid "Danny van Kooten"
1630
- msgstr ""
1631
 
1632
  #. Author URI of the plugin/theme
1633
- msgid "http://dannyvankooten.com"
1634
- msgstr ""
1
+ # Copyright (C) 2015 MailChimp for WordPress
2
+ # This file is distributed under the same license as the MailChimp for WordPress package.
3
  # Translators:
4
+ # Bart <info@archimedesign.co.uk>, 2015
5
+ # Jan Rusakiewicz <jan.rusakiewicz@gmail.com>, 2015
6
+ # Mateusz Lomber <lumberpack@gmail.com>, 2017
7
+ # Paweł Tomkiel <neonkowy@gmail.com>, 2016
8
+ # Sebastian Małecki <sebastian0.0malecki@gmail.com>, 2016
9
  msgid ""
10
  msgstr ""
11
  "Project-Id-Version: MailChimp for WordPress\n"
12
+ "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/mailchimp-for-wp\n"
13
+ "POT-Creation-Date: 2015-11-30 10:15:18+00:00\n"
14
+ "PO-Revision-Date: 2017-01-03 09:50+0000\n"
15
+ "Last-Translator: Mateusz Lomber <lumberpack@gmail.com>\n"
16
+ "Language-Team: Polish (Poland) (http://www.transifex.com/ibericode/mailchimp-for-wordpress/language/pl_PL/)\n"
17
  "MIME-Version: 1.0\n"
18
  "Content-Type: text/plain; charset=UTF-8\n"
19
  "Content-Transfer-Encoding: 8bit\n"
20
  "Language: pl_PL\n"
21
  "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
22
 
23
+ #: config/default-form-content.php:3
 
 
24
  msgid "Email address"
25
+ msgstr "Adres e-mail"
26
 
27
+ #: config/default-form-content.php:4
 
28
  msgid "Your email address"
29
+ msgstr "Twój adres e-mail"
30
 
31
+ #: config/default-form-content.php:5
 
32
  msgid "Sign up"
33
+ msgstr "Zarejestruj się"
 
 
 
 
 
34
 
35
+ #: config/default-form-messages.php:5
36
  msgid ""
37
+ "Thank you, your sign-up request was successful! Please check your email "
38
+ "inbox to confirm."
39
+ msgstr "Dziękujemy, Twoja rejestracja przebiegła pomyślnie! Sprawdź swoją skrzynkę e-mail, aby potwierdzić."
40
 
41
+ #: config/default-form-messages.php:9
 
42
  msgid "Oops. Something went wrong. Please try again later."
43
+ msgstr "Ups. Coś poszło nie tak. Spróbuj ponownie później."
44
 
45
+ #: config/default-form-messages.php:13
 
46
  msgid "Please provide a valid email address."
47
+ msgstr "Proszę podać poprawny adres e-mail."
48
 
49
+ #: config/default-form-messages.php:17
 
50
  msgid "Given email address is already subscribed, thank you!"
51
+ msgstr "Podany adres e-mail został już wcześniej dodany do listy, dziękujemy!"
 
 
 
 
 
52
 
53
+ #: config/default-form-messages.php:21
 
54
  msgid "Please fill in the required fields."
55
+ msgstr "Proszę wypełnić wymagane pola."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
56
 
57
+ #: config/default-form-messages.php:25
58
+ msgid "You were successfully unsubscribed."
59
+ msgstr "Zostałeś wypisany z listy subskrypcji."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
60
 
61
+ #: config/default-form-messages.php:29
62
+ msgid "Given email address is not subscribed."
63
+ msgstr "Podany adres e-mail nie został dodany do naszej listy subskrybcji."
64
 
65
+ #: config/default-form-messages.php:33
66
+ msgid "Please select at least one list."
67
+ msgstr "Wybierz co najmniej jedną listę subskrypcji."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
68
 
69
+ #: config/default-integration-options.php:5
70
+ msgid "Sign me up for the newsletter!"
71
+ msgstr "Zapisz mnie do newslettera!"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
72
 
73
+ #: includes/admin/class-admin-texts.php:62
74
+ #: includes/forms/views/edit-form.php:6
75
+ msgid "Settings"
76
+ msgstr "Ustawienia"
77
 
78
+ #: includes/admin/class-admin-texts.php:80
79
+ msgid "Documentation"
80
+ msgstr "Dokumentacja"
81
 
82
+ #: includes/admin/class-admin.php:167
83
  msgid ""
84
+ "Success! The cached configuration for your MailChimp lists has been renewed."
85
+ msgstr "Operacja przywrócenia listy subskrypcji twojego konta MailChimp została zakończona pomyślnie."
 
 
 
86
 
87
+ #: includes/admin/class-admin.php:257
88
  msgid ""
89
+ "This is a pro-only feature. Please upgrade to the premium version to be able"
90
+ " to use it."
91
+ msgstr "Opcja premium. Kup wersję premium, aby móc korzystać z tej opcji."
92
 
93
+ #: includes/admin/class-admin.php:323 includes/views/general-settings.php:28
94
+ msgid "MailChimp API Settings"
95
+ msgstr "Ustawienia API MailChimp"
 
 
96
 
97
+ #: includes/admin/class-admin.php:324
98
+ #: integrations/ninja-forms/class-ninja-forms.php:34
99
+ msgid "MailChimp"
100
+ msgstr "MailChimp"
101
 
102
+ #: includes/admin/class-ads.php:33
103
+ msgid "Upgrade to MailChimp for WordPress Pro"
104
+ msgstr "Kup Mailchimp for WordPress Pro"
 
 
105
 
106
+ #: includes/admin/class-ads.php:41
107
  msgid ""
108
+ "Enjoying this plugin? <a href=\"%s\">Purchase our bundle of premium "
109
+ "features</a> for an even better plugin."
110
+ msgstr "Chcesz korzystać z tej wtyczki? <a href=\"%s\">Kup nasz pakiet premium</a> aby korzystać z jeszcze lepszych wtyczek."
111
 
112
+ #: includes/admin/class-ads.php:62
113
+ msgid "More subscribers, better newsletters."
114
+ msgstr "Więcej subskrybentów, lepsze newslettery."
115
 
116
+ #: includes/admin/class-ads.php:63
117
+ msgid ""
118
+ "Learn how to best grow your lists & write better emails by subscribing to "
119
+ "our monthly tips."
120
+ msgstr "Dowiedz się jak pozyskać więcej subskrybentów oraz jak pisać lepsze wiadomości email w naszych comiesięcznych poradach."
121
 
122
+ #: includes/admin/class-ads.php:66
123
+ msgid "Email Address"
124
+ msgstr "Adres e-mail"
125
 
126
+ #: includes/admin/class-ads.php:70
127
+ msgid "First Name"
128
+ msgstr "Imię"
129
 
130
+ #: includes/admin/class-ads.php:77
131
+ msgid "Subscribe"
132
+ msgstr "Subskrybuj"
133
 
134
+ #: includes/admin/class-usage-tracking.php:57
135
+ msgid "Once a month"
136
+ msgstr "Raz na miesiąc"
 
 
137
 
138
+ #: includes/admin/migrations/3.0-form-1-post-type.php:35
139
+ msgid "Default sign-up form"
140
+ msgstr "Domyślny formularz zapisu"
141
 
142
+ #: includes/class-api.php:83
143
+ msgid "Read more about common connectivity issues."
144
+ msgstr "Czytaj więcej o rozwiązywaniu problemów z łącznością."
145
 
146
+ #: includes/forms/class-admin.php:71 includes/forms/class-admin.php:72
147
+ #: includes/forms/views/edit-form.php:17
148
+ msgid "Forms"
149
+ msgstr "Formularze"
150
 
151
+ #: includes/forms/class-admin.php:101 includes/forms/class-admin.php:176
152
+ msgid "<strong>Success!</strong> Form successfully saved."
153
+ msgstr "<strong>Sukces!</strong> Formularz został pomyślnie zapisany."
 
 
154
 
155
+ #: includes/forms/class-admin.php:176
156
+ msgid "Preview form"
157
+ msgstr "Podejrzyj formularz."
158
 
159
+ #: includes/forms/class-admin.php:279
160
+ msgid "Form not found."
161
+ msgstr "Nie odnaleziono formularza."
162
 
163
+ #: includes/forms/class-admin.php:281
164
+ msgid "Go back"
165
+ msgstr "Wróć"
166
 
167
+ #: includes/forms/class-form-previewer.php:162
168
+ msgid "Form preview"
169
+ msgstr "Podgląd formularza"
170
 
171
+ #: includes/forms/class-form-tags.php:51
172
+ msgid "Replaced with the form response (error or success messages)."
173
+ msgstr "Zamienione na odpowiedź formularza (wiadomość o błędzie lub powodzeniu)"
174
 
175
+ #: includes/forms/class-form-tags.php:56
176
+ msgid "Data from the URL or a submitted form."
177
+ msgstr "Dane z adresu URL lub formularza."
178
 
179
+ #: includes/forms/class-form-tags.php:62
180
+ #: includes/integrations/class-integration-tags.php:45
181
+ msgid "Replaced with the number of subscribers on the selected list(s)"
182
+ msgstr "Zamienione na liczbę subskrybentów na zaznaczonej liście (listach)."
183
 
184
+ #: includes/forms/class-form-tags.php:67
185
+ msgid "The email address of the current visitor (if known)."
186
+ msgstr "Adres e-mail aktualnie odwiedzającego (jeśli znany)"
187
 
188
+ #: includes/forms/class-form-tags.php:72
189
+ msgid "The URL of the page."
190
+ msgstr "URL strony."
191
 
192
+ #: includes/forms/class-form-tags.php:77
193
+ msgid "The path of the page."
194
+ msgstr "Ścieżka strony."
195
 
196
+ #: includes/forms/class-form-tags.php:82
197
+ msgid "The current date. Example: %s."
198
+ msgstr "Aktualna data. Przykład: %s."
 
199
 
200
+ #: includes/forms/class-form-tags.php:87
201
+ msgid "The current time. Example: %s."
202
+ msgstr "Aktualny czas. Przykład: %s."
 
 
203
 
204
+ #: includes/forms/class-form-tags.php:92
205
+ msgid "The site's language. Example: %s."
206
+ msgstr "Aktualny język strony. Przykład: %s."
207
 
208
+ #: includes/forms/class-form-tags.php:97
209
+ msgid "The visitor's IP address. Example: %s."
210
+ msgstr "Adres IP odwiedzającego. Przykład %s."
 
 
211
 
212
+ #: includes/forms/class-form-tags.php:102
213
+ msgid "The property of the currently logged-in user."
214
+ msgstr "Dane aktualnie zalogowanego usera."
 
 
 
215
 
216
+ #: includes/forms/class-form.php:128
217
+ msgid "There is no form with ID %d, perhaps it was deleted?"
218
+ msgstr "Brak formularza o ID %d. Może został usunięty?"
 
 
219
 
220
+ #: includes/forms/class-widget.php:26
221
+ msgid "Newsletter"
222
+ msgstr "Newsletter"
223
 
224
+ #: includes/forms/class-widget.php:30
225
+ msgid "MailChimp Sign-Up Form"
226
+ msgstr "Formularz rejestracyjny MailChimp"
 
 
227
 
228
+ #: includes/forms/class-widget.php:32
229
+ msgid "Displays your MailChimp for WordPress sign-up form"
230
+ msgstr "Wyświetla Twój formularz MailChimp for WordPress."
231
 
232
+ #: includes/forms/class-widget.php:75
233
+ msgid "Title:"
234
+ msgstr "Tytuł:"
235
 
236
+ #: includes/forms/class-widget.php:92
237
  msgid ""
238
+ "You can edit your sign-up form in the <a href=\"%s\">MailChimp for WordPress"
239
+ " form settings</a>."
240
+ msgstr "Możesz edytować swój formularz zapisu do newslettera w <a href=\"%s\">Ustawieniach \"MailChimp dla Wordpress\"</a>"
241
 
242
+ #: includes/forms/views/add-form.php:10 includes/forms/views/add-form.php:60
243
+ msgid "Add new form"
244
+ msgstr "Dodaj nowy formularz"
245
 
246
+ #: includes/forms/views/add-form.php:27
247
+ msgid "What is the name of this form?"
248
+ msgstr "Jaka jest nazwa tego formularza?"
249
 
250
+ #: includes/forms/views/add-form.php:30
251
+ msgid "Enter your form title.."
252
+ msgstr "Wprowadź tytuł formularza.."
253
 
254
+ #: includes/forms/views/add-form.php:37
255
+ msgid "To which MailChimp lists should this form subscribe?"
256
+ msgstr "Do której z list subskrybentów powinien zapisywać ten formularz?"
 
 
257
 
258
+ #: includes/forms/views/add-form.php:54
259
+ msgid "No lists found. Did you <a href=\"%s\">connect with MailChimp</a>?"
260
+ msgstr "Nie znaleziono żadnej listy subskrybentów. Czy <a href=\"%s\">Połączyłeś/aś się z MailChimpem?</a>"
 
 
261
 
262
+ #: includes/forms/views/edit-form.php:4
263
+ msgid "Fields"
264
+ msgstr "Pola"
 
 
265
 
266
+ #: includes/forms/views/edit-form.php:5
267
+ msgid "Messages"
268
+ msgstr "Wiadomości"
269
 
270
+ #: includes/forms/views/edit-form.php:7
271
+ msgid "Appearance"
272
+ msgstr "Wygląd"
273
 
274
+ #: includes/forms/views/edit-form.php:15
275
+ #: includes/integrations/views/integration-settings.php:8
276
+ #: includes/integrations/views/integrations.php:7
277
+ #: includes/views/general-settings.php:7
278
+ msgid "You are here: "
279
+ msgstr "Jesteś tutaj:"
 
280
 
281
+ #: includes/forms/views/edit-form.php:27
282
+ msgid "Edit Form"
283
+ msgstr "Edytuj formularz"
284
 
285
+ #: includes/forms/views/edit-form.php:45
286
+ msgid "Enter form title here"
287
+ msgstr "Wprowadź tytuł formularza..."
288
 
289
+ #: includes/forms/views/edit-form.php:46
290
+ msgid "Enter the title of your sign-up form"
291
+ msgstr "Wprowadź tytuł fromularza do zapisu subskrybentów"
292
 
293
+ #: includes/forms/views/edit-form.php:54
294
+ msgid "Get shortcode"
295
+ msgstr "Pobierz Shortcode'a"
 
 
296
 
297
+ #: includes/forms/views/edit-form.php:59
298
+ msgid "Preview this form"
299
+ msgstr "Podejrzyj formularz."
 
300
 
301
+ #: includes/forms/views/parts/add-fields-help.php:4
302
+ #: includes/forms/views/tabs/form-fields.php:10
303
+ msgid "Add more fields"
304
+ msgstr "Dodaj więcej pól do formularza"
305
+
306
+ #: includes/forms/views/parts/add-fields-help.php:9
307
  msgid ""
308
+ "To add more fields to your form, you will need to create those fields in "
309
+ "MailChimp first."
310
+ msgstr "By dodać więcej pól do swojego formularza, musisz najpierw stworzyć te pola w MailChimpie."
 
311
 
312
+ #: includes/forms/views/parts/add-fields-help.php:12
313
+ msgid "Here's how:"
314
+ msgstr "Zobacz jak:"
315
 
316
+ #: includes/forms/views/parts/add-fields-help.php:17
317
+ msgid "Log in to your MailChimp account."
318
+ msgstr "Zaloguj się do konta w MailChimpie."
319
 
320
+ #: includes/forms/views/parts/add-fields-help.php:22
321
+ msgid "Add list fields to any of your selected lists."
322
+ msgstr "Dodaj pola do wszystkich zaznaczonych list subskrybentów."
323
 
324
+ #: includes/forms/views/parts/add-fields-help.php:23
325
+ msgid "Clicking the following links will take you to the right screen."
326
  msgstr ""
327
 
328
+ #: includes/forms/views/parts/add-fields-help.php:29
329
+ msgid "Edit list fields for"
330
+ msgstr "Edytuj pola list subskrybentów dla"
 
331
 
332
+ #: includes/forms/views/parts/add-fields-help.php:38
333
+ msgid ""
334
+ "Click the following button to have MailChimp for WordPress pick up on your "
335
+ "changes."
336
+ msgstr "Kliknij poniższy button, by \"Mailchimp dla WordPress\" zaktualizował wprowadzone przez Ciebie zmiany."
337
 
338
+ #: includes/forms/views/parts/add-fields-help.php:43
339
+ #: includes/views/parts/lists-overview.php:8
340
+ msgid "Renew MailChimp lists"
341
+ msgstr "Odnów listy MailChimp"
342
 
343
+ #: includes/forms/views/parts/dynamic-content-tags.php:6
344
+ msgid "Add dynamic form variable"
345
  msgstr ""
346
 
347
+ #: includes/forms/views/parts/dynamic-content-tags.php:8
348
  msgid ""
349
+ "The following list of variables can be used to <a href=\"%s\">add some "
350
+ "dynamic content to your form or success and error messages</a>."
351
+ msgstr "Poniższa lista zmiennych może być użyta do <a href=\"%s\">dodania dynamicznej zawartości do komunikatów z błędem lub powodzeniem przesłania Twojego formularza</a>"
352
 
353
+ #: includes/forms/views/parts/dynamic-content-tags.php:8
354
+ msgid "This allows you to personalise your form or response messages."
355
+ msgstr "Ta opcja pozwoli Ci na spersonalizowanie Twojego formularza lub jego komunikatów."
356
 
357
+ #: includes/forms/views/tabs/form-appearance.php:5
358
+ msgid "Inherit from %s theme"
359
+ msgstr "Odziedzicz z szablonu: %s."
360
 
361
+ #: includes/forms/views/tabs/form-appearance.php:6
362
+ msgid "Basic"
363
+ msgstr "Podstawowy"
364
 
365
+ #: includes/forms/views/tabs/form-appearance.php:7
366
+ msgid "Form Themes"
367
+ msgstr "Szablony formularza"
368
 
369
+ #: includes/forms/views/tabs/form-appearance.php:8
370
+ msgid "Light Theme"
371
+ msgstr "Jasny szablon"
372
 
373
+ #: includes/forms/views/tabs/form-appearance.php:9
374
+ msgid "Dark Theme"
375
+ msgstr "Ciemny szablon"
376
 
377
+ #: includes/forms/views/tabs/form-appearance.php:10
378
+ msgid "Red Theme"
379
+ msgstr "Czerwony szablon"
380
 
381
+ #: includes/forms/views/tabs/form-appearance.php:11
382
+ msgid "Green Theme"
383
+ msgstr "Zielony szablon"
384
 
385
+ #: includes/forms/views/tabs/form-appearance.php:12
386
+ msgid "Blue Theme"
387
+ msgstr "Niebieski szablon"
 
 
388
 
389
+ #: includes/forms/views/tabs/form-appearance.php:25
390
+ msgid "Form Appearance"
391
+ msgstr "Wygląd formularza"
392
 
393
+ #: includes/forms/views/tabs/form-appearance.php:29
394
+ msgid "Form Style"
395
+ msgstr "Style formularza"
396
 
397
+ #: includes/forms/views/tabs/form-appearance.php:48
398
+ msgid ""
399
+ "If you want to load some default CSS styles, select \"basic formatting "
400
+ "styles\" or choose one of the color themes"
401
+ msgstr "Jeśli chcesz załadować podstawowe style CSS wybierz \"Podstawowy\" styl formatowania lub wybierz jeden ze schematów kolorystycznych."
402
 
403
+ #: includes/forms/views/tabs/form-fields.php:6
404
+ msgid "Form variables"
405
+ msgstr "Zmienne formularza"
 
406
 
407
+ #: includes/forms/views/tabs/form-fields.php:13
408
+ msgid "Form Fields"
409
+ msgstr "Pola formularza"
410
 
411
+ #: includes/forms/views/tabs/form-fields.php:19
412
+ msgid "Enter the HTML code for your form fields.."
413
+ msgstr "Wprowadź kod HTML dla pól twojego formularza."
 
 
 
414
 
415
+ #: includes/forms/views/tabs/form-fields.php:27
416
+ msgid "Your form is missing the following (required) form fields:"
417
+ msgstr "Nie wypełniłeś/aś poniższych (wymaganych) pól formularza:"
418
 
419
+ #: includes/forms/views/tabs/form-fields.php:34
420
+ msgid ""
421
+ "Use the shortcode %s to display this form inside a post, page or text "
422
+ "widget."
423
+ msgstr "Użyj shortcode'u %s, by wyświetlić ten formularz we wpisie, stronie lub tekstowym widgetcie."
424
 
425
+ #: includes/forms/views/tabs/form-messages.php:3
426
+ msgid "Form Messages"
427
+ msgstr "Wiadomości formularza"
428
 
429
+ #: includes/forms/views/tabs/form-messages.php:10
430
+ msgid "Successfully subscribed"
431
+ msgstr "Zostałeś pomyślnie zapisany do naszej bazy."
432
 
433
+ #: includes/forms/views/tabs/form-messages.php:13
434
  msgid ""
435
+ "The text that shows when an email address is successfully subscribed to the "
436
+ "selected list(s)."
437
+ msgstr "Tekst, który pokazuje się, gdy adres e-mail zostanie pomyślnie zapisany do konkretnej listy (list) subskrybentów."
438
 
439
+ #: includes/forms/views/tabs/form-messages.php:17
440
+ msgid "Invalid email address"
441
+ msgstr "Nieprawidłowy adres e-mail"
442
 
443
+ #: includes/forms/views/tabs/form-messages.php:20
444
+ msgid "The text that shows when an invalid email address is given."
445
+ msgstr "Tekst, który pokazuje się, gdy zostanie wprowadzony błędny adres e-mail."
446
 
447
+ #: includes/forms/views/tabs/form-messages.php:24
448
+ msgid "Required field missing"
449
+ msgstr "Wymagane pole nie zostało wypełnione."
450
 
451
+ #: includes/forms/views/tabs/form-messages.php:27
452
  msgid ""
453
+ "The text that shows when a required field for the selected list(s) is "
454
+ "missing."
455
+ msgstr "Tekst, który pokazuje się, gdy wymagane pole dla wybranej listy (list) subskrybentów nie zostanie wypełnione."
456
 
457
+ #: includes/forms/views/tabs/form-messages.php:31
458
+ msgid "Already subscribed"
459
+ msgstr "Adres już istnieje w bazie mailingowej."
460
 
461
+ #: includes/forms/views/tabs/form-messages.php:34
462
+ msgid ""
463
+ "The text that shows when the given email is already subscribed to the "
464
+ "selected list(s)."
465
+ msgstr "Tekst, który pokazuje się, gdy adres e-mail jest już zapisany do konkretnej listy (list) subskrybentów."
466
 
467
+ #: includes/forms/views/tabs/form-messages.php:38
468
+ msgid "General error"
469
+ msgstr "Ogólny błąd."
470
 
471
+ #: includes/forms/views/tabs/form-messages.php:41
472
+ msgid "The text that shows when a general error occured."
473
+ msgstr "Tekst, który pokazuje się, gdy wystąpi ogólny błąd."
474
 
475
+ #: includes/forms/views/tabs/form-messages.php:45
476
+ msgid "Unsubscribed"
477
+ msgstr "Wypisany z listy mailingowej."
478
 
479
+ #: includes/forms/views/tabs/form-messages.php:48
480
+ msgid ""
481
+ "When using the unsubscribe method, this is the text that shows when the "
482
+ "given email address is successfully unsubscribed from the selected list(s)."
483
  msgstr ""
484
 
485
+ #: includes/forms/views/tabs/form-messages.php:52
486
+ msgid "Not subscribed"
 
487
  msgstr ""
488
 
489
+ #: includes/forms/views/tabs/form-messages.php:55
490
+ msgid ""
491
+ "When using the unsubscribe method, this is the text that shows when the "
492
+ "given email address is not on the selected list(s)."
493
  msgstr ""
494
 
495
+ #: includes/forms/views/tabs/form-messages.php:64
496
+ msgid "HTML tags like %s are allowed in the message fields."
497
  msgstr ""
498
 
499
+ #: includes/forms/views/tabs/form-settings.php:1
500
+ msgid "Form Settings"
501
+ msgstr "Ustawienia formularza"
502
 
503
+ #: includes/forms/views/tabs/form-settings.php:5
504
+ msgid "MailChimp specific settings"
505
  msgstr ""
506
 
507
+ #: includes/forms/views/tabs/form-settings.php:12
508
+ msgid "Lists this form subscribes to"
509
  msgstr ""
510
 
511
+ #: includes/forms/views/tabs/form-settings.php:15
512
+ #: includes/integrations/views/integration-settings.php:93
513
+ msgid "No lists found, <a href=\"%s\">are you connected to MailChimp</a>?"
514
  msgstr ""
515
 
516
+ #: includes/forms/views/tabs/form-settings.php:29
517
+ msgid ""
518
+ "Select the list(s) to which people who submit this form should be "
519
+ "subscribed."
520
  msgstr ""
521
 
522
+ #: includes/forms/views/tabs/form-settings.php:35
523
+ msgid "Use double opt-in?"
524
+ msgstr "Użyć double opt-in?"
525
+
526
+ #: includes/forms/views/tabs/form-settings.php:39
527
+ #: includes/forms/views/tabs/form-settings.php:54
528
+ #: includes/forms/views/tabs/form-settings.php:69
529
+ #: includes/forms/views/tabs/form-settings.php:85
530
+ #: includes/forms/views/tabs/form-settings.php:115
531
+ #: includes/integrations/views/integration-settings.php:53
532
+ #: includes/integrations/views/integration-settings.php:66
533
+ #: includes/integrations/views/integration-settings.php:117
534
+ #: includes/integrations/views/integration-settings.php:129
535
+ #: includes/integrations/views/integration-settings.php:142
536
+ #: includes/integrations/views/integration-settings.php:163
537
+ #: includes/integrations/views/integration-settings.php:180
538
+ #: includes/integrations/views/integration-settings.php:199
539
+ #: integrations/contact-form-7/class-contact-form-7.php:69
540
+ msgid "Yes"
541
+ msgstr "Tak"
542
+
543
+ #: includes/forms/views/tabs/form-settings.php:43
544
+ #: includes/forms/views/tabs/form-settings.php:58
545
+ #: includes/forms/views/tabs/form-settings.php:73
546
+ #: includes/forms/views/tabs/form-settings.php:89
547
+ #: includes/forms/views/tabs/form-settings.php:119
548
+ #: includes/integrations/views/integration-settings.php:54
549
+ #: includes/integrations/views/integration-settings.php:67
550
+ #: includes/integrations/views/integration-settings.php:118
551
+ #: includes/integrations/views/integration-settings.php:130
552
+ #: includes/integrations/views/integration-settings.php:146
553
+ #: includes/integrations/views/integration-settings.php:167
554
+ #: includes/integrations/views/integration-settings.php:184
555
+ #: includes/integrations/views/integration-settings.php:203
556
+ #: integrations/contact-form-7/class-contact-form-7.php:69
557
+ msgid "No"
558
+ msgstr "Nie"
559
 
560
+ #: includes/forms/views/tabs/form-settings.php:45
561
+ #: includes/integrations/views/integration-settings.php:149
562
+ msgid ""
563
+ "Select \"yes\" if you want people to confirm their email address before "
564
+ "being subscribed (recommended)"
565
  msgstr ""
566
 
567
+ #: includes/forms/views/tabs/form-settings.php:50
568
+ msgid "Send final welcome email?"
569
  msgstr ""
570
 
571
+ #: includes/forms/views/tabs/form-settings.php:60
572
+ #: includes/integrations/views/integration-settings.php:169
573
+ msgid ""
574
+ "Select \"yes\" if you want to send your lists Welcome Email if a subscribe "
575
+ "succeeds (only when double opt-in is disabled)."
576
  msgstr ""
577
 
578
+ #: includes/forms/views/tabs/form-settings.php:65
579
+ #: includes/integrations/views/integration-settings.php:176
580
+ msgid "Update existing subscribers?"
581
+ msgstr "Zaktualizować istniejących subskrybentów?"
582
 
583
+ #: includes/forms/views/tabs/form-settings.php:75
584
+ #: includes/integrations/views/integration-settings.php:186
585
+ msgid ""
586
+ "Select \"yes\" if you want to update existing subscribers with the data that"
587
+ " is sent."
588
  msgstr ""
589
 
590
+ #: includes/forms/views/tabs/form-settings.php:81
591
+ #: includes/integrations/views/integration-settings.php:195
592
+ msgid "Replace interest groups?"
593
+ msgstr "Zamienić grupy zainteresowań"
594
 
595
+ #: includes/forms/views/tabs/form-settings.php:92
596
+ #: includes/integrations/views/integration-settings.php:206
597
+ msgid ""
598
+ "Select \"no\" if you want to add the selected groupings to any previously "
599
+ "selected groupings when updating a subscriber."
600
  msgstr ""
601
 
602
+ #: includes/forms/views/tabs/form-settings.php:93
603
+ #: includes/integrations/views/integration-settings.php:207
604
+ msgid "What does this do?"
605
+ msgstr "Co to robi?"
606
 
607
+ #: includes/forms/views/tabs/form-settings.php:104
608
+ msgid "Form behaviour"
609
+ msgstr "Zachowanie formularza"
610
 
611
+ #: includes/forms/views/tabs/form-settings.php:111
612
+ msgid "Hide form after a successful sign-up?"
613
+ msgstr "Ukryć formularz po udanym zapisie?"
614
 
615
+ #: includes/forms/views/tabs/form-settings.php:122
616
+ msgid "Select \"yes\" to hide the form fields after a successful sign-up."
617
+ msgstr "Wybierz \"tak\", by ukryć pola formularza po udanym zapisie."
618
 
619
+ #: includes/forms/views/tabs/form-settings.php:127
620
+ msgid "Redirect to URL after successful sign-ups"
621
+ msgstr "Zrób przekierowanie na adres URL po udanym zapisie."
622
+
623
+ #: includes/forms/views/tabs/form-settings.php:129
624
+ msgid "Example: %s"
625
+ msgstr "Przykład: %s"
626
 
627
+ #: includes/forms/views/tabs/form-settings.php:130
628
+ msgid ""
629
+ "Leave empty or enter <code>0</code> for no redirect. Otherwise, use complete"
630
+ " (absolute) URLs, including <code>http://</code>."
631
  msgstr ""
632
 
633
+ #: includes/integrations/class-admin.php:79
634
+ #: includes/integrations/class-admin.php:80
635
+ #: includes/integrations/views/integration-settings.php:10
636
+ #: includes/integrations/views/integrations.php:9
637
+ #: includes/integrations/views/integrations.php:17
638
+ msgid "Integrations"
639
+ msgstr "Integracje"
640
+
641
+ #: includes/integrations/views/integration-settings.php:20
642
+ msgid "%s integration"
643
+ msgstr "Integracja: \"%s\""
644
+
645
+ #: includes/integrations/views/integration-settings.php:51
646
+ msgid "Enabled?"
647
  msgstr ""
648
 
649
+ #: includes/integrations/views/integration-settings.php:55
650
  msgid ""
651
+ "Enable the %s integration? This will add a sign-up checkbox to the form."
652
+ msgstr "Włączyć integracje: \"%s\"? Doda to checkboxa z zapisem do formularza."
 
 
653
 
654
+ #: includes/integrations/views/integration-settings.php:64
655
+ msgid "Implicit?"
 
 
 
 
 
656
  msgstr ""
657
 
658
+ #: includes/integrations/views/integration-settings.php:68
659
+ msgid ""
660
+ "Select \"no\" if you want to ask your visitors before they are subscribed "
661
+ "(recommended)."
662
+ msgstr "Wybierz \"nie\" jeśli chcesz pytać swoich gości zanim zostaną zapisani (polecane)."
663
+
664
+ #: includes/integrations/views/integration-settings.php:78
665
+ msgid "MailChimp Lists"
666
+ msgstr "Listy MailChimp"
667
 
668
+ #: includes/integrations/views/integration-settings.php:89
669
  msgid ""
670
+ "Select the list(s) to which people who check the checkbox should be "
671
+ "subscribed."
672
+ msgstr "Wybierz listę (listy) do których ludzie, którzy zaznaczą checkboxa powinni zostać zapisani."
673
 
674
+ #: includes/integrations/views/integration-settings.php:102
675
+ msgid "Checkbox label text"
676
+ msgstr "Tekst pola wyboru"
677
 
678
+ #: includes/integrations/views/integration-settings.php:105
679
+ msgid "HTML tags like %s are allowed in the label text."
680
  msgstr ""
681
 
682
+ #: includes/integrations/views/integration-settings.php:115
683
+ msgid "Pre-check the checkbox?"
684
+ msgstr "Czy checkbox powinien być od razu zaznaczony?"
 
685
 
686
+ #: includes/integrations/views/integration-settings.php:119
687
+ msgid "Select \"yes\" if the checkbox should be pre-checked."
688
+ msgstr "Wybierz \"tak\", jeśli checkbox powinien być od razu zaznaczony."
 
689
 
690
+ #: includes/integrations/views/integration-settings.php:127
691
+ msgid "Load some default CSS?"
692
+ msgstr "Załadować podstawowe style CSS?"
 
693
 
694
+ #: includes/integrations/views/integration-settings.php:131
695
+ msgid "Select \"yes\" if the checkbox appears in a weird place."
696
+ msgstr "Wybierz \"tak\", jeśli checkbox pojawi się w dziwnym miejscu."
 
697
 
698
+ #: includes/integrations/views/integration-settings.php:138
699
+ msgid "Double opt-in?"
700
+ msgstr "Double opt-in?"
 
701
 
702
+ #: includes/integrations/views/integration-settings.php:159
703
+ msgid "Send Welcome Email?"
704
+ msgstr "Wysłać wiadomość powitalną?"
 
705
 
706
+ #: includes/integrations/views/integration-settings.php:244
707
+ msgid ""
708
+ "The selected MailChimp lists require non-default fields, which may prevent "
709
+ "this integration from working."
710
  msgstr ""
711
 
712
+ #: includes/integrations/views/integration-settings.php:245
713
  msgid ""
714
+ "Please ensure you <a href=\"%s\">configure the plugin to send all required "
715
+ "fields</a> or <a href=\"%s\">log into your MailChimp account</a> and make "
716
+ "sure only the email & name fields are marked as required fields for the "
717
+ "selected list(s)."
718
  msgstr ""
719
 
720
+ #: includes/integrations/views/integrations.php:30
721
+ msgid "Enabled"
722
  msgstr ""
723
 
724
+ #: includes/integrations/views/integrations.php:31
725
+ msgid "Name"
726
+ msgstr "Nazwa"
727
+
728
+ #: includes/integrations/views/integrations.php:32
729
+ msgid "Description"
730
+ msgstr "Opis"
731
+
732
+ #: includes/integrations/views/integrations.php:50
733
  msgid ""
734
+ "This integration is enabled by default as it requires manual actions to "
735
+ "work."
736
  msgstr ""
737
 
738
+ #: includes/integrations/views/integrations.php:57
739
+ msgid "Configure this integration"
740
+ msgstr "Skonfiguruj tą integrację"
741
 
742
+ #: includes/views/general-settings.php:18
743
+ msgid "General Settings"
744
+ msgstr "Ogólne ustawienia"
745
 
746
+ #: includes/views/general-settings.php:35
747
+ msgid "Status"
748
+ msgstr "Status"
749
 
750
+ #: includes/views/general-settings.php:39
751
+ msgid "CONNECTED"
752
+ msgstr "POŁĄCZONY"
753
 
754
+ #: includes/views/general-settings.php:41
755
+ msgid "NOT CONNECTED"
756
+ msgstr "BRAK POŁĄCZENIA"
757
 
758
+ #: includes/views/general-settings.php:48
759
+ msgid "API Key"
760
+ msgstr "Klucz API"
761
 
762
+ #: includes/views/general-settings.php:50
763
+ msgid "Your MailChimp API key"
764
+ msgstr "Twoj klucz API z MailChimp."
 
 
765
 
766
+ #: includes/views/general-settings.php:52
767
+ msgid "The API key for connecting with your MailChimp account."
768
  msgstr ""
769
 
770
+ #: includes/views/general-settings.php:53
771
+ msgid "Get your API key here."
772
+ msgstr "Zdobądź klucz API tutaj."
773
 
774
+ #: includes/views/general-settings.php:65
775
+ msgid "Usage Tracking"
776
  msgstr ""
777
 
778
+ #: includes/views/general-settings.php:71
779
+ msgid ""
780
+ "Allow us to anonymously track how this plugin is used to help us make it "
781
+ "better fit your needs."
782
  msgstr ""
783
 
784
+ #: includes/views/general-settings.php:73
785
+ msgid "This is what we track."
786
  msgstr ""
787
 
788
+ #: includes/views/parts/admin-footer.php:11
789
+ msgid ""
790
+ "MailChimp for WordPress is in need of translations. Is the plugin not "
791
+ "translated in your language or do you spot errors with the current "
792
+ "translations? Helping out is easy! Head over to <a href=\"%s\">the "
793
+ "translation project and click \"help translate\"</a>."
794
  msgstr ""
795
 
796
+ #: includes/views/parts/admin-footer.php:31
797
+ msgid ""
798
+ "This plugin is not developed by or affiliated with MailChimp in any way."
799
  msgstr ""
800
 
801
+ #: includes/views/parts/lists-overview.php:1
802
+ msgid "Your MailChimp Account"
803
  msgstr ""
804
 
805
+ #: includes/views/parts/lists-overview.php:2
806
+ msgid ""
807
+ "The table below shows your MailChimp lists and their details. If you just "
808
+ "applied changes to your MailChimp lists, please use the following button to "
809
+ "renew the cached lists configuration."
810
  msgstr ""
811
 
812
+ #: includes/views/parts/lists-overview.php:14
813
+ msgid "No lists were found in your MailChimp account"
814
  msgstr ""
815
 
816
+ #: includes/views/parts/lists-overview.php:16
817
+ msgid "A total of %d lists were found in your MailChimp account."
818
  msgstr ""
819
 
820
+ #: includes/views/parts/lists-overview.php:21
821
+ msgid "List Name"
822
+ msgstr "Nazwa listy"
823
+
824
+ #: includes/views/parts/lists-overview.php:22
825
+ msgid "ID"
826
+ msgstr "ID"
827
+
828
+ #: includes/views/parts/lists-overview.php:23
829
+ msgid "Subscribers"
830
+ msgstr "Subskrybenci"
831
 
832
+ #: includes/views/parts/lists-overview.php:45
833
+ msgid "Edit this list in MailChimp"
834
  msgstr ""
835
 
836
+ #: includes/views/parts/lists-overview.php:59
837
+ msgid "%s (%s) with field type %s."
838
  msgstr ""
839
 
840
+ #: includes/views/parts/lists-overview.php:83
841
+ msgid "%s (ID: %s) with type %s."
842
  msgstr ""
843
 
844
+ #: integrations/contact-form-7/admin-before.php:2
 
845
  msgid ""
846
+ "To integrate with Contact Form 7, configure the settings below and then add "
847
+ "%s to your CF7 form mark-up."
848
  msgstr ""
849
 
850
+ #: integrations/custom/admin-before.php:2
851
+ msgid ""
852
+ "To get a custom integration to work, include the following HTML in the form "
853
+ "you are trying to integrate with."
854
  msgstr ""
855
 
856
+ #: integrations/woocommerce/class-woocommerce.php:102
857
+ msgid "Order #%d"
858
+ msgstr "Zamówienie #%d"
859
+
860
+ #. Plugin Name of the plugin/theme
861
+ msgid "MailChimp for WordPress"
862
+ msgstr "MailChimp for WordPress"
863
 
864
  #. Plugin URI of the plugin/theme
865
+ msgid ""
866
+ "https://mc4wp.com/#utm_source=wp-plugin&utm_medium=mailchimp-for-"
867
+ "wp&utm_campaign=plugins-page"
868
+ msgstr "https://mc4wp.com/#utm_source=wp-plugin&utm_medium=mailchimp-for-wp&utm_campaign=plugins-page"
869
 
870
  #. Description of the plugin/theme
871
+ msgid ""
872
+ "MailChimp for WordPress by ibericode. Adds various highly effective sign-up "
873
+ "methods to your site."
874
  msgstr ""
875
 
876
  #. Author of the plugin/theme
877
+ msgid "ibericode"
878
+ msgstr "ibericode"
879
 
880
  #. Author URI of the plugin/theme
881
+ msgid "https://ibericode.com/"
882
+ msgstr "https://ibericode.com/"
mailchimp-for-wp.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: MailChimp for WordPress
4
  Plugin URI: https://mc4wp.com/#utm_source=wp-plugin&utm_medium=mailchimp-for-wp&utm_campaign=plugins-page
5
  Description: MailChimp for WordPress by ibericode. Adds various highly effective sign-up methods to your site.
6
- Version: 4.0.11
7
  Author: ibericode
8
  Author URI: https://ibericode.com/
9
  Text Domain: mailchimp-for-wp
@@ -11,7 +11,7 @@ Domain Path: /languages
11
  License: GPL v3
12
 
13
  MailChimp for WordPress
14
- Copyright (C) 2012-2016, Danny van Kooten, hi@dannyvankooten.com
15
 
16
  This program is free software: you can redistribute it and/or modify
17
  it under the terms of the GNU General Public License as published by
@@ -47,7 +47,7 @@ function _mc4wp_load_plugin() {
47
  }
48
 
49
  // bootstrap the core plugin
50
- define( 'MC4WP_VERSION', '4.0.11' );
51
  define( 'MC4WP_PLUGIN_DIR', dirname( __FILE__ ) . '/' );
52
  define( 'MC4WP_PLUGIN_URL', plugins_url( '/' , __FILE__ ) );
53
  define( 'MC4WP_PLUGIN_FILE', __FILE__ );
3
  Plugin Name: MailChimp for WordPress
4
  Plugin URI: https://mc4wp.com/#utm_source=wp-plugin&utm_medium=mailchimp-for-wp&utm_campaign=plugins-page
5
  Description: MailChimp for WordPress by ibericode. Adds various highly effective sign-up methods to your site.
6
+ Version: 4.0.12
7
  Author: ibericode
8
  Author URI: https://ibericode.com/
9
  Text Domain: mailchimp-for-wp
11
  License: GPL v3
12
 
13
  MailChimp for WordPress
14
+ Copyright (C) 2012-2017, Danny van Kooten, hi@dannyvankooten.com
15
 
16
  This program is free software: you can redistribute it and/or modify
17
  it under the terms of the GNU General Public License as published by
47
  }
48
 
49
  // bootstrap the core plugin
50
+ define( 'MC4WP_VERSION', '4.0.12' );
51
  define( 'MC4WP_PLUGIN_DIR', dirname( __FILE__ ) . '/' );
52
  define( 'MC4WP_PLUGIN_URL', plugins_url( '/' , __FILE__ ) );
53
  define( 'MC4WP_PLUGIN_FILE', __FILE__ );
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: https://mc4wp.com/#utm_source=wp-plugin-repo&utm_medium=mailchimp-f
4
  Tags: mailchimp, mc4wp, email, marketing, newsletter, subscribe, widget, mc4wp, contact form 7, woocommerce, buddypress, ibericode, mailchimp forms, mailchimp integrations
5
  Requires at least: 4.1
6
  Tested up to: 4.7
7
- Stable tag: 4.0.11
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -189,6 +189,26 @@ MailChimp for WordPress is being developed on GitHub. If you want to collaborate
189
 
190
  == Changelog ==
191
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
192
  #### 4.0.11 - December 9, 2016
193
 
194
  **Fixes**
4
  Tags: mailchimp, mc4wp, email, marketing, newsletter, subscribe, widget, mc4wp, contact form 7, woocommerce, buddypress, ibericode, mailchimp forms, mailchimp integrations
5
  Requires at least: 4.1
6
  Tested up to: 4.7
7
+ Stable tag: 4.0.12
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
189
 
190
  == Changelog ==
191
 
192
+
193
+ #### 4.0.12 - January 16, 2017
194
+
195
+ **Fixes**
196
+
197
+ - Don't call `stripslashes` on POST data twice.
198
+
199
+ **Improvements**
200
+
201
+ - Plugin review notice is now dismissible over AJAX.
202
+ - Improved formatting of birthday fields.
203
+ - Updated Polish translations, thanks to Mateusz Lomber.
204
+ - Updated German translations, thanks to Sven de Vries.
205
+
206
+ **Additions**
207
+
208
+ - Add `update_ecommerce_store_product` method to API class.
209
+ - Throw form specific JavaScript events, like `15.subscribed` to hook into "subscribed" events for form with ID 15.
210
+
211
+
212
  #### 4.0.11 - December 9, 2016
213
 
214
  **Fixes**
vendor/autoload_52.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once dirname(__FILE__) . '/composer'.'/autoload_real_52.php';
6
 
7
- return ComposerAutoloaderInite220b9cdf73db6b31110859155e3018a::getLoader();
4
 
5
  require_once dirname(__FILE__) . '/composer'.'/autoload_real_52.php';
6
 
7
+ return ComposerAutoloaderInit541c0dc3d2f08af0d23e4f44958746d3::getLoader();
vendor/composer/autoload_real_52.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real_52.php generated by xrstf/composer-php52
4
 
5
- class ComposerAutoloaderInite220b9cdf73db6b31110859155e3018a {
6
  private static $loader;
7
 
8
  public static function loadClassLoader($class) {
@@ -19,9 +19,9 @@ class ComposerAutoloaderInite220b9cdf73db6b31110859155e3018a {
19
  return self::$loader;
20
  }
21
 
22
- spl_autoload_register(array('ComposerAutoloaderInite220b9cdf73db6b31110859155e3018a', 'loadClassLoader'), true /*, true */);
23
  self::$loader = $loader = new xrstf_Composer52_ClassLoader();
24
- spl_autoload_unregister(array('ComposerAutoloaderInite220b9cdf73db6b31110859155e3018a', 'loadClassLoader'));
25
 
26
  $vendorDir = dirname(dirname(__FILE__));
27
  $baseDir = dirname($vendorDir);
2
 
3
  // autoload_real_52.php generated by xrstf/composer-php52
4
 
5
+ class ComposerAutoloaderInit541c0dc3d2f08af0d23e4f44958746d3 {
6
  private static $loader;
7
 
8
  public static function loadClassLoader($class) {
19
  return self::$loader;
20
  }
21
 
22
+ spl_autoload_register(array('ComposerAutoloaderInit541c0dc3d2f08af0d23e4f44958746d3', 'loadClassLoader'), true /*, true */);
23
  self::$loader = $loader = new xrstf_Composer52_ClassLoader();
24
+ spl_autoload_unregister(array('ComposerAutoloaderInit541c0dc3d2f08af0d23e4f44958746d3', 'loadClassLoader'));
25
 
26
  $vendorDir = dirname(dirname(__FILE__));
27
  $baseDir = dirname($vendorDir);