MailChimp for WordPress - Version 2.1.1

Version Description

  • August 12, 2014 =

Fixes

  • mc4wp_get_current_url() now takes ports and the WP site url option into account
  • Quicktags buttons were not showing because script was not loaded, now it is.

Improvements

  • Improved CSS reset for the sign-up checkbox
  • Added deprecated warning to some functions
  • Improvements to third-party forms integration for the sign-up checkbox. Integrating with the Events Manager plugin should work now.
  • Updated Dutch translations
  • Updated English translations

Additions

  • Added mc4wp_form_error_{ERROR_CODE} action hook to allow hooking into all form errors.
  • Added {response} tag to allow setting a custom response position
  • Added various filters to customize form HTML
  • Added German language, thanks to Jochen Gererstorfer
  • Added Italian language, thanks to Gianpaolo Rolando
Download this release

Release Info

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

Code changes from version 2.1 to 2.1.1

README.md CHANGED
@@ -24,7 +24,7 @@ Support
24
  This is a developer's portal for the MailChimp for WordPress plugin and should not be used for support. Please visit the
25
  [plugin support forums on WordPress.org](http://wordpress.org/support/plugin/mailchimp-for-wp).
26
 
27
- If you need priority support, please consider upgrading to [MailChimp for WordPress Pro](https://dannyvankooten.com/mailchimp-for-wordpress/).
28
 
29
  Contributions
30
  -------------
24
  This is a developer's portal for the MailChimp for WordPress plugin and should not be used for support. Please visit the
25
  [plugin support forums on WordPress.org](http://wordpress.org/support/plugin/mailchimp-for-wp).
26
 
27
+ If you need priority support, please consider upgrading to [MailChimp for WordPress Pro](https://mc4wp.com/).
28
 
29
  Contributions
30
  -------------
assets/css/checkbox.css CHANGED
@@ -1,17 +1,19 @@
1
  /* MailChimp for WP - Checkbox Styles */
2
- #mc4wp-checkbox {
3
  clear: both;
4
  display: block;
 
 
5
  }
6
- #mc4wp-checkbox input {
7
- position: relative;
8
  margin: 0 6px 0 0;
9
  padding: 0;
10
  vertical-align: middle;
11
  display: inline-block !important;
12
  max-width: 21px;
13
  }
14
- #mc4wp-checkbox label {
15
  display: block;
16
  cursor: pointer;
17
  width: auto;
1
  /* MailChimp for WP - Checkbox Styles */
2
+ p#mc4wp-checkbox {
3
  clear: both;
4
  display: block;
5
+ position: static;
6
+ width: auto;
7
  }
8
+ p#mc4wp-checkbox input {
9
+ position: static;
10
  margin: 0 6px 0 0;
11
  padding: 0;
12
  vertical-align: middle;
13
  display: inline-block !important;
14
  max-width: 21px;
15
  }
16
+ p#mc4wp-checkbox label {
17
  display: block;
18
  cursor: pointer;
19
  width: auto;
assets/css/checkbox.min.css CHANGED
@@ -1 +1 @@
1
- #mc4wp-checkbox{clear:both;display:block}#mc4wp-checkbox input{position:relative;margin:0 6px 0 0;padding:0;vertical-align:middle;display:inline-block!important;max-width:21px}#mc4wp-checkbox label{display:block;cursor:pointer;width:auto;position:static}#registerform #mc4wp-checkbox{margin-bottom:10px}
1
+ p#mc4wp-checkbox{clear:both;display:block;position:static;width:auto}p#mc4wp-checkbox input{position:static;margin:0 6px 0 0;padding:0;vertical-align:middle;display:inline-block!important;max-width:21px}p#mc4wp-checkbox label{display:block;cursor:pointer;width:auto;position:static}#registerform #mc4wp-checkbox{margin-bottom:10px}
assets/js/admin.js CHANGED
@@ -45,17 +45,18 @@
45
  // Add buttons to QTags editor
46
  (function() {
47
 
48
- if( window.QTags == undefined ) {
49
  return;
50
  }
51
 
52
- QTags.addButton( 'mc4wp_paragraph', '<p>', '<p>', '</p>', 'p', 'Paragraph tag', 1 );
53
- QTags.addButton( 'mc4wp_label', 'label', '<label>', '</label>', 'l', 'Label tag', 2 );
54
- QTags.addButton( 'mc4wp_subscriber_count', '# of subscribers', '{subscriber_count}', '', 's', 'Shows number of subscribers of selected list(s)' );
 
 
55
  if( window.mc4wp.has_captcha_plugin == true ) {
56
- QTags.addButton( 'mc4wp_captcha', 'CAPTCHA', '[captcha]', '', 'c', 'Display a CAPTCHA field' );
57
  }
58
-
59
  })();
60
 
61
 
45
  // Add buttons to QTags editor
46
  (function() {
47
 
48
+ if ( typeof(QTags) == 'undefined' ) {
49
  return;
50
  }
51
 
52
+ QTags.addButton( 'mc4wp_paragraph', '<p>', '<p>', '</p>', 'paragraph', 'Paragraph tag', 1 );
53
+ QTags.addButton( 'mc4wp_label', 'label', '<label>', '</label>', 'label', 'Label tag', 2 );
54
+ QTags.addButton( 'mc4wp_response', 'form response', '{response}', '', 'response', 'Shows the form response' );
55
+ QTags.addButton( 'mc4wp_subscriber_count', '# of subscribers', '{subscriber_count}', '', 'subscribers', 'Shows number of subscribers of selected list(s)' );
56
+
57
  if( window.mc4wp.has_captcha_plugin == true ) {
58
+ QTags.addButton( 'mc4wp_captcha', 'CAPTCHA', '{captcha}', '', 'captcha', 'Display a CAPTCHA field' );
59
  }
 
60
  })();
61
 
62
 
