Paid Memberships Pro - Version 1.7.13

Version Description

  • Added Danish (da_DK) translation. (Thanks, Mikael)
  • Fixed bugs with timestamps in various places (especially around trial dates) introduced in 1.7.12
  • Another fix to keep PMPro from sending "undefined undefined" as the name to Stripe when the 'don't show billing fields' option is chosen.
  • $pmpro_stripe_verify_address flag defaults to same value of Stripe's showbillingaddress option now.
  • Changed the priority of pmpro_applydiscountcode_init hooking on init to 11 so pmpro_init() will run before and setup pmpro_currency_symbol among other things. (Thanks, semyou on GitHub.)
  • Explicitly setting $current_user->membership_level in a few places to avoid issues where current_user is overwritten between init and when we try to use it.
  • Avoiding a warning in pmpro_getMetavalues() function. (Thanks, Scott Sousa)
  • Added target="_blank" to help links on admin pages. (Thanks, AntonVrba on GitHub)
Download this release

Release Info

Developer strangerstudios
Plugin Icon 128x128 Paid Memberships Pro
Version 1.7.13
Comparing to
See all releases

Code changes from version 1.7.14 to 1.7.13

classes/class.memberorder.php CHANGED
@@ -217,9 +217,6 @@
217
  global $wpdb;
218
  $this->discount_code = $wpdb->get_row("SELECT dc.* FROM $wpdb->pmpro_discount_codes dc LEFT JOIN $wpdb->pmpro_discount_codes_uses dcu ON dc.id = dcu.code_id WHERE dcu.order_id = '" . $this->id . "' LIMIT 1");
219
 
220
- //filter @since v1.7.14
221
- $this->discount_code = apply_filters("pmpro_order_discount_code", $this->discount_code, $this);
222
-
223
  return $this->discount_code;
224
  }
225
 
@@ -255,13 +252,7 @@
255
  //okay, do I have a discount code to check? (if there is no membership_level->membership_id value, that means there was no entry in memberships_users)
256
  if(!empty($this->discount_code) && empty($this->membership_level->membership_id))
257
  {
258
- if(!empty($this->discount_code->code))
259
- $discount_code = $this->discount_code->code;
260
- else
261
- $discount_code = $this->discount_code;
262
-
263
- $sqlQuery = "SELECT l.id, cl.*, l.name, l.description, l.allow_signups FROM $wpdb->pmpro_discount_codes_levels cl LEFT JOIN $wpdb->pmpro_membership_levels l ON cl.level_id = l.id LEFT JOIN $wpdb->pmpro_discount_codes dc ON dc.id = cl.code_id WHERE dc.code = '" . $discount_code . "' AND cl.level_id = '" . $this->membership_id . "' LIMIT 1";
264
-
265
  $this->membership_level = $wpdb->get_row($sqlQuery);
266
  }
267
 
217
  global $wpdb;
218
  $this->discount_code = $wpdb->get_row("SELECT dc.* FROM $wpdb->pmpro_discount_codes dc LEFT JOIN $wpdb->pmpro_discount_codes_uses dcu ON dc.id = dcu.code_id WHERE dcu.order_id = '" . $this->id . "' LIMIT 1");
219
 
 
 
 
220
  return $this->discount_code;
221
  }
222
 
252
  //okay, do I have a discount code to check? (if there is no membership_level->membership_id value, that means there was no entry in memberships_users)
253
  if(!empty($this->discount_code) && empty($this->membership_level->membership_id))
254
  {
255
+ $sqlQuery = "SELECT l.id, cl.*, l.name, l.description, l.allow_signups FROM $wpdb->pmpro_discount_codes_levels cl LEFT JOIN $wpdb->pmpro_membership_levels l ON cl.level_id = l.id LEFT JOIN $wpdb->pmpro_discount_codes dc ON dc.id = cl.code_id WHERE dc.code = '" . $this->discount_code . "' AND cl.level_id = '" . $this->membership_id . "' LIMIT 1";
 
 
 
 
 
 
256
  $this->membership_level = $wpdb->get_row($sqlQuery);
257
  }
258
 
classes/class.pmproemail.php CHANGED
@@ -44,8 +44,6 @@
44
 
45
  $this->headers = array("Content-Type: text/html");
46
 
47
- $this->attachments = NULL;
48
-
49
  //load the template
50
  $locale = apply_filters("plugin_locale", get_locale(), "pmpro");
51
  if(file_exists(get_stylesheet_directory() . "/paid-memberships-pro/email/" . $this->template . ".html"))
@@ -100,9 +98,8 @@
100
  $this->template = apply_filters("pmpro_email_template", $temail->template, $this);
101
  $this->body = apply_filters("pmpro_email_body", $temail->body, $this);
102
  $this->headers = apply_filters("pmpro_email_headers", $temail->headers, $this);
103
- $this->attachments = apply_filters("pmpro_email_attachments", $temail->attachments, $this);
104
-
105
- if(wp_mail($this->email,$this->subject,$this->body,$this->headers,$this->attachments))
106
  {
107
  return true;
108
  }
@@ -186,7 +183,7 @@
186
  "membership_id" => $user->membership_level->id,
187
  "membership_level_name" => $user->membership_level->name,
188
  "membership_cost" => pmpro_getLevelCost($user->membership_level),
189
- "login_link" => wp_login_url(pmpro_url("account")),
190
  "display_name" => $user->display_name,
191
  "user_email" => $user->user_email,0
192
  );
@@ -286,7 +283,7 @@
286
  "membership_id" => $user->membership_level->id,
287
  "membership_level_name" => $user->membership_level->name,
288
  "membership_cost" => pmpro_getLevelCost($user->membership_level),
289
- "login_link" => wp_login_url(pmpro_url("account")),
290
  "display_name" => $user->display_name,
291
  "user_email" => $user->user_email,0
292
  );
@@ -387,7 +384,7 @@
387
  "accountnumber" => hideCardNumber($invoice->accountnumber),
388
  "expirationmonth" => $invoice->expirationmonth,
389
  "expirationyear" => $invoice->expirationyear,
390
- "login_link" => wp_login_url(pmpro_url("account"))
391
  );
392
  $this->data["billing_address"] = pmpro_formatAddress($invoice->billing->name,
393
  $invoice->billing->street,
@@ -488,7 +485,7 @@
488
  "accountnumber" => hideCardNumber($invoice->accountnumber),
489
  "expirationmonth" => $invoice->expirationmonth,
490
  "expirationyear" => $invoice->expirationyear,
491
- "login_link" => wp_login_url(pmpro_url("billing"))
492
  );
493
  $this->data["billing_address"] = pmpro_formatAddress($invoice->billing->name,
494
  $invoice->billing->street,
@@ -534,7 +531,7 @@
534
  "accountnumber" => hideCardNumber($invoice->accountnumber),
535
  "expirationmonth" => $invoice->expirationmonth,
536
  "expirationyear" => $invoice->expirationyear,
537
- "login_link" => wp_login_url(pmpro_url("billing"))
538
  );
539
  $this->data["billing_address"] = pmpro_formatAddress($invoice->billing->name,
540
  $invoice->billing->street,
@@ -581,7 +578,7 @@
581
  "accountnumber" => hideCardNumber($invoice->accountnumber),
582
  "expirationmonth" => $invoice->expirationmonth,
583
  "expirationyear" => $invoice->expirationyear,
584
- "login_link" => wp_login_url(pmpro_url("billing"))
585
  );
586
  $this->data["billing_address"] = pmpro_formatAddress($invoice->billing->name,
587
  $invoice->billing->street,
@@ -632,9 +629,9 @@
632
  "accountnumber" => hideCardNumber($invoice->accountnumber),
633
  "expirationmonth" => $invoice->expirationmonth,
634
  "expirationyear" => $invoice->expirationyear,
635
- "login_link" => wp_login_url(pmpro_url("account")),
636
- "invoice_link" => wp_login_url(pmpro_url("invoice", "?invoice=" . $invoice->code)
637
- ));
638
  $this->data["billing_address"] = pmpro_formatAddress($invoice->billing->name,
639
  $invoice->billing->street,
640
  "", //address 2
44
 
45
  $this->headers = array("Content-Type: text/html");
46
 
 
 
47
  //load the template
48
  $locale = apply_filters("plugin_locale", get_locale(), "pmpro");
49
  if(file_exists(get_stylesheet_directory() . "/paid-memberships-pro/email/" . $this->template . ".html"))
98
  $this->template = apply_filters("pmpro_email_template", $temail->template, $this);
99
  $this->body = apply_filters("pmpro_email_body", $temail->body, $this);
100
  $this->headers = apply_filters("pmpro_email_headers", $temail->headers, $this);
101
+
102
+ if(wp_mail($this->email,$this->subject,$this->body,$this->headers))
 
103
  {
104
  return true;
105
  }
183
  "membership_id" => $user->membership_level->id,
184
  "membership_level_name" => $user->membership_level->name,
185
  "membership_cost" => pmpro_getLevelCost($user->membership_level),
186
+ "login_link" => pmpro_url("account"),
187
  "display_name" => $user->display_name,
188
  "user_email" => $user->user_email,0
189
  );
283
  "membership_id" => $user->membership_level->id,
284
  "membership_level_name" => $user->membership_level->name,
285
  "membership_cost" => pmpro_getLevelCost($user->membership_level),
286
+ "login_link" => pmpro_url("account"),
287
  "display_name" => $user->display_name,
288
  "user_email" => $user->user_email,0
289
  );
384
  "accountnumber" => hideCardNumber($invoice->accountnumber),
385
  "expirationmonth" => $invoice->expirationmonth,
386
  "expirationyear" => $invoice->expirationyear,
387
+ "login_link" => pmpro_url("account")
388
  );
389
  $this->data["billing_address"] = pmpro_formatAddress($invoice->billing->name,
390
  $invoice->billing->street,
485
  "accountnumber" => hideCardNumber($invoice->accountnumber),
486
  "expirationmonth" => $invoice->expirationmonth,
487
  "expirationyear" => $invoice->expirationyear,
488
+ "login_link" => pmpro_url("billing")
489
  );
490
  $this->data["billing_address"] = pmpro_formatAddress($invoice->billing->name,
491
  $invoice->billing->street,
531
  "accountnumber" => hideCardNumber($invoice->accountnumber),
532
  "expirationmonth" => $invoice->expirationmonth,
533
  "expirationyear" => $invoice->expirationyear,
534
+ "login_link" => pmpro_url("billing")
535
  );
536
  $this->data["billing_address"] = pmpro_formatAddress($invoice->billing->name,
537
  $invoice->billing->street,
578
  "accountnumber" => hideCardNumber($invoice->accountnumber),
579
  "expirationmonth" => $invoice->expirationmonth,
580
  "expirationyear" => $invoice->expirationyear,
581
+ "login_link" => pmpro_url("billing")
582
  );
