PluginProbe
Mailchimp List Subscribe Form / 1.5
Mailchimp List Subscribe Form v1.5
1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 1.3 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.5 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 All 55 releases
mailchimp / mailchimp_widget.php

mailchimp_widget.php in Mailchimp List Subscribe Form 1.5, at mailchimp_widget.php

689 lines 24.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Displays a MailChimp Signup Form
4 **/
5 function mailchimpSF_signup_form($args = array()) {
6 extract($args);
7
8 $mv = get_option('mc_merge_vars');
9 $igs = get_option('mc_interest_groups');
10
11 // See if we have valid Merge Vars
12 if (!is_array($mv)) {
13 echo $before_widget;
14 ?>
15 <div class="mc_error_msg">
16 <?php echo __('Sorry, there was a problem loading your MailChimp details. Please navigate to <strong>Settings</strong> and click <strong>MailChimp Setup</strong> to try again.', 'mailchimp_i18n'); ?>
17 </div>
18 <?php
19 echo $after_widget;
20 return;
21 }
22
23 if (!empty($before_widget)) {
24 echo $before_widget;
25 }
26
27 $header = get_option('mc_header_content');
28
29 // See if we have custom header content
30 if (!empty($header)) {
31 // See if we need to wrap the header content in our own div
32 if (strlen($header) == strlen(strip_tags($header))){
33 echo !empty($before_title) ? $before_title : '<div class="mc_custom_border_hdr">';
34 echo $header; // don't escape $header b/c it may have HTML allowed
35 echo !empty($after_title) ? $after_title : '</div><!-- /mc_custom_border_hdr -->';
36 }
37 else {
38 echo $header; // don't escape $header b/c it may have HTML allowed
39 }
40 }
41
42 $sub_heading = trim(get_option('mc_subheader_content'));
43
44 if(get_option('mc_nuke_all_styles') != true) {
45 ?>
46 <style>
47 .widget_mailchimpsf_widget .widget-title {
48 line-height: 1.4em;
49 margin-bottom: 0.75em;
50 }
51 #mc_subheader {
52 line-height: 1.25em;
53 margin-bottom: 18px;
54 }
55 .mc_merge_var {
56 margin-bottom: 1.0em;
57 }
58 .mc_var_label,
59 .mc_interest_label {
60 display: block;
61 margin-bottom: 0.5em;
62 }
63 .mc_input {
64 -moz-box-sizing: border-box;
65 -webkit-box-sizing: border-box;
66 box-sizing: border-box;
67 width: 100%;
68 }
69 .mc_input.mc_phone {
70 width: auto;
71 }
72 select.mc_select {
73 margin-top: 0.5em;
74 width: 100%;
75 }
76 .mc_address_label {
77 margin-top: 1.0em;
78 margin-bottom: 0.5em;
79 display: block;
80 }
81 .mc_address_label ~ select {
82 width: 100%;
83 }
84 .mc_list li {
85 list-style: none;
86 background: none !important;
87 }
88 .mc_interests_header {
89 margin-top: 1.0em;
90 margin-bottom: 0.5em;
91 }
92 .mc_interest label,
93 .mc_interest input {
94 margin-bottom: 0.4em;
95 }
96 #mc_signup_submit {
97 margin-top: 1.5em;
98 width: 80%;
99 }
100 #mc_unsub_link a {
101 font-size: 0.75em;
102 }
103 #mc_unsub_link {
104 margin-top: 1.0em;
105 }
106 .mc_header_address,
107 .mc_email_format {
108 display: block;
109 font-weight: bold;
110 margin-top: 1.0em;
111 margin-bottom: 0.5em;
112 }
113 .mc_email_options {
114 margin-top: 0.5em;
115 }
116 .mc_email_type {
117 padding-left: 4px;
118 }
119 </style>
120 <?php
121 }
122 ?>
123
124 <div id="mc_signup">
125 <form method="post" action="#mc_signup" id="mc_signup_form">
126 <input type="hidden" id="mc_submit_type" name="mc_submit_type" value="html" />
127 <input type="hidden" name="mcsf_action" value="mc_submit_signup_form" />
128 <?php wp_nonce_field('mc_submit_signup_form', '_mc_submit_signup_form_nonce', false); ?>
129
130 <?php
131 if ($sub_heading) {
132 ?>
133 <div id="mc_subheader">
134 <?php echo $sub_heading; ?>
135 </div><!-- /mc_subheader -->
136 <?php
137 }
138 ?>
139
140 <div class="mc_form_inside">
141
142 <div class="updated" id="mc_message">
143 <?php echo mailchimpSF_global_msg(); ?>
144 </div><!-- /mc_message -->
145
146 <?php
147 //don't show the "required" stuff if there's only 1 field to display.
148 $num_fields = 0;
149 foreach((array)$mv as $var) {
150 $opt = 'mc_mv_'.$var['tag'];
151 if ($var['required'] || get_option($opt) == 'on') {
152 $num_fields++;
153 }
154 }
155
156 if (is_array($mv)) {
157 // head on back to the beginning of the array
158 reset($mv);
159 }
160
161 // Loop over our vars, and output the ones that are set to display
162 foreach($mv as $var) {
163 if (!$var['public']) {
164 echo '<div style="display:none;">'.mailchimp_form_field($var, $num_fields).'</div>';
165 }
166 else {
167 echo mailchimp_form_field($var, $num_fields);
168 }
169 }
170
171
172 // Show an explanation of the * if there's more than one field
173 if ($num_fields > 1) {
174 ?>
175 <div id="mc-indicates-required">
176 * = <?php esc_html_e('required field', 'mailchimp_i18n'); ?>
177 </div><!-- /mc-indicates-required -->
178 <?php
179 }
180
181
182 // Show our Interest groups fields if we have them, and they're set to on
183 if (is_array($igs) && !empty($igs)) {
184 foreach ($igs as $ig) {
185 if (is_array($ig) && isset($ig['id'])) {
186 if (($igs && get_option('mc_show_interest_groups_'.$ig['id']) == 'on')) {
187 if ($ig['type'] != 'hidden') {
188 ?>
189 <div class="mc_interests_header">
190 <?php echo esc_html($ig['title']); ?>
191 </div><!-- /mc_interests_header -->
192 <div class="mc_interest">
193 <?php
194 }
195 else {
196 ?>
197 <div class="mc_interest" style="display: none;">
198 <?php
199 }
200 ?>
201
202 <?php
203 mailchimp_interest_group_field($ig);
204 ?>
205 </div><!-- /mc_interest -->
206
207 <?php
208 }
209 }
210 }
211 }
212
213 if (get_option('mc_email_type_option')) {
214 ?>
215 <div class="mergeRow">
216 <label class="mc_email_format"><?php _e('Preferred Format', 'mailchimp_i18n'); ?></label>
217 <div class="field-group groups mc_email_options">
218 <ul class="mc_list">
219 <li><input type="radio" name="email_type" id="email_type_html" value="html" checked="checked"><label for="email_type_html" class="mc_email_type"><?php _e('HTML', 'mailchimp_i18n'); ?></label></li>
220 <li><input type="radio" name="email_type" id="email_type_text" value="text"><label for="email_type_text" class="mc_email_type"><?php _e('Text', 'mailchimp_i18n'); ?></label></li>
221 </ul>
222 </div>
223 </div>
224
225 <?php
226 }
227
228 $submit_text = get_option('mc_submit_text');
229
230 ?>
231
232 <div class="mc_signup_submit">
233 <input type="submit" name="mc_signup_submit" id="mc_signup_submit" value="<?php echo esc_attr($submit_text); ?>" class="button" />
234 </div><!-- /mc_signup_submit -->
235
236
237 <?php
238 $user = get_option('mc_user');
239 if ($user && get_option('mc_use_unsub_link') == 'on') {
240 $api = mailchimpSF_get_api();
241 $host = 'http://'.$api->datacenter.'.list-manage.com';
242 ?>
243 <div id="mc_unsub_link" align="center">
244 <a href="<?php echo esc_url($host.'/unsubscribe/?u='.$user['account_id'].'&amp;id='.get_option('mc_list_id')); ?>" target="_blank"><?php esc_html_e('unsubscribe from list', 'mailchimp_i18n'); ?></a>
245 </div><!-- /mc_unsub_link -->
246 <?php
247 }
248 if ($user && get_option('mc_rewards') == 'on') {
249 ?>
250 <br/>
251 <div id="mc_display_rewards" align="center">
252 <?php esc_html_e('powered by', 'mailchimp_i18n'); ?> <a href="<?php echo esc_url('http://www.mailchimp.com/affiliates/?aid='.$user['account_id'].'&amp;afl=1'); ?>">MailChimp</a>!
253 </div><!-- /mc_display_rewards -->
254 <?php
255 }
256 ?>
257
258 </div><!-- /mc_form_inside -->
259 </form><!-- /mc_signup_form -->
260 </div><!-- /mc_signup_container -->
261 <?php
262 if (!empty($after_widget)) {
263 echo $after_widget;
264 }
265 }
266
267 /**
268 * Generate and display markup for Interest Groups
269 * @param array $ig Set of Interest Groups to generate markup for
270 * @return void
271 */
272 function mailchimp_interest_group_field($ig) {
273 if (!is_array($ig)) {
274 return;
275 }
276 $html = '';
277 $set_name = 'group['.$ig['id'].']';
278 switch ($ig['type']) {
279 case 'checkboxes':
280 $i = 1;
281 foreach($ig['groups'] as $interest){
282 $interest_name = $interest['name'];
283 $interest_id = $interest['id'];
284 $html .= '
285
286 <input type="checkbox" name="'.esc_attr($set_name.'['.$interest_id.']').'" id="'.esc_attr('mc_interest_'.$ig['id'].'_'.$interest_id).'" class="mc_interest" value="'.esc_attr($interest_name).'" />
287 <label for="'. esc_attr('mc_interest_'.$ig['id'].'_'.$interest_id).'" class="mc_interest_label">'.esc_html($interest_name).'</label>
288 <br/>';
289 $i++;
290 }
291 break;
292 case 'radio':
293 foreach($ig['groups'] as $interest){
294 $interest_name = $interest['name'];
295 $interest_id = $interest['id'];
296 $html .= '
297 <input type="radio" name="'.esc_attr($set_name).'" id="'.esc_attr('mc_interest_'.$ig['id'].'_'.$interest_id).'" class="mc_interest" value="'.esc_attr($interest_id).'"/>
298 <label for="'.esc_attr('mc_interest_'.$ig['id'].'_'.$interest_id).'" class="mc_interest_label">'.esc_html($interest_name).'</label>
299 <br/>';
300 }
301 break;
302 case 'dropdown':
303 $html .= '
304 <select name="'.esc_attr($set_name).'">
305 <option value=""></option>';
306 foreach($ig['groups'] as $interest){
307 $interest_name = $interest['name'];
308 $interest_id = $interest['id'];
309 $html .= '
310 <option value="'.esc_attr($interest_id).'">'.esc_html($interest_name).'</option>';
311 }
312 $html .= '
313 </select>';
314 break;
315 case 'hidden':
316 $i = 1;
317 foreach($ig['groups'] as $interest) {
318 $interest_name = $interest['name'];
319 $interest_id = $interest['id'];
320 $html .= '
321 <input type="checkbox" name="'.esc_attr($set_name.'['.$i.']').'" id="'.esc_attr('mc_interest_'.$ig['id'].'_'.$interest_id).'" class="mc_interest" value="'.esc_attr($interest_name).'" />
322 <label for="'. esc_attr('mc_interest_'.$ig['id'].'_'.$interest_id).'" class="mc_interest_label">'.esc_html($interest_name).'</label>';
323 $i++;
324 }
325 break;
326 }
327 echo $html;
328 }
329
330 /**
331 * Generate and display markup for form fields
332 * @param array $var Array containing informaoin about the field
333 * @param int $num_fields The number of fields total we'll be generating markup for. Used in calculating required text logic
334 * @return void
335 */
336 function mailchimp_form_field($var, $num_fields) {
337 $opt = 'mc_mv_'.$var['tag'];
338 $html = '';
339 // See if that var is set as required, or turned on (for display)
340 if ($var['required'] || get_option($opt) == 'on') {
341 $label = '<label for="'.esc_attr($opt).'" class="mc_var_label mc_header mc_header_'.esc_attr($var['type']).'">'.esc_html($var['name']);
342 if ($var['required'] && $num_fields > 1) {
343 $label .= '<span class="mc_required">*</span>';
344 }
345 $label .= '</label>';
346
347 $html .= '
348 <div class="mc_merge_var">
349 '.$label;
350 switch ($var['type']) {
351 case 'date':
352 $html .= '
353 <input type="text" size="18" placeholder="'.esc_attr($var['default_value']).'" data-format="'.esc_attr($var['options']['date_format']).'" name="'.esc_attr($opt).'" id="'.esc_attr($opt).'" class="date-pick mc_input"/>';
354 break;
355 case 'radio':
356 if (is_array($var['options']['choices'])) {
357 $html .= '
358 <ul class="mc_list">';
359 foreach ($var['options']['choices'] as $key => $value) {
360 $html .= '
361 <li>
362 <input type="radio" id="'.esc_attr($opt.'_'.$key).'" name="'.esc_attr($opt).'" class="mc_radio" value="'.$value.'"'.checked($var['default_value'], $value, false).' />
363 <label for="'.esc_attr($opt.'_'.$key).'" class="mc_radio_label">'.esc_html($value).'</label>
364 </li>';
365 }
366 $html .= '
367 </ul>';
368 }
369 break;
370 case 'dropdown':
371 if (is_array($var['options']['choices'])) {
372 $html .= '
373 <select id="'.esc_attr($opt).'" name="'.esc_attr($opt).'" class="mc_select">';
374 foreach ($var['options']['choices'] as $value) {
375 $html .= '
376 <option value="'.esc_attr($value).'"'.selected($value, $var['default_value'], false).'>'.esc_html($value).'</option>';
377 }
378 $html .= '
379 </select>';
380 }
381 break;
382 case 'birthday':
383 $html .= '
384 <input type="text" size="18" placeholder="'.esc_attr($var['default_value']).'" data-format="'.esc_attr($var['dateformat']).'" name="'.esc_attr($opt).'" id="'.esc_attr($opt).'" class="birthdate-pick mc_input"/>';
385 break;
386 case 'birthday-old':
387 $days = range(1, 31);
388 $months = array(__('January', 'mailchimp_i18n'), __('February', 'mailchimp_i18n'), __('March', 'mailchimp_i18n'), __('April', 'mailchimp_i18n'), __('May', 'mailchimp_i18n'), __('June', 'mailchimp_i18n'), __('July', 'mailchimp_i18n'), __('August', 'mailchimp_i18n'), __('September', 'mailchimp_i18n'), __('October', 'mailchimp_i18n'), __('November', 'mailchimp_i18n'), __('December', 'mailchimp_i18n'), );
389
390 $html .= '
391 <br /><select id="'.esc_attr($opt).'" name="'.esc_attr($opt.'[month]').'" class="mc_select">';
392 foreach ($months as $month_key => $month) {
393 $html .= '
394 <option value="'.$month_key.'">'.$month.'</option>';
395 }
396 $html .= '
397 </select>';
398
399 $html .= '
400 <select id="'.esc_attr($opt).'" name="'.esc_attr($opt.'[day]').'" class="mc_select">';
401 foreach ($days as $day) {
402 $html .= '
403 <option value="'.$day.'">'.$day.'</option>';
404 }
405 $html .= '
406 </select>';
407 break;
408 case 'address':
409 $countries = mailchimp_country_list();
410 $html .= '
411
412 <label for="'.esc_attr($opt.'-addr1').'" class="mc_address_label">'.__('Street Address', 'mailchimp_i18n').'</label>
413 <input type="text" size="18" value="" name="'.esc_attr($opt.'[addr1]').'" id="'.esc_attr($opt.'-addr1').'" class="mc_input" />
414 <label for="'.esc_attr($opt.'-addr2').'" class="mc_address_label">'.__('Address Line 2', 'mailchimp_i18n').'</label>
415 <input type="text" size="18" value="" name="'.esc_attr($opt.'[addr2]').'" id="'.esc_attr($opt.'-addr2').'" class="mc_input" />
416 <label for="'.esc_attr($opt.'-city').'" class="mc_address_label">'.__('City', 'mailchimp_i18n').'</label>
417 <input type="text" size="18" value="" name="'.esc_attr($opt.'[city]').'" id="'.esc_attr($opt.'-city').'" class="mc_input" />
418 <label for="'.esc_attr($opt.'-state').'" class="mc_address_label">'.__('State', 'mailchimp_i18n').'</label>
419 <input type="text" size="18" value="" name="'.esc_attr($opt.'[state]').'" id="'.esc_attr($opt.'-state').'" class="mc_input" />
420 <label for="'.esc_attr($opt.'-zip').'" class="mc_address_label">'.__('Zip / Postal', 'mailchimp_i18n').'</label>
421 <input type="text" size="18" value="" maxlength="5" name="'.esc_attr($opt.'[zip]').'" id="'.esc_attr($opt.'-zip').'" class="mc_input" />
422 <label for="'.esc_attr($opt.'-country').'" class="mc_address_label">'.__('Country', 'mailchimp_i18n').'</label>
423 <select name="'.esc_attr($opt.'[country]').'" id="'.esc_attr($opt.'-country').'">';
424 foreach ($countries as $country_code => $country_name) {
425 $html .= '
426 <option value="'.esc_attr($country_code).'"'.selected($country_code, $var['options']['default_country'], false).'>'.esc_html($country_name).'</option>';
427 }
428 $html .= '
429 </select>';
430 break;
431 case 'zip':
432 $html .= '
433 <input type="text" size="18" maxlength="5" value="" name="'.esc_attr($opt).'" id="'.esc_attr($opt).'" class="mc_input" />';
434 break;
435 case 'phone':
436 if ($var['options']['phone_format'] == 'US') {
437 $html .= '
438 <input type="text" size="2" maxlength="3" value="" name="'.esc_attr($opt.'[area]').'" id="'.esc_attr($opt.'-area').'" class="mc_input mc_phone" />
439 <input type="text" size="2" maxlength="3" value="" name="'.esc_attr($opt.'[detail1]').'" id="'.esc_attr($opt.'-detail1').'" class="mc_input mc_phone" />
440 <input type="text" size="5" maxlength="4" value="" name="'.esc_attr($opt.'[detail2]').'" id="'.esc_attr($opt.'-detail2').'" class="mc_input mc_phone" />
441 ';
442 }
443 else {
444 $html .= '
445 <input type="text" size="18" value="" name="'.esc_attr($opt).'" id="'.esc_attr($opt).'" class="mc_input" />
446 ';
447 }
448 break;
449 case 'email':
450 case 'url':
451 case 'imageurl':
452 case 'text':
453 case 'number':
454 default:
455 $html .= '
456 <input type="text" size="18" placeholder="'.esc_html($var['default_value']).'" name="'.esc_attr($opt).'" id="'.esc_attr($opt).'" class="mc_input"/>';
457 break;
458 }
459 if (!empty($var['help_text'])) {
460 $html .= '<span class="mc_help">'.esc_html($var['help_text']).'</span>';
461 }
462 $html .= '
463 </div><!-- /mc_merge_var -->';
464 }
465
466 return $html;
467 }
468
469 /**
470 * MailChimp Subscribe Box widget class
471 */
472
473 class mailchimpSF_Widget extends WP_Widget {
474
475 function mailchimpSF_Widget() {
476 $widget_ops = array(
477 'description' => __('Displays a MailChimp Subscribe box', 'mailchimp_i18n')
478 );
479 parent::__construct('mailchimpSF_widget', __('MailChimp Widget', 'mailchimp_i18n'), $widget_ops);
480 }
481 function widget( $args, $instance ) {
482 if (!is_array($instance)) {
483 $instance = array();
484 }
485 mailchimpSF_signup_form(array_merge($args, $instance));
486 }
487 function form( $instance ) { ?>
488 <p>Great work! Your widget is ready to go — just head <a href="<?php echo admin_url('options-general.php?page=mailchimpSF_options') ?>">over here</a> if you’d like to adjust your settings.</p>
489 <?php }
490 }
491
492 function mailchimp_country_list() {
493 return array(
494 '164' => __('USA', 'mailchimp_i18n'),
495 '286' => __('Aaland Islands', 'mailchimp_i18n'),
496 '274' => __('Afghanistan', 'mailchimp_i18n'),
497 '2' => __('Albania', 'mailchimp_i18n'),
498 '3' => __('Algeria', 'mailchimp_i18n'),
499 '178' => __('American Samoa', 'mailchimp_i18n'),
500 '4' => __('Andorra', 'mailchimp_i18n'),
501 '5' => __('Angola', 'mailchimp_i18n'),
502 '176' => __('Anguilla', 'mailchimp_i18n'),
503 '175' => __('Antigua And Barbuda', 'mailchimp_i18n'),
504 '6' => __('Argentina', 'mailchimp_i18n'),
505 '7' => __('Armenia', 'mailchimp_i18n'),
506 '179' => __('Aruba', 'mailchimp_i18n'),
507 '8' => __('Australia', 'mailchimp_i18n'),
508 '9' => __('Austria', 'mailchimp_i18n'),
509 '10' => __('Azerbaijan', 'mailchimp_i18n'),
510 '11' => __('Bahamas', 'mailchimp_i18n'),
511 '12' => __('Bahrain', 'mailchimp_i18n'),
512 '13' => __('Bangladesh', 'mailchimp_i18n'),
513 '14' => __('Barbados', 'mailchimp_i18n'),
514 '15' => __('Belarus', 'mailchimp_i18n'),
515 '16' => __('Belgium', 'mailchimp_i18n'),
516 '17' => __('Belize', 'mailchimp_i18n'),
517 '18' => __('Benin', 'mailchimp_i18n'),
518 '19' => __('Bermuda', 'mailchimp_i18n'),
519 '20' => __('Bhutan', 'mailchimp_i18n'),
520 '21' => __('Bolivia', 'mailchimp_i18n'),
521 '22' => __('Bosnia and Herzegovina', 'mailchimp_i18n'),
522 '23' => __('Botswana', 'mailchimp_i18n'),
523 '24' => __('Brazil', 'mailchimp_i18n'),
524 '180' => __('Brunei Darussalam', 'mailchimp_i18n'),
525 '25' => __('Bulgaria', 'mailchimp_i18n'),
526 '26' => __('Burkina Faso', 'mailchimp_i18n'),
527 '27' => __('Burundi', 'mailchimp_i18n'),
528 '28' => __('Cambodia', 'mailchimp_i18n'),
529 '29' => __('Cameroon', 'mailchimp_i18n'),
530 '30' => __('Canada', 'mailchimp_i18n'),
531 '31' => __('Cape Verde', 'mailchimp_i18n'),
532 '32' => __('Cayman Islands', 'mailchimp_i18n'),
533 '33' => __('Central African Republic', 'mailchimp_i18n'),
534 '34' => __('Chad', 'mailchimp_i18n'),
535 '35' => __('Chile', 'mailchimp_i18n'),
536 '36' => __('China', 'mailchimp_i18n'),
537 '37' => __('Colombia', 'mailchimp_i18n'),
538 '38' => __('Congo', 'mailchimp_i18n'),
539 '183' => __('Cook Islands', 'mailchimp_i18n'),
540 '268' => __('Costa Rica', 'mailchimp_i18n'),
541 '275' => __('Cote D\'Ivoire', 'mailchimp_i18n'),
542 '40' => __('Croatia', 'mailchimp_i18n'),
543 '276' => __('Cuba', 'mailchimp_i18n'),
544 '41' => __('Cyprus', 'mailchimp_i18n'),
545 '42' => __('Czech Republic', 'mailchimp_i18n'),
546 '43' => __('Denmark', 'mailchimp_i18n'),
547 '44' => __('Djibouti', 'mailchimp_i18n'),
548 '289' => __('Dominica', 'mailchimp_i18n'),
549 '187' => __('Dominican Republic', 'mailchimp_i18n'),
550 '233' => __('East Timor', 'mailchimp_i18n'),
551 '45' => __('Ecuador', 'mailchimp_i18n'),
552 '46' => __('Egypt', 'mailchimp_i18n'),
553 '47' => __('El Salvador', 'mailchimp_i18n'),
554 '48' => __('Equatorial Guinea', 'mailchimp_i18n'),
555 '49' => __('Eritrea', 'mailchimp_i18n'),
556 '50' => __('Estonia', 'mailchimp_i18n'),
557 '51' => __('Ethiopia', 'mailchimp_i18n'),
558 '191' => __('Faroe Islands', 'mailchimp_i18n'),
559 '52' => __('Fiji', 'mailchimp_i18n'),
560 '53' => __('Finland', 'mailchimp_i18n'),
561 '54' => __('France', 'mailchimp_i18n'),
562 '277' => __('French Polynesia', 'mailchimp_i18n'),
563 '59' => __('Germany', 'mailchimp_i18n'),
564 '60' => __('Ghana', 'mailchimp_i18n'),
565 '194' => __('Gibraltar', 'mailchimp_i18n'),
566 '61' => __('Greece', 'mailchimp_i18n'),
567 '195' => __('Greenland', 'mailchimp_i18n'),
568 '192' => __('Grenada', 'mailchimp_i18n'),
569 '62' => __('Guam', 'mailchimp_i18n'),
570 '198' => __('Guatemala', 'mailchimp_i18n'),
571 '270' => __('Guernsey', 'mailchimp_i18n'),
572 '65' => __('Guyana', 'mailchimp_i18n'),
573 '200' => __('Haiti', 'mailchimp_i18n'),
574 '66' => __('Honduras', 'mailchimp_i18n'),
575 '67' => __('Hong Kong', 'mailchimp_i18n'),
576 '68' => __('Hungary', 'mailchimp_i18n'),
577 '69' => __('Iceland', 'mailchimp_i18n'),
578 '70' => __('India', 'mailchimp_i18n'),
579 '71' => __('Indonesia', 'mailchimp_i18n'),
580 '278' => __('Iran', 'mailchimp_i18n'),
581 '279' => __('Iraq', 'mailchimp_i18n'),
582 '74' => __('Ireland', 'mailchimp_i18n'),
583 '75' => __('Israel', 'mailchimp_i18n'),
584 '76' => __('Italy', 'mailchimp_i18n'),
585 '202' => __('Jamaica', 'mailchimp_i18n'),
586 '78' => __('Japan', 'mailchimp_i18n'),
587 '288' => __('Jersey (Channel Islands)', 'mailchimp_i18n'),
588 '79' => __('Jordan', 'mailchimp_i18n'),
589 '80' => __('Kazakhstan', 'mailchimp_i18n'),
590 '81' => __('Kenya', 'mailchimp_i18n'),
591 '82' => __('Kuwait', 'mailchimp_i18n'),
592 '83' => __('Kyrgyzstan', 'mailchimp_i18n'),
593 '84' => __('Lao People\'s Democratic Republic', 'mailchimp_i18n'),
594 '85' => __('Latvia', 'mailchimp_i18n'),
595 '86' => __('Lebanon', 'mailchimp_i18n'),
596 '281' => __('Libya', 'mailchimp_i18n'),
597 '90' => __('Liechtenstein', 'mailchimp_i18n'),
598 '91' => __('Lithuania', 'mailchimp_i18n'),
599 '92' => __('Luxembourg', 'mailchimp_i18n'),
600 '208' => __('Macau', 'mailchimp_i18n'),
601 '93' => __('Macedonia', 'mailchimp_i18n'),
602 '94' => __('Madagascar', 'mailchimp_i18n'),
603 '95' => __('Malawi', 'mailchimp_i18n'),
604 '96' => __('Malaysia', 'mailchimp_i18n'),
605 '97' => __('Maldives', 'mailchimp_i18n'),
606 '98' => __('Mali', 'mailchimp_i18n'),
607 '99' => __('Malta', 'mailchimp_i18n'),
608 '212' => __('Mauritius', 'mailchimp_i18n'),
609 '101' => __('Mexico', 'mailchimp_i18n'),
610 '102' => __('Moldova, Republic of', 'mailchimp_i18n'),
611 '103' => __('Monaco', 'mailchimp_i18n'),
612 '104' => __('Mongolia', 'mailchimp_i18n'),
613 '290' => __('Montenegro', 'mailchimp_i18n'),
614 '105' => __('Morocco', 'mailchimp_i18n'),
615 '106' => __('Mozambique', 'mailchimp_i18n'),
616 '242' => __('Myanmar', 'mailchimp_i18n'),
617 '107' => __('Namibia', 'mailchimp_i18n'),
618 '108' => __('Nepal', 'mailchimp_i18n'),
619 '109' => __('Netherlands', 'mailchimp_i18n'),
620 '110' => __('Netherlands Antilles', 'mailchimp_i18n'),
621 '213' => __('New Caledonia', 'mailchimp_i18n'),
622 '111' => __('New Zealand', 'mailchimp_i18n'),
623 '112' => __('Nicaragua', 'mailchimp_i18n'),
624 '113' => __('Niger', 'mailchimp_i18n'),
625 '114' => __('Nigeria', 'mailchimp_i18n'),
626 '272' => __('North Korea', 'mailchimp_i18n'),
627 '116' => __('Norway', 'mailchimp_i18n'),
628 '117' => __('Oman', 'mailchimp_i18n'),
629 '118' => __('Pakistan', 'mailchimp_i18n'),
630 '222' => __('Palau', 'mailchimp_i18n'),
631 '282' => __('Palestine', 'mailchimp_i18n'),
632 '119' => __('Panama', 'mailchimp_i18n'),
633 '219' => __('Papua New Guinea', 'mailchimp_i18n'),
634 '120' => __('Paraguay', 'mailchimp_i18n'),
635 '121' => __('Peru', 'mailchimp_i18n'),
636 '122' => __('Philippines', 'mailchimp_i18n'),
637 '123' => __('Poland', 'mailchimp_i18n'),
638 '124' => __('Portugal', 'mailchimp_i18n'),
639 '126' => __('Qatar', 'mailchimp_i18n'),
640 '58' => __('Republic of Georgia', 'mailchimp_i18n'),
641 '128' => __('Romania', 'mailchimp_i18n'),
642 '129' => __('Russia', 'mailchimp_i18n'),
643 '130' => __('Rwanda', 'mailchimp_i18n'),
644 '205' => __('Saint Kitts and Nevis', 'mailchimp_i18n'),
645 '206' => __('Saint Lucia', 'mailchimp_i18n'),
646 '132' => __('Samoa (Independent)', 'mailchimp_i18n'),
647 '227' => __('San Marino', 'mailchimp_i18n'),
648 '133' => __('Saudi Arabia', 'mailchimp_i18n'),
649 '134' => __('Senegal', 'mailchimp_i18n'),
650 '266' => __('Serbia', 'mailchimp_i18n'),
651 '135' => __('Seychelles', 'mailchimp_i18n'),
652 '137' => __('Singapore', 'mailchimp_i18n'),
653 '138' => __('Slovakia', 'mailchimp_i18n'),
654 '139' => __('Slovenia', 'mailchimp_i18n'),
655 '223' => __('Solomon Islands', 'mailchimp_i18n'),
656 '141' => __('South Africa', 'mailchimp_i18n'),
657 '142' => __('South Korea', 'mailchimp_i18n'),
658 '143' => __('Spain', 'mailchimp_i18n'),
659 '144' => __('Sri Lanka', 'mailchimp_i18n'),
660 '293' => __('Sudan', 'mailchimp_i18n'),
661 '146' => __('Suriname', 'mailchimp_i18n'),
662 '147' => __('Swaziland', 'mailchimp_i18n'),
663 '148' => __('Sweden', 'mailchimp_i18n'),
664 '149' => __('Switzerland', 'mailchimp_i18n'),
665 '152' => __('Taiwan', 'mailchimp_i18n'),
666 '153' => __('Tanzania', 'mailchimp_i18n'),
667 '154' => __('Thailand', 'mailchimp_i18n'),
668 '155' => __('Togo', 'mailchimp_i18n'),
669 '232' => __('Tonga', 'mailchimp_i18n'),
670 '234' => __('Trinidad and Tobago', 'mailchimp_i18n'),
671 '156' => __('Tunisia', 'mailchimp_i18n'),
672 '157' => __('Turkey', 'mailchimp_i18n'),
673 '287' => __('Turks &amp; Caicos Islands', 'mailchimp_i18n'),
674 '159' => __('Uganda', 'mailchimp_i18n'),
675 '161' => __('Ukraine', 'mailchimp_i18n'),
676 '162' => __('United Arab Emirates', 'mailchimp_i18n'),
677 '262' => __('United Kingdom', 'mailchimp_i18n'),
678 '163' => __('Uruguay', 'mailchimp_i18n'),
679 '239' => __('Vanuatu', 'mailchimp_i18n'),
680 '166' => __('Vatican City State (Holy See)', 'mailchimp_i18n'),
681 '167' => __('Venezuela', 'mailchimp_i18n'),
682 '168' => __('Vietnam', 'mailchimp_i18n'),
683 '169' => __('Virgin Islands (British)', 'mailchimp_i18n'),
684 '238' => __('Virgin Islands (U.S.)', 'mailchimp_i18n'),
685 '173' => __('Zambia', 'mailchimp_i18n'),
686 '174' => __('Zimbabwe', 'mailchimp_i18n'),
687 );
688 }
689