assets/js/admin.min.js CHANGED
@@ -1 +1 @@
1
- !function(a){a("tr.pro-feature, tr.pro-feature td :radio").change(function(){this.checked=!1,alert("This option is only available in the premium version of MailChimp for WordPress."),event.stopPropagation()}),a("tr.pro-feature, tr.pro-feature label").click(function(){alert("This option is only available in the premium version of MailChimp for WordPress."),event.stopPropagation()}),function(){function b(){var b=$lists.filter(":checked").length>0;a(".mc4wp-notice.no-lists-selected").toggle(!b),a("#mc4wp-fw-mailchimp-fields").toggle(b)}$lists=a("#mc4wp-lists :input"),$lists.change(b)}(),a(document).delegate("#mc4wpformmarkup","keydown",function(b){var c=b.keyCode||b.which;if(9==c){b.preventDefault();var d=this.selectionStart,e=this.selectionEnd;a(this).val(a(this).val().substring(0,d)+" "+a(this).val().substring(e)),this.selectionStart=this.selectionEnd=d+1}}),function(){void 0!=window.QTags&&(QTags.addButton("mc4wp_paragraph","<p>","<p>","</p>","p","Paragraph tag",1),QTags.addButton("mc4wp_label","label","<label>","</label>","l","Label tag",2),QTags.addButton("mc4wp_subscriber_count","# of subscribers","{subscriber_count}","","s","Shows number of subscribers of selected list(s)"),1==window.mc4wp.has_captcha_plugin&&QTags.addButton("mc4wp_captcha","CAPTCHA","[captcha]","","c","Display a CAPTCHA field"))}(),function(){function b(){o.find("option").not(".default").remove(),n.filter(":checked").each(function(){for(var b=a(this).data("list-fields"),c=a(this).data("list-groupings"),d=0,e=b.length;e>d;d++){var f=b[d];if(0==p.find("option[value='"+f.tag+"']").length){var g=f.name.length>25?f.name.substring(0,25)+"..":f.name;f.req&&(g+="*");var h=a("<option />").text(g).val(f.tag).data("list-field",f);d>3&&h.text("(PRO ONLY) "+g).attr("disabled","disabled").data("field",null),p.append(h)}}for(var d=0,i=c.length;i>d;d++){var j=c[d];if(0==q.find("option[value='"+j.id+"']").length){var g=j.name.length>25?j.name.substring(0,25)+"..":j.name,h=a("<option />").text(g).val(j.id).data("list-grouping",j);d>=1&&h.text("(PRO ONLY) "+g).attr("disabled","disabled").data("list-grouping",null),q.append(h)}}})}function c(){d();var b=a(this).find(":selected");switch(b.val()){case"submit":l="submit",t.text("Button text"),r.find("p.row").filter(".value, .wrap-p").show();break;case"lists":l="lists",r.find(".wrap-p").show(),j();break;default:var c=b.data("list-field");if(c)return h(c);var c=b.data("list-grouping");if(c)return f(c)}j()}function d(){r.find(".row :input").each(function(){a(this).is(":checkbox")?this.checked=!0:this.value=""}),r.find("p.row").hide(),u.find(":input").remove(),r.show(),l="text",m="",t.html("Initial value <small>(optional)</small>")}function e(b){for(var c=0,d=b.length;d>c;c++)a("<input />").attr("type","text").addClass("widefat").data("value",b[c].name).attr("placeholder",'Label for "'+b[c].name+'" (or leave empty)').attr("value",b[c].name).appendTo(u)}function f(a){switch(r.find("p.row").filter(".values, .label, .wrap-p").show(),v.val(a.name+":"),m="GROUPINGS["+a.id+"]",e(a.groups),a.form_field){case"radio":l="radio";break;case"hidden":r.find("p.row").filter(".values, .label, .wrap-p").hide(),r.find("p.row.value").show();for(var b=0,c=a.groups.length;c>b;b++)s.val(s.val()+a.groups[b].name+",");l="hidden";break;case"dropdown":l="select";break;default:l="checkbox",m+="[]"}j()}function g(){var b="";return n.each(function(){var c=a(this).val(),d=a(this).parent("label").text(),e="";a(this).is(":checked")&&(e+="checked "),b+="<label>\n",b+=' <input type="checkbox" name="_mc4wp_lists[]" value="'+c+'" '+e+" /> "+d+"\n",b+="</label>\n"}),b}function h(b){var c={"default":["label","value","placeholder","required","wrap-p"],select:["label","required","wrap-p","values"],radio:["label","required","wrap-p","values"],date:["label","required","wrap-p","value"]},d={text:"text",email:"email",phone:"tel",address:"text",number:"number",dropdown:"select",date:"date",birthday:"date",radio:"radio",checkbox:"checkbox"};if(l=void 0!=d[b.field_type]?d[b.field_type]:"text",void 0!=c[l])var e=c[l];else var e=c["default"];for(var f=0,g=e.length;g>f;f++)r.find("p.row."+e[f]).show();if(l=l,m=b.tag,w.val("Your "+b.name.toLowerCase()),v.val(b.name+":"),x.attr("checked",b.req),u.is(":visible")&&b.choices)for(var f=0,g=b.choices.length;g>f;f++)a("<input />").attr("type","text").addClass("widefat").data("value",b.choices[f]).attr("placeholder",'Label for "'+b.choices[f]+'" (or leave empty)').attr("value",b.choices[f]).appendTo(u);j()}function i(a){a=html_beautify(a),z.val(a)}function j(){var b,c=a("<div></div>");switch(l){case"lists":var d=g();return y.is(":visible:checked")&&(d="<p>"+d+"</p>"),i(d);case"select":b=a("<select />"),u.find(":input").each(function(){a(this).val().length>0&&($el=a("<option />").val(a(this).data("value")).text(a(this).val()),$el.appendTo(b))});break;case"radio":case"checkbox":u.find(":input").each(function(){a(this).val().length>0&&(b=a("<input />").attr("type",l).attr("name",m).val(a(this).data("value")),x.is(":visible:checked")&&b.attr("required",!0),c.append(b),b.wrap("<label />"),a("<span />").text(a(this).val()+" ").insertAfter(b))});break;case"textarea":b=a("<textarea />");break;default:b=a("<input />").attr("type",l)}"radio"!=l&&"checkbox"!=l&&(m.length>0&&b.attr("name",m),s.is(":visible")&&s.val().length>0&&("textarea"==l?b.text(s.val()):b.attr("value",s.val())),w.is(":visible")&&w.val().length>0&&b.attr("placeholder",w.val()),x.is(":visible:checked")&&b.attr("required",!0),c.append(b)),v.is(":visible")&&v.val().length>0&&a("<label />").text(v.val()).prependTo(c),y.is(":visible:checked")&&c.wrapInner(a("<p />"));var d=c.html();i(d)}function k(){var b=!1;"undefined"!=typeof wpActiveEditor&&"undefined"!=typeof QTags&&QTags.insertContent&&(b=QTags.insertContent(z.val())),b||($formContent=a("#mc4wpformmarkup"),$formContent.val($formContent.val()+"\n"+z.val()))}var l,m,n=a("#mc4wp-lists :input"),o=a("#mc4wp-fw-mailchimp-fields"),p=a("#mc4wp-fw-mailchimp-fields .merge-fields"),q=a("#mc4wp-fw-mailchimp-fields .groupings"),r=a("#mc4wp-fw-fields"),s=a("#mc4wp-fw-value"),t=a("#mc4wp-fw-value-label"),u=a("#mc4wp-fw-values"),v=a("#mc4wp-fw-label"),w=a("#mc4wp-fw-placeholder"),x=a("#mc4wp-fw-required"),y=a("#mc4wp-fw-wrap-p"),z=a("#mc4wp-fw-preview");n.change(b),o.change(c),r.change(j),a("#mc4wp-fw-add-to-form").click(k),b()}()}(jQuery);
1
+ !function(a){a("tr.pro-feature, tr.pro-feature td :radio").change(function(){this.checked=!1,alert("This option is only available in the premium version of MailChimp for WordPress."),event.stopPropagation()}),a("tr.pro-feature, tr.pro-feature label").click(function(){alert("This option is only available in the premium version of MailChimp for WordPress."),event.stopPropagation()}),function(){function b(){var b=$lists.filter(":checked").length>0;a(".mc4wp-notice.no-lists-selected").toggle(!b),a("#mc4wp-fw-mailchimp-fields").toggle(b)}$lists=a("#mc4wp-lists :input"),$lists.change(b)}(),a(document).delegate("#mc4wpformmarkup","keydown",function(b){var c=b.keyCode||b.which;if(9==c){b.preventDefault();var d=this.selectionStart,e=this.selectionEnd;a(this).val(a(this).val().substring(0,d)+" "+a(this).val().substring(e)),this.selectionStart=this.selectionEnd=d+1}}),function(){"undefined"!=typeof QTags&&(QTags.addButton("mc4wp_paragraph","<p>","<p>","</p>","paragraph","Paragraph tag",1),QTags.addButton("mc4wp_label","label","<label>","</label>","label","Label tag",2),QTags.addButton("mc4wp_response","form response","{response}","","response","Shows the form response"),QTags.addButton("mc4wp_subscriber_count","# of subscribers","{subscriber_count}","","subscribers","Shows number of subscribers of selected list(s)"),1==window.mc4wp.has_captcha_plugin&&QTags.addButton("mc4wp_captcha","CAPTCHA","{captcha}","","captcha","Display a CAPTCHA field"))}(),function(){function b(){o.find("option").not(".default").remove(),n.filter(":checked").each(function(){for(var b=a(this).data("list-fields"),c=a(this).data("list-groupings"),d=0,e=b.length;e>d;d++){var f=b[d];if(0==p.find("option[value='"+f.tag+"']").length){var g=f.name.length>25?f.name.substring(0,25)+"..":f.name;f.req&&(g+="*");var h=a("<option />").text(g).val(f.tag).data("list-field",f);d>3&&h.text("(PRO ONLY) "+g).attr("disabled","disabled").data("field",null),p.append(h)}}for(var d=0,i=c.length;i>d;d++){var j=c[d];if(0==q.find("option[value='"+j.id+"']").length){var g=j.name.length>25?j.name.substring(0,25)+"..":j.name,h=a("<option />").text(g).val(j.id).data("list-grouping",j);d>=1&&h.text("(PRO ONLY) "+g).attr("disabled","disabled").data("list-grouping",null),q.append(h)}}})}function c(){d();var b=a(this).find(":selected");switch(b.val()){case"submit":l="submit",t.text("Button text"),r.find("p.row").filter(".value, .wrap-p").show();break;case"lists":l="lists",r.find(".wrap-p").show(),j();break;default:var c=b.data("list-field");if(c)return h(c);var c=b.data("list-grouping");if(c)return f(c)}j()}function d(){r.find(".row :input").each(function(){a(this).is(":checkbox")?this.checked=!0:this.value=""}),r.find("p.row").hide(),u.find(":input").remove(),r.show(),l="text",m="",t.html("Initial value <small>(optional)</small>")}function e(b){for(var c=0,d=b.length;d>c;c++)a("<input />").attr("type","text").addClass("widefat").data("value",b[c].name).attr("placeholder",'Label for "'+b[c].name+'" (or leave empty)').attr("value",b[c].name).appendTo(u)}function f(a){switch(r.find("p.row").filter(".values, .label, .wrap-p").show(),v.val(a.name+":"),m="GROUPINGS["+a.id+"]",e(a.groups),a.form_field){case"radio":l="radio";break;case"hidden":r.find("p.row").filter(".values, .label, .wrap-p").hide(),r.find("p.row.value").show();for(var b=0,c=a.groups.length;c>b;b++)s.val(s.val()+a.groups[b].name+",");l="hidden";break;case"dropdown":l="select";break;default:l="checkbox",m+="[]"}j()}function g(){var b="";return n.each(function(){var c=a(this).val(),d=a(this).parent("label").text(),e="";a(this).is(":checked")&&(e+="checked "),b+="<label>\n",b+=' <input type="checkbox" name="_mc4wp_lists[]" value="'+c+'" '+e+" /> "+d+"\n",b+="</label>\n"}),b}function h(b){var c={"default":["label","value","placeholder","required","wrap-p"],select:["label","required","wrap-p","values"],radio:["label","required","wrap-p","values"],date:["label","required","wrap-p","value"]},d={text:"text",email:"email",phone:"tel",address:"text",number:"number",dropdown:"select",date:"date",birthday:"date",radio:"radio",checkbox:"checkbox"};if(l=void 0!=d[b.field_type]?d[b.field_type]:"text",void 0!=c[l])var e=c[l];else var e=c["default"];for(var f=0,g=e.length;g>f;f++)r.find("p.row."+e[f]).show();if(l=l,m=b.tag,w.val("Your "+b.name.toLowerCase()),v.val(b.name+":"),x.attr("checked",b.req),u.is(":visible")&&b.choices)for(var f=0,g=b.choices.length;g>f;f++)a("<input />").attr("type","text").addClass("widefat").data("value",b.choices[f]).attr("placeholder",'Label for "'+b.choices[f]+'" (or leave empty)').attr("value",b.choices[f]).appendTo(u);j()}function i(a){a=html_beautify(a),z.val(a)}function j(){var b,c=a("<div></div>");switch(l){case"lists":var d=g();return y.is(":visible:checked")&&(d="<p>"+d+"</p>"),i(d);case"select":b=a("<select />"),u.find(":input").each(function(){a(this).val().length>0&&($el=a("<option />").val(a(this).data("value")).text(a(this).val()),$el.appendTo(b))});break;case"radio":case"checkbox":u.find(":input").each(function(){a(this).val().length>0&&(b=a("<input />").attr("type",l).attr("name",m).val(a(this).data("value")),x.is(":visible:checked")&&b.attr("required",!0),c.append(b),b.wrap("<label />"),a("<span />").text(a(this).val()+" ").insertAfter(b))});break;case"textarea":b=a("<textarea />");break;default:b=a("<input />").attr("type",l)}"radio"!=l&&"checkbox"!=l&&(m.length>0&&b.attr("name",m),s.is(":visible")&&s.val().length>0&&("textarea"==l?b.text(s.val()):b.attr("value",s.val())),w.is(":visible")&&w.val().length>0&&b.attr("placeholder",w.val()),x.is(":visible:checked")&&b.attr("required",!0),c.append(b)),v.is(":visible")&&v.val().length>0&&a("<label />").text(v.val()).prependTo(c),y.is(":visible:checked")&&c.wrapInner(a("<p />"));var d=c.html();i(d)}function k(){var b=!1;"undefined"!=typeof wpActiveEditor&&"undefined"!=typeof QTags&&QTags.insertContent&&(b=QTags.insertContent(z.val())),b||($formContent=a("#mc4wpformmarkup"),$formContent.val($formContent.val()+"\n"+z.val()))}var l,m,n=a("#mc4wp-lists :input"),o=a("#mc4wp-fw-mailchimp-fields"),p=a("#mc4wp-fw-mailchimp-fields .merge-fields"),q=a("#mc4wp-fw-mailchimp-fields .groupings"),r=a("#mc4wp-fw-fields"),s=a("#mc4wp-fw-value"),t=a("#mc4wp-fw-value-label"),u=a("#mc4wp-fw-values"),v=a("#mc4wp-fw-label"),w=a("#mc4wp-fw-placeholder"),x=a("#mc4wp-fw-required"),y=a("#mc4wp-fw-wrap-p"),z=a("#mc4wp-fw-preview");n.change(b),o.change(c),r.change(j),a("#mc4wp-fw-add-to-form").click(k),b()}()}(jQuery);
assets/sass/checkbox.scss CHANGED
@@ -1,27 +1,29 @@
1
  /* MailChimp for WP - Checkbox Styles */