583
  $this->data["billing_address"] = pmpro_formatAddress($invoice->billing->name,
584
  $invoice->billing->street,
629
  "accountnumber" => hideCardNumber($invoice->accountnumber),
630
  "expirationmonth" => $invoice->expirationmonth,
631
  "expirationyear" => $invoice->expirationyear,
632
+ "login_link" => pmpro_url("account"),
633
+ "invoice_link" => pmpro_url("invoice", "?invoice=" . $invoice->code)
634
+ );
635
  $this->data["billing_address"] = pmpro_formatAddress($invoice->billing->name,
636
  $invoice->billing->street,
637
  "", //address 2
includes/content.php CHANGED
@@ -121,19 +121,18 @@ function pmpro_search_filter($query)
121
  global $current_user, $wpdb, $pmpro_pages;
122
 
123
  //hide pmpro pages from search results
124
- if(!$query->is_admin && $query->is_search && empty($query->query['post_parent']))
125
  {
126
- $query->set('post__not_in', $pmpro_pages ); // id of page or post
127
- }
128
-
129
  //hide member pages from non-members (make sure they aren't hidden from members)
130
  if(!$query->is_admin &&
131
  !$query->is_singular &&
132
- empty($query->query['post_parent']) &&
133
  (
134
  empty($query->query_vars['post_type']) ||
135
  in_array($query->query_vars['post_type'], apply_filters('pmpro_search_filter_post_types', array("page", "post")))
136
- )
137
  )
138
  {
139
  //get page ids that are in my levels
121
  global $current_user, $wpdb, $pmpro_pages;
122
 
123
  //hide pmpro pages from search results
124
+ if(!$query->is_admin && $query->is_search)
125
  {
126
+ $query->set('post__not_in', $pmpro_pages ); // id of page or post
127
+ }
128
+
129
  //hide member pages from non-members (make sure they aren't hidden from members)
130
  if(!$query->is_admin &&
131
  !$query->is_singular &&
 
132
  (
133
  empty($query->query_vars['post_type']) ||
134
  in_array($query->query_vars['post_type'], apply_filters('pmpro_search_filter_post_types', array("page", "post")))
135
+ )
136
  )
137
  {
138
  //get page ids that are in my levels
includes/email.php CHANGED
@@ -67,17 +67,15 @@ function pmpro_send_html( $phpmailer ) {
67
  // Convert line breaks & make links clickable
68
  $phpmailer->Body = make_clickable ($phpmailer->Body);
69
 
70
- // Add header to message if found
71
- if(file_exists(get_stylesheet_directory() . "/email_header.html"))
72
- $phpmailer->Body = file_get_contents(get_stylesheet_directory() . "/email_header.html") . "\n" . $phpmailer->Body;
73
- elseif(file_exists(get_template_directory() . "/email_header.html"))
74
- $phpmailer->Body = file_get_contents(get_template_directory() . "/email_header.html") . "\n" . $phpmailer->Body;
75
-
76
- // Add footer to message if found
77
- if(file_exists(get_stylesheet_directory() . "/email_footer.html"))
78
- $phpmailer->Body = $phpmailer->Body . "\n" . file_get_contents(get_stylesheet_directory() . "/email_footer.html");
79
- elseif(file_exists(get_template_directory() . "/email_footer.html"))
80
- $phpmailer->Body = $phpmailer->Body . "\n" . file_get_contents(get_template_directory() . "/email_footer.html");
81
 
82
  // Replace variables in email
83
  global $current_user;
67
  // Convert line breaks & make links clickable
68
  $phpmailer->Body = make_clickable ($phpmailer->Body);
69
 
70
+ // Add template to message
71
+ if(file_exists(TEMPLATEPATH . "/email_header.html"))
72
+ {
73
+ $phpmailer->Body = file_get_contents(TEMPLATEPATH . "/email_header.html") . "\n" . $phpmailer->Body;
74
+ }
75
+ if(file_exists(TEMPLATEPATH . "/email_footer.html"))
76
+ {
77
+ $phpmailer->Body = $phpmailer->Body . "\n" . file_get_contents(TEMPLATEPATH . "/email_footer.html");
78
+ }
 
 
79
 
80
  // Replace variables in email
81
  global $current_user;
includes/functions.php CHANGED
@@ -232,7 +232,7 @@ function pmpro_getLevelCost(&$level, $tags = true, $short = false)
232
  }
233
  else
234
  {
235
- $r = sprintf(__('The price for membership is <strong>%s every %d %s</strong>.', 'pmpro'), $pmpro_currency_symbol . number_format($level->initial_payment, 2), $level->cycle_number, pmpro_translate_billing_period($level->cycle_period, $level->cycle_number) );
236
  }
237
  } else {
238
  if($level->cycle_number == '1')
@@ -1094,94 +1094,85 @@ function pmpro_checkDiscountCode($code, $level_id = NULL, $return_errors = false
1094
  {
1095
  global $wpdb;
1096
 
1097
- $error = false;
1098
-
1099
  //no code, no code
1100
- if(empty($code))
1101
- $error = __("No code was given to check.", "pmpro");
1102
-
1103
- //get code from db
1104
- if(!$error)
1105
  {
1106
- $dbcode = $wpdb->get_row("SELECT *, UNIX_TIMESTAMP(starts) as starts, UNIX_TIMESTAMP(expires) as expires FROM $wpdb->pmpro_discount_codes WHERE code ='" . $code . "' LIMIT 1");
1107
-
1108
- //did we find it?
1109
- if(empty($dbcode->id))
1110
- $error = __("The discount code could not be found.", "pmpro");
1111
  }
1112
-
1113
- //check if the code has started
1114
- if(!$error)
 
 
 
1115
  {
1116
- //fix the date timestamps
1117
- $dbcode->starts = strtotime(date("m/d/Y", $dbcode->starts));
1118
- $dbcode->expires = strtotime(date("m/d/Y", $dbcode->expires));
 
 
 
 
 
 
1119
 
1120
- //today
1121
- $today = strtotime(date("m/d/Y 00:00:00", current_time("timestamp")));
1122
 
1123
- //has this code started yet?
1124
- if(!empty($dbcode->starts) && $dbcode->starts > $today)
1125
- $error = sprintf(__("This discount code goes into effect on %s.", "pmpro"), date(get_option('date_format'), $dbcode->starts));
 
 
 
 
1126
  }
1127
 
1128
- //check if the code is expired
1129
- if(!$error)
1130
- {
1131
- if(!empty($dbcode->expires) && $dbcode->expires < $today)
1132
- $error = sprintf(__("This discount code expired on %s.", "pmpro"), date(get_option('date_format'), $dbcode->expires));
 
 
1133
  }
1134
 
1135
  //have we run out of uses?
1136
- if(!$error)
1137
  {
1138
- if($dbcode->uses > 0)
 
1139
  {
1140
- $used = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->pmpro_discount_codes_uses WHERE code_id = '" . $dbcode->id . "'");
1141
- if($used >= $dbcode->uses)
1142
- $error = __("This discount code is no longer valid.", "pmpro");
 
1143
  }
1144
  }
1145
 
1146
  //if a level was passed check if this code applies
1147
- if(!$error)
 
1148
  {
1149
- $pmpro_check_discount_code_levels = apply_filters("pmpro_check_discount_code_levels", true, $dbcode->id);
1150
- if(!empty($level_id) && $pmpro_check_discount_code_levels)
 
1151
  {
1152
- $code_level = $wpdb->get_row("SELECT l.id, cl.*, l.name, l.description, l.allow_signups FROM $wpdb->pmpro_discount_codes_levels cl LEFT JOIN $wpdb->pmpro_membership_levels l ON cl.level_id = l.id WHERE cl.code_id = '" . $dbcode->id . "' AND cl.level_id = '" . $level_id . "' LIMIT 1");
1153
-
1154
- if(empty($code_level))
1155
- $error = __("This discount code does not apply to this membership level.", "pmpro");
1156
  }
1157
  }
1158
-
1159
- //allow filter
1160
- $pmpro_check_discount_code = apply_filters("pmpro_check_discount_code", !$error, $dbcode, $level_id, $code);
1161
- if(is_string($pmpro_check_discount_code))
1162
- $error = $pmpro_check_discount_code; //string returned, this is an error
1163
- elseif(!$pmpro_check_discount_code && !$error)
1164
- $error = true; //no error before, but filter returned error
1165
- elseif($pmpro_check_discount_code)
1166
- $error = false; //filter is true, so error false
1167
-
1168
- //return
1169
- if($error)
1170
- {
1171
- //there was an error
1172
- if(!empty($return_errors))
1173
- return array(false, $error);
1174
- else
1175
- return false;
1176
- }
1177
  else
1178
- {
1179
- //guess we're all good
1180
- if(!empty($return_errors))
1181
- return array(true, __("This discount code is okay.", "pmpro"));
1182
- else
1183
- return true;
1184
- }
1185
  }
1186
 
1187
  function pmpro_no_quotes($s, $quotes = array("'", '"'))
232
  }
233
  else
234
  {
235
+ $r = sprintf(__('The price for membership is <strong>%s every %d %s</strong>.', 'pmpro'), $pmpro_currency_symbol . number_format($level->initial_payment, 2), $level->cycle_number, pmpro_translate_billing_period($level->cycle_period) );
236
  }
237
  } else {
238
  if($level->cycle_number == '1')
1094
  {
1095
  global $wpdb;
1096
 
 
 
1097
  //no code, no code
1098
+ if(empty($code))
 
 
 
 
1099
  {
1100
+ if($return_errors)
1101
+ return array(false, "No code was given to check.");
1102
+ else
1103
+ return false;
 
1104
  }
1105
+
1106
+ //get code from db
1107
+ $dbcode = $wpdb->get_row("SELECT *, UNIX_TIMESTAMP(starts) as starts, UNIX_TIMESTAMP(expires) as expires FROM $wpdb->pmpro_discount_codes WHERE code ='" . $code . "' LIMIT 1");
1108
+
1109
+ //did we find it?
1110
+ if(empty($dbcode->id))
1111
  {
1112
+ if($return_errors)
1113
+ return array(false, __("The discount code could not be found.", "pmpro"));
1114
+ else
1115
+ return false;
1116
+ }
1117
+
1118
+ //fix the date timestamps
1119
+ $dbcode->starts = strtotime(date("m/d/Y", $dbcode->starts));
1120
+ $dbcode->expires = strtotime(date("m/d/Y", $dbcode->expires));
1121
 
1122
+ //today
1123
+ $today = strtotime(date("m/d/Y 00:00:00", current_time("timestamp")));
1124
 
1125
+ //has this code started yet?
1126
+ if(!empty($dbcode->starts) && $dbcode->starts > $today)
1127
+ {
1128
+ if($return_errors)
1129
+ return array(false, sprintf(__("This discount code goes into effect on %s.", "pmpro"), date(get_option('date_format'), $dbcode->starts)));
1130
+ else
1131
+ return false;
1132
  }
1133
 
1134
+ //has this code expired?
1135
+ if(!empty($dbcode->expires) && $dbcode->expires < $today)
1136
+ {
1137
+ if($return_errors)
1138
+ return array(false, sprintf(__("This discount code expired on %s.", "pmpro"), date(get_option('date_format'), $dbcode->expires)));
1139
+ else
1140
+ return false;
1141
  }
1142
 
1143
  //have we run out of uses?
1144
+ if($dbcode->uses > 0)
1145
  {
1146
+ $used = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->pmpro_discount_codes_uses WHERE code_id = '" . $dbcode->id . "'");
1147
+ if($used >= $dbcode->uses)
1148
  {
1149
+ if($return_errors)
1150
+ return array(false, __("This discount code is no longer valid.", "pmpro"));
1151
+ else
1152
+ return false;
1153
  }
1154
  }
1155
 
1156
  //if a level was passed check if this code applies
1157
+ $pmpro_check_discount_code_levels = apply_filters("pmpro_check_discount_code_levels", true, $dbcode->id);
1158
+ if(!empty($level_id) && $pmpro_check_discount_code_levels)
1159
  {
1160
+ $code_level = $wpdb->get_row("SELECT l.id, cl.*, l.name, l.description, l.allow_signups FROM $wpdb->pmpro_discount_codes_levels cl LEFT JOIN $wpdb->pmpro_membership_levels l ON cl.level_id = l.id WHERE cl.code_id = '" . $dbcode->id . "' AND cl.level_id = '" . $level_id . "' LIMIT 1");
1161
+
1162
+ if(empty($code_level))
1163
  {
1164
+ if(!empty($return_errors))
1165
+ return array(false, __("This discount code does not apply to this membership level.", "pmpro"));
1166
+ else
1167
+ return false;
1168
  }
1169
  }
1170
+
1171
+ //guess we're all good
1172
+ if(!empty($return_errors))
1173
+ return array(true, __("This discount code is okay.", "pmpro"));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1174
  else
1175
+ return true;
 
 
 
 
 
 
1176
  }
1177
 
1178
  function pmpro_no_quotes($s, $quotes = array("'", '"'))
includes/init.php CHANGED
@@ -209,7 +209,6 @@ function pmpro_set_current_user()
209
  do_action("pmpro_after_set_current_user");
210
  }
211
  add_action('set_current_user', 'pmpro_set_current_user');
212
- add_action('init', 'pmpro_set_current_user');
213
 
214
  /*
215
  * Add Membership Level to Users page in WordPress dashboard.
209
  do_action("pmpro_after_set_current_user");
210
  }
211
  add_action('set_current_user', 'pmpro_set_current_user');
 
212
 
213
  /*
214
  * Add Membership Level to Users page in WordPress dashboard.
includes/login.php CHANGED
@@ -54,7 +54,7 @@ add_filter('wp_signup_location', 'pmpro_wp_signup_location');
54
 
55
  //redirect from default login pages to PMPro
56
  function pmpro_login_head()
57
- {
58
  $login_redirect = apply_filters("pmpro_login_redirect", true);
59
 
60
  if((pmpro_is_login_page() || is_page("login") ||
@@ -139,20 +139,4 @@ function pmpro_login_head()
139
  }
140
  }
141
  add_action('wp', 'pmpro_login_head');
142
- add_action('login_init', 'pmpro_login_head');
143
-
144
- /*
145
- If a redirect_to value is passed into /login/ and you are logged in already, just redirect there
146
-
147
- @since 1.7.14
148
- */
149
- function pmpro_redirect_to_logged_in()
150
- {
151
- if((pmpro_is_login_page() || is_page("login")) && !empty($_REQUEST['redirect_to']) && is_user_logged_in())
152
- {
153
- wp_redirect($_REQUEST['redirect_to']);
154
- exit;
155
- }
156
- }
157
- add_action("template_redirect", "pmpro_redirect_to_logged_in", 5);
158
- add_action("login_init", "pmpro_redirect_to_logged_in", 5);
54
 
55
  //redirect from default login pages to PMPro
56
  function pmpro_login_head()
57
+ {
58
  $login_redirect = apply_filters("pmpro_login_redirect", true);
59
 
60
  if((pmpro_is_login_page() || is_page("login") ||
139
  }
140
  }
141
  add_action('wp', 'pmpro_login_head');
142
+ add_action('login_init', 'pmpro_login_head');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
languages/pmpro.mo CHANGED
Binary file
languages/pmpro.po CHANGED
@@ -5,7 +5,7 @@
5
  msgid ""
6
  msgstr ""
7
  "Project-Id-Version: pmpro\n"
8
- "POT-Creation-Date: 2014-09-05 11:24-0400\n"
9
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10
  "Last-Translator: \n"
11
  "Language-Team: Stranger Studios <jason@strangerstudios.com>\n"
@@ -125,8 +125,7 @@ msgstr ""
125
  #: adminpages/admin_header.php:128 adminpages/admin_header.php:149
126
  #: adminpages/membershiplevels.php:490 adminpages/membershiplevels.php:496
127
  #: adminpages/membershiplevels.php:498 adminpages/pagesettings.php:69
128
- #: includes/adminpages.php:44 includes/adminpages.php:64
129
- #: includes/adminpages.php:65 includes/adminpages.php:100
130
  #: includes/adminpages.php:107
131
  msgid "Membership Levels"
132
  msgstr ""
@@ -1517,7 +1516,7 @@ msgstr ""
1517
  msgid "User"
1518
  msgstr ""
1519
 
1520
- #: adminpages/orders.php:904 includes/init.php:218 includes/profile.php:27
1521
  #: pages/checkout.php:33 pages/confirmation.php:47 pages/confirmation.php:64
1522
  #: pages/confirmation.php:105 pages/invoice.php:28 pages/invoice.php:51
1523
  #: adminpages/orders.php:601 adminpages/orders.php:904 includes/init.php:217
@@ -2161,7 +2160,7 @@ msgstr ""
2161
  msgid "Sales"
2162
  msgstr ""
2163
 
2164
- #: classes/class.memberorder.php:573 classes/class.memberorder.php:553
2165
  #: classes/class.memberorder.php:561 classes/class.memberorder.php:564
2166
  #: includes/cleanup.php:24
2167
  #, php-format
@@ -2176,27 +2175,27 @@ msgstr ""
2176
  msgid "An Email From %s"
2177
  msgstr ""
2178
 
2179
- #: classes/class.pmproemail.php:125 classes/class.pmproemail.php:120
2180
  #: classes/class.pmproemail.php:122
2181
  #, php-format
2182
  msgid "Your membership at %s has been CANCELLED"
2183
  msgstr ""
2184
 
2185
- #: classes/class.pmproemail.php:147 classes/class.pmproemail.php:142
2186
  #: classes/class.pmproemail.php:144
2187
  #, php-format
2188
  msgid "Membership for %s at %s has been CANCELLED"
2189
  msgstr ""
2190
 
2191
- #: classes/class.pmproemail.php:178 classes/class.pmproemail.php:172
2192
  #: classes/class.pmproemail.php:173 classes/class.pmproemail.php:175
2193
  #, php-format
2194
  msgid "Your membership confirmation for %s"
2195
  msgstr ""
2196
 
2197
- #: classes/class.pmproemail.php:231 classes/class.pmproemail.php:240
2198
- #: classes/class.pmproemail.php:249 classes/class.pmproemail.php:328
2199
- #: classes/class.pmproemail.php:337 classes/class.pmproemail.php:648
2200
  #: pages/checkout.php:66 pages/checkout.php:76 pages/checkout.php:549
2201
  #: pages/confirmation.php:52 pages/invoice.php:33
2202
  #: classes/class.pmproemail.php:216 classes/class.pmproemail.php:218
@@ -2215,8 +2214,8 @@ msgstr ""
2215
  msgid "Discount Code"
2216
  msgstr ""
2217
 
2218
- #: classes/class.pmproemail.php:256 classes/class.pmproemail.php:349
2219
- #: classes/class.pmproemail.php:654 classes/class.pmproemail.php:241
2220
  #: classes/class.pmproemail.php:243 classes/class.pmproemail.php:253
2221
  #: classes/class.pmproemail.php:325 classes/class.pmproemail.php:328
2222
  #: classes/class.pmproemail.php:346 classes/class.pmproemail.php:538
@@ -2225,83 +2224,83 @@ msgstr ""
2225
  msgid "This membership will expire on %s."
2226
  msgstr ""
2227
 
2228
- #: classes/class.pmproemail.php:278 classes/class.pmproemail.php:263
2229
  #: classes/class.pmproemail.php:265 classes/class.pmproemail.php:275
2230
  #, php-format
2231
  msgid "Member Checkout for %s at %s"
2232
  msgstr ""
2233
 
2234
- #: classes/class.pmproemail.php:366 classes/class.pmproemail.php:342
2235
  #: classes/class.pmproemail.php:345 classes/class.pmproemail.php:363
2236
  #, php-format
2237
  msgid "Your billing information has been udpated at %s"
2238
  msgstr ""
2239
 
2240
- #: classes/class.pmproemail.php:419 classes/class.pmproemail.php:386
2241
  #: classes/class.pmproemail.php:390 classes/class.pmproemail.php:416
2242
  #, php-format
2243
  msgid "Billing information has been udpated for %s at %s"
2244
  msgstr ""
2245
 
2246
- #: classes/class.pmproemail.php:467 classes/class.pmproemail.php:425
2247
  #: classes/class.pmproemail.php:430 classes/class.pmproemail.php:464
2248
  #, php-format
2249
  msgid "Membership Payment Failed at %s"
2250
  msgstr ""
2251
 
2252
- #: classes/class.pmproemail.php:513 classes/class.pmproemail.php:462
2253
  #: classes/class.pmproemail.php:468 classes/class.pmproemail.php:510
2254
  #, php-format
2255
  msgid "Membership Payment Failed For %s at %s"
2256
  msgstr ""
2257
 
2258
- #: classes/class.pmproemail.php:560 classes/class.pmproemail.php:508
2259
  #: classes/class.pmproemail.php:557
2260
  #, php-format
2261
  msgid "Credit Card on File Expiring Soon at %s"
2262
  msgstr ""
2263
 
2264
- #: classes/class.pmproemail.php:608 classes/class.pmproemail.php:501
2265
  #: classes/class.pmproemail.php:548 classes/class.pmproemail.php:605
2266
  #, php-format
2267
  msgid "INVOICE for %s membership"
2268
  msgstr ""
2269
 
2270
- #: classes/class.pmproemail.php:679 classes/class.pmproemail.php:563
2271
  #: classes/class.pmproemail.php:611 classes/class.pmproemail.php:676
2272
  #, php-format
2273
  msgid "Your trial at %s is ending soon"
2274
  msgstr ""
2275
 
2276
- #: classes/class.pmproemail.php:713 classes/class.pmproemail.php:596
2277
  #: classes/class.pmproemail.php:645 classes/class.pmproemail.php:710
2278
  #, php-format
2279
  msgid "Your membership at %s has ended"
2280
  msgstr ""
2281
 
2282
- #: classes/class.pmproemail.php:738 classes/class.pmproemail.php:621
2283
  #: classes/class.pmproemail.php:670 classes/class.pmproemail.php:735
2284
  #, php-format
2285
  msgid "Your membership at %s will end soon"
2286
  msgstr ""
2287
 
2288
- #: classes/class.pmproemail.php:758 classes/class.pmproemail.php:641
2289
  #: classes/class.pmproemail.php:690 classes/class.pmproemail.php:755
2290
  #, php-format
2291
  msgid "Your membership at %s has been changed"
2292
  msgstr ""
2293
 
2294
- #: classes/class.pmproemail.php:762 classes/class.pmproemail.php:759
2295
  #, php-format
2296
  msgid "The new level is %s."
2297
  msgstr ""
2298
 
2299
- #: classes/class.pmproemail.php:764 classes/class.pmproemail.php:647
2300
  #: classes/class.pmproemail.php:696 classes/class.pmproemail.php:761
2301
  msgid "Your membership has been cancelled"
2302
  msgstr ""
2303
 
2304
- #: classes/class.pmproemail.php:768 classes/class.pmproemail.php:806
2305
  #: classes/class.pmproemail.php:651 classes/class.pmproemail.php:689
2306
  #: classes/class.pmproemail.php:700 classes/class.pmproemail.php:738
2307
  #: classes/class.pmproemail.php:765 classes/class.pmproemail.php:803
@@ -2309,27 +2308,27 @@ msgstr ""
2309
  msgid "This membership will expire on %s"
2310
  msgstr ""
2311
 
2312
- #: classes/class.pmproemail.php:772 classes/class.pmproemail.php:810
2313
  #: classes/class.pmproemail.php:655 classes/class.pmproemail.php:693
2314
  #: classes/class.pmproemail.php:704 classes/class.pmproemail.php:742
2315
  #: classes/class.pmproemail.php:769 classes/class.pmproemail.php:807
2316
  msgid "This membership does not expire"
2317
  msgstr ""
2318
 
2319
- #: classes/class.pmproemail.php:796 classes/class.pmproemail.php:679
2320
  #: classes/class.pmproemail.php:728 classes/class.pmproemail.php:793
2321
  #, php-format
2322
  msgid "Membership for %s at %s has been changed"
2323
  msgstr ""
2324
 
2325
- #: classes/class.pmproemail.php:800 classes/class.pmproemail.php:645
2326
  #: classes/class.pmproemail.php:683 classes/class.pmproemail.php:694
2327
  #: classes/class.pmproemail.php:732 classes/class.pmproemail.php:797
2328
  #, php-format
2329
  msgid "The new level is %s. This membership is free"
2330
  msgstr ""
2331
 
2332
- #: classes/class.pmproemail.php:802 classes/class.pmproemail.php:799
2333
  msgid "Membership has been cancelled"
2334
  msgstr ""
2335
 
@@ -2463,7 +2462,6 @@ msgstr ""
2463
  #: classes/gateways/class.pmprogateway_stripe.php:354
2464
  #: classes/gateways/class.pmprogateway_stripe.php:361
2465
  #: classes/gateways/class.pmprogateway_stripe.php:396
2466
- #: classes/gateways/class.pmprogateway_stripe.php:402
2467
  msgid "Could not find the subscription."
2468
  msgstr ""
2469
 
@@ -2484,7 +2482,6 @@ msgstr ""
2484
  #: classes/gateways/class.pmprogateway_paypalexpress.php:305
2485
  #: classes/gateways/class.pmprogateway_paypalstandard.php:216
2486
  #: classes/gateways/class.pmprogateway_paypalstandard.php:220
2487
- #: classes/gateways/class.pmprogateway_paypalstandard.php:231
2488
  msgid ""
2489
  "Please contact the site owner or cancel your subscription from within PayPal "
2490
  "to make sure you are not charged going forward."
@@ -2494,7 +2491,6 @@ msgstr ""
2494
  #: classes/gateways/class.pmprogateway_stripe.php:190
2495
  #: classes/gateways/class.pmprogateway_stripe.php:192
2496
  #: classes/gateways/class.pmprogateway_stripe.php:199
2497
- #: classes/gateways/class.pmprogateway_stripe.php:201
2498
  msgid "Error creating customer record with Stripe:"
2499
  msgstr ""
2500
 
@@ -2503,7 +2499,6 @@ msgstr ""
2503
  #: classes/gateways/class.pmprogateway_stripe.php:279
2504
  #: classes/gateways/class.pmprogateway_stripe.php:286
2505
  #: classes/gateways/class.pmprogateway_stripe.php:302
2506
- #: classes/gateways/class.pmprogateway_stripe.php:308
2507
  msgid "Error creating plan with Stripe:"
2508
  msgstr ""
2509
 
@@ -2512,13 +2507,11 @@ msgstr ""
2512
  #: classes/gateways/class.pmprogateway_stripe.php:295
2513
  #: classes/gateways/class.pmprogateway_stripe.php:302
2514
  #: classes/gateways/class.pmprogateway_stripe.php:318
2515
- #: classes/gateways/class.pmprogateway_stripe.php:324
2516
  msgid "Error subscribing customer to plan with Stripe:"
2517
  msgstr ""
2518
 
2519
  #: classes/gateways/class.pmprogateway_stripe.php:389
2520
  #: classes/gateways/class.pmprogateway_stripe.php:383
2521
- #: classes/gateways/class.pmprogateway_stripe.php:389
2522
  msgid "Could not cancel old subscription."
2523
  msgstr ""
2524
 
@@ -2844,76 +2837,72 @@ msgstr ""
2844
  msgid "Membership level not found."
2845
  msgstr ""
2846
 
2847
- #: includes/functions.php:1101
2848
- msgid "No code was given to check."
2849
- msgstr ""
2850
-
2851
- #: includes/functions.php:1110 includes/functions.php:1050
2852
  #: includes/functions.php:1072 includes/functions.php:1088
2853
  #: includes/functions.php:1099 includes/functions.php:1102
2854
- #: includes/functions.php:1112 includes/functions.php:1113
2855
  msgid "The discount code could not be found."
2856
  msgstr ""
2857
 
2858
- #: includes/functions.php:1125 includes/functions.php:1066
2859
  #: includes/functions.php:1088 includes/functions.php:1104
2860
  #: includes/functions.php:1115 includes/functions.php:1118
2861
- #: includes/functions.php:1128 includes/functions.php:1129
2862
  #, php-format
2863
  msgid "This discount code goes into effect on %s."
2864
  msgstr ""
2865
 
2866
- #: includes/functions.php:1132 includes/functions.php:1075
2867
  #: includes/functions.php:1097 includes/functions.php:1113
2868
  #: includes/functions.php:1124 includes/functions.php:1127
2869
- #: includes/functions.php:1137 includes/functions.php:1138
2870
  #, php-format
2871
  msgid "This discount code expired on %s."
2872
  msgstr ""
2873
 
2874
- #: includes/functions.php:1142 includes/functions.php:1087
2875
  #: includes/functions.php:1109 includes/functions.php:1125
2876
  #: includes/functions.php:1136 includes/functions.php:1139
2877
- #: includes/functions.php:1149 includes/functions.php:1150
2878
  msgid "This discount code is no longer valid."
2879
  msgstr ""
2880
 
2881
- #: includes/functions.php:1155 includes/functions.php:1102
2882
  #: includes/functions.php:1124 includes/functions.php:1140
2883
  #: includes/functions.php:1151 includes/functions.php:1154
2884
- #: includes/functions.php:1164 includes/functions.php:1165
2885
  msgid "This discount code does not apply to this membership level."
2886
  msgstr ""
2887
 
2888
- #: includes/functions.php:1181 includes/functions.php:1110
2889
  #: includes/functions.php:1132 includes/functions.php:1148
2890
  #: includes/functions.php:1159 includes/functions.php:1162
2891
- #: includes/functions.php:1172 includes/functions.php:1182
2892
  msgid "This discount code is okay."
2893
  msgstr ""
2894
 
2895
- #: includes/functions.php:1206 includes/functions.php:1134
2896
  #: includes/functions.php:1156 includes/functions.php:1172
2897
  #: includes/functions.php:1183 includes/functions.php:1186
2898
- #: includes/functions.php:1196 includes/functions.php:1206
2899
  msgid "and"
2900
  msgstr ""
2901
 
2902
- #: includes/functions.php:1395 includes/functions.php:1319
2903
  #: includes/functions.php:1341 includes/functions.php:1361
2904
  #: includes/functions.php:1372 includes/functions.php:1375
2905
- #: includes/functions.php:1385 includes/functions.php:1395
2906
  msgid "Sign Up for !!name!! Now"
2907
  msgstr ""
2908
 
2909
- #: includes/functions.php:1401 includes/functions.php:1325
2910
  #: includes/functions.php:1347 includes/functions.php:1367
2911
  #: includes/functions.php:1378 includes/functions.php:1381
2912
- #: includes/functions.php:1391 includes/functions.php:1401
2913
  msgid "Please specify a level id."
2914
  msgstr ""
2915
 
2916
- #: includes/init.php:233 includes/profile.php:39 includes/init.php:232
2917
  #: includes/profile.php:37 includes/profile.php:39
2918
  msgid "None"
2919
  msgstr ""
@@ -3472,154 +3461,124 @@ msgstr ""
3472
  msgid "&larr; Return to Home"
3473
  msgstr ""
3474
 
3475
- #: preheaders/account.php:10 preheaders/levels.php:22 preheaders/account.php:7
3476
- #: preheaders/account.php:9 preheaders/account.php:10 preheaders/levels.php:19
3477
- #: preheaders/levels.php:21 preheaders/levels.php:22
3478
  msgid "Your membership status has been updated - Thank you!"
3479
  msgstr ""
3480
 
3481
- #: preheaders/account.php:12 preheaders/levels.php:24
3482
- #: preheaders/account.php:11 preheaders/account.php:12
3483
- #: preheaders/levels.php:23 preheaders/levels.php:24
3484
  msgid ""
3485
  "Sorry, your request could not be completed - please try again in a few "
3486
  "moments."
3487
  msgstr ""
3488
 
3489
- #: preheaders/billing.php:266 preheaders/checkout.php:465
3490
- #: preheaders/billing.php:258 preheaders/billing.php:265
3491
- #: preheaders/billing.php:266 preheaders/billing.php:279
3492
- #: preheaders/checkout.php:458 preheaders/checkout.php:464
3493
- #: preheaders/checkout.php:465 preheaders/checkout.php:481
3494
  #: preheaders/checkout.php:482
3495
  msgid "Please complete all required fields."
3496
  msgstr ""
3497
 
3498
- #: preheaders/billing.php:269 preheaders/checkout.php:473
3499
- #: preheaders/billing.php:263 preheaders/billing.php:268
3500
- #: preheaders/billing.php:269 preheaders/billing.php:284
3501
- #: preheaders/checkout.php:466 preheaders/checkout.php:473
3502
  #: preheaders/checkout.php:474 preheaders/checkout.php:491
3503
  #: preheaders/checkout.php:492
3504
  msgid "Your email addresses do not match. Please try again."
3505
  msgstr ""
3506
 
3507
- #: preheaders/billing.php:272 preheaders/checkout.php:478
3508
- #: preheaders/billing.php:268 preheaders/billing.php:271
3509
- #: preheaders/billing.php:272 preheaders/billing.php:289
3510
- #: preheaders/checkout.php:471 preheaders/checkout.php:478
3511
  #: preheaders/checkout.php:480 preheaders/checkout.php:497
3512
  #: preheaders/checkout.php:498
3513
  msgid "The email address entered is in an invalid format. Please try again."
3514
  msgstr ""
3515
 
3516
- #: preheaders/billing.php:276 preheaders/billing.php:274
3517
- #: preheaders/billing.php:275 preheaders/billing.php:276
3518
  #: preheaders/billing.php:295
3519
  msgid "All good!"
3520
  msgstr ""
3521
 
3522
- #: preheaders/billing.php:346 preheaders/billing.php:340
3523
- #: preheaders/billing.php:345 preheaders/billing.php:346
3524
  #: preheaders/billing.php:370
3525
  #, php-format
3526
  msgid "Information updated. <a href=\"%s\">&laquo; back to my account</a>"
3527
  msgstr ""
3528
 
3529
- #: preheaders/billing.php:352 preheaders/billing.php:347
3530
- #: preheaders/billing.php:351 preheaders/billing.php:352
3531
  #: preheaders/billing.php:378 preheaders/billing.php:380
3532
  msgid "Error updating billing information."
3533
  msgstr ""
3534
 
3535
- #: preheaders/cancel.php:25 preheaders/cancel.php:24 preheaders/cancel.php:25
3536
  msgid "Your membership has been cancelled."
3537
  msgstr ""
3538
 
3539
- #: preheaders/checkout.php:31 preheaders/checkout.php:487
3540
- #: preheaders/checkout.php:28 preheaders/checkout.php:30
3541
- #: preheaders/checkout.php:31 preheaders/checkout.php:480
3542
- #: preheaders/checkout.php:487 preheaders/checkout.php:491
3543
  #: preheaders/checkout.php:508 preheaders/checkout.php:509
3544
  msgid "Invalid gateway."
3545
  msgstr ""
3546
 
3547
- #: preheaders/checkout.php:89 preheaders/checkout.php:88
3548
- #: preheaders/checkout.php:89 preheaders/checkout.php:96
3549
  msgid "Checkout: Payment Information"
3550
  msgstr ""
3551
 
3552
- #: preheaders/checkout.php:100 preheaders/checkout.php:99
3553
- #: preheaders/checkout.php:100 preheaders/checkout.php:109
3554
  msgid "Setup Your Account"
3555
  msgstr ""
3556
 
3557
- #: preheaders/checkout.php:416 preheaders/checkout.php:416
3558
- msgid "There are JavaScript errors on the page. Please contact the webmaster."
3559
- msgstr ""
3560
-
3561
- #: preheaders/checkout.php:468 preheaders/checkout.php:461
3562
- #: preheaders/checkout.php:468 preheaders/checkout.php:485
3563
- #: preheaders/checkout.php:486
3564
  msgid "Your passwords do not match. Please try again."
3565
  msgstr ""
3566
 
3567
- #: preheaders/checkout.php:483 preheaders/checkout.php:476
3568
- #: preheaders/checkout.php:483 preheaders/checkout.php:486
3569
  #: preheaders/checkout.php:503 preheaders/checkout.php:504
3570
  #, php-format
3571
  msgid "Please check the box to agree to the %s."
3572
  msgstr ""
3573
 
3574
- #: preheaders/checkout.php:490 preheaders/checkout.php:483
3575
- #: preheaders/checkout.php:490 preheaders/checkout.php:495
3576
  #: preheaders/checkout.php:512 preheaders/checkout.php:513
3577
  msgid "Are you a spammer?"
3578
  msgstr ""
3579
 
3580
- #: preheaders/checkout.php:510 preheaders/checkout.php:503
3581
- #: preheaders/checkout.php:510 preheaders/checkout.php:518
3582
  #: preheaders/checkout.php:535 preheaders/checkout.php:536
3583
  msgid "That username is already taken. Please try another."
3584
  msgstr ""
3585
 
3586
- #: preheaders/checkout.php:515 preheaders/checkout.php:508
3587
- #: preheaders/checkout.php:515 preheaders/checkout.php:524
3588
  #: preheaders/checkout.php:541 preheaders/checkout.php:542
3589
  msgid "That email address is already taken. Please try another."
3590
  msgstr ""
3591
 
3592
- #: preheaders/checkout.php:532 preheaders/checkout.php:525
3593
- #: preheaders/checkout.php:532 preheaders/checkout.php:544
3594
  #: preheaders/checkout.php:561 preheaders/checkout.php:562
3595
  #, php-format
3596
  msgid "reCAPTCHA failed. (%s) Please try again."
3597
  msgstr ""
3598
 
3599
- #: preheaders/checkout.php:654 preheaders/checkout.php:647
3600
- #: preheaders/checkout.php:654 preheaders/checkout.php:683
3601
  #: preheaders/checkout.php:701 preheaders/checkout.php:702
3602
  msgid "Payment accepted."
3603
  msgstr ""
3604
 
3605
- #: preheaders/checkout.php:660 preheaders/checkout.php:653
3606
- #: preheaders/checkout.php:660 preheaders/checkout.php:691
3607
  #: preheaders/checkout.php:709 preheaders/checkout.php:710
3608
  msgid ""
3609
  "Unknown error generating account. Please contact us to setup your membership."
3610
  msgstr ""
3611
 
3612
- #: preheaders/checkout.php:697 preheaders/checkout.php:757
3613
- #: preheaders/checkout.php:690 preheaders/checkout.php:697
3614
- #: preheaders/checkout.php:735 preheaders/checkout.php:750
3615
- #: preheaders/checkout.php:753 preheaders/checkout.php:754
3616
- #: preheaders/checkout.php:757 preheaders/checkout.php:803
3617
  #: preheaders/checkout.php:822 preheaders/checkout.php:823
3618
  msgid "The PayPal Token was lost."
3619
  msgstr ""
3620
 
3621
- #: preheaders/checkout.php:792 preheaders/checkout.php:785
3622
- #: preheaders/checkout.php:792 preheaders/checkout.php:825
3623
  #: preheaders/checkout.php:844 preheaders/checkout.php:859
3624
  #: preheaders/checkout.php:860
3625
  msgid ""
@@ -3627,8 +3586,7 @@ msgid ""
3627
  "Please contact us."
3628
  msgstr ""
3629
 
3630
- #: preheaders/checkout.php:960 preheaders/checkout.php:953
3631
- #: preheaders/checkout.php:960 preheaders/checkout.php:983
3632
  #: preheaders/checkout.php:1030 preheaders/checkout.php:1045
3633
  #: preheaders/checkout.php:1046
3634
  msgid ""
@@ -3637,8 +3595,7 @@ msgid ""
3637
  "submit this form again. Please contact the site owner to fix this issue."
3638
  msgstr ""
3639
 
3640
- #: preheaders/checkout.php:963 preheaders/checkout.php:956
3641
- #: preheaders/checkout.php:963 preheaders/checkout.php:988
3642
  #: preheaders/checkout.php:1035 preheaders/checkout.php:1050
3643
  #: preheaders/checkout.php:1051
3644
  msgid ""
@@ -3647,8 +3604,7 @@ msgid ""
3647
  "this form again. Please contact the site owner to fix this issue."
3648
  msgstr ""
3649
 
3650
- #: preheaders/checkout.php:974 preheaders/checkout.php:967
3651
- #: preheaders/checkout.php:974 preheaders/checkout.php:1001
3652
  #: preheaders/checkout.php:1048 preheaders/checkout.php:1063
3653
  #: preheaders/checkout.php:1064
3654
  #, php-format
@@ -3657,8 +3613,7 @@ msgid ""
3657
  "be processed."
3658
  msgstr ""
3659
 
3660
- #: preheaders/checkout.php:976 preheaders/checkout.php:969
3661
- #: preheaders/checkout.php:976 preheaders/checkout.php:1003
3662
  #: preheaders/checkout.php:1050 preheaders/checkout.php:1065
3663
  #: preheaders/checkout.php:1066
3664
  msgid "A Payment Gateway must be setup before any payments will be processed."
5
  msgid ""
6
  msgstr ""
7
  "Project-Id-Version: pmpro\n"
8
+ "POT-Creation-Date: 2014-07-23 17:09-0400\n"
9
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10
  "Last-Translator: \n"
11
  "Language-Team: Stranger Studios <jason@strangerstudios.com>\n"
125
  #: adminpages/admin_header.php:128 adminpages/admin_header.php:149
126
  #: adminpages/membershiplevels.php:490 adminpages/membershiplevels.php:496
127
  #: adminpages/membershiplevels.php:498 adminpages/pagesettings.php:69
128
+ #: includes/adminpages.php:44 includes/adminpages.php:100
 
129
  #: includes/adminpages.php:107
130
  msgid "Membership Levels"
131
  msgstr ""
1516
  msgid "User"
1517
  msgstr ""
1518
 
1519
+ #: adminpages/orders.php:904 includes/init.php:217 includes/profile.php:27
1520
  #: pages/checkout.php:33 pages/confirmation.php:47 pages/confirmation.php:64
1521
  #: pages/confirmation.php:105 pages/invoice.php:28 pages/invoice.php:51
1522
  #: adminpages/orders.php:601 adminpages/orders.php:904 includes/init.php:217
2160
  msgid "Sales"
2161
  msgstr ""
2162
 
2163
+ #: classes/class.memberorder.php:564 classes/class.memberorder.php:553
2164
  #: classes/class.memberorder.php:561 classes/class.memberorder.php:564
2165
  #: includes/cleanup.php:24
2166
  #, php-format
2175
  msgid "An Email From %s"
2176
  msgstr ""
2177
 
2178
+ #: classes/class.pmproemail.php:122 classes/class.pmproemail.php:120
2179
  #: classes/class.pmproemail.php:122
2180
  #, php-format
2181
  msgid "Your membership at %s has been CANCELLED"
2182
  msgstr ""
2183
 
2184
+ #: classes/class.pmproemail.php:144 classes/class.pmproemail.php:142
2185
  #: classes/class.pmproemail.php:144
2186
  #, php-format
2187
  msgid "Membership for %s at %s has been CANCELLED"
2188
  msgstr ""
2189
 
2190
+ #: classes/class.pmproemail.php:175 classes/class.pmproemail.php:172
2191
  #: classes/class.pmproemail.php:173 classes/class.pmproemail.php:175
2192
  #, php-format
2193
  msgid "Your membership confirmation for %s"
2194
  msgstr ""
2195
 
2196
+ #: classes/class.pmproemail.php:228 classes/class.pmproemail.php:237
2197
+ #: classes/class.pmproemail.php:246 classes/class.pmproemail.php:325
2198
+ #: classes/class.pmproemail.php:334 classes/class.pmproemail.php:645
2199
  #: pages/checkout.php:66 pages/checkout.php:76 pages/checkout.php:549
2200
  #: pages/confirmation.php:52 pages/invoice.php:33
2201
  #: classes/class.pmproemail.php:216 classes/class.pmproemail.php:218
2214
  msgid "Discount Code"
2215
  msgstr ""
2216
 
2217
+ #: classes/class.pmproemail.php:253 classes/class.pmproemail.php:346
2218
+ #: classes/class.pmproemail.php:651 classes/class.pmproemail.php:241
2219
  #: classes/class.pmproemail.php:243 classes/class.pmproemail.php:253
2220
  #: classes/class.pmproemail.php:325 classes/class.pmproemail.php:328
2221
  #: classes/class.pmproemail.php:346 classes/class.pmproemail.php:538
2224
  msgid "This membership will expire on %s."
2225
  msgstr ""
2226
 
2227
+ #: classes/class.pmproemail.php:275 classes/class.pmproemail.php:263
2228
  #: classes/class.pmproemail.php:265 classes/class.pmproemail.php:275
2229
  #, php-format
2230
  msgid "Member Checkout for %s at %s"
2231
  msgstr ""
2232
 
2233
+ #: classes/class.pmproemail.php:363 classes/class.pmproemail.php:342
2234
  #: classes/class.pmproemail.php:345 classes/class.pmproemail.php:363
2235
  #, php-format
2236
  msgid "Your billing information has been udpated at %s"
2237
  msgstr ""
2238
 
2239
+ #: classes/class.pmproemail.php:416 classes/class.pmproemail.php:386
2240
  #: classes/class.pmproemail.php:390 classes/class.pmproemail.php:416
2241
  #, php-format
2242
  msgid "Billing information has been udpated for %s at %s"
2243
  msgstr ""
2244
 
2245
+ #: classes/class.pmproemail.php:464 classes/class.pmproemail.php:425
2246
  #: classes/class.pmproemail.php:430 classes/class.pmproemail.php:464
2247
  #, php-format
2248
  msgid "Membership Payment Failed at %s"
2249
  msgstr ""
2250
 
2251
+ #: classes/class.pmproemail.php:510 classes/class.pmproemail.php:462
2252
  #: classes/class.pmproemail.php:468 classes/class.pmproemail.php:510
2253
  #, php-format
2254
  msgid "Membership Payment Failed For %s at %s"
2255
  msgstr ""
2256
 
2257
+ #: classes/class.pmproemail.php:557 classes/class.pmproemail.php:508
2258
  #: classes/class.pmproemail.php:557
2259
  #, php-format
2260
  msgid "Credit Card on File Expiring Soon at %s"
2261
  msgstr ""
2262
 
2263
+ #: classes/class.pmproemail.php:605 classes/class.pmproemail.php:501
2264
  #: classes/class.pmproemail.php:548 classes/class.pmproemail.php:605
2265
  #, php-format
2266
  msgid "INVOICE for %s membership"
2267
  msgstr ""
2268
 
2269
+ #: classes/class.pmproemail.php:676 classes/class.pmproemail.php:563
2270
  #: classes/class.pmproemail.php:611 classes/class.pmproemail.php:676
2271
  #, php-format
2272
  msgid "Your trial at %s is ending soon"
2273
  msgstr ""
2274
 
2275
+ #: classes/class.pmproemail.php:710 classes/class.pmproemail.php:596
2276
  #: classes/class.pmproemail.php:645 classes/class.pmproemail.php:710
2277
  #, php-format
2278
  msgid "Your membership at %s has ended"
2279
  msgstr ""
2280
 
2281
+ #: classes/class.pmproemail.php:735 classes/class.pmproemail.php:621
2282
  #: classes/class.pmproemail.php:670 classes/class.pmproemail.php:735
2283
  #, php-format
2284
  msgid "Your membership at %s will end soon"
2285
  msgstr ""
2286
 
2287
+ #: classes/class.pmproemail.php:755 classes/class.pmproemail.php:641
2288
  #: classes/class.pmproemail.php:690 classes/class.pmproemail.php:755
2289
  #, php-format
2290
  msgid "Your membership at %s has been changed"
2291
  msgstr ""
2292
 
2293
+ #: classes/class.pmproemail.php:759 classes/class.pmproemail.php:759
2294
  #, php-format
2295
  msgid "The new level is %s."
2296
  msgstr ""
2297
 
2298
+ #: classes/class.pmproemail.php:761 classes/class.pmproemail.php:647
2299
  #: classes/class.pmproemail.php:696 classes/class.pmproemail.php:761
2300
  msgid "Your membership has been cancelled"
2301
  msgstr ""
2302
 
2303
+ #: classes/class.pmproemail.php:765 classes/class.pmproemail.php:803
2304
  #: classes/class.pmproemail.php:651 classes/class.pmproemail.php:689
2305
  #: classes/class.pmproemail.php:700 classes/class.pmproemail.php:738
2306
  #: classes/class.pmproemail.php:765 classes/class.pmproemail.php:803
2308
  msgid "This membership will expire on %s"
2309
  msgstr ""
2310
 
2311
+ #: classes/class.pmproemail.php:769 classes/class.pmproemail.php:807
2312
  #: classes/class.pmproemail.php:655 classes/class.pmproemail.php:693
2313
  #: classes/class.pmproemail.php:704 classes/class.pmproemail.php:742
2314
  #: classes/class.pmproemail.php:769 classes/class.pmproemail.php:807
2315
  msgid "This membership does not expire"
2316
  msgstr ""
2317
 
2318
+ #: classes/class.pmproemail.php:793 classes/class.pmproemail.php:679
2319
  #: classes/class.pmproemail.php:728 classes/class.pmproemail.php:793
2320
  #, php-format
2321
  msgid "Membership for %s at %s has been changed"
2322
  msgstr ""
2323
 
2324
+ #: classes/class.pmproemail.php:797 classes/class.pmproemail.php:645
2325
  #: classes/class.pmproemail.php:683 classes/class.pmproemail.php:694
2326
  #: classes/class.pmproemail.php:732 classes/class.pmproemail.php:797
2327
  #, php-format
2328
  msgid "The new level is %s. This membership is free"
2329
  msgstr ""
2330
 
2331
+ #: classes/class.pmproemail.php:799 classes/class.pmproemail.php:799
2332
  msgid "Membership has been cancelled"
2333
  msgstr ""
2334
 
2462
  #: classes/gateways/class.pmprogateway_stripe.php:354
2463
  #: classes/gateways/class.pmprogateway_stripe.php:361
2464
  #: classes/gateways/class.pmprogateway_stripe.php:396
 
2465
  msgid "Could not find the subscription."
2466
  msgstr ""
2467
 
2482
  #: classes/gateways/class.pmprogateway_paypalexpress.php:305
2483
  #: classes/gateways/class.pmprogateway_paypalstandard.php:216
2484
  #: classes/gateways/class.pmprogateway_paypalstandard.php:220
 
2485
  msgid ""
2486
  "Please contact the site owner or cancel your subscription from within PayPal "
2487
  "to make sure you are not charged going forward."
2491
  #: classes/gateways/class.pmprogateway_stripe.php:190
2492
  #: classes/gateways/class.pmprogateway_stripe.php:192
2493
  #: classes/gateways/class.pmprogateway_stripe.php:199
 
2494
  msgid "Error creating customer record with Stripe:"
2495
  msgstr ""
2496
 
2499
  #: classes/gateways/class.pmprogateway_stripe.php:279
2500
  #: classes/gateways/class.pmprogateway_stripe.php:286
2501
  #: classes/gateways/class.pmprogateway_stripe.php:302
 
2502
  msgid "Error creating plan with Stripe:"
2503
  msgstr ""
2504
 
2507
  #: classes/gateways/class.pmprogateway_stripe.php:295
2508
  #: classes/gateways/class.pmprogateway_stripe.php:302
2509
  #: classes/gateways/class.pmprogateway_stripe.php:318
 
2510
  msgid "Error subscribing customer to plan with Stripe:"
2511
  msgstr ""
2512
 
2513
  #: classes/gateways/class.pmprogateway_stripe.php:389
2514
  #: classes/gateways/class.pmprogateway_stripe.php:383
 
2515
  msgid "Could not cancel old subscription."
2516
  msgstr ""
2517
 
2837
  msgid "Membership level not found."
2838
  msgstr ""
2839
 
2840
+ #: includes/functions.php:1112 includes/functions.php:1050
 
 
 
 
2841
  #: includes/functions.php:1072 includes/functions.php:1088
2842
  #: includes/functions.php:1099 includes/functions.php:1102
2843
+ #: includes/functions.php:1112
2844
  msgid "The discount code could not be found."
2845
  msgstr ""
2846
 
2847
+ #: includes/functions.php:1128 includes/functions.php:1066
2848
  #: includes/functions.php:1088 includes/functions.php:1104
2849
  #: includes/functions.php:1115 includes/functions.php:1118
2850
+ #: includes/functions.php:1128
2851
  #, php-format
2852
  msgid "This discount code goes into effect on %s."
2853
  msgstr ""
2854
 
2855
+ #: includes/functions.php:1137 includes/functions.php:1075
2856
  #: includes/functions.php:1097 includes/functions.php:1113
2857
  #: includes/functions.php:1124 includes/functions.php:1127
2858
+ #: includes/functions.php:1137
2859
  #, php-format
2860
  msgid "This discount code expired on %s."
2861
  msgstr ""
2862
 
2863
+ #: includes/functions.php:1149 includes/functions.php:1087
2864
  #: includes/functions.php:1109 includes/functions.php:1125
2865
  #: includes/functions.php:1136 includes/functions.php:1139
2866
+ #: includes/functions.php:1149
2867
  msgid "This discount code is no longer valid."
2868
  msgstr ""
2869
 
2870
+ #: includes/functions.php:1164 includes/functions.php:1102
2871
  #: includes/functions.php:1124 includes/functions.php:1140
2872
  #: includes/functions.php:1151 includes/functions.php:1154
2873
+ #: includes/functions.php:1164
2874
  msgid "This discount code does not apply to this membership level."
2875
  msgstr ""
2876
 
2877
+ #: includes/functions.php:1172 includes/functions.php:1110
2878
  #: includes/functions.php:1132 includes/functions.php:1148
2879
  #: includes/functions.php:1159 includes/functions.php:1162
2880
+ #: includes/functions.php:1172
2881
  msgid "This discount code is okay."
2882
  msgstr ""
2883
 
2884
+ #: includes/functions.php:1196 includes/functions.php:1134
2885
  #: includes/functions.php:1156 includes/functions.php:1172
2886
  #: includes/functions.php:1183 includes/functions.php:1186
2887
+ #: includes/functions.php:1196
2888
  msgid "and"
2889
  msgstr ""
2890
 
2891
+ #: includes/functions.php:1385 includes/functions.php:1319
2892
  #: includes/functions.php:1341 includes/functions.php:1361
2893
  #: includes/functions.php:1372 includes/functions.php:1375
2894
+ #: includes/functions.php:1385
2895
  msgid "Sign Up for !!name!! Now"
2896
  msgstr ""
2897
 
2898
+ #: includes/functions.php:1391 includes/functions.php:1325
2899
  #: includes/functions.php:1347 includes/functions.php:1367
2900
  #: includes/functions.php:1378 includes/functions.php:1381
2901
+ #: includes/functions.php:1391
2902
  msgid "Please specify a level id."
2903
  msgstr ""
2904
 
2905
+ #: includes/init.php:232 includes/profile.php:39 includes/init.php:232
2906
  #: includes/profile.php:37 includes/profile.php:39
2907
  msgid "None"
2908
  msgstr ""
3461
  msgid "&larr; Return to Home"
3462
  msgstr ""
3463
 
3464
+ #: preheaders/account.php:9 preheaders/levels.php:21 preheaders/account.php:7
3465
+ #: preheaders/levels.php:19
 
3466
  msgid "Your membership status has been updated - Thank you!"
3467
  msgstr ""
3468
 
3469
+ #: preheaders/account.php:11 preheaders/levels.php:23
3470
+ #: preheaders/account.php:11 preheaders/levels.php:23
 
3471
  msgid ""
3472
  "Sorry, your request could not be completed - please try again in a few "
3473
  "moments."
3474
  msgstr ""
3475
 
3476
+ #: preheaders/billing.php:265 preheaders/checkout.php:458
3477
+ #: preheaders/billing.php:258 preheaders/billing.php:279
3478
+ #: preheaders/checkout.php:464 preheaders/checkout.php:481
 
 
3479
  #: preheaders/checkout.php:482
3480
  msgid "Please complete all required fields."
3481
  msgstr ""
3482
 
3483
+ #: preheaders/billing.php:268 preheaders/checkout.php:466
3484
+ #: preheaders/billing.php:263 preheaders/billing.php:284
 
 
3485
  #: preheaders/checkout.php:474 preheaders/checkout.php:491
3486
  #: preheaders/checkout.php:492
3487
  msgid "Your email addresses do not match. Please try again."
3488
  msgstr ""
3489
 
3490
+ #: preheaders/billing.php:271 preheaders/checkout.php:471
3491
+ #: preheaders/billing.php:268 preheaders/billing.php:289
 
 
3492
  #: preheaders/checkout.php:480 preheaders/checkout.php:497
3493
  #: preheaders/checkout.php:498
3494
  msgid "The email address entered is in an invalid format. Please try again."
3495
  msgstr ""
3496
 
3497
+ #: preheaders/billing.php:275 preheaders/billing.php:274
 
3498
  #: preheaders/billing.php:295
3499
  msgid "All good!"
3500
  msgstr ""
3501
 
3502
+ #: preheaders/billing.php:345 preheaders/billing.php:340
 
3503
  #: preheaders/billing.php:370
3504
  #, php-format
3505
  msgid "Information updated. <a href=\"%s\">&laquo; back to my account</a>"
3506
  msgstr ""
3507
 
3508
+ #: preheaders/billing.php:351 preheaders/billing.php:347
 
3509
  #: preheaders/billing.php:378 preheaders/billing.php:380
3510
  msgid "Error updating billing information."
3511
  msgstr ""
3512
 
3513
+ #: preheaders/cancel.php:24 preheaders/cancel.php:24
3514
  msgid "Your membership has been cancelled."
3515
  msgstr ""
3516
 
3517
+ #: preheaders/checkout.php:30 preheaders/checkout.php:480
3518
+ #: preheaders/checkout.php:28 preheaders/checkout.php:491
 
 
3519
  #: preheaders/checkout.php:508 preheaders/checkout.php:509
3520
  msgid "Invalid gateway."
3521
  msgstr ""
3522
 
3523
+ #: preheaders/checkout.php:88 preheaders/checkout.php:96
 
3524
  msgid "Checkout: Payment Information"
3525
  msgstr ""
3526
 
3527
+ #: preheaders/checkout.php:99 preheaders/checkout.php:109
 
3528
  msgid "Setup Your Account"
3529
  msgstr ""
3530
 
3531
+ #: preheaders/checkout.php:461 preheaders/checkout.php:468
3532
+ #: preheaders/checkout.php:485 preheaders/checkout.php:486
 
 
 
 
 
3533
  msgid "Your passwords do not match. Please try again."
3534
  msgstr ""
3535
 
3536
+ #: preheaders/checkout.php:476 preheaders/checkout.php:486
 
3537
  #: preheaders/checkout.php:503 preheaders/checkout.php:504
3538
  #, php-format
3539
  msgid "Please check the box to agree to the %s."
3540
  msgstr ""
3541
 
3542
+ #: preheaders/checkout.php:483 preheaders/checkout.php:495
 
3543
  #: preheaders/checkout.php:512 preheaders/checkout.php:513
3544
  msgid "Are you a spammer?"
3545
  msgstr ""
3546
 
3547
+ #: preheaders/checkout.php:503 preheaders/checkout.php:518
 
3548
  #: preheaders/checkout.php:535 preheaders/checkout.php:536
3549
  msgid "That username is already taken. Please try another."
3550
  msgstr ""
3551
 
3552
+ #: preheaders/checkout.php:508 preheaders/checkout.php:524
 
3553
  #: preheaders/checkout.php:541 preheaders/checkout.php:542
3554
  msgid "That email address is already taken. Please try another."
3555
  msgstr ""
3556
 
3557
+ #: preheaders/checkout.php:525 preheaders/checkout.php:544
 
3558
  #: preheaders/checkout.php:561 preheaders/checkout.php:562
3559
  #, php-format
3560
  msgid "reCAPTCHA failed. (%s) Please try again."
3561
  msgstr ""
3562
 
3563
+ #: preheaders/checkout.php:647 preheaders/checkout.php:683
 
3564
  #: preheaders/checkout.php:701 preheaders/checkout.php:702
3565
  msgid "Payment accepted."
3566
  msgstr ""
3567
 
3568
+ #: preheaders/checkout.php:653 preheaders/checkout.php:691
 
3569
  #: preheaders/checkout.php:709 preheaders/checkout.php:710
3570
  msgid ""
3571
  "Unknown error generating account. Please contact us to setup your membership."
3572
  msgstr ""
3573
 
3574
+ #: preheaders/checkout.php:690 preheaders/checkout.php:750
3575
+ #: preheaders/checkout.php:735 preheaders/checkout.php:753
3576
+ #: preheaders/checkout.php:754 preheaders/checkout.php:803
 
 
3577
  #: preheaders/checkout.php:822 preheaders/checkout.php:823
3578
  msgid "The PayPal Token was lost."
3579
  msgstr ""
3580
 
3581
+ #: preheaders/checkout.php:785 preheaders/checkout.php:825
 
3582
  #: preheaders/checkout.php:844 preheaders/checkout.php:859
3583
  #: preheaders/checkout.php:860
3584
  msgid ""
3586
  "Please contact us."
3587
  msgstr ""
3588
 
3589
+ #: preheaders/checkout.php:953 preheaders/checkout.php:983
 
3590
  #: preheaders/checkout.php:1030 preheaders/checkout.php:1045
3591
  #: preheaders/checkout.php:1046
3592
  msgid ""
3595
  "submit this form again. Please contact the site owner to fix this issue."
3596
  msgstr ""
3597
 
3598
+ #: preheaders/checkout.php:956 preheaders/checkout.php:988
 
3599
  #: preheaders/checkout.php:1035 preheaders/checkout.php:1050
3600
  #: preheaders/checkout.php:1051
3601
  msgid ""
3604
  "this form again. Please contact the site owner to fix this issue."
3605
  msgstr ""
3606
 
3607
+ #: preheaders/checkout.php:967 preheaders/checkout.php:1001
 
3608
  #: preheaders/checkout.php:1048 preheaders/checkout.php:1063
3609
  #: preheaders/checkout.php:1064
3610
  #, php-format
3613
  "be processed."
3614
  msgstr ""
3615
 
3616
+ #: preheaders/checkout.php:969 preheaders/checkout.php:1003
 
3617
  #: preheaders/checkout.php:1050 preheaders/checkout.php:1065
3618
  #: preheaders/checkout.php:1066
3619
  msgid "A Payment Gateway must be setup before any payments will be processed."
languages/pmpro.pot CHANGED
@@ -5,7 +5,7 @@
5
  msgid ""
6
  msgstr ""
7
  "Project-Id-Version: pmpro\n"
8
- "POT-Creation-Date: 2014-09-05 11:24-0400\n"
9
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10
  "Last-Translator: \n"
11
  "Language-Team: Stranger Studios <jason@strangerstudios.com>\n"
@@ -125,8 +125,7 @@ msgstr ""
125
  #: adminpages/admin_header.php:128 adminpages/admin_header.php:149
126
  #: adminpages/membershiplevels.php:490 adminpages/membershiplevels.php:496
127
  #: adminpages/membershiplevels.php:498 adminpages/pagesettings.php:69
128
- #: includes/adminpages.php:44 includes/adminpages.php:64
129
- #: includes/adminpages.php:65 includes/adminpages.php:100
130
  #: includes/adminpages.php:107
131
  msgid "Membership Levels"
132
  msgstr ""
@@ -1517,7 +1516,7 @@ msgstr ""
1517
  msgid "User"
1518
  msgstr ""
1519
 
1520
- #: adminpages/orders.php:904 includes/init.php:218 includes/profile.php:27
1521
  #: pages/checkout.php:33 pages/confirmation.php:47 pages/confirmation.php:64
1522
  #: pages/confirmation.php:105 pages/invoice.php:28 pages/invoice.php:51
1523
  #: adminpages/orders.php:601 adminpages/orders.php:904 includes/init.php:217
@@ -2161,7 +2160,7 @@ msgstr ""
2161
  msgid "Sales"
2162
  msgstr ""
2163
 
2164
- #: classes/class.memberorder.php:573 classes/class.memberorder.php:553
2165
  #: classes/class.memberorder.php:561 classes/class.memberorder.php:564
2166
  #: includes/cleanup.php:24
2167
  #, php-format
@@ -2176,27 +2175,27 @@ msgstr ""
2176
  msgid "An Email From %s"
2177
  msgstr ""
2178
 
2179
- #: classes/class.pmproemail.php:125 classes/class.pmproemail.php:120
2180
  #: classes/class.pmproemail.php:122
2181
  #, php-format
2182
  msgid "Your membership at %s has been CANCELLED"
2183
  msgstr ""
2184
 
2185
- #: classes/class.pmproemail.php:147 classes/class.pmproemail.php:142
2186
  #: classes/class.pmproemail.php:144
2187
  #, php-format
2188
  msgid "Membership for %s at %s has been CANCELLED"
2189
  msgstr ""
2190
 
2191
- #: classes/class.pmproemail.php:178 classes/class.pmproemail.php:172
2192
  #: classes/class.pmproemail.php:173 classes/class.pmproemail.php:175
2193
  #, php-format
2194
  msgid "Your membership confirmation for %s"
2195
  msgstr ""
2196
 
2197
- #: classes/class.pmproemail.php:231 classes/class.pmproemail.php:240
2198
- #: classes/class.pmproemail.php:249 classes/class.pmproemail.php:328
2199
- #: classes/class.pmproemail.php:337 classes/class.pmproemail.php:648
2200
  #: pages/checkout.php:66 pages/checkout.php:76 pages/checkout.php:549
2201
  #: pages/confirmation.php:52 pages/invoice.php:33
2202
  #: classes/class.pmproemail.php:216 classes/class.pmproemail.php:218
@@ -2215,8 +2214,8 @@ msgstr ""
2215
  msgid "Discount Code"
2216
  msgstr ""
2217
 
2218
- #: classes/class.pmproemail.php:256 classes/class.pmproemail.php:349
2219
- #: classes/class.pmproemail.php:654 classes/class.pmproemail.php:241
2220
  #: classes/class.pmproemail.php:243 classes/class.pmproemail.php:253
2221
  #: classes/class.pmproemail.php:325 classes/class.pmproemail.php:328
2222
  #: classes/class.pmproemail.php:346 classes/class.pmproemail.php:538
@@ -2225,83 +2224,83 @@ msgstr ""
2225
  msgid "This membership will expire on %s."
2226
  msgstr ""
2227
 
2228
- #: classes/class.pmproemail.php:278 classes/class.pmproemail.php:263
2229
  #: classes/class.pmproemail.php:265 classes/class.pmproemail.php:275
2230
  #, php-format
2231
  msgid "Member Checkout for %s at %s"
2232
  msgstr ""
2233
 
2234
- #: classes/class.pmproemail.php:366 classes/class.pmproemail.php:342
2235
  #: classes/class.pmproemail.php:345 classes/class.pmproemail.php:363
2236
  #, php-format
2237
  msgid "Your billing information has been udpated at %s"
2238
  msgstr ""
2239
 
2240
- #: classes/class.pmproemail.php:419 classes/class.pmproemail.php:386
2241
  #: classes/class.pmproemail.php:390 classes/class.pmproemail.php:416
2242
  #, php-format
2243
  msgid "Billing information has been udpated for %s at %s"
2244
  msgstr ""
2245
 
2246
- #: classes/class.pmproemail.php:467 classes/class.pmproemail.php:425
2247
  #: classes/class.pmproemail.php:430 classes/class.pmproemail.php:464
2248
  #, php-format
2249
  msgid "Membership Payment Failed at %s"
2250
  msgstr ""
2251
 
2252
- #: classes/class.pmproemail.php:513 classes/class.pmproemail.php:462
2253
  #: classes/class.pmproemail.php:468 classes/class.pmproemail.php:510
2254
  #, php-format
2255
  msgid "Membership Payment Failed For %s at %s"
2256
  msgstr ""
2257
 
2258
- #: classes/class.pmproemail.php:560 classes/class.pmproemail.php:508
2259
  #: classes/class.pmproemail.php:557
2260
  #, php-format
2261
  msgid "Credit Card on File Expiring Soon at %s"
2262
  msgstr ""
2263
 
2264
- #: classes/class.pmproemail.php:608 classes/class.pmproemail.php:501
2265
  #: classes/class.pmproemail.php:548 classes/class.pmproemail.php:605
2266
  #, php-format
2267
  msgid "INVOICE for %s membership"
2268
  msgstr ""
2269
 
2270
- #: classes/class.pmproemail.php:679 classes/class.pmproemail.php:563
2271
  #: classes/class.pmproemail.php:611 classes/class.pmproemail.php:676
2272
  #, php-format
2273
  msgid "Your trial at %s is ending soon"
2274
  msgstr ""
2275
 
2276
- #: classes/class.pmproemail.php:713 classes/class.pmproemail.php:596
2277
  #: classes/class.pmproemail.php:645 classes/class.pmproemail.php:710
2278
  #, php-format
2279
  msgid "Your membership at %s has ended"
2280
  msgstr ""
2281
 
2282
- #: classes/class.pmproemail.php:738 classes/class.pmproemail.php:621
2283
  #: classes/class.pmproemail.php:670 classes/class.pmproemail.php:735
2284
  #, php-format
2285
  msgid "Your membership at %s will end soon"
2286
  msgstr ""
2287
 
2288
- #: classes/class.pmproemail.php:758 classes/class.pmproemail.php:641
2289
  #: classes/class.pmproemail.php:690 classes/class.pmproemail.php:755
2290
  #, php-format
2291
  msgid "Your membership at %s has been changed"
2292
  msgstr ""
2293
 
2294
- #: classes/class.pmproemail.php:762 classes/class.pmproemail.php:759
2295
  #, php-format
2296
  msgid "The new level is %s."
2297
  msgstr ""
2298
 
2299
- #: classes/class.pmproemail.php:764 classes/class.pmproemail.php:647
2300
  #: classes/class.pmproemail.php:696 classes/class.pmproemail.php:761
2301
  msgid "Your membership has been cancelled"
2302
  msgstr ""
2303
 
2304
- #: classes/class.pmproemail.php:768 classes/class.pmproemail.php:806
2305
  #: classes/class.pmproemail.php:651 classes/class.pmproemail.php:689
2306
  #: classes/class.pmproemail.php:700 classes/class.pmproemail.php:738
2307
  #: classes/class.pmproemail.php:765 classes/class.pmproemail.php:803
@@ -2309,27 +2308,27 @@ msgstr ""
2309
  msgid "This membership will expire on %s"
2310
  msgstr ""
2311
 
2312
- #: classes/class.pmproemail.php:772 classes/class.pmproemail.php:810
2313
  #: classes/class.pmproemail.php:655 classes/class.pmproemail.php:693
2314
  #: classes/class.pmproemail.php:704 classes/class.pmproemail.php:742
2315
  #: classes/class.pmproemail.php:769 classes/class.pmproemail.php:807
2316
  msgid "This membership does not expire"
2317
  msgstr ""
2318
 
2319
- #: classes/class.pmproemail.php:796 classes/class.pmproemail.php:679
2320
  #: classes/class.pmproemail.php:728 classes/class.pmproemail.php:793
2321
  #, php-format
2322
  msgid "Membership for %s at %s has been changed"
2323
  msgstr ""
2324
 
2325
- #: classes/class.pmproemail.php:800 classes/class.pmproemail.php:645
2326
  #: classes/class.pmproemail.php:683 classes/class.pmproemail.php:694
2327
  #: classes/class.pmproemail.php:732 classes/class.pmproemail.php:797
2328
  #, php-format
2329
  msgid "The new level is %s. This membership is free"
2330
  msgstr ""
2331
 
2332
- #: classes/class.pmproemail.php:802 classes/class.pmproemail.php:799
2333
  msgid "Membership has been cancelled"
2334
  msgstr ""
2335
 
@@ -2463,7 +2462,6 @@ msgstr ""
2463
  #: classes/gateways/class.pmprogateway_stripe.php:354
2464
  #: classes/gateways/class.pmprogateway_stripe.php:361
2465
  #: classes/gateways/class.pmprogateway_stripe.php:396
2466
- #: classes/gateways/class.pmprogateway_stripe.php:402
2467
  msgid "Could not find the subscription."
2468
  msgstr ""
2469
 
@@ -2484,7 +2482,6 @@ msgstr ""
2484
  #: classes/gateways/class.pmprogateway_paypalexpress.php:305
2485
  #: classes/gateways/class.pmprogateway_paypalstandard.php:216
2486
  #: classes/gateways/class.pmprogateway_paypalstandard.php:220
2487
- #: classes/gateways/class.pmprogateway_paypalstandard.php:231
2488
  msgid ""
2489
  "Please contact the site owner or cancel your subscription from within PayPal "
2490
  "to make sure you are not charged going forward."
@@ -2494,7 +2491,6 @@ msgstr ""
2494
  #: classes/gateways/class.pmprogateway_stripe.php:190
2495
  #: classes/gateways/class.pmprogateway_stripe.php:192
2496
  #: classes/gateways/class.pmprogateway_stripe.php:199
2497
- #: classes/gateways/class.pmprogateway_stripe.php:201
2498
  msgid "Error creating customer record with Stripe:"
2499
  msgstr ""
2500
 
@@ -2503,7 +2499,6 @@ msgstr ""
2503
  #: classes/gateways/class.pmprogateway_stripe.php:279
2504
  #: classes/gateways/class.pmprogateway_stripe.php:286
2505
  #: classes/gateways/class.pmprogateway_stripe.php:302
2506
- #: classes/gateways/class.pmprogateway_stripe.php:308
2507
  msgid "Error creating plan with Stripe:"
2508
  msgstr ""
2509
 
@@ -2512,13 +2507,11 @@ msgstr ""
2512
  #: classes/gateways/class.pmprogateway_stripe.php:295
2513
  #: classes/gateways/class.pmprogateway_stripe.php:302
2514
  #: classes/gateways/class.pmprogateway_stripe.php:318
2515
- #: classes/gateways/class.pmprogateway_stripe.php:324
2516
  msgid "Error subscribing customer to plan with Stripe:"
2517
  msgstr ""
2518
 
2519
  #: classes/gateways/class.pmprogateway_stripe.php:389
2520
  #: classes/gateways/class.pmprogateway_stripe.php:383
2521
- #: classes/gateways/class.pmprogateway_stripe.php:389
2522
  msgid "Could not cancel old subscription."
2523
  msgstr ""
2524
 
@@ -2844,76 +2837,72 @@ msgstr ""
2844
  msgid "Membership level not found."
2845
  msgstr ""
2846
 
2847
- #: includes/functions.php:1101
2848
- msgid "No code was given to check."
2849
- msgstr ""
2850
-
2851
- #: includes/functions.php:1110 includes/functions.php:1050
2852
  #: includes/functions.php:1072 includes/functions.php:1088
2853
  #: includes/functions.php:1099 includes/functions.php:1102
2854
- #: includes/functions.php:1112 includes/functions.php:1113
2855
  msgid "The discount code could not be found."
2856
  msgstr ""
2857
 
2858
- #: includes/functions.php:1125 includes/functions.php:1066
2859
  #: includes/functions.php:1088 includes/functions.php:1104
2860
  #: includes/functions.php:1115 includes/functions.php:1118
2861
- #: includes/functions.php:1128 includes/functions.php:1129
2862
  #, php-format
2863
  msgid "This discount code goes into effect on %s."
2864
  msgstr ""
2865
 
2866
- #: includes/functions.php:1132 includes/functions.php:1075
2867
  #: includes/functions.php:1097 includes/functions.php:1113
2868
  #: includes/functions.php:1124 includes/functions.php:1127
2869
- #: includes/functions.php:1137 includes/functions.php:1138
2870
  #, php-format
2871
  msgid "This discount code expired on %s."
2872
  msgstr ""
2873
 
2874
- #: includes/functions.php:1142 includes/functions.php:1087
2875
  #: includes/functions.php:1109 includes/functions.php:1125
2876
  #: includes/functions.php:1136 includes/functions.php:1139
2877
- #: includes/functions.php:1149 includes/functions.php:1150
2878
  msgid "This discount code is no longer valid."
2879
  msgstr ""
2880
 
2881
- #: includes/functions.php:1155 includes/functions.php:1102
2882
  #: includes/functions.php:1124 includes/functions.php:1140
2883
  #: includes/functions.php:1151 includes/functions.php:1154
2884
- #: includes/functions.php:1164 includes/functions.php:1165
2885
  msgid "This discount code does not apply to this membership level."
2886
  msgstr ""
2887
 
2888
- #: includes/functions.php:1181 includes/functions.php:1110
2889
  #: includes/functions.php:1132 includes/functions.php:1148
2890
  #: includes/functions.php:1159 includes/functions.php:1162
2891
- #: includes/functions.php:1172 includes/functions.php:1182
2892
  msgid "This discount code is okay."
2893
  msgstr ""
2894
 
2895
- #: includes/functions.php:1206 includes/functions.php:1134
2896
  #: includes/functions.php:1156 includes/functions.php:1172
2897
  #: includes/functions.php:1183 includes/functions.php:1186
2898
- #: includes/functions.php:1196 includes/functions.php:1206
2899
  msgid "and"
2900
  msgstr ""
2901
 
2902
- #: includes/functions.php:1395 includes/functions.php:1319
2903
  #: includes/functions.php:1341 includes/functions.php:1361
2904
  #: includes/functions.php:1372 includes/functions.php:1375
2905
- #: includes/functions.php:1385 includes/functions.php:1395
2906
  msgid "Sign Up for !!name!! Now"
2907
  msgstr ""
2908
 
2909
- #: includes/functions.php:1401 includes/functions.php:1325
2910
  #: includes/functions.php:1347 includes/functions.php:1367
2911
  #: includes/functions.php:1378 includes/functions.php:1381
2912
- #: includes/functions.php:1391 includes/functions.php:1401
2913
  msgid "Please specify a level id."
2914
  msgstr ""
2915
 
2916
- #: includes/init.php:233 includes/profile.php:39 includes/init.php:232
2917
  #: includes/profile.php:37 includes/profile.php:39
2918
  msgid "None"
2919
  msgstr ""
@@ -3472,154 +3461,124 @@ msgstr ""
3472
  msgid "&larr; Return to Home"
3473
  msgstr ""
3474
 
3475
- #: preheaders/account.php:10 preheaders/levels.php:22 preheaders/account.php:7
3476
- #: preheaders/account.php:9 preheaders/account.php:10 preheaders/levels.php:19
3477
- #: preheaders/levels.php:21 preheaders/levels.php:22
3478
  msgid "Your membership status has been updated - Thank you!"
3479
  msgstr ""
3480
 
3481
- #: preheaders/account.php:12 preheaders/levels.php:24
3482
- #: preheaders/account.php:11 preheaders/account.php:12
3483
- #: preheaders/levels.php:23 preheaders/levels.php:24
3484
  msgid ""
3485
  "Sorry, your request could not be completed - please try again in a few "
3486
  "moments."
3487
  msgstr ""
3488
 
3489
- #: preheaders/billing.php:266 preheaders/checkout.php:465
3490
- #: preheaders/billing.php:258 preheaders/billing.php:265
3491
- #: preheaders/billing.php:266 preheaders/billing.php:279
3492
- #: preheaders/checkout.php:458 preheaders/checkout.php:464
3493
- #: preheaders/checkout.php:465 preheaders/checkout.php:481
3494
  #: preheaders/checkout.php:482
3495
  msgid "Please complete all required fields."
3496
  msgstr ""
3497
 
3498
- #: preheaders/billing.php:269 preheaders/checkout.php:473
3499
- #: preheaders/billing.php:263 preheaders/billing.php:268
3500
- #: preheaders/billing.php:269 preheaders/billing.php:284
3501
- #: preheaders/checkout.php:466 preheaders/checkout.php:473
3502
  #: preheaders/checkout.php:474 preheaders/checkout.php:491
3503
  #: preheaders/checkout.php:492
3504
  msgid "Your email addresses do not match. Please try again."
3505
  msgstr ""
3506
 
3507
- #: preheaders/billing.php:272 preheaders/checkout.php:478
3508
- #: preheaders/billing.php:268 preheaders/billing.php:271
3509
- #: preheaders/billing.php:272 preheaders/billing.php:289
3510
- #: preheaders/checkout.php:471 preheaders/checkout.php:478
3511
  #: preheaders/checkout.php:480 preheaders/checkout.php:497
3512
  #: preheaders/checkout.php:498
3513
  msgid "The email address entered is in an invalid format. Please try again."
3514
  msgstr ""
3515
 
3516
- #: preheaders/billing.php:276 preheaders/billing.php:274
3517
- #: preheaders/billing.php:275 preheaders/billing.php:276
3518
  #: preheaders/billing.php:295
3519
  msgid "All good!"
3520
  msgstr ""
3521
 
3522
- #: preheaders/billing.php:346 preheaders/billing.php:340
3523
- #: preheaders/billing.php:345 preheaders/billing.php:346
3524
  #: preheaders/billing.php:370
3525
  #, php-format
3526
  msgid "Information updated. <a href=\"%s\">&laquo; back to my account</a>"
3527
  msgstr ""
3528
 
3529
- #: preheaders/billing.php:352 preheaders/billing.php:347
3530
- #: preheaders/billing.php:351 preheaders/billing.php:352
3531
  #: preheaders/billing.php:378 preheaders/billing.php:380
3532
  msgid "Error updating billing information."
3533
  msgstr ""
3534
 
3535
- #: preheaders/cancel.php:25 preheaders/cancel.php:24 preheaders/cancel.php:25
3536
  msgid "Your membership has been cancelled."
3537
  msgstr ""
3538
 
3539
- #: preheaders/checkout.php:31 preheaders/checkout.php:487
3540
- #: preheaders/checkout.php:28 preheaders/checkout.php:30
3541
- #: preheaders/checkout.php:31 preheaders/checkout.php:480
3542
- #: preheaders/checkout.php:487 preheaders/checkout.php:491
3543
  #: preheaders/checkout.php:508 preheaders/checkout.php:509
3544
  msgid "Invalid gateway."
3545
  msgstr ""
3546
 
3547
- #: preheaders/checkout.php:89 preheaders/checkout.php:88
3548
- #: preheaders/checkout.php:89 preheaders/checkout.php:96
3549
  msgid "Checkout: Payment Information"
3550
  msgstr ""
3551
 
3552
- #: preheaders/checkout.php:100 preheaders/checkout.php:99
3553
- #: preheaders/checkout.php:100 preheaders/checkout.php:109
3554
  msgid "Setup Your Account"
3555
  msgstr ""
3556
 
3557
- #: preheaders/checkout.php:416 preheaders/checkout.php:416
3558
- msgid "There are JavaScript errors on the page. Please contact the webmaster."
3559
- msgstr ""
3560
-
3561
- #: preheaders/checkout.php:468 preheaders/checkout.php:461
3562
- #: preheaders/checkout.php:468 preheaders/checkout.php:485
3563
- #: preheaders/checkout.php:486
3564
  msgid "Your passwords do not match. Please try again."
3565
  msgstr ""
3566
 
3567
- #: preheaders/checkout.php:483 preheaders/checkout.php:476
3568
- #: preheaders/checkout.php:483 preheaders/checkout.php:486
3569
  #: preheaders/checkout.php:503 preheaders/checkout.php:504
3570
  #, php-format
3571
  msgid "Please check the box to agree to the %s."
3572
  msgstr ""
3573
 
3574
- #: preheaders/checkout.php:490 preheaders/checkout.php:483
3575
- #: preheaders/checkout.php:490 preheaders/checkout.php:495
3576
  #: preheaders/checkout.php:512 preheaders/checkout.php:513
3577
  msgid "Are you a spammer?"
3578
  msgstr ""
3579
 
3580
- #: preheaders/checkout.php:510 preheaders/checkout.php:503
3581
- #: preheaders/checkout.php:510 preheaders/checkout.php:518
3582
  #: preheaders/checkout.php:535 preheaders/checkout.php:536
3583
  msgid "That username is already taken. Please try another."
3584
  msgstr ""
3585
 
3586
- #: preheaders/checkout.php:515 preheaders/checkout.php:508
3587
- #: preheaders/checkout.php:515 preheaders/checkout.php:524
3588
  #: preheaders/checkout.php:541 preheaders/checkout.php:542
3589
  msgid "That email address is already taken. Please try another."
3590
  msgstr ""
3591
 
3592
- #: preheaders/checkout.php:532 preheaders/checkout.php:525
3593
- #: preheaders/checkout.php:532 preheaders/checkout.php:544
3594
  #: preheaders/checkout.php:561 preheaders/checkout.php:562
3595
  #, php-format
3596
  msgid "reCAPTCHA failed. (%s) Please try again."
3597
  msgstr ""
3598
 
3599
- #: preheaders/checkout.php:654 preheaders/checkout.php:647
3600
- #: preheaders/checkout.php:654 preheaders/checkout.php:683
3601
  #: preheaders/checkout.php:701 preheaders/checkout.php:702
3602
  msgid "Payment accepted."
3603
  msgstr ""
3604
 
3605
- #: preheaders/checkout.php:660 preheaders/checkout.php:653
3606
- #: preheaders/checkout.php:660 preheaders/checkout.php:691
3607
  #: preheaders/checkout.php:709 preheaders/checkout.php:710
3608
  msgid ""
3609
  "Unknown error generating account. Please contact us to setup your membership."
3610
  msgstr ""
3611
 
3612
- #: preheaders/checkout.php:697 preheaders/checkout.php:757
3613
- #: preheaders/checkout.php:690 preheaders/checkout.php:697
3614
- #: preheaders/checkout.php:735 preheaders/checkout.php:750
3615
- #: preheaders/checkout.php:753 preheaders/checkout.php:754
3616
- #: preheaders/checkout.php:757 preheaders/checkout.php:803
3617
  #: preheaders/checkout.php:822 preheaders/checkout.php:823
3618
  msgid "The PayPal Token was lost."
3619
  msgstr ""
3620
 
3621
- #: preheaders/checkout.php:792 preheaders/checkout.php:785
3622
- #: preheaders/checkout.php:792 preheaders/checkout.php:825
3623
  #: preheaders/checkout.php:844 preheaders/checkout.php:859
3624
  #: preheaders/checkout.php:860
3625
  msgid ""
@@ -3627,8 +3586,7 @@ msgid ""
3627
  "Please contact us."
3628
  msgstr ""
3629
 
3630
- #: preheaders/checkout.php:960 preheaders/checkout.php:953
3631
- #: preheaders/checkout.php:960 preheaders/checkout.php:983
3632
  #: preheaders/checkout.php:1030 preheaders/checkout.php:1045
3633
  #: preheaders/checkout.php:1046
3634
  msgid ""
@@ -3637,8 +3595,7 @@ msgid ""
3637
  "submit this form again. Please contact the site owner to fix this issue."
3638
  msgstr ""
3639
 
3640
- #: preheaders/checkout.php:963 preheaders/checkout.php:956
3641
- #: preheaders/checkout.php:963 preheaders/checkout.php:988
3642
  #: preheaders/checkout.php:1035 preheaders/checkout.php:1050
3643
  #: preheaders/checkout.php:1051
3644
  msgid ""
@@ -3647,8 +3604,7 @@ msgid ""
3647
  "this form again. Please contact the site owner to fix this issue."
3648
  msgstr ""
3649
 
3650
- #: preheaders/checkout.php:974 preheaders/checkout.php:967
3651
- #: preheaders/checkout.php:974 preheaders/checkout.php:1001
3652
  #: preheaders/checkout.php:1048 preheaders/checkout.php:1063
3653
  #: preheaders/checkout.php:1064
3654
  #, php-format
@@ -3657,8 +3613,7 @@ msgid ""
3657
  "be processed."
3658
  msgstr ""
3659
 
3660
- #: preheaders/checkout.php:976 preheaders/checkout.php:969
3661
- #: preheaders/checkout.php:976 preheaders/checkout.php:1003
3662
  #: preheaders/checkout.php:1050 preheaders/checkout.php:1065
3663
  #: preheaders/checkout.php:1066
3664
  msgid "A Payment Gateway must be setup before any payments will be processed."
5
  msgid ""
6
  msgstr ""
7
  "Project-Id-Version: pmpro\n"
8
+ "POT-Creation-Date: 2014-07-23 17:09-0400\n"
9
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
10
  "Last-Translator: \n"
11
  "Language-Team: Stranger Studios <jason@strangerstudios.com>\n"
125
  #: adminpages/admin_header.php:128 adminpages/admin_header.php:149
126
  #: adminpages/membershiplevels.php:490 adminpages/membershiplevels.php:496
127
  #: adminpages/membershiplevels.php:498 adminpages/pagesettings.php:69
128
+ #: includes/adminpages.php:44 includes/adminpages.php:100
 
129
  #: includes/adminpages.php:107
130
  msgid "Membership Levels"
131
  msgstr ""
1516
  msgid "User"
1517
  msgstr ""
1518
 
1519
+ #: adminpages/orders.php:904 includes/init.php:217 includes/profile.php:27
1520
  #: pages/checkout.php:33 pages/confirmation.php:47 pages/confirmation.php:64
1521
  #: pages/confirmation.php:105 pages/invoice.php:28 pages/invoice.php:51
1522
  #: adminpages/orders.php:601 adminpages/orders.php:904 includes/init.php:217
2160
  msgid "Sales"
2161
  msgstr ""
2162
 
2163
+ #: classes/class.memberorder.php:564 classes/class.memberorder.php:553
2164
  #: classes/class.memberorder.php:561 classes/class.memberorder.php:564
2165
  #: includes/cleanup.php:24
2166
  #, php-format
2175
  msgid "An Email From %s"
2176
  msgstr ""
2177
 
2178
+ #: classes/class.pmproemail.php:122 classes/class.pmproemail.php:120
2179
  #: classes/class.pmproemail.php:122
2180
  #, php-format
2181
  msgid "Your membership at %s has been CANCELLED"
2182
  msgstr ""
2183
 
2184
+ #: classes/class.pmproemail.php:144 classes/class.pmproemail.php:142
2185
  #: classes/class.pmproemail.php:144
2186
  #, php-format
2187
  msgid "Membership for %s at %s has been CANCELLED"
2188
  msgstr ""
2189
 
2190
+ #: classes/class.pmproemail.php:175 classes/class.pmproemail.php:172
2191
  #: classes/class.pmproemail.php:173 classes/class.pmproemail.php:175
2192
  #, php-format
2193
  msgid "Your membership confirmation for %s"
2194
  msgstr ""
2195
 
2196
+ #: classes/class.pmproemail.php:228 classes/class.pmproemail.php:237
2197
+ #: classes/class.pmproemail.php:246 classes/class.pmproemail.php:325
2198
+ #: classes/class.pmproemail.php:334 classes/class.pmproemail.php:645
2199
  #: pages/checkout.php:66 pages/checkout.php:76 pages/checkout.php:549
2200
  #: pages/confirmation.php:52 pages/invoice.php:33
2201
  #: classes/class.pmproemail.php:216 classes/class.pmproemail.php:218
2214
  msgid "Discount Code"
2215
  msgstr ""
2216
 
2217
+ #: classes/class.pmproemail.php:253 classes/class.pmproemail.php:346
2218
+ #: classes/class.pmproemail.php:651 classes/class.pmproemail.php:241
2219
  #: classes/class.pmproemail.php:243 classes/class.pmproemail.php:253
2220
  #: classes/class.pmproemail.php:325 classes/class.pmproemail.php:328
2221
  #: classes/class.pmproemail.php:346 classes/class.pmproemail.php:538
2224
  msgid "This membership will expire on %s."
2225
  msgstr ""
2226
 
2227
+ #: classes/class.pmproemail.php:275 classes/class.pmproemail.php:263
2228
  #: classes/class.pmproemail.php:265 classes/class.pmproemail.php:275
2229
  #, php-format
2230
  msgid "Member Checkout for %s at %s"
2231
  msgstr ""
2232
 
2233
+ #: classes/class.pmproemail.php:363 classes/class.pmproemail.php:342
2234
  #: classes/class.pmproemail.php:345 classes/class.pmproemail.php:363
2235
  #, php-format
2236
  msgid "Your billing information has been udpated at %s"
2237
  msgstr ""
2238
 
2239
+ #: classes/class.pmproemail.php:416 classes/class.pmproemail.php:386
2240
  #: classes/class.pmproemail.php:390 classes/class.pmproemail.php:416
2241
  #, php-format
2242
  msgid "Billing information has been udpated for %s at %s"
2243
  msgstr ""
2244
 
2245
+ #: classes/class.pmproemail.php:464 classes/class.pmproemail.php:425
2246
  #: classes/class.pmproemail.php:430 classes/class.pmproemail.php:464
2247
  #, php-format
2248
  msgid "Membership Payment Failed at %s"
2249
  msgstr ""
2250
 
2251
+ #: classes/class.pmproemail.php:510 classes/class.pmproemail.php:462
2252
  #: classes/class.pmproemail.php:468 classes/class.pmproemail.php:510
2253
  #, php-format
2254
  msgid "Membership Payment Failed For %s at %s"
2255
  msgstr ""
2256
 
2257
+ #: classes/class.pmproemail.php:557 classes/class.pmproemail.php:508
2258
  #: classes/class.pmproemail.php:557
2259
  #, php-format
2260
  msgid "Credit Card on File Expiring Soon at %s"
2261
  msgstr ""
2262
 
2263
+ #: classes/class.pmproemail.php:605 classes/class.pmproemail.php:501
2264
  #: classes/class.pmproemail.php:548 classes/class.pmproemail.php:605
2265
  #, php-format
2266
  msgid "INVOICE for %s membership"
2267
  msgstr ""
2268
 
2269
+ #: classes/class.pmproemail.php:676 classes/class.pmproemail.php:563
2270
  #: classes/class.pmproemail.php:611 classes/class.pmproemail.php:676
2271
  #, php-format
2272
  msgid "Your trial at %s is ending soon"
2273
  msgstr ""
2274
 
2275
+ #: classes/class.pmproemail.php:710 classes/class.pmproemail.php:596
2276
  #: classes/class.pmproemail.php:645 classes/class.pmproemail.php:710
2277
  #, php-format
2278
  msgid "Your membership at %s has ended"
2279
  msgstr ""
2280
 
2281
+ #: classes/class.pmproemail.php:735 classes/class.pmproemail.php:621
2282
  #: classes/class.pmproemail.php:670 classes/class.pmproemail.php:735
2283
  #, php-format
2284
  msgid "Your membership at %s will end soon"
2285
  msgstr ""
2286
 
2287
+ #: classes/class.pmproemail.php:755 classes/class.pmproemail.php:641
2288
  #: classes/class.pmproemail.php:690 classes/class.pmproemail.php:755
2289
  #, php-format
2290
  msgid "Your membership at %s has been changed"
2291
  msgstr ""
2292
 
2293
+ #: classes/class.pmproemail.php:759 classes/class.pmproemail.php:759
2294
  #, php-format
2295
  msgid "The new level is %s."
2296
  msgstr ""
2297
 
2298
+ #: classes/class.pmproemail.php:761 classes/class.pmproemail.php:647
2299
  #: classes/class.pmproemail.php:696 classes/class.pmproemail.php:761
2300
  msgid "Your membership has been cancelled"
2301
  msgstr ""
2302
 
2303
+ #: classes/class.pmproemail.php:765 classes/class.pmproemail.php:803
2304
  #: classes/class.pmproemail.php:651 classes/class.pmproemail.php:689
2305
  #: classes/class.pmproemail.php:700 classes/class.pmproemail.php:738
2306
  #: classes/class.pmproemail.php:765 classes/class.pmproemail.php:803
2308
  msgid "This membership will expire on %s"
2309
  msgstr ""
2310
 
2311
+ #: classes/class.pmproemail.php:769 classes/class.pmproemail.php:807
2312
  #: classes/class.pmproemail.php:655 classes/class.pmproemail.php:693
2313
  #: classes/class.pmproemail.php:704 classes/class.pmproemail.php:742
2314
  #: classes/class.pmproemail.php:769 classes/class.pmproemail.php:807
2315
  msgid "This membership does not expire"
2316
  msgstr ""
2317
 
2318
+ #: classes/class.pmproemail.php:793 classes/class.pmproemail.php:679
2319
  #: classes/class.pmproemail.php:728 classes/class.pmproemail.php:793
2320
  #, php-format
2321
  msgid "Membership for %s at %s has been changed"
2322
  msgstr ""
2323
 
2324
+ #: classes/class.pmproemail.php:797 classes/class.pmproemail.php:645
2325
  #: classes/class.pmproemail.php:683 classes/class.pmproemail.php:694
2326
  #: classes/class.pmproemail.php:732 classes/class.pmproemail.php:797
2327
  #, php-format
2328
  msgid "The new level is %s. This membership is free"
2329
  msgstr ""
2330
 
2331
+ #: classes/class.pmproemail.php:799 classes/class.pmproemail.php:799
2332
  msgid "Membership has been cancelled"
2333
  msgstr ""
2334
 
2462
  #: classes/gateways/class.pmprogateway_stripe.php:354
2463
  #: classes/gateways/class.pmprogateway_stripe.php:361
2464
  #: classes/gateways/class.pmprogateway_stripe.php:396
 
2465
  msgid "Could not find the subscription."
2466
  msgstr ""
2467
 
2482
  #: classes/gateways/class.pmprogateway_paypalexpress.php:305
2483
  #: classes/gateways/class.pmprogateway_paypalstandard.php:216
2484
  #: classes/gateways/class.pmprogateway_paypalstandard.php:220
 
2485
  msgid ""
2486
  "Please contact the site owner or cancel your subscription from within PayPal "
2487
  "to make sure you are not charged going forward."
2491
  #: classes/gateways/class.pmprogateway_stripe.php:190
2492
  #: classes/gateways/class.pmprogateway_stripe.php:192
2493
  #: classes/gateways/class.pmprogateway_stripe.php:199
 
2494
  msgid "Error creating customer record with Stripe:"
2495
  msgstr ""
2496
 
2499
  #: classes/gateways/class.pmprogateway_stripe.php:279
2500
  #: classes/gateways/class.pmprogateway_stripe.php:286
2501
  #: classes/gateways/class.pmprogateway_stripe.php:302
 
2502
  msgid "Error creating plan with Stripe:"
2503
  msgstr ""
2504
 
2507
  #: classes/gateways/class.pmprogateway_stripe.php:295
2508
  #: classes/gateways/class.pmprogateway_stripe.php:302
2509
  #: classes/gateways/class.pmprogateway_stripe.php:318
 
2510
  msgid "Error subscribing customer to plan with Stripe:"
2511
  msgstr ""
2512
 
2513
  #: classes/gateways/class.pmprogateway_stripe.php:389
2514
  #: classes/gateways/class.pmprogateway_stripe.php:383
 
2515
  msgid "Could not cancel old subscription."
2516
  msgstr ""
2517
 
2837
  msgid "Membership level not found."
2838
  msgstr ""
2839
 
2840
+ #: includes/functions.php:1112 includes/functions.php:1050
 
 
 
 
2841
  #: includes/functions.php:1072 includes/functions.php:1088
2842
  #: includes/functions.php:1099 includes/functions.php:1102
2843
+ #: includes/functions.php:1112
2844
  msgid "The discount code could not be found."
2845
  msgstr ""
2846
 
2847
+ #: includes/functions.php:1128 includes/functions.php:1066
2848
  #: includes/functions.php:1088 includes/functions.php:1104
2849
  #: includes/functions.php:1115 includes/functions.php:1118
2850
+ #: includes/functions.php:1128
2851
  #, php-format
2852
  msgid "This discount code goes into effect on %s."
2853
  msgstr ""
2854
 
2855
+ #: includes/functions.php:1137 includes/functions.php:1075
2856
  #: includes/functions.php:1097 includes/functions.php:1113
2857
  #: includes/functions.php:1124 includes/functions.php:1127
2858
+ #: includes/functions.php:1137
2859
  #, php-format
2860
  msgid "This discount code expired on %s."
2861
  msgstr ""
2862
 
2863
+ #: includes/functions.php:1149 includes/functions.php:1087
2864
  #: includes/functions.php:1109 includes/functions.php:1125
2865
  #: includes/functions.php:1136 includes/functions.php:1139
2866
+ #: includes/functions.php:1149
2867
  msgid "This discount code is no longer valid."
2868
  msgstr ""
2869
 
2870
+ #: includes/functions.php:1164 includes/functions.php:1102
2871
  #: includes/functions.php:1124 includes/functions.php:1140
2872
  #: includes/functions.php:1151 includes/functions.php:1154
2873
+ #: includes/functions.php:1164
2874
  msgid "This discount code does not apply to this membership level."
2875
  msgstr ""
2876
 
2877
+ #: includes/functions.php:1172 includes/functions.php:1110
2878
  #: includes/functions.php:1132 includes/functions.php:1148
2879
  #: includes/functions.php:1159 includes/functions.php:1162
2880
+ #: includes/functions.php:1172
2881
  msgid "This discount code is okay."
2882
  msgstr ""
2883
 
2884
+ #: includes/functions.php:1196 includes/functions.php:1134
2885
  #: includes/functions.php:1156 includes/functions.php:1172
2886
  #: includes/functions.php:1183 includes/functions.php:1186
2887
+ #: includes/functions.php:1196
2888
  msgid "and"
2889
  msgstr ""
2890
 
2891
+ #: includes/functions.php:1385 includes/functions.php:1319
2892
  #: includes/functions.php:1341 includes/functions.php:1361
2893
  #: includes/functions.php:1372 includes/functions.php:1375
2894
+ #: includes/functions.php:1385
2895
  msgid "Sign Up for !!name!! Now"
2896
  msgstr ""
2897
 
2898
+ #: includes/functions.php:1391 includes/functions.php:1325
2899
  #: includes/functions.php:1347 includes/functions.php:1367
2900
  #: includes/functions.php:1378 includes/functions.php:1381
2901
+ #: includes/functions.php:1391
2902
  msgid "Please specify a level id."
2903
  msgstr ""
2904
 
2905
+ #: includes/init.php:232 includes/profile.php:39 includes/init.php:232
2906
  #: includes/profile.php:37 includes/profile.php:39
2907
  msgid "None"
2908
  msgstr ""
3461
  msgid "&larr; Return to Home"
3462
  msgstr ""
3463
 
3464
+ #: preheaders/account.php:9 preheaders/levels.php:21 preheaders/account.php:7
3465
+ #: preheaders/levels.php:19
 
3466
  msgid "Your membership status has been updated - Thank you!"
3467
  msgstr ""
3468
 
3469
+ #: preheaders/account.php:11 preheaders/levels.php:23
3470
+ #: preheaders/account.php:11 preheaders/levels.php:23
 
3471
  msgid ""
3472
  "Sorry, your request could not be completed - please try again in a few "
3473
  "moments."
3474
  msgstr ""
3475
 
3476
+ #: preheaders/billing.php:265 preheaders/checkout.php:458
3477
+ #: preheaders/billing.php:258 preheaders/billing.php:279
3478
+ #: preheaders/checkout.php:464 preheaders/checkout.php:481
 
 
3479
  #: preheaders/checkout.php:482
3480
  msgid "Please complete all required fields."
3481
  msgstr ""
3482
 
3483
+ #: preheaders/billing.php:268 preheaders/checkout.php:466
3484
+ #: preheaders/billing.php:263 preheaders/billing.php:284
 
 
3485
  #: preheaders/checkout.php:474 preheaders/checkout.php:491
3486
  #: preheaders/checkout.php:492
3487
  msgid "Your email addresses do not match. Please try again."
3488
  msgstr ""
3489
 
3490
+ #: preheaders/billing.php:271 preheaders/checkout.php:471
3491
+ #: preheaders/billing.php:268 preheaders/billing.php:289
 
 
3492
  #: preheaders/checkout.php:480 preheaders/checkout.php:497
3493
  #: preheaders/checkout.php:498
3494
  msgid "The email address entered is in an invalid format. Please try again."
3495
  msgstr ""
3496
 
3497
+ #: preheaders/billing.php:275 preheaders/billing.php:274
 
3498
  #: preheaders/billing.php:295
3499
  msgid "All good!"
3500
  msgstr ""
3501
 
3502
+ #: preheaders/billing.php:345 preheaders/billing.php:340
 
3503
  #: preheaders/billing.php:370
3504
  #, php-format
3505
  msgid "Information updated. <a href=\"%s\">&laquo; back to my account</a>"
3506
  msgstr ""
3507
 
3508
+ #: preheaders/billing.php:351 preheaders/billing.php:347
 
3509
  #: preheaders/billing.php:378 preheaders/billing.php:380
3510
  msgid "Error updating billing information."
3511
  msgstr ""
3512
 
3513
+ #: preheaders/cancel.php:24 preheaders/cancel.php:24
3514
  msgid "Your membership has been cancelled."
3515
  msgstr ""
3516
 
3517
+ #: preheaders/checkout.php:30 preheaders/checkout.php:480
3518
+ #: preheaders/checkout.php:28 preheaders/checkout.php:491
 
 
3519
  #: preheaders/checkout.php:508 preheaders/checkout.php:509
3520
  msgid "Invalid gateway."
3521
  msgstr ""
3522
 
3523
+ #: preheaders/checkout.php:88 preheaders/checkout.php:96
 
3524
  msgid "Checkout: Payment Information"
3525
  msgstr ""
3526
 
3527
+ #: preheaders/checkout.php:99 preheaders/checkout.php:109
 
3528
  msgid "Setup Your Account"
3529
  msgstr ""
3530
 
3531
+ #: preheaders/checkout.php:461 preheaders/checkout.php:468
3532
+ #: preheaders/checkout.php:485 preheaders/checkout.php:486
 
 
 
 
 
3533
  msgid "Your passwords do not match. Please try again."
3534
  msgstr ""
3535
 
3536
+ #: preheaders/checkout.php:476 preheaders/checkout.php:486
 
3537
  #: preheaders/checkout.php:503 preheaders/checkout.php:504
3538
  #, php-format
3539
  msgid "Please check the box to agree to the %s."
3540
  msgstr ""
3541
 
3542
+ #: preheaders/checkout.php:483 preheaders/checkout.php:495
 
3543
  #: preheaders/checkout.php:512 preheaders/checkout.php:513
3544
  msgid "Are you a spammer?"
3545
  msgstr ""
3546
 
3547
+ #: preheaders/checkout.php:503 preheaders/checkout.php:518
 
3548
  #: preheaders/checkout.php:535 preheaders/checkout.php:536
3549
  msgid "That username is already taken. Please try another."
3550
  msgstr ""
3551
 
3552
+ #: preheaders/checkout.php:508 preheaders/checkout.php:524
 
3553
  #: preheaders/checkout.php:541 preheaders/checkout.php:542
3554
  msgid "That email address is already taken. Please try another."
3555
  msgstr ""
3556
 
3557
+ #: preheaders/checkout.php:525 preheaders/checkout.php:544
 
3558
  #: preheaders/checkout.php:561 preheaders/checkout.php:562
3559
  #, php-format
3560
  msgid "reCAPTCHA failed. (%s) Please try again."
3561
  msgstr ""
3562
 
3563
+ #: preheaders/checkout.php:647 preheaders/checkout.php:683
 
3564
  #: preheaders/checkout.php:701 preheaders/checkout.php:702
3565
  msgid "Payment accepted."
3566
  msgstr ""
3567
 
3568
+ #: preheaders/checkout.php:653 preheaders/checkout.php:691
 
3569
  #: preheaders/checkout.php:709 preheaders/checkout.php:710
3570
  msgid ""
3571
  "Unknown error generating account. Please contact us to setup your membership."
3572
  msgstr ""
3573
 
3574
+ #: preheaders/checkout.php:690 preheaders/checkout.php:750
3575
+ #: preheaders/checkout.php:735 preheaders/checkout.php:753
3576
+ #: preheaders/checkout.php:754 preheaders/checkout.php:803
 
 
3577
  #: preheaders/checkout.php:822 preheaders/checkout.php:823
3578
  msgid "The PayPal Token was lost."
3579
  msgstr ""
3580
 
3581
+ #: preheaders/checkout.php:785 preheaders/checkout.php:825
 
3582
  #: preheaders/checkout.php:844 preheaders/checkout.php:859
3583
  #: preheaders/checkout.php:860
3584
  msgid ""
3586
  "Please contact us."
3587
  msgstr ""
3588
 
3589
+ #: preheaders/checkout.php:953 preheaders/checkout.php:983
 
3590
  #: preheaders/checkout.php:1030 preheaders/checkout.php:1045
3591
  #: preheaders/checkout.php:1046
3592
  msgid ""
3595
  "submit this form again. Please contact the site owner to fix this issue."
3596
  msgstr ""
3597
 
3598
+ #: preheaders/checkout.php:956 preheaders/checkout.php:988
 
3599
  #: preheaders/checkout.php:1035 preheaders/checkout.php:1050
3600
  #: preheaders/checkout.php:1051
3601
  msgid ""
3604
  "this form again. Please contact the site owner to fix this issue."
3605
  msgstr ""
3606
 
3607
+ #: preheaders/checkout.php:967 preheaders/checkout.php:1001
 
3608
  #: preheaders/checkout.php:1048 preheaders/checkout.php:1063
3609
  #: preheaders/checkout.php:1064
3610
  #, php-format
3613
  "be processed."
3614
  msgstr ""
3615
 
3616
+ #: preheaders/checkout.php:969 preheaders/checkout.php:1003
 
3617
  #: preheaders/checkout.php:1050 preheaders/checkout.php:1065
3618
  #: preheaders/checkout.php:1066
3619
  msgid "A Payment Gateway must be setup before any payments will be processed."
pages/checkout.php CHANGED
@@ -462,7 +462,7 @@
462
  </table>
463
  <?php } ?>
464
 
465
- <?php do_action("pmpro_checkout_after_billing_fields"); ?>
466
 
467
  <?php
468
  $pmpro_accepted_credit_cards = pmpro_getOption("accepted_credit_cards");
@@ -538,7 +538,7 @@
538
  ?>
539
  <div class="pmpro_payment-cvv">
540
  <label for="CVV"><?php _ex('CVV', 'Credit card security code, CVV/CCV/CVV2', 'pmpro');?></label>
541
- <input id="CVV" <?php if($gateway != "stripe" && $gateway != "braintree") { ?>name="CVV"<?php } ?> type="text" size="4" value="<?php if(!empty($_REQUEST['CVV'])) { echo esc_attr($_REQUEST['CVV']); }?>" class="input <?php echo pmpro_getClassForField("CVV");?>" <?php if($gateway == "braintree") { ?>data-encrypted-name="cvv"<?php } ?> /> <small>(<a href="javascript:void(0);" onclick="javascript:window.open('<?php echo pmpro_https_filter(PMPRO_URL)?>/pages/popup-cvv.html','cvv','toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=600, height=475');"><?php _ex("what's this?", 'link to CVV help', 'pmpro');?></a>)</small>
542
  </div>
543
  <?php
544
  }
@@ -772,7 +772,3 @@
772
  });
773
  -->
774
  </script>
775
- <script>
776
- //add javascriptok hidden field to checkout
777
- jQuery("input[name=submit-checkout]").after("<input type=hidden name=javascriptok value=1 />");
778
- </script>
462
  </table>
463
  <?php } ?>
464
 
465
+ <?php do_action("pmpro_checkout_after_billing_fields"); ?>
466
 
467
  <?php
468
  $pmpro_accepted_credit_cards = pmpro_getOption("accepted_credit_cards");
538
  ?>
539
  <div class="pmpro_payment-cvv">
540
  <label for="CVV"><?php _ex('CVV', 'Credit card security code, CVV/CCV/CVV2', 'pmpro');?></label>
541
+ <input class="input" id="CVV" <?php if($gateway != "stripe" && $gateway != "braintree") { ?>name="CVV"<?php } ?> type="text" size="4" value="<?php if(!empty($_REQUEST['CVV'])) { echo esc_attr($_REQUEST['CVV']); }?>" class=" <?php echo pmpro_getClassForField("CVV");?>" <?php if($gateway == "braintree") { ?>data-encrypted-name="cvv"<?php } ?> /> <small>(<a href="javascript:void(0);" onclick="javascript:window.open('<?php echo pmpro_https_filter(PMPRO_URL)?>/pages/popup-cvv.html','cvv','toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=yes, width=600, height=475');"><?php _ex("what's this?", 'link to CVV help', 'pmpro');?></a>)</small>
542
  </div>