2
- #mc4wp-checkbox{
3
 
4
- clear: both;
5
- display: block;
 
 
6
 
7
- input {
8
- position: relative;
9
- margin: 0 6px 0 0;
10
- padding: 0;
11
- vertical-align: middle;
12
- display: inline-block !important;
13
- max-width: 21px;
14
- }
15
 
16
- label {
17
- display: block;
18
- cursor: pointer;
19
- width: auto;
20
  position: static;
21
- }
22
 
23
  }
24
 
25
  #registerform #mc4wp-checkbox{
26
- margin-bottom: 10px;
27
  }
1
  /* MailChimp for WP - Checkbox Styles */
2
+ p#mc4wp-checkbox{
3
 
4
+ clear: both;
5
+ display: block;
6
+ position: static;
7
+ width: auto;
8
 
9
+ input {
10
+ position: static;
11
+ margin: 0 6px 0 0;
12
+ padding: 0;
13
+ vertical-align: middle;
14
+ display: inline-block !important;
15
+ max-width: 21px;
16
+ }
17
 
18
+ label {
19
+ display: block;
20
+ cursor: pointer;
21
+ width: auto;
22
  position: static;
23
+ }
24
 
25
  }
26
 
27
  #registerform #mc4wp-checkbox{
28
+ margin-bottom: 10px;
29
  }
includes/class-admin.php CHANGED
@@ -25,7 +25,7 @@ class MC4WP_Lite_Admin
25
 
26
  // did the user click on upgrade to pro link?
27
  if( isset( $_GET['page'] ) && $_GET['page'] === 'mc4wp-lite-upgrade' && false === headers_sent() ) {
28
- header("Location: https://dannyvankooten.com/mailchimp-for-wordpress/#utm_source=lite-plugin&utm_medium=link&utm_campaign=menu-upgrade-link");
29
  exit;
30
  }
31
 
@@ -127,7 +127,7 @@ class MC4WP_Lite_Admin
127
  }
128
 
129
  $links[] = '<a href="http://wordpress.org/plugins/mailchimp-for-wp/faq/">FAQ</a>';
130
- $links[] = '<a href="https://dannyvankooten.com/mailchimp-for-wordpress/#utm_source=lite-plugin&utm_medium=link&utm_campaign=plugins-upgrade-link">' . __( 'Upgrade to Pro', 'mailchimp-for-wp' ) . '</a>';
131
  return $links;
132
  }
133
 
@@ -195,7 +195,7 @@ class MC4WP_Lite_Admin
195
 
196
  // js
197
  wp_register_script( 'mc4wp-beautifyhtml', MC4WP_LITE_PLUGIN_URL . 'assets/js/beautify-html'. $suffix .'.js', array( 'jquery' ), MC4WP_LITE_VERSION, true );
198
- wp_register_script( 'mc4wp-admin', MC4WP_LITE_PLUGIN_URL . 'assets/js/admin' . $suffix . '.js', array( 'jquery' ), MC4WP_LITE_VERSION, true );
199
  wp_enqueue_script( array( 'jquery', 'mc4wp-beautifyhtml', 'mc4wp-admin' ) );
200
  wp_localize_script( 'mc4wp-admin', 'mc4wp',
201
  array(
@@ -325,8 +325,8 @@ class MC4WP_Lite_Admin
325
  continue;
326
  }
327
 
328
- // search for field tag in form mark-up
329
- $search = stristr( $opts['markup'], 'name="'. $merge_var->tag .'"' );
330
  if( false === $search ) {
331
  $missing_form_fields[] = sprintf( __( 'A \'%s\' field', 'mailchimp-for-wp' ), $merge_var->tag );
332
  }
25
 
26
  // did the user click on upgrade to pro link?
27
  if( isset( $_GET['page'] ) && $_GET['page'] === 'mc4wp-lite-upgrade' && false === headers_sent() ) {
28
+ header("Location: https://mc4wp.com/#utm_source=lite-plugin&utm_medium=link&utm_campaign=menu-upgrade-link");
29
  exit;
30
  }
31
 
127
  }
128
 
129
  $links[] = '<a href="http://wordpress.org/plugins/mailchimp-for-wp/faq/">FAQ</a>';
130
+ $links[] = '<a href="https://mc4wp.com/#utm_source=lite-plugin&utm_medium=link&utm_campaign=plugins-upgrade-link">' . __( 'Upgrade to Pro', 'mailchimp-for-wp' ) . '</a>';
131
  return $links;
132
  }
133
 
195
 
196
  // js
197
  wp_register_script( 'mc4wp-beautifyhtml', MC4WP_LITE_PLUGIN_URL . 'assets/js/beautify-html'. $suffix .'.js', array( 'jquery' ), MC4WP_LITE_VERSION, true );
198
+ wp_register_script( 'mc4wp-admin', MC4WP_LITE_PLUGIN_URL . 'assets/js/admin' . $suffix . '.js', array( 'jquery', 'quicktags' ), MC4WP_LITE_VERSION, true );
199
  wp_enqueue_script( array( 'jquery', 'mc4wp-beautifyhtml', 'mc4wp-admin' ) );