543
  <?php
544
  }
772
  });
773
  -->
774
  </script>
 
 
 
 
paid-memberships-pro.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: Paid Memberships Pro
4
  Plugin URI: http://www.paidmembershipspro.com
5
  Description: Plugin to Handle Memberships
6
- Version: 1.7.14
7
  Author: Stranger Studios
8
  Author URI: http://www.strangerstudios.com
9
  */
@@ -13,7 +13,7 @@ Author URI: http://www.strangerstudios.com
13
  */
14
 
15
  //version constant
16
- define("PMPRO_VERSION", "1.7.14");
17
 
18
  //if the session has been started yet, start it (ignore if running from command line)
19
  if(defined('STDIN') )
3
  Plugin Name: Paid Memberships Pro
4
  Plugin URI: http://www.paidmembershipspro.com
5
  Description: Plugin to Handle Memberships
6
+ Version: 1.7.13
7
  Author: Stranger Studios
8
  Author URI: http://www.strangerstudios.com
9
  */
13
  */
14
 
15
  //version constant
16
+ define("PMPRO_VERSION", "1.7.13");
17
 
18
  //if the session has been started yet, start it (ignore if running from command line)
19
  if(defined('STDIN') )
preheaders/checkout.php CHANGED
@@ -410,12 +410,6 @@ $pmpro_required_user_fields = apply_filters("pmpro_required_user_fields", $pmpro
410
 
411
  //check their fields if they clicked continue
412
  if ($submit && $pmpro_msgt != "pmpro_error") {
413
-
414
- //make sure javascript is ok
415
- if(apply_filters("pmpro_require_javascript_for_checkout", true) && empty($_REQUEST['javascriptok'])) {
416
- pmpro_setMessage(__("There are JavaScript errors on the page. Please contact the webmaster.", "pmpro"), "pmpro_error");
417
- }
418
-
419
  //if we're skipping the account fields and there is no user, we need to create a username and password
420
  if ($skip_account_fields && !$current_user->ID) {
421
  $username = pmpro_generateUsername($bfirstname, $blastname, $bemail);
@@ -820,7 +814,7 @@ if (!empty($pmpro_confirmed)) {
820
 
821
  //save discount code use
822
  if (!empty($discount_code_id))
823
- $wpdb->query("INSERT INTO $wpdb->pmpro_discount_codes_uses (code_id, user_id, order_id, timestamp) VALUES('" . $discount_code_id . "', '" . $user_id . "', '" . $morder->id . "', '" . current_time('mysql') . "')");
824
 
825
  do_action("pmpro_before_send_to_paypal_standard", $user_id, $morder);
826
 
@@ -834,7 +828,7 @@ if (!empty($pmpro_confirmed)) {
834
 
835
  //save discount code use
836
  if (!empty($discount_code_id))
837
- $wpdb->query("INSERT INTO $wpdb->pmpro_discount_codes_uses (code_id, user_id, order_id, timestamp) VALUES('" . $discount_code_id . "', '" . $user_id . "', '" . current_time('mysql') . "')");
838
 
839
  do_action("pmpro_before_send_to_twocheckout", $user_id, $morder);
840
 
@@ -901,7 +895,7 @@ if (!empty($pmpro_confirmed)) {
901
  else
902
  $code_order_id = "";
903
 
904
- $wpdb->query("INSERT INTO $wpdb->pmpro_discount_codes_uses (code_id, user_id, order_id, timestamp) VALUES('" . $discount_code_id . "', '" . $user_id . "', '" . intval($code_order_id) . "', '" . current_time('mysql') . "')");
905
  }
906
 
907
  //save billing info ect, as user meta
410
 
411
  //check their fields if they clicked continue
412
  if ($submit && $pmpro_msgt != "pmpro_error") {
 
 
 
 
 
 
413
  //if we're skipping the account fields and there is no user, we need to create a username and password
414
  if ($skip_account_fields && !$current_user->ID) {
415
  $username = pmpro_generateUsername($bfirstname, $blastname, $bemail);
814
 
815
  //save discount code use
816
  if (!empty($discount_code_id))
817
+ $wpdb->query("INSERT INTO $wpdb->pmpro_discount_codes_uses (code_id, user_id, order_id, timestamp) VALUES('" . $discount_code_id . "', '" . $user_id . "', '" . $morder->id . "', '" . current_time('mysql') . "");
818
 
819
  do_action("pmpro_before_send_to_paypal_standard", $user_id, $morder);
820
 
828
 
829
  //save discount code use
830
  if (!empty($discount_code_id))
831
+ $wpdb->query("INSERT INTO $wpdb->pmpro_discount_codes_uses (code_id, user_id, order_id, timestamp) VALUES('" . $discount_code_id . "', '" . $user_id . "', '" . current_time('mysql') . "");
832
 
833
  do_action("pmpro_before_send_to_twocheckout", $user_id, $morder);
834
 
895
  else
896
  $code_order_id = "";
897
 
898
+ $wpdb->query("INSERT INTO $wpdb->pmpro_discount_codes_uses (code_id, user_id, order_id, timestamp) VALUES('" . $discount_code_id . "', '" . $user_id . "', '" . intval($code_order_id) . "', '" . current_time('mysql') . "");
899
  }
900
 
901
  //save billing info ect, as user meta
readme.txt CHANGED
@@ -2,8 +2,8 @@
2
  Contributors: strangerstudios
3
  Tags: memberships, membership, authorize.net, ecommerce, paypal, stripe, braintree, restrict access, restrict content, directory site, payflow
4
  Requires at least: 3.5
5
- Tested up to: 4.0
6
- Stable tag: 1.7.14
7
 
8
  The easiest way to GET PAID with your WordPress site. Flexible content control by Membership Level, Reports, Affiliates and Discounts
9
 
@@ -102,19 +102,6 @@ Not sure? You can find out by doing a bit a research.
102
  4. Offer Membership Discounts with specific price rules (restricted by level, unique pricing for each level, # of uses, expiration date.)
103
 
104
  == Changelog ==
105
- = 1.7.14 =
106
- * BUG: Fixed bug where level cost would sometimes have incorrect pluralization of months/weeks/etc. (Thanks, Kevin Ackerman)
107
- * BUG/ENHANCEMENT: Now checking the child and parent theme for email_header.html and email_footer.html files to use for emails. The child theme is checked first.
108
- * ENHANCEMENT: Added pmpro_getfile_before_readfile hook (passes $filename and $mimetype params) in getfile.php
109
- * BUG/ENHANCEMENT: getMembershipLevel method of MemberOrder can now handle when discount_code property is an object. Also, the IPN Handler and 2Checkout handler will now try to get the discount code for the order to correctly update the users pmpro_memberships_users entry.
110
- * BUG: Removed extra class attribute from CVV field that interfered with the required * JS code and some other CSS/JS-related things. (Thanks, catapult)
111
- * ENHANCEMENT: Added code to redirect to the redirect_url if you pass a redirect_url to the login page and the user is already logged in. Updated the links in email confirmations to use login links with redirects instead of direct links.
112
- * EHANCEMENT: Added pmpro_email_attachments filter, which can be used to add attachments to PMPro emails that are sent out. E.g., https://gist.github.com/strangerstudios/c4e771dca8723613bce3
113
-
114
- = 1.7.13.1 =
115
- * Fixed bug introduced in 1.7.12 where discount code uses were not being tracked.
116
- * Added pmpro_check_discount_code filter so you can do your own checks on discount codes.
117
-
118
  = 1.7.13 =
119
  * Added Danish (da_DK) translation. (Thanks, Mikael)
120
  * Fixed bugs with timestamps in various places (especially around trial dates) introduced in 1.7.12
2
  Contributors: strangerstudios
3
  Tags: memberships, membership, authorize.net, ecommerce, paypal, stripe, braintree, restrict access, restrict content, directory site, payflow
4
  Requires at least: 3.5
5
+ Tested up to: 3.9.1
6
+ Stable tag: 1.7.13
7
 
8
  The easiest way to GET PAID with your WordPress site. Flexible content control by Membership Level, Reports, Affiliates and Discounts
9
 
102
  4. Offer Membership Discounts with specific price rules (restricted by level, unique pricing for each level, # of uses, expiration date.)
103
 
104
  == Changelog ==
 
 
 
 
 
 
 
 
 
 
 
 
 
105
  = 1.7.13 =
106
  * Added Danish (da_DK) translation. (Thanks, Mikael)
107
  * Fixed bugs with timestamps in various places (especially around trial dates) introduced in 1.7.12
services/getfile.php CHANGED
@@ -1,12 +1,23 @@
1
  <?php
2
  global $isapage;
3
- $isapage = true;
4
-
5
  //in case the file is loaded directly
6
  if(!function_exists("get_userdata"))
7
  {
8
  define('WP_USE_THEMES', false);
9
  require_once(dirname(__FILE__) . '/../../../../wp-load.php');
 
 
 
 
 
 
 
 
 
 
 
10
  }
11
 
12
  require_once(dirname(__FILE__) . '/../classes/class.mimetype.php');
@@ -17,6 +28,13 @@
17
  if($uri[0] == "/")
18
  $uri = substr($uri, 1, strlen($uri) - 1);
19
 
 
 
 
 
 
 
 
20
  //if WP is installed in a subdirectory, that directory(s) will be in both the PATH and URI
21
  $home_url_parts = explode("/", str_replace("//", "", home_url()));
22
  if(count($home_url_parts) > 1)
@@ -52,6 +70,8 @@
52
  {
53
  if(!pmpro_has_membership_access($file_post_parent))
54
  {
 
 
55
  //nope
56
  header('HTTP/1.1 503 Service Unavailable', true, 503);
57
  echo "HTTP/1.1 503 Service Unavailable";
@@ -67,8 +87,40 @@
67
  //in case we want to do something else with the file
68
  do_action("pmpro_getfile_before_readfile", $filename, $file_mimetype);
69
 
70
- //show the file
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
71
  header("Content-type: " . $file_mimetype);
72
  readfile($filename);
73
- exit;
74
- ?>
1
  <?php
2
  global $isapage;
3
+ $isapage = true;
4
+
5
  //in case the file is loaded directly
6
  if(!function_exists("get_userdata"))
7
  {
8
  define('WP_USE_THEMES', false);
9
  require_once(dirname(__FILE__) . '/../../../../wp-load.php');
10
+ }
11
+
12
+ //this script must be enabled to run
13
+ if(!defined('PMPRO_GETFILE_ENABLED') || !PMPRO_GETFILE_ENABLED)
14
+ die("The getfile script is not enabled.");
15
+
16
+ //prevent loops when redirecting to .php files
17
+ if(!empty($_REQUEST['noloop']))
18
+ {
19
+ status_header( 500 );
20
+ die("This file cannot be loaded through the get file script.");
21
  }
22
 
23
  require_once(dirname(__FILE__) . '/../classes/class.mimetype.php');
28
  if($uri[0] == "/")
29
  $uri = substr($uri, 1, strlen($uri) - 1);
30
 
31
+ /*
32
+ Remove ../-like strings from the URI.
33
+ Actually removes any combination of two or more ., /, and \.
34
+ This will prevent traversal attacks and loading hidden files.
35
+ */
36
+ $uri = preg_replace("/[\.\/\\\\]{2,}/", "", $uri);
37
+
38
  //if WP is installed in a subdirectory, that directory(s) will be in both the PATH and URI
39
  $home_url_parts = explode("/", str_replace("//", "", home_url()));
40
  if(count($home_url_parts) > 1)
70
  {
71
  if(!pmpro_has_membership_access($file_post_parent))
72
  {
73
+ do_action("pmpro_getfile_before_error", $filename, $file_post_parent);
74
+
75
  //nope
76
  header('HTTP/1.1 503 Service Unavailable', true, 503);
77
  echo "HTTP/1.1 503 Service Unavailable";
87
  //in case we want to do something else with the file
88
  do_action("pmpro_getfile_before_readfile", $filename, $file_mimetype);
89
 
90
+ //if file is not found, die
91
+ if(!file_exists($filename))
92
+ {
93
+ status_header( 404 );
94
+ nocache_headers();
95
+ die("File not found.");
96
+ }
97
+
98
+ //if blacklistsed file type, redirect to it instead
99
+ $basename = basename($filename);
100
+ $parts = explode('.', $basename);
101
+ $ext = strtolower($parts[count($parts)-1]);
102
+
103
+ //build blacklist and allow for filtering
104
+ $blacklist = array("inc", "php", "php3", "php4", "php5", "phps", "phtml");
105
+ $blacklist = apply_filters("pmpro_getfile_extension_blacklist", $blacklist);
106
+
107
+ //check
108
+ if(in_array($ext, $blacklist))
109
+ {
110
+ //add a noloop param to avoid infinite loops
111
+ $uri = add_query_arg("noloop", 1, $uri);
112
+
113
+ //guess scheme and add host back to uri
114
+ if(is_ssl())
115
+ $uri = "https://" . $_SERVER['HTTP_HOST'] . "/" . $uri;
116
+ else
117
+ $uri = "http://" . $_SERVER['HTTP_HOST'] . "/" . $uri;
118
+
119
+ wp_redirect($uri);
120
+ exit;
121
+ }
122
+
123
+ //okay show the file
124
  header("Content-type: " . $file_mimetype);
125
  readfile($filename);
126
+ exit;
 
services/ipnhandler.php CHANGED
@@ -15,7 +15,7 @@
15
  //some globals
16
  global $wpdb, $gateway_environment, $logstr;
17
  $logstr = ""; //will put debug info here and write to ipnlog.txt
18
-
19
  //validate?
20
  if(!pmpro_ipnValidate())
21
  {
@@ -31,7 +31,8 @@
31
  $item_number = pmpro_getParam("item_number", "POST");
32
  $payment_status = pmpro_getParam("payment_status", "POST");
33
  $payment_amount = pmpro_getParam("payment_amount", "POST");
34
- $payment_currency = pmpro_getParam("payment_currency", "POST");
 
35
  $receiver_email = pmpro_getParam("receiver_email", "POST");
36
  $business_email = pmpro_getParam("business", "POST");
37
  $payer_email = pmpro_getParam("payer_email", "POST");
@@ -429,7 +430,7 @@
429
  {
430
  //filter for level
431
  $morder->membership_level = apply_filters("pmpro_ipnhandler_level", $morder->membership_level, $morder->user_id);
432
-
433
  //fix expiration date
434
  if(!empty($morder->membership_level->expiration_number))
435
  {
@@ -440,17 +441,13 @@
440
  $enddate = "NULL";
441
  }
442
 
443
- //get discount code
444
- $morder->getDiscountCode();
445
- if(!empty($morder->discount_code))
446
- {
447
- //update membership level
448
- $morder->getMembershipLevel(true);
449
- $discount_code_id = $morder->discount_code->id;
450
- }
451
  else
452
  $discount_code_id = "";
453
-
454
  //set the start date to current_time('timestamp') but allow filters
455
  $startdate = apply_filters("pmpro_checkout_start_date", "'" . current_time('mysql') . "'", $morder->user_id, $morder->membership_level);
456
 
@@ -468,7 +465,7 @@
468
  'trial_limit' => $morder->membership_level->trial_limit,
469
  'startdate' => $startdate,
470
  'enddate' => $enddate);
471
-
472
  global $pmpro_error;
473
  if(!empty($pmpro_error))
474
  {
15
  //some globals
16
  global $wpdb, $gateway_environment, $logstr;
17
  $logstr = ""; //will put debug info here and write to ipnlog.txt
18
+
19
  //validate?
20
  if(!pmpro_ipnValidate())
21
  {
31
  $item_number = pmpro_getParam("item_number", "POST");
32
  $payment_status = pmpro_getParam("payment_status", "POST");
33
  $payment_amount = pmpro_getParam("payment_amount", "POST");
34
+ $payment_currency = pmpro_getParam("payment_currency", "POST");
35
+ $txn_id = pmpro_getParam("txn_id", "POST");
36
  $receiver_email = pmpro_getParam("receiver_email", "POST");
37
  $business_email = pmpro_getParam("business", "POST");
38
  $payer_email = pmpro_getParam("payer_email", "POST");
430
  {
431
  //filter for level
432
  $morder->membership_level = apply_filters("pmpro_ipnhandler_level", $morder->membership_level, $morder->user_id);
433
+
434
  //fix expiration date
435
  if(!empty($morder->membership_level->expiration_number))
436
  {
441
  $enddate = "NULL";
442
  }
443
 
444
+ //get discount code (NOTE: but discount_code isn't set here. How to handle discount codes for PayPal Standard?)
445
+ $use_discount_code = true; //assume yes
446
+ if(!empty($discount_code) && !empty($use_discount_code))
447
+ $discount_code_id = $wpdb->get_var("SELECT id FROM $wpdb->pmpro_discount_codes WHERE code = '" . $discount_code . "' LIMIT 1");
 
 
 
 
448
  else
449
  $discount_code_id = "";
450
+
451
  //set the start date to current_time('timestamp') but allow filters
452
  $startdate = apply_filters("pmpro_checkout_start_date", "'" . current_time('mysql') . "'", $morder->user_id, $morder->membership_level);
453
 
465
  'trial_limit' => $morder->membership_level->trial_limit,
466
  'startdate' => $startdate,
467
  'enddate' => $enddate);
468
+
469
  global $pmpro_error;
470
  if(!empty($pmpro_error))
471
  {
services/twocheckout-ins.php CHANGED
@@ -239,14 +239,10 @@
239
  $enddate = "NULL";
240
  }
241
 
242
- //get discount code
243
- $morder->getDiscountCode();
244
- if(!empty($morder->discount_code))
245
- {
246
- //update membership level
247
- $morder->getMembershipLevel(true);
248
- $discount_code_id = $morder->discount_code->id;
249
- }
250
  else
251
  $discount_code_id = "";
252
 
239
  $enddate = "NULL";
240
  }
241
 
242
+ //get discount code (NOTE: but discount_code isn't set here. How to handle discount codes for 2checkout?)
243
+ $use_discount_code = true; //assume yes
244
+ if(!empty($discount_code) && !empty($use_discount_code))
245
+ $discount_code_id = $wpdb->get_var("SELECT id FROM $wpdb->pmpro_discount_codes WHERE code = '" . $discount_code . "' LIMIT 1");
 
 
 
 
246
  else
247
  $discount_code_id = "";
248