200
  wp_localize_script( 'mc4wp-admin', 'mc4wp',
201
  array(
325
  continue;
326
  }
327
 
328
+ // search for field tag in form mark-up using 'name="FIELD_NAME' without closing " because of array fields
329
+ $search = stristr( $opts['markup'], 'name="'. $merge_var->tag );
330
  if( false === $search ) {
331
  $missing_form_fields[] = sprintf( __( 'A \'%s\' field', 'mailchimp-for-wp' ), $merge_var->tag );
332
  }
includes/class-form-manager.php CHANGED
@@ -127,26 +127,17 @@ class MC4WP_Lite_Form_Manager {
127
  */
128
  public function form( $atts = array(), $content = '' ) {
129
 
 
 
 
 
 
 
130
  $opts = mc4wp_get_options('form');
131
 
132
  // was this form submitted?
133
  $was_submitted = ( is_object( $this->form_request ) && $this->form_request->get_form_instance_number() === $this->form_instance_number );
134
 
135
- // enqueue scripts (in footer) if form was submitted
136
- if( $was_submitted ) {
137
- wp_enqueue_script( 'mc4wp-form-request' );
138
- wp_localize_script( 'mc4wp-form-request', 'mc4wpFormRequestData', array(
139
- 'success' => ( $this->form_request->is_successful() ) ? 1 : 0,
140
- 'submittedFormId' => $this->form_request->get_form_instance_number(),
141
- 'postData' => stripslashes_deep( $_POST )
142
- )
143
- );
144
- }
145
-
146
- if ( ! function_exists( 'mc4wp_replace_variables' ) ) {
147
- include_once MC4WP_LITE_PLUGIN_DIR . 'includes/functions/template.php';
148
- }
149
-
150
  /**
151
  * @filter mc4wp_form_action
152
  * @expects string
@@ -155,69 +146,96 @@ class MC4WP_Lite_Form_Manager {
155
  */
156
  $form_action = apply_filters( 'mc4wp_form_action', mc4wp_get_current_url() );
157
 
158
- /**
159
- * @filter mc4wp_form_message_position
160
- * @expects string before|after
161
- *
162
- * Can be used to change the position of the form success & error messages.
163
- * Valid options are 'before' or 'after'
164
- */
165
- $message_position = apply_filters( 'mc4wp_form_message_position', 'after' );
166
-
167
- // Start building content string
168
- $content = "\n<!-- Form by MailChimp for WordPress plugin v". MC4WP_LITE_VERSION ." - https://dannyvankooten.com/mailchimp-for-wordpress/ -->\n";
169
- $content .= '<form method="post" action="'. $form_action .'" id="mc4wp-form-'.$this->form_instance_number.'" class="'. $this->get_css_classes() .'">';
170
 
171
- // show message if form was submitted and message position is before
172
- if( $was_submitted && $message_position === 'before' ) {
173
- $content .= $this->get_form_message_html();
174
- }
175
-
176
- // do not add form fields if form was submitted and hide_after_success is enabled
177
- if( ! ( $opts['hide_after_success'] && $was_submitted && $this->form_request->is_successful() ) ) {
178
 
 
 
179
  // add form fields from settings
180
- $form_markup = __( $opts['markup'] );
181
 
182
  // replace special values
183
- $form_markup = str_ireplace( array( '%N%', '{n}' ), $this->form_instance_number, $form_markup );
184
- $form_markup = mc4wp_replace_variables( $form_markup, array_values( $opts['lists'] ) );
185
 
186
  // insert captcha
187
  if( function_exists( 'cptch_display_captcha_custom' ) ) {
188
  $captcha_fields = '<input type="hidden" name="_mc4wp_has_captcha" value="1" /><input type="hidden" name="cntctfrm_contact_action" value="true" />' . cptch_display_captcha_custom();
189
- $form_markup = str_ireplace( '[captcha]', $captcha_fields, $form_markup );
190
  }
191
 
192
- // allow plugins to add form fieldsq
193
- do_action( 'mc4wp_before_form_fields', 0 );
194
-
195
  /**
196
  * @filter mc4wp_form_content
197
- * @param int $form_id The ID of the form that is being shown
198
- * @expects string
199
  *
200
  * Can be used to customize the content of the form mark-up, eg adding additional fields.
201
  */
202
- $content .= apply_filters( 'mc4wp_form_content', $form_markup );
203
-
204
- // allow plugins to add form fields
205
- do_action( 'mc4wp_after_form_fields', 0 );
206
 
207
  // hidden fields
208
- $content .= '<textarea name="_mc4wp_required_but_not_really" style="display: none !important;"></textarea>';
209
- $content .= '<input type="hidden" name="_mc4wp_form_submit" value="1" />';
210
- $content .= '<input type="hidden" name="_mc4wp_form_instance" value="'. $this->form_instance_number .'" />';
211
- $content .= '<input type="hidden" name="_mc4wp_form_nonce" value="'. wp_create_nonce( '_mc4wp_form_nonce' ) .'" />';
 
 
 
212
  }
213
 
214
- // show message if form was submitted and message position is after
215
- if( $was_submitted && $message_position === 'after' ) {
216
- $content .= $this->get_form_message_html();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
217
  }
218
 
219
- $content .= "</form>";
220
- $content .= "\n<!-- / MailChimp for WP Plugin -->\n";
 
 
 
 
221
 
222
  // increase form instance number in case there is more than one form on a page
223
  $this->form_instance_number++;
@@ -228,7 +246,8 @@ class MC4WP_Lite_Form_Manager {
228
  wp_enqueue_script( 'mc4wp-placeholders' );
229
  }
230
 
231
- return $content;
 
232
  }
233
 
234
  /**
@@ -285,6 +304,7 @@ class MC4WP_Lite_Form_Manager {
285
  * ...
286
  * );
287
  *
 
288
  * @return array
289
  */
290
  public function get_form_messages( $form_id = 0 ) {
127
  */
128
  public function form( $atts = array(), $content = '' ) {
129
 
130
+ // make sure template functions are loaded
131
+ if ( ! function_exists( 'mc4wp_replace_variables' ) ) {
132
+ include_once MC4WP_LITE_PLUGIN_DIR . 'includes/functions/template.php';
133
+ }
134
+
135
+ // Get form options
136
  $opts = mc4wp_get_options('form');
137
 
138
  // was this form submitted?
139
  $was_submitted = ( is_object( $this->form_request ) && $this->form_request->get_form_instance_number() === $this->form_instance_number );
140
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
141
  /**
142
  * @filter mc4wp_form_action
143
  * @expects string
146
  */
147
  $form_action = apply_filters( 'mc4wp_form_action', mc4wp_get_current_url() );
148
 
149
+ // Generate opening HTML
150
+ $opening_html = "<!-- Form by MailChimp for WordPress plugin v". MC4WP_LITE_VERSION ." - https://dannyvankooten.com/mailchimp-for-wordpress/ -->";
151
+ $opening_html .= '<form method="post" action="'. $form_action .'" id="mc4wp-form-'.$this->form_instance_number.'" class="'. $this->get_css_classes() .'">';
 
 
 
 
 
 
 
 
 
152
 
153
+ // Generate before & after fields HTML
154
+ $before_fields = apply_filters( 'mc4wp_form_before_fields', '' );
155
+ $after_fields = apply_filters( 'mc4wp_form_after_fields', '' );
 
 
 
 
156
 
157
+ // Process fields, if not submitted or not successfull or hide_after_success disabled
158
+ if( ! $was_submitted || ! $opts['hide_after_success'] || ! $this->form_request->is_successful() ) {
159
  // add form fields from settings
160
+ $visible_fields = __( $opts['markup'] );
161
 
162
  // replace special values
163
+ $visible_fields = str_ireplace( array( '%N%', '{n}' ), $this->form_instance_number, $visible_fields );
164
+ $visible_fields = mc4wp_replace_variables( $visible_fields, array_values( $opts['lists'] ) );
165
 
166
  // insert captcha
167
  if( function_exists( 'cptch_display_captcha_custom' ) ) {
168
  $captcha_fields = '<input type="hidden" name="_mc4wp_has_captcha" value="1" /><input type="hidden" name="cntctfrm_contact_action" value="true" />' . cptch_display_captcha_custom();
169
+ $visible_fields = str_ireplace( array( '{captcha}', '[captcha]' ), $captcha_fields, $visible_fields );
170
  }
171
 
 
 
 
172
  /**
173
  * @filter mc4wp_form_content
174
+ * @param int $form_id The ID of the form that is being shown
175
+ * @expects string
176
  *
177
  * Can be used to customize the content of the form mark-up, eg adding additional fields.
178
  */
179
+ $visible_fields = apply_filters( 'mc4wp_form_content', $visible_fields );
 
 
 
180
 
181
  // hidden fields
182
+ $hidden_fields = '<textarea name="_mc4wp_required_but_not_really" style="display: none !important;"></textarea>';
183
+ $hidden_fields .= '<input type="hidden" name="_mc4wp_form_submit" value="1" />';
184
+ $hidden_fields .= '<input type="hidden" name="_mc4wp_form_instance" value="'. $this->form_instance_number .'" />';
185
+ $hidden_fields .= '<input type="hidden" name="_mc4wp_form_nonce" value="'. wp_create_nonce( '_mc4wp_form_nonce' ) .'" />';
186
+ } else {
187
+ $visible_fields = '';
188
+ $hidden_fields = '';
189
  }
190
 
191
+ // empty string for response
192
+ $response_html = '';
193
+
194
+ if( $was_submitted ) {
195
+
196
+ // Enqueue script (only after submit)
197
+ wp_enqueue_script( 'mc4wp-form-request' );
198
+ wp_localize_script( 'mc4wp-form-request', 'mc4wpFormRequestData', array(
199
+ 'success' => ( $this->form_request->is_successful() ) ? 1 : 0,
200
+ 'submittedFormId' => $this->form_request->get_form_instance_number(),
201
+ 'postData' => stripslashes_deep( $_POST )
202
+ )
203
+ );
204
+
205
+ // get actual response html
206
+ $response_html = $this->get_form_message_html();
207
+
208
+ // add form response after or before fields if no {response} tag
209
+ if( stristr( $visible_fields, '{response}' ) === false ) {
210
+
211
+ /**
212
+ * @filter mc4wp_form_message_position
213
+ * @expects string before|after
214
+ *
215
+ * Can be used to change the position of the form success & error messages.
216
+ * Valid options are 'before' or 'after'
217
+ */
218
+ $message_position = apply_filters( 'mc4wp_form_message_position', 'after' );
219
+
220
+ switch( $message_position ) {
221
+ case 'before':
222
+ $before_fields = $before_fields . $response_html;
223
+ break;
224
+
225
+ case 'after':
226
+ $after_fields = $response_html . $after_fields;
227
+ break;
228
+ }
229
+ }
230
+
231
  }
232
 
233
+ // Always replace {response} tag, either with empty string or actual response
234
+ $visible_fields = str_ireplace( '{response}', $response_html, $visible_fields );
235
+
236
+ // Generate closing HTML
237
+ $closing_html = "</form>";
238
+ $closing_html .= "<!-- / MailChimp for WP Plugin -->";
239
 
240
  // increase form instance number in case there is more than one form on a page
241
  $this->form_instance_number++;
246
  wp_enqueue_script( 'mc4wp-placeholders' );
247
  }
248
 
249
+ // concatenate and return the HTML parts
250
+ return $opening_html . $before_fields . $visible_fields . $hidden_fields . $after_fields . $closing_html;
251
  }
252
 
253
  /**
304
  * ...
305
  * );
306
  *
307
+ * @param int $form_id
308
  * @return array
309
  */
310
  public function get_form_messages( $form_id = 0 ) {
includes/class-form-request.php CHANGED
@@ -158,6 +158,23 @@ class MC4WP_Lite_Form_Request {
158
  return true;
159
  }
160
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
161
  // return false on failure
162
  return false;
163
  }
@@ -255,7 +272,7 @@ class MC4WP_Lite_Form_Request {
255
  private function subscribe( $email, $merge_vars = array() ) {
256
 
257
  // Try to guess FNAME and LNAME if they are not given, but NAME is
258
- if( isset( $merge_vars['NAME'] ) && !isset( $merge_vars['FNAME'] ) && ! isset( $merge_vars['LNAME'] ) ) {
259
 
260
  $strpos = strpos($merge_vars['NAME'], ' ');
261
  if( $strpos !== false ) {
158
  return true;
159
  }
160
 
161
+ /**
162
+ * @action mc4wp_form_error_{ERROR_CODE}
163
+ *
164
+ * Use to hook into various sign-up errors. Hook names are:
165
+ *
166
+ * - mc4wp_form_error_error General errors
167
+ * - mc4wp_form_error_invalid_email Invalid email address
168
+ * - mc4wp_form_error_already_subscribed Email is already on selected list(s)
169
+ * - mc4wp_form_error_required_field_missing One or more required fields are missing
170
+ * - mc4wp_form_error_no_lists_selected No MailChimp lists were selected
171
+ *
172
+ * @param int $form_id The ID of the submitted form
173
+ * @param string $email The email of the subscriber
174
+ * @param array $merge_vars Additional list fields, like FNAME etc (if any)
175
+ */
176
+ do_action( 'mc4wp_form_error_' . $this->get_error_code(), 0, $email, $merge_vars );
177
+
178
  // return false on failure
179
  return false;
180
  }
272
  private function subscribe( $email, $merge_vars = array() ) {
273
 
274
  // Try to guess FNAME and LNAME if they are not given, but NAME is
275
+ if( isset( $merge_vars['NAME'] ) && ! isset( $merge_vars['FNAME'] ) && ! isset( $merge_vars['LNAME'] ) ) {
276
 
277
  $strpos = strpos($merge_vars['NAME'], ' ');
278
  if( $strpos !== false ) {
includes/functions/template.php CHANGED
@@ -13,6 +13,7 @@ if( ! defined( "MC4WP_LITE_VERSION" ) ) {
13
  function mc4wp_checkbox() {
14
  global $mc4wp;
15
 
 
16
  if( ! isset( $mc4wp->get_checkbox_manager()->integrations['comment_form'] ) ) {
17
  $mc4wp->get_checkbox_manager()->integrations['comment_form'] = new MC4WP_Comment_Form_Integration();
18
  }
@@ -21,9 +22,10 @@ function mc4wp_checkbox() {
21
  }
22
 
23
  /**
24
- * Echoes sign-up form with given $form_id.
25
- * @param int $form_id.
26
- */
 
27
  function mc4wp_form( $id = 0 ) {
28
  echo mc4wp_get_form( $id );
29
  }
@@ -31,8 +33,8 @@ function mc4wp_form( $id = 0 ) {
31
  /**
32
  * Returns HTML for sign-up form with the given $form_id.
33
  *
34
- * @param int $form_id.
35
- * @return string HTML of given form_id.
36
  */
37
  function mc4wp_get_form( $id = 0 ) {
38
  global $mc4wp;
@@ -43,9 +45,9 @@ function mc4wp_get_form( $id = 0 ) {
43
  /**
44
  * Returns text with {variables} replaced.
45
  *
46
- * @param string $text
47
- * @param array $list_ids Array of list id's
48
- * @return string $text with {variables} replaced.
49
  */
50
  function mc4wp_replace_variables( $text, $list_ids = array() ) {
51
 
@@ -81,15 +83,22 @@ function mc4wp_replace_variables( $text, $list_ids = array() ) {
81
  /**
82
  * Retrieves the URL of the current WordPress page
83
  *
84
- * @return string The current URL, escaped for safe usage inside attributes.
85
  */
86
  function mc4wp_get_current_url() {
87
- $current_url = is_ssl() ? 'https://' : 'http://';
88
- $current_url .= $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
89
- return esc_url( $current_url );
90
- }
91
 
 
 
 
 
 
 
92
 
 
 
 
93
 
94
  /**
95
  * Echoes a sign-up form.
@@ -98,6 +107,7 @@ function mc4wp_get_current_url() {
98
  * @see mc4wp_form()
99
  */
100
  function mc4wp_show_form( $id = 0 ) {
 
101
  mc4wp_form( $id );
102
  }
103
 
@@ -108,5 +118,6 @@ function mc4wp_show_form( $id = 0 ) {
108
  * @see mc4wp_checkbox()
109
  */
110
  function mc4wp_show_checkbox() {
 
111
  mc4wp_checkbox();
112
  }
13
  function mc4wp_checkbox() {
14
  global $mc4wp;
15
 
16
+ // manually instantiate comment form integration class
17
  if( ! isset( $mc4wp->get_checkbox_manager()->integrations['comment_form'] ) ) {
18
  $mc4wp->get_checkbox_manager()->integrations['comment_form'] = new MC4WP_Comment_Form_Integration();
19
  }
22
  }
23
 
24
  /**
25
+ * Echoes a MailChimp for WordPress form
26
+ *
27
+ * @param int $id The form ID
28
+ */
29
  function mc4wp_form( $id = 0 ) {
30
  echo mc4wp_get_form( $id );
31
  }
33
  /**
34
  * Returns HTML for sign-up form with the given $form_id.
35
  *
36
+ * @param int $form_id.
37
+ * @return string HTML of given form_id.
38
  */
39
  function mc4wp_get_form( $id = 0 ) {
40
  global $mc4wp;
45
  /**
46
  * Returns text with {variables} replaced.
47
  *
48
+ * @param string $text
49
+ * @param array $list_ids Array of list id's
50
+ * @return string $text The text with {variables} replaced.
51
  */
52
  function mc4wp_replace_variables( $text, $list_ids = array() ) {
53
 
83
  /**
84
  * Retrieves the URL of the current WordPress page
85
  *
86
+ * @return string The current URL, escaped for safe usage inside attributes.
87
  */
88
  function mc4wp_get_current_url() {
89
+ global $wp;
90
+ $url = home_url( $wp->request );
 
 
91
 
92
+ if( substr( $_SERVER['REQUEST_URI'], -1 ) === '/' ) {
93
+ $url = trailingslashit( $url );
94
+ }
95
+
96
+ return esc_url( $url );
97
+ }
98
 
99
+ /****************************~***
100
+ * Deprecated functions *
101
+ ********************************/
102
 
103
  /**
104
  * Echoes a sign-up form.
107
  * @see mc4wp_form()
108
  */
109
  function mc4wp_show_form( $id = 0 ) {
110
+ _deprecated_function( __FUNCTION__, 'MailChimp for WP v1.3.1', 'mc4wp_form' );
111
  mc4wp_form( $id );
112
  }
113
 
118
  * @see mc4wp_checkbox()
119
  */
120
  function mc4wp_show_checkbox() {
121
+ _deprecated_function( __FUNCTION__, 'MailChimp for WP v1.3.1', 'mc4wp_form' );
122
  mc4wp_checkbox();
123
  }
includes/integrations/class-general.php CHANGED
@@ -143,10 +143,12 @@ class MC4WP_General_Integration extends MC4WP_Integration {
143
  break;
144
  }
145
 
146
-
147
  } elseif( ! $email && is_email( $value ) ) {
148
- // find first email field
149
  $email = $value;
 
 
 
150
  } else {
151
  $simple_key = str_replace( array( '-', '_' ), '', strtolower( $key ) );
152
 
143
  break;
144
  }
145
 
 
146
  } elseif( ! $email && is_email( $value ) ) {
147
+ // if no email is found yet, check if current field value is an email
148
  $email = $value;
149
+ } elseif( ! $email && is_array( $value ) && isset( $value[0] ) && is_email( $value[0] ) ) {
150
+ // if no email is found yet, check if current value is an array and if first array value is an email
151
+ $email = $value[0];
152
  } else {
153
  $simple_key = str_replace( array( '-', '_' ), '', strtolower( $key ) );
154
 
includes/integrations/class-integration.php CHANGED
@@ -98,7 +98,7 @@ abstract class MC4WP_Integration {
98
 
99
  }
100
 
101
- $content = "\n<!-- MailChimp for WP v". MC4WP_LITE_VERSION ." - https://dannyvankooten.com/mailchimp-for-wordpress/ -->\n";
102
 
103
  do_action( 'mc4wp_before_checkbox' );
104
 
@@ -111,7 +111,7 @@ abstract class MC4WP_Integration {
111
  $content .= '</p>';
112
 
113
  // honeypot
114
- $content .= '<textarea type="text" name="_mc4wp_required_but_not_really" style="display: none !important;"></textarea>';
115
 
116
  do_action( 'mc4wp_after_checkbox' );
117
 
98
 
99
  }
100
 
101
+ $content = "<!-- MailChimp for WP v". MC4WP_LITE_VERSION ." - https://dannyvankooten.com/mailchimp-for-wordpress/ -->";
102
 
103
  do_action( 'mc4wp_before_checkbox' );
104
 
111
  $content .= '</p>';
112
 
113
  // honeypot
114
+ $content .= '<textarea name="_mc4wp_required_but_not_really" style="display: none !important;"></textarea>';
115
 
116
  do_action( 'mc4wp_after_checkbox' );
117
 
includes/views/form-settings.php CHANGED
@@ -224,6 +224,16 @@ if( ! defined("MC4WP_LITE_VERSION") ) {
224
  <?php $language = defined( 'ICL_LANGUAGE_CODE' ) ? ICL_LANGUAGE_CODE : get_locale(); ?>
225
 
226
  <table class="mc4wp-help">
 
 
 
 
 
 
 
 
 
 
227
  <tr>
228
  <th>{subscriber_count}</th>
229
  <td><?php _e( 'Replaced with the number of subscribers on the selected list(s)', 'mailchimp-for-wp' ); ?></td>
224
  <?php $language = defined( 'ICL_LANGUAGE_CODE' ) ? ICL_LANGUAGE_CODE : get_locale(); ?>
225
 
226
  <table class="mc4wp-help">
227
+ <tr>
228
+ <th>{response}</th>
229
+ <td><?php _e( 'Replaced with the form response (error or success messages).', 'mailchimp-for-wp' ); ?></td>
230
+ </tr>
231
+ <?php if( $this->has_captcha_plugin ) { ?>
232
+ <tr>
233
+ <th>{captcha}</th>
234
+ <td><?php _e( 'Replaced with a captcha field.', 'mailchimp-for-wp' ); ?></td>
235
+ </tr>
236
+ <?php } ?>
237
  <tr>
238
  <th>{subscriber_count}</th>
239
  <td><?php _e( 'Replaced with the number of subscribers on the selected list(s)', 'mailchimp-for-wp' ); ?></td>
includes/views/parts/admin-footer.php CHANGED
@@ -6,6 +6,5 @@ if( ! defined("MC4WP_LITE_VERSION") ) {
6
  }
7
  ?>
8
  <br style="clear:both;" />
9
- <p class="help">Enjoying this plugin? <a href="https://dannyvankooten.com/mailchimp-for-wordpress/#utm_source=lite-plugin&utm_medium=link&utm_campaign=footer-link">Upgrade to MailChimp for WordPress Pro now</a> for an even better plugin, you will love it.</p>
10
- <p class="help">Submit your feature requests or vote for new features <a href="http://www.google.com/moderator/#15/e=20c6b7&t=20c6b7.40">here</a>.</p>
11
  <p class="help"><?php _e( 'This plugin is not developed by or affiliated with MailChimp in any way.', 'mailchimp-for-wp' ); ?></p>
6
  }
7
  ?>
8
  <br style="clear:both;" />
9
+ <p class="help"><?php printf( __( 'Enjoying this plugin? <a href="%s">Upgrade to MailChimp for WordPress Pro now</a> for an even better plugin, you will love it.', 'mailchimp-for-wp' ), 'https://mc4wp.com/#utm_source=lite-plugin&utm_medium=link&utm_campaign=footer-link' ); ?></p>
 
10
  <p class="help"><?php _e( 'This plugin is not developed by or affiliated with MailChimp in any way.', 'mailchimp-for-wp' ); ?></p>
includes/views/parts/admin-need-support.php CHANGED
@@ -8,7 +8,7 @@ if( ! defined("MC4WP_LITE_VERSION") ) {
8
  <div class="mc4wp-box">
9
  <h4 class="mc4wp-title">Looking for support?</h4>
10
  <p>Make sure to look at the <a href="http://wordpress.org/plugins/mailchimp-for-wp/faq/">frequently asked questions</a> or use the <a href="http://wordpress.org/support/plugin/mailchimp-for-wp">support forums</a> on WordPress.org.</p>
11
- <p>If you need priority support, please <a href="https://dannyvankooten.com/mailchimp-for-wordpress/#utm_source=lite-plugin&utm_medium=link&utm_campaign=support-link">upgrade to the premium version</a>.</p>
12
  </div>
13
 
14
  <div class="mc4wp-box">
@@ -16,14 +16,13 @@ if( ! defined("MC4WP_LITE_VERSION") ) {
16
  <ul class="ul-square">
17
  <li><a target="_blank" href="http://wordpress.org/support/view/plugin-reviews/mailchimp-for-wp?rate=5#postform">Leave a &#9733;&#9733;&#9733;&#9733;&#9733; plugin review on WordPress.org</a></li>
18
  <li><a target="_blank" href="http://twitter.com/?status=Showing%20my%20appreciation%20to%20%40DannyvanKooten%20for%20his%20WordPress%20plugin%3A%20MailChimp%20for%20WP%20%20-%20check%20it%20out!%20http%3A%2F%2Fwordpress.org%2Fplugins%2Fmailchimp-for-wp%2F">Tweet about MailChimp for WordPress</a></li>
19
- <li>Review the plugin on your blog and link to <a href="https://dannyvankooten.com/mailchimp-for-wordpress/#utm_source=lite-plugin&utm_medium=link&utm_campaign=show-appreciation">the plugin page</a></li>
20
  <li><a target="_blank" href="http://wordpress.org/plugins/mailchimp-for-wp/">Vote "works" on the WordPress.org plugin page</a></li>
21
  </ul>
22
  </div>
23
  <div class="mc4wp-box">
24
- <h4 class="mc4wp-title">About 12notions</h4>
25
- <p>12notions is the brand new company with which <a href="http://dannyvankooten.com/?utm_source=lite-plugin&utm_medium=link&utm_campaign=about">Danny van Kooten</a>, the developer of this plugin, strives to develop more and even better plugins.</p>
26
- <p>If you like Danny's work, please "like" the 12notions Facebook page to stay updated or have a look at <a href="http://dannyvankooten.com/wordpress-plugins/#utm_source=lite-plugin&utm_medium=link&utm_campaign=about">his other WordPress plugins</a>.</p>
27
- <p><iframe src="//www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.facebook.com%2F12notions&amp;width&amp;layout=standard&amp;action=like&amp;show_faces=true&amp;share=false&amp;appId=225994527565061" scrolling="no" frameborder="0" style="border:none; width: 100%; overflow:hidden; height: 80px;" allowTransparency="true"></iframe></p>
28
- <p>You should follow <a href="http://twitter.com/12notions">@12notions</a> or <a href="http://twitter.com/dannyvankooten">@DannyvanKooten</a> on Twitter.</p>
29
  </div>
8
  <div class="mc4wp-box">
9
  <h4 class="mc4wp-title">Looking for support?</h4>
10
  <p>Make sure to look at the <a href="http://wordpress.org/plugins/mailchimp-for-wp/faq/">frequently asked questions</a> or use the <a href="http://wordpress.org/support/plugin/mailchimp-for-wp">support forums</a> on WordPress.org.</p>
11
+ <p>If you need priority support, please <a href="https://mc4wp.com/#utm_source=lite-plugin&utm_medium=link&utm_campaign=support-link">upgrade to the premium version</a>.</p>
12
  </div>
13
 
14
  <div class="mc4wp-box">
16
  <ul class="ul-square">
17
  <li><a target="_blank" href="http://wordpress.org/support/view/plugin-reviews/mailchimp-for-wp?rate=5#postform">Leave a &#9733;&#9733;&#9733;&#9733;&#9733; plugin review on WordPress.org</a></li>
18
  <li><a target="_blank" href="http://twitter.com/?status=Showing%20my%20appreciation%20to%20%40DannyvanKooten%20for%20his%20WordPress%20plugin%3A%20MailChimp%20for%20WP%20%20-%20check%20it%20out!%20http%3A%2F%2Fwordpress.org%2Fplugins%2Fmailchimp-for-wp%2F">Tweet about MailChimp for WordPress</a></li>
19
+ <li>Review the plugin on your blog and link to <a href="https://mc4wp.com/#utm_source=lite-plugin&utm_medium=link&utm_campaign=show-appreciation">the plugin page</a></li>
20
  <li><a target="_blank" href="http://wordpress.org/plugins/mailchimp-for-wp/">Vote "works" on the WordPress.org plugin page</a></li>
21
  </ul>
22
  </div>
23
  <div class="mc4wp-box">
24
+ <h4 class="mc4wp-title">About Danny van Kooten</h4>
25
+ <p>I am a relatively young Dutch guy writing code and emails for a living. I developed a few WordPress plugins together totaling well over a million downloads, one of which you're using right now.</p>
26
+ <p>If you like to stay updated of what I'm doing, consider following <a href="http://twitter.com/dannyvankooten">@DannyvanKooten</a> on Twitter.</p>
27
+ <p>Hope you enjoy the plugin!</p>
 
28
  </div>
includes/views/parts/admin-upgrade-to-pro.php CHANGED
@@ -12,5 +12,5 @@ if( ! defined("MC4WP_LITE_VERSION") ) {
12
 
13
  <p>Pro features include better and multiple forms, advanced and easy form styling, more default themes, detailed statistics and priority support.</p>
14
 
15
- <p><a href="https://dannyvankooten.com/mailchimp-for-wordpress/#utm_source=lite-plugin&utm_medium=link&utm_campaign=upgrade-box">More information about MailChimp for WP Pro &raquo;</a></p>
16
  </div>
12
 
13
  <p>Pro features include better and multiple forms, advanced and easy form styling, more default themes, detailed statistics and priority support.</p>
14
 
15
+ <p><a href="https://mc4wp.com/#utm_source=lite-plugin&utm_medium=link&utm_campaign=upgrade-box">More information about MailChimp for WP Pro &raquo;</a></p>
16
  </div>
languages/mailchimp-for-wp-de_DE.mo ADDED
Binary file
languages/mailchimp-for-wp-de_DE.po ADDED
@@ -0,0 +1,1114 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: MailChimp for WordPress\n"
4
+ "POT-Creation-Date: 2014-05-14 22:11+0100\n"
5
+ "PO-Revision-Date: 2014-07-30 14:50+0100\n"
6
+ "Last-Translator: Jochen <gmmediadienste@gmail.com>\n"
7
+ "Language-Team: Danny van Kooten <hi@dannyvankooten.com>\n"
8
+ "MIME-Version: 1.0\n"
9
+ "Content-Type: text/plain; charset=UTF-8\n"
10
+ "Content-Transfer-Encoding: 8bit\n"
11
+ "X-Generator: Poedit 1.6.7\n"
12
+ "X-Poedit-KeywordsList: _;gettext;gettext_noop;__;_e\n"
13
+ "X-Poedit-Basepath: .\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "Language: de_DE\n"
16
+ "X-Poedit-SearchPath-0: ..\n"
17
+
18
+ #: ../includes/class-admin.php:178
19
+ msgid "Settings"
20
+ msgstr "Einstellungen"
21
+
22
+ #: ../includes/class-admin.php:197
23
+ msgid "Documentation"
24
+ msgstr "Dokumentation"
25
+
26
+ #: ../includes/class-admin.php:209
27
+ msgid "Save Form"
28
+ msgstr "Formular Speichern"
29
+
30
+ #: ../includes/class-admin.php:211
31
+ msgid "Update Form"
32
+ msgstr "Formular Aktualisieren"
33
+
34
+ #: ../includes/class-admin.php:248
35
+ msgid "Your email address"
36
+ msgstr "Deine E-Mail Adresse"
37
+
38
+ #: ../includes/class-admin.php:249
39
+ msgid "Email address"
40
+ msgstr "E-Mail Adresse"
41
+
42
+ #: ../includes/class-admin.php:250
43
+ msgid "Sign up"
44
+ msgstr "Registrieren"
45
+
46
+ #: ../includes/class-admin.php:261
47
+ msgid "Back to general form settings"
48
+ msgstr "Zu den Standard Formular Einstellungen"
49
+
50
+ #: ../includes/class-admin.php:263
51
+ msgid "Form updated."
52
+ msgstr "Formular aktualisiert."
53
+
54
+ #: ../includes/class-admin.php:264
55
+ msgid "Form saved."
56
+ msgstr "Formular gespeichert."
57
+
58
+ #: ../includes/class-admin.php:321
59
+ msgid "Form settings"
60
+ msgstr "Formular Einstellungen"
61
+
62
+ #: ../includes/class-admin.php:322
63
+ msgid "Optional settings"
64
+ msgstr "Optionale Einstellungen"
65
+
66
+ #: ../includes/class-admin.php:323
67
+ msgid "Form variables"
68
+ msgstr "Formular Variablen"
69
+
70
+ #: ../includes/class-admin.php:357
71
+ msgid "Use the following variables to add some dynamic content to your form."
72
+ msgstr ""
73
+ "Benutze die folgenden Variablen um zusätzlichen Text zu deinem Formular "
74
+ "hinzuzufügen."
75
+
76
+ #: ../includes/class-admin.php:497
77
+ #, php-format
78
+ msgid ""
79
+ "Couldn't create the stylesheet. Manually add the generated CSS to your theme "
80
+ "stylesheet by using the %sTheme Editor%s or use FTP and edit <em>%s</em>."
81
+ msgstr ""
82
+ "Konnte das Stylesheet nicht erzeugen. Füge das erstellte CSS zu deinem Theme "
83
+ "Stylesheet, mit dem %sTheme Editor%s oder nutze FTP und ändere <em>%s</em>."
84
+
85
+ #: ../includes/class-admin.php:498
86
+ #, php-format
87
+ msgid "%sShow CSS%s"
88
+ msgstr "%sZeige CSS%s"
89
+
90
+ #: ../includes/class-admin.php:507
91
+ #, php-format
92
+ msgid ""
93
+ "To apply these styles on your website, select \"load custom form styles\" in "
94
+ "the %sform settings%s"
95
+ msgstr ""
96
+ "Um die Formatierungen anzuwenden, wähle \"Lade benutzerdefinierte Formular "
97
+ "Stile\" in den %sFormular Einstellungen%s"
98
+
99
+ #: ../includes/class-admin.php:508
100
+ #, php-format
101
+ msgid "The %sCSS Stylesheet%s has been created."
102
+ msgstr "Das %sCSS Stylesheet%s wurde erstellt."
103
+
104
+ #: ../includes/class-admin.php:524
105
+ msgid "General Settings"
106
+ msgstr "Allgemeine Einstellungen"
107
+
108
+ #: ../includes/class-admin.php:525
109
+ msgid "Checkboxes"
110
+ msgstr "Checkboxen"
111
+
112
+ #: ../includes/class-admin.php:526
113
+ #: ../includes/views/pages/admin-form-settings.php:10
114
+ msgid "Forms"
115
+ msgstr "Formulare"
116
+
117
+ #: ../includes/class-admin.php:527
118
+ #: ../includes/views/pages/admin-reports.php:10
119
+ msgid "Reports"
120
+ msgstr "Berichte"
121
+
122
+ #: ../includes/class-admin.php:596
123
+ msgid "Comment form"
124
+ msgstr "Kommentar Formular"
125
+
126
+ #: ../includes/class-admin.php:597
127
+ msgid "Registration form"
128
+ msgstr "Registrierungs Formular"
129
+
130
+ #: ../includes/class-admin.php:601
131
+ msgid "MultiSite forms"
132
+ msgstr "MultiSite Formular"
133
+
134
+ #: ../includes/class-admin.php:605
135
+ msgid "BuddyPress registration"
136
+ msgstr "BuddyPress Formular"
137
+
138
+ #: ../includes/class-admin.php:613 ../includes/class-admin.php:617
139
+ #, php-format
140
+ msgid "%s checkout"
141
+ msgstr "%s Checkout"
142
+
143
+ #: ../includes/class-admin.php:653
144
+ #, php-format
145
+ msgid ""
146
+ "Please make sure the plugin is connected to MailChimp. <a href=\"%s"
147
+ "\">Provide a valid API key.</a>"
148
+ msgstr ""
149
+ "Bitte stelle sicher, dass das Plugin mit MailChimp verbunden ist. <a href="
150
+ "\"%s\">Gültigen API Schlüssel eingeben.</a>"
151
+
152
+ #: ../includes/class-admin.php:792
153
+ #, php-format
154
+ msgid ""
155
+ "<strong>Welcome to MailChimp for WordPress Pro!</strong> We transfered the "
156
+ "settings you had set in the Lite version, please <a href=\"%s\">deactivate "
157
+ "it now</a> to prevent problems"
158
+ msgstr ""
159
+ "<strong>Willkommen zu MailChimp for WordPress Pro!</strong> Wir haben die "
160
+ "Einstellungen von der Lite Version übertragen, bitte <a href=\"%s"
161
+ "\">deaktiviere diese jetzt</a> um Probleme zu vermeiden."
162
+
163
+ #: ../includes/class-admin.php:865
164
+ msgid "Renewed MailChimp cache."
165
+ msgstr "MailChimp Cache erneuern."
166
+
167
+ #: ../includes/class-admin.php:867
168
+ msgid "Failed to renew MailChimp cache - please try again later."
169
+ msgstr ""
170
+ "Konnte den MailChimp Cache nicht erneuern - Bitte später noch mal probieren."
171
+
172
+ #: ../includes/class-form-manager.php:248
173
+ #, php-format
174
+ msgid "<strong>Error:</strong> Please specify a form ID. Example: %s."
175
+ msgstr "<strong>Fehler:</strong> Bitte eine Formular ID angeben. Beispiel: %s."
176
+
177
+ #: ../includes/class-form-manager.php:261
178
+ msgid ""
179
+ "<strong>Error:</strong> Sign-up form not found. Please check if you used the "
180
+ "correct form ID."
181
+ msgstr ""
182
+ "<strong>Fehler:</strong> Registrierungsformular nicht gefunden . Bitte "
183
+ "überprüfe ob die richtige Formular ID verwendet wurde."
184
+
185
+ #: ../includes/class-form-manager.php:370
186
+ #, php-format
187
+ msgid ""
188
+ "<strong>Admin notice:</strong> you have not yet selected a MailChimp list(s) "
189
+ "for this form. <a target=\"_top\" href=\"%s\">Edit this sign-up form</a> and "
190
+ "select at least one list."
191
+ msgstr ""
192
+ "<strong>Admin Hinweis:</strong> Du hast noch keine MailChimp Liste für "
193
+ "dieses Formular ausgewählt. <a target=\"_top\" href=\"%s\">Bearbeite dieses "
194
+ "Registrierungsformular</a> und wähle zumindest eine Liste aus."
195
+
196
+ #: ../includes/class-form-manager.php:833
197
+ msgid "New Sign-Up"
198
+ msgstr "Neue Registrierung"
199
+
200
+ #: ../includes/class-form-manager.php:834
201
+ #, php-format
202
+ msgid "<strong>%s</strong> signed-up at %s on %s using the form \"%s\"."
203
+ msgstr ""
204
+ "<strong>%s</strong> hat sich um %s auf %s registriert und hat dafür das "
205
+ "Formular \"%s\" genutzt."
206
+
207
+ #: ../includes/class-form-manager.php:873
208
+ msgid "This email was auto-sent by the MailChimp for WordPress plugin."
209
+ msgstr ""
210
+ "Diese E-Mail wurde automatisch vom MailChimp for WordPress Plugin versendet."
211
+
212
+ #: ../includes/class-widget.php:20
213
+ msgid "MailChimp for WP Form"
214
+ msgstr "MailChimp for WP Formular"
215
+
216
+ #: ../includes/class-widget.php:21
217
+ msgid "Displays one of your MailChimp for WordPress sign-up forms"
218
+ msgstr "Zeige eines deiner MailChimp for WordPress Registrierungsformulare an"
219
+
220
+ #: ../includes/class-widget.php:39
221
+ #, php-format
222
+ msgid ""
223
+ "Please select the sign-up form you'd like to show here in the <a href=\"%s"
224
+ "\">widget settings</a>."
225
+ msgstr ""
226
+ "Bitte wähle aus, welches Registrierungsformular du hier in den <a href=\"%s"
227
+ "\">Widget Einstellungen</a> anzeigen möchtest."
228
+
229
+ #: ../includes/class-widget.php:68
230
+ msgid "Newsletter"
231
+ msgstr "Newsletter"
232
+
233
+ #: ../includes/class-widget.php:79
234
+ msgid "Title:"
235
+ msgstr "Titel:"
236
+
237
+ #: ../includes/class-widget.php:83
238
+ msgid "Form:"
239
+ msgstr "Formular:"
240
+
241
+ #: ../includes/class-widget.php:85
242
+ msgid "Select the form to show"
243
+ msgstr "Wähle ein Formular aus"
244
+
245
+ #: ../includes/class-widget.php:93
246
+ #, php-format
247
+ msgid "You don't have any sign-up forms. <a href=\"%s\">Create one now.</a>"
248
+ msgstr ""
249
+ "Du hast keine Registrierungsformulare. <a href=\"%s\">Erstelle jetzt eines.</"
250
+ "a>"
251
+
252
+ #: ../includes/functions/general.php:20
253
+ msgid "Sign me up for the newsletter!"
254
+ msgstr "Trage mich in den Newsletter ein!"
255
+
256
+ #: ../includes/functions/general.php:42
257
+ msgid ""
258
+ "Thank you, your sign-up request was successful! Please check your e-mail "
259
+ "inbox."
260
+ msgstr ""
261
+ "Danke, deine Eintragung war erfolgreich. Bitte überprüfe nun deinen E-Mail "
262
+ "Posteingang."
263
+
264
+ #: ../includes/functions/general.php:43
265
+ msgid "Oops. Something went wrong. Please try again later."
266
+ msgstr ""
267
+ "Oops. Irgendwas ist schief gelaufen. Bitte versuche es später noch mal."
268
+
269
+ #: ../includes/functions/general.php:44
270
+ msgid "Please provide a valid email address."
271
+ msgstr "Bitte eine gültige E-Mail Adresse angeben."
272
+
273
+ #: ../includes/functions/general.php:45
274
+ msgid "Given email address is already subscribed, thank you!"
275
+ msgstr ""
276
+ "Die angegebene E-Mail Adresse befindet sicher bereits im Verteile, Danke!"
277
+
278
+ #: ../includes/functions/general.php:46
279
+ msgid "Please complete the CAPTCHA."
280
+ msgstr "Bitte das CAPTCHA eingeben."
281
+
282
+ #: ../includes/integrations/class-cf7.php:44
283
+ #: ../includes/views/metaboxes/optional-form-settings.php:16
284
+ #: ../includes/views/metaboxes/optional-form-settings.php:30
285
+ #: ../includes/views/metaboxes/optional-form-settings.php:44
286
+ #: ../includes/views/metaboxes/optional-form-settings.php:58
287
+ #: ../includes/views/metaboxes/optional-form-settings.php:75
288
+ #: ../includes/views/metaboxes/optional-form-settings.php:87
289
+ #: ../includes/views/metaboxes/optional-form-settings.php:106
290
+ #: ../includes/views/pages/admin-checkbox-settings.php:52
291
+ #: ../includes/views/pages/admin-checkbox-settings.php:60
292
+ #: ../includes/views/pages/admin-checkbox-settings.php:90
293
+ #: ../includes/views/pages/admin-checkbox-settings.php:95
294
+ #: ../includes/views/tabs/admin-forms-general-settings.php:58
295
+ #: ../includes/views/tabs/admin-forms-general-settings.php:69
296
+ #: ../includes/views/tabs/admin-forms-general-settings.php:79
297
+ #: ../includes/views/tabs/admin-forms-general-settings.php:90
298
+ #: ../includes/views/tabs/admin-forms-general-settings.php:104
299
+ #: ../includes/views/tabs/admin-forms-general-settings.php:109
300
+ msgid "Yes"
301
+ msgstr "Ja"
302
+
303
+ #: ../includes/integrations/class-cf7.php:44
304
+ #: ../includes/views/metaboxes/optional-form-settings.php:18
305
+ #: ../includes/views/metaboxes/optional-form-settings.php:32
306
+ #: ../includes/views/metaboxes/optional-form-settings.php:46
307
+ #: ../includes/views/metaboxes/optional-form-settings.php:60
308
+ #: ../includes/views/metaboxes/optional-form-settings.php:77
309
+ #: ../includes/views/metaboxes/optional-form-settings.php:89
310
+ #: ../includes/views/metaboxes/optional-form-settings.php:107
311
+ #: ../includes/views/pages/admin-checkbox-settings.php:52
312
+ #: ../includes/views/pages/admin-checkbox-settings.php:62
313
+ #: ../includes/views/pages/admin-checkbox-settings.php:90
314
+ #: ../includes/views/pages/admin-checkbox-settings.php:95
315
+ #: ../includes/views/tabs/admin-forms-general-settings.php:22
316
+ #: ../includes/views/tabs/admin-forms-general-settings.php:60
317
+ #: ../includes/views/tabs/admin-forms-general-settings.php:71
318
+ #: ../includes/views/tabs/admin-forms-general-settings.php:81
319
+ #: ../includes/views/tabs/admin-forms-general-settings.php:92
320
+ #: ../includes/views/tabs/admin-forms-general-settings.php:104
321
+ #: ../includes/views/tabs/admin-forms-general-settings.php:109
322
+ msgid "No"
323
+ msgstr "Nein"
324
+
325
+ #: ../includes/library/license-manager/class-license-manager.php:132
326
+ #, php-format
327
+ msgid ""
328
+ "<b>Warning!</b> You're blocking external requests which means you won't be "
329
+ "able to get %s updates. Please add %s to %s."
330
+ msgstr ""
331
+ "<b>Achtung!</b> Du blockierst externe Anfragen, deshalb bekommst du keine %s "
332
+ "Updates. Bitte mache %s zu %s."
333
+
334
+ #: ../includes/library/license-manager/class-license-manager.php:175
335
+ #, php-format
336
+ msgid "Your %s license has been activated. You have an unlimited license. "
337
+ msgstr "Deine %s Lizenz wurde aktiviert. Du hast eine unlimitierte Lizenz."
338
+
339
+ #: ../includes/library/license-manager/class-license-manager.php:177
340
+ #, php-format
341
+ msgid "Your %s license has been activated. You have used %d/%d activations. "
342
+ msgstr "Deine %s Lizenz wurde aktiviert. Du hast %d/%d Aktivierungen genutzt."
343
+
344
+ #: ../includes/library/license-manager/class-license-manager.php:182
345
+ #, php-format
346
+ msgid "<a href=\"%s\">Did you know you can upgrade your license?</a>"
347
+ msgstr "<a href=\"%s\"> Weiß du wie du deine Lizenz upgraden kannst?</a>"
348
+
349
+ #: ../includes/library/license-manager/class-license-manager.php:186
350
+ #, php-format
351
+ msgid ""
352
+ "<a href=\"%s\">Your license is expiring in %d days, would you like to extend "
353
+ "it?</a>"
354
+ msgstr ""
355
+ "<a href=\"%s\">Deine Lizenz verfällt in %d Tagen, willst du sie verlängern?</"
356
+ "a>"
357
+
358
+ #: ../includes/library/license-manager/class-license-manager.php:195
359
+ #, php-format
360
+ msgid ""
361
+ "You've reached your activation limit. You must <a href=\"%s\">upgrade your "
362
+ "license</a> to use it on this site."
363
+ msgstr ""
364
+ "Du hast das Aktivierungslimit erreicht. Du musst <a href=\"%s\">deine Lizenz "
365
+ "erweitern</a> um sie auf dieser Seite zu nutzen."
366
+
367
+ #: ../includes/library/license-manager/class-license-manager.php:198
368
+ #, php-format
369
+ msgid ""
370
+ "Your license has expired. You must <a href=\"%s\">extend your license</a> in "
371
+ "order to use it again."
372
+ msgstr ""
373
+ "Deine Lizenz ist abgelaufen. Du musst <a href=\"%s\">deine Lizenz "
374
+ "verlängern</a> um sie auf dieser Seite zu nutzen."
375
+
376
+ #: ../includes/library/license-manager/class-license-manager.php:201
377
+ msgid "Failed to activate your license, your license key seems to be invalid."
378
+ msgstr ""
379
+ "Die Lizenz konnte nicht aktiviert werden, die Lizenz scheint ungültig zu "
380
+ "sein."
381
+
382
+ #: ../includes/library/license-manager/class-license-manager.php:225
383
+ #, php-format
384
+ msgid "Your %s license has been deactivated."
385
+ msgstr "Dein %s wurde deaktiviert."
386
+
387
+ #: ../includes/library/license-manager/class-license-manager.php:227
388
+ #, php-format
389
+ msgid "Failed to deactivate your %s license."
390
+ msgstr "Die %s Lizenz konnte nicht deaktiviert werden."
391
+
392
+ #: ../includes/library/license-manager/class-license-manager.php:262
393
+ #, php-format
394
+ msgid "Request error: \"%s\""
395
+ msgstr "Fehler: \"%s\""
396
+
397
+ #: ../includes/library/license-manager/class-license-manager.php:420
398
+ #, php-format
399
+ msgid "%s: License Settings"
400
+ msgstr "%s: Lizenz Einstellungen"
401
+
402
+ #: ../includes/library/license-manager/class-plugin-license-manager.php:72
403
+ #, php-format
404
+ msgid ""
405
+ "%s is network activated, you can manage your license in the <a href=\"%s"
406
+ "\">network admin license page</a>."
407
+ msgstr ""
408
+ "%s ist Netzwerk aktiviert, du kannst deine Lizenz auf der <a href=\"%s"
409
+ "\">Netzwerk Admin Lizenz Seite</a> verwalten."
410
+
411
+ #: ../includes/library/license-manager/class-plugin-license-manager.php:74
412
+ #, php-format
413
+ msgid ""
414
+ "%s is network activated, please contact your site administrator to manage "
415
+ "the license."
416
+ msgstr ""
417
+ "%s ist Netzwerk aktiviert, bitte kontaktiere den Netzwerk Admin um die "
418
+ "Lizenz zu verwalten."
419
+
420
+ #: ../includes/library/license-manager/class-update-manager.php:83
421
+ #, php-format
422
+ msgid ""
423
+ "%s failed to check for updates because of the following error: <em>%s</em>"
424
+ msgstr ""
425
+ "%s konnte nicht auf Updates prüfen, wegen dem folgenden Fehler: <em>%s</em>"
426
+
427
+ #: ../includes/library/license-manager/class-update-manager.php:148
428
+ msgid ""
429
+ "This site has not been activated properly on dannyvankooten.com and thus "
430
+ "cannot check for future updates. Please activate your site with a valid "
431
+ "license key."
432
+ msgstr ""
433
+ "Die Seite wurde nicht auf dannyvankooten.com aktiviert, deshalb kann nicht "
434
+ "auf zukünftige Updates geprüft werden. Bitte aktiviere die Seite mit einem "
435
+ "gültigen Schlüssel."
436
+
437
+ #: ../includes/library/license-manager/views/form.php:23
438
+ msgid "License status"
439
+ msgstr "Lizenz Status"
440
+
441
+ #: ../includes/library/license-manager/views/form.php:33
442
+ msgid "Toggle license status"
443
+ msgstr "Lizenz Status umschalten"
444
+
445
+ #: ../includes/library/license-manager/views/form.php:38
446
+ msgid ""
447
+ "(deactivate your license so you can activate it on another WordPress site)"
448
+ msgstr ""
449
+ "(deaktiviere deine Lizenz um sie auf einer anderen Wordpress Seite zu nutzen)"
450
+
451
+ #: ../includes/library/license-manager/views/form.php:44
452
+ msgid "Please enter a license key in the field below first."
453
+ msgstr "Bitte trage vorher einen Lizenz Schlüssel in das Feld darunter ein."
454
+
455
+ #: ../includes/library/license-manager/views/form.php:52
456
+ msgid "License Key"
457
+ msgstr "Lizenz Schlüssel"
458
+
459
+ #: ../includes/library/license-manager/views/form.php:54
460
+ #, php-format
461
+ msgid "Paste your %s license key here.."
462
+ msgstr "Füge deinen %s Lizenz Schlüssel hier ein.."
463
+
464
+ #: ../includes/library/license-manager/views/form.php:56
465
+ #, php-format
466
+ msgid "You defined your license key using the %s PHP constant."
467
+ msgstr ""
468
+ "Du hast deinen Lizenz Schlüssen mittels der %s PHP Konstante angegeben."
469
+
470
+ #: ../includes/library/license-manager/views/form.php:73
471
+ #, php-format
472
+ msgid "Your %s license will expire on %s."
473
+ msgstr "Deine %s Lizenz wird am %s verfallen."
474
+
475
+ #: ../includes/library/license-manager/views/form.php:76
476
+ #, php-format
477
+ msgid "%sRenew your license now%s."
478
+ msgstr "%sErneuere deine Lizenz jetzt%s."
479
+
480
+ #: ../includes/tables/class-forms-table.php:19
481
+ msgid "Sign-Up Form"
482
+ msgstr "Registrierungs Formular"
483
+
484
+ #: ../includes/tables/class-forms-table.php:20
485
+ msgid "Sign-up Forms"
486
+ msgstr "Registrierungs Formulare"
487
+
488
+ #: ../includes/tables/class-forms-table.php:36
489
+ msgid "Form"
490
+ msgstr "Formulare"
491
+
492
+ #: ../includes/tables/class-forms-table.php:37
493
+ msgid "Shortcode"
494
+ msgstr "Shortcode"
495
+
496
+ #: ../includes/tables/class-forms-table.php:38
497
+ msgid "List(s)"
498
+ msgstr "Liste(n)"
499
+
500
+ #: ../includes/tables/class-forms-table.php:39
501
+ msgid "Last edited"
502
+ msgstr "Zuletzt bearbeitet"
503
+
504
+ #: ../includes/tables/class-forms-table.php:103
505
+ msgid "You have not created any sign-up forms yet. Time to do so!"
506
+ msgstr ""
507
+ "Du hast noch kein Registrierungs-Formular erstellt. Es ist nun Zeit dafür!"
508
+
509
+ #: ../includes/tables/class-log-table.php:23
510
+ msgid "Subscriber"
511
+ msgstr "Abonnent"
512
+
513
+ #: ../includes/tables/class-log-table.php:24
514
+ msgid "Subscribers"
515
+ msgstr "Abonnenten"
516
+
517
+ #: ../includes/tables/class-log-table.php:44
518
+ msgid "Email"
519
+ msgstr "E-Mail"
520
+
521
+ #: ../includes/tables/class-log-table.php:45
522
+ msgid "List"
523
+ msgstr "Liste"
524
+
525
+ #: ../includes/tables/class-log-table.php:46
526
+ msgid "Type"
527
+ msgstr "Art"
528
+
529
+ #: ../includes/tables/class-log-table.php:47
530
+ msgid "Source"
531
+ msgstr "Quelle"
532
+
533
+ #: ../includes/tables/class-log-table.php:48
534
+ msgid "Extra data"
535
+ msgstr "Zusätzliche Daten"
536
+
537
+ #: ../includes/tables/class-log-table.php:49
538
+ msgid "Subscribed"
539
+ msgstr "abonniert"
540
+
541
+ #: ../includes/tables/class-log-table.php:258
542
+ msgid "No subscribe requests found."
543
+ msgstr "Keine Anmelde Anfragen gefunden."
544
+
545
+ #: ../includes/views/metaboxes/optional-form-settings.php:8
546
+ #, php-format
547
+ msgid ""
548
+ "Any settings you specify here will override the <a href=\"%s\">general form "
549
+ "settings</a>. If no setting is specified, the corresponding general setting "
550
+ "value will be used."
551
+ msgstr ""
552