Paid Memberships Pro - Version 1.8.7.3

Version Description

  • BUG: Using HTTP 1.1 for calls to the PayPal API now.
  • BUG: The pmpro_cron_credit_card_expiring_warnings cron job setup by PMPro needed a monthly schedule added via the cron_schedules filter.
  • ENHANCEMENT: Added the pmpro_maybe_schedule_event() function. This checks if an event with the same hook and args is already scheduled before scheduling the new event.
  • ENHANCEMENT: Added a script that will run on upgrade to clean out old cron jobs.
Download this release

Release Info

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

Code changes from version 1.8.7.1 to 1.8.7.3

adminpages/emailsettings.php CHANGED
@@ -95,7 +95,7 @@
95
  </th>
96
  <td>
97
  <input type="checkbox" id="only_filter_pmpro_emails" name="only_filter_pmpro_emails" value="1" <?php if(!empty($only_filter_pmpro_emails)) { ?>checked="checked"<?php } ?> />
98
- <label for="only_filter_pmpro_emails"><?php _e('If unchecked, all emails from "WordPress &lt;' . $default_from_email . '&gt;" will be filtered to use the above settings.', 'pmpro');?></label>
99
  </td>
100
  </tr>
101
  </tbody>
95
  </th>
96
  <td>
97
  <input type="checkbox" id="only_filter_pmpro_emails" name="only_filter_pmpro_emails" value="1" <?php if(!empty($only_filter_pmpro_emails)) { ?>checked="checked"<?php } ?> />
98
+ <label for="only_filter_pmpro_emails"><?php printf( __('If unchecked, all emails from "WordPress &lt;%s&gt;" will be filtered to use the above settings.', 'pmpro'), $default_from_email );?></label>
99
  </td>
100
  </tr>
101
  </tbody>
adminpages/paymentsettings.php CHANGED
@@ -98,7 +98,7 @@
98
  <tbody>
99
  <tr class="pmpro_settings_divider">
100
  <td colspan="2">
101
- Choose a Gateway
102
  </td>
103
  </tr>
104
  <tr>
@@ -145,7 +145,7 @@
145
 
146
  <tr class="pmpro_settings_divider">
147
  <td colspan="2">
148
- Currency and Tax Settings
149
  </td>
150
  </tr>
151
  <tr class="gateway gateway_ <?php echo esc_attr(pmpro_getClassesForPaymentSettingsField("currency"));?>" <?php if(!empty($gateway) && $gateway != "paypal" && $gateway != "paypalexpress" && $gateway != "paypalstandard" && $gateway != "braintree" && $gateway != "twocheckout" && $gateway != "cybersource" && $gateway != "payflowpro" && $gateway != "stripe" && $gateway != "authorizenet" && $gateway != "gourl") { ?>style="display: none;"<?php } ?>>
@@ -190,7 +190,7 @@
190
  <td>
191
  <?php _e('Tax State', 'pmpro');?>:
192
  <input type="text" id="tax_state" name="tax_state" size="4" value="<?php echo esc_attr($tax_state)?>" /> <small>(<?php _e('abbreviation, e.g. "PA"', 'pmpro');?>)</small>
193
- &nbsp; Tax Rate:
194
  <input type="text" id="tax_rate" name="tax_rate" size="10" value="<?php echo esc_attr($tax_rate)?>" /> <small>(<?php _e('decimal, e.g. "0.06"', 'pmpro');?>)</small>
195
  <p><small><?php _e('US only. If values are given, tax will be applied for any members ordering from the selected state.<br />For non-US or more complex tax rules, use the <a target="_blank" href="http://www.paidmembershipspro.com/2013/10/non-us-taxes-paid-memberships-pro/">pmpro_tax filter</a>.', 'pmpro');?></small></p>
196
  </td>
@@ -198,7 +198,7 @@
198
 
199
  <tr class="pmpro_settings_divider">
200
  <td colspan="2">
201
- SSL Settings
202
  </td>
203
  </tr>
204
  <tr class="gateway gateway_ <?php echo esc_attr(pmpro_getClassesForPaymentSettingsField("use_ssl"));?>">
@@ -211,7 +211,7 @@
211
  <option value="1" <?php if(!empty($use_ssl) && $use_ssl == 1) { ?>selected="selected"<?php } ?>><?php _e('Yes', 'pmpro');?></option>
212
  <option value="2" <?php if(!empty($use_ssl) && $use_ssl == 2) { ?>selected="selected"<?php } ?>><?php _e('Yes (with JavaScript redirects)', 'pmpro');?></option>
213
  </select>
214
- <small>Recommended: Yes. Try the JavaScript redirects setting if you are having issues with infinite redirect loops.</small>
215
  </td>
216
  </tr>
217
  <tr>
@@ -220,7 +220,7 @@
220
  </th>
221
  <td>
222
  <textarea id="sslseal" name="sslseal" rows="3" cols="80"><?php echo stripslashes(esc_textarea($sslseal))?></textarea>
223
- <br /><small>Your <strong><a target="_blank" href="http://www.paidmembershipspro.com/documentation/initial-plugin-setup/ssl/">SSL Certificate</a></strong> must be installed by your web host. Your <strong>SSL Seal</strong> will be a short HTML or JavaScript snippet that can be pasted here.</small>
224
  </td>
225
  </tr>
226
  <tr>
98
  <tbody>
99
  <tr class="pmpro_settings_divider">
100
  <td colspan="2">
101
+ <?php _e('Choose a Gateway', 'pmpro'); ?>
102
  </td>
103
  </tr>
104
  <tr>
145
 
146
  <tr class="pmpro_settings_divider">
147
  <td colspan="2">
148
+ <?php _e('Currency and Tax Settings', 'pmpro'); ?>
149
  </td>
150
  </tr>
151
  <tr class="gateway gateway_ <?php echo esc_attr(pmpro_getClassesForPaymentSettingsField("currency"));?>" <?php if(!empty($gateway) && $gateway != "paypal" && $gateway != "paypalexpress" && $gateway != "paypalstandard" && $gateway != "braintree" && $gateway != "twocheckout" && $gateway != "cybersource" && $gateway != "payflowpro" && $gateway != "stripe" && $gateway != "authorizenet" && $gateway != "gourl") { ?>style="display: none;"<?php } ?>>
190
  <td>
191
  <?php _e('Tax State', 'pmpro');?>:
192
  <input type="text" id="tax_state" name="tax_state" size="4" value="<?php echo esc_attr($tax_state)?>" /> <small>(<?php _e('abbreviation, e.g. "PA"', 'pmpro');?>)</small>
193
+ &nbsp; <?php _e('Tax Rate', 'pmpro'); ?>:
194
  <input type="text" id="tax_rate" name="tax_rate" size="10" value="<?php echo esc_attr($tax_rate)?>" /> <small>(<?php _e('decimal, e.g. "0.06"', 'pmpro');?>)</small>
195
  <p><small><?php _e('US only. If values are given, tax will be applied for any members ordering from the selected state.<br />For non-US or more complex tax rules, use the <a target="_blank" href="http://www.paidmembershipspro.com/2013/10/non-us-taxes-paid-memberships-pro/">pmpro_tax filter</a>.', 'pmpro');?></small></p>
196
  </td>
198
 
199
  <tr class="pmpro_settings_divider">
200
  <td colspan="2">
201
+ <?php _e('SSL Settings', 'pmpro'); ?>
202
  </td>
203
  </tr>
204
  <tr class="gateway gateway_ <?php echo esc_attr(pmpro_getClassesForPaymentSettingsField("use_ssl"));?>">
211
  <option value="1" <?php if(!empty($use_ssl) && $use_ssl == 1) { ?>selected="selected"<?php } ?>><?php _e('Yes', 'pmpro');?></option>
212
  <option value="2" <?php if(!empty($use_ssl) && $use_ssl == 2) { ?>selected="selected"<?php } ?>><?php _e('Yes (with JavaScript redirects)', 'pmpro');?></option>
213
  </select>
214
+ <small><?php _e('Recommended: Yes. Try the JavaScript redirects setting if you are having issues with infinite redirect loops.', 'pmpro'); ?></small>
215
  </td>
216
  </tr>
217
  <tr>
220
  </th>
221
  <td>
222
  <textarea id="sslseal" name="sslseal" rows="3" cols="80"><?php echo stripslashes(esc_textarea($sslseal))?></textarea>
223
+ <br /><small><?php _e('Your <strong><a target="_blank" href="http://www.paidmembershipspro.com/documentation/initial-plugin-setup/ssl/">SSL Certificate</a></strong> must be installed by your web host. Your <strong>SSL Seal</strong> will be a short HTML or JavaScript snippet that can be pasted here.', 'pmpro'); ?></small>
224
  </td>
225
  </tr>
226
  <tr>
classes/class.pmproemail.php CHANGED
@@ -162,12 +162,12 @@
162
  //start and end date
163
  $startdate = $wpdb->get_var("SELECT UNIX_TIMESTAMP(startdate) as startdate FROM $wpdb->pmpro_memberships_users WHERE user_id = '" . $user->ID . "' AND membership_id = '" . $old_level_id . "' AND status IN('inactive', 'cancelled', 'admin_cancelled') ORDER BY id DESC");
164
  if(!empty($startdate))
165
- $this->data['startdate'] = date(get_option('date_format'), $startdate);
166
  else
167
  $this->data['startdate'] = "";
168
  $enddate = $wpdb->get_var("SELECT UNIX_TIMESTAMP(enddate) as enddate FROM $wpdb->pmpro_memberships_users WHERE user_id = '" . $user->ID . "' AND membership_id = '" . $old_level_id . "' AND status IN('inactive', 'cancelled', 'admin_cancelled') ORDER BY id DESC");
169
  if(!empty($enddate))
170
- $this->data['enddate'] = date(get_option('date_format'), $enddate);
171
  else
172
  $this->data['enddate'] = "";
173
 
@@ -215,7 +215,7 @@
215
  $this->template = "checkout_paid";
216
  $this->data["invoice_id"] = $invoice->code;
217
  $this->data["invoice_total"] = pmpro_formatPrice($invoice->total);
218
- $this->data["invoice_date"] = date(get_option('date_format'), $invoice->timestamp);
219
  $this->data["billing_name"] = $invoice->billing->name;
220
  $this->data["billing_street"] = $invoice->billing->street;
221
  $this->data["billing_city"] = $invoice->billing->city;
@@ -262,7 +262,7 @@
262
 
263
  $enddate = $wpdb->get_var("SELECT UNIX_TIMESTAMP(enddate) FROM $wpdb->pmpro_memberships_users WHERE user_id = '" . $user->ID . "' AND status = 'active' LIMIT 1");
264
  if($enddate)
265
- $this->data["membership_expiration"] = "<p>" . sprintf(__("This membership will expire on %s.", "pmpro"), date(get_option('date_format'), $enddate)) . "</p>\n";
266
  else
267
  $this->data["membership_expiration"] = "";
268
 
@@ -312,7 +312,7 @@
312
  $this->template = "checkout_paid_admin";
313
  $this->data["invoice_id"] = $invoice->code;
314
  $this->data["invoice_total"] = pmpro_formatPrice($invoice->total);
315
- $this->data["invoice_date"] = date(get_option('date_format'), $invoice->timestamp);
316
  $this->data["billing_name"] = $invoice->billing->name;
317
  $this->data["billing_street"] = $invoice->billing->street;
318
  $this->data["billing_city"] = $invoice->billing->city;
@@ -355,7 +355,7 @@
355
 
356
  $enddate = $wpdb->get_var("SELECT UNIX_TIMESTAMP(enddate) FROM $wpdb->pmpro_memberships_users WHERE user_id = '" . $user->ID . "' AND status = 'active' LIMIT 1");
357
  if($enddate)
358
- $this->data["membership_expiration"] = "<p>" . sprintf(__("This membership will expire on %s.", "pmpro"), date(get_option('date_format'), $enddate)) . "</p>\n";
359
  else
360
  $this->data["membership_expiration"] = "";
361
 
@@ -629,7 +629,7 @@
629
  "user_email" => $user->user_email,
630
  "invoice_id" => $invoice->code,
631
  "invoice_total" => pmpro_formatPrice($invoice->total),
632
- "invoice_date" => date(get_option('date_format'), $invoice->timestamp),
633
  "billing_name" => $invoice->billing->name,
634
  "billing_street" => $invoice->billing->street,
635
  "billing_city" => $invoice->billing->city,
@@ -660,7 +660,7 @@
660
 
661
  $enddate = $wpdb->get_var("SELECT UNIX_TIMESTAMP(enddate) FROM $wpdb->pmpro_memberships_users WHERE user_id = '" . $user->ID . "' AND status = 'active' LIMIT 1");
662
  if($enddate)
663
- $this->data["membership_expiration"] = "<p>" . sprintf(__("This membership will expire on %s.", "pmpro"), date(get_option('date_format'), $enddate)) . "</p>\n";
664
  else
665
  $this->data["membership_expiration"] = "";
666
 
@@ -703,7 +703,7 @@
703
  "cycle_period" => $user->membership_level->cycle_period,
704
  "trial_amount" => pmpro_formatPrice($user->membership_level->trial_amount),
705
  "trial_limit" => $user->membership_level->trial_limit,
706
- "trial_end" => date(get_option('date_format'), strtotime(date("m/d/Y", $user->membership_level->startdate) . " + " . $user->membership_level->trial_limit . " " . $user->membership_level->cycle_period), current_time("timestamp"))
707
  );
708
 
709
  return $this->sendEmail();
@@ -746,7 +746,7 @@
746
  $this->email = $user->user_email;
747
  $this->subject = sprintf(__("Your membership at %s will end soon", "pmpro"), get_option("blogname"));
748
  $this->template = "membership_expiring";
749
- $this->data = array("subject" => $this->subject, "name" => $user->display_name, "user_login" => $user->user_login, "sitename" => get_option("blogname"), "membership_id" => $user->membership_level->id, "membership_level_name" => $user->membership_level->name, "siteemail" => pmpro_getOption("from_email"), "login_link" => wp_login_url(), "enddate" => date(get_option('date_format'), $user->membership_level->enddate), "display_name" => $user->display_name, "user_email" => $user->user_email);
750
 
751
  return $this->sendEmail();
752
  }
@@ -774,7 +774,7 @@
774
 
775
  if(!empty($user->membership_level->enddate))
776
  {
777
- $this->data["membership_change"] .= ". " . sprintf(__("This membership will expire on %s", "pmpro"), date(get_option('date_format'), $user->membership_level->enddate));
778
  }
779
  elseif(!empty($this->expiration_changed))
780
  {
@@ -812,7 +812,7 @@
812
 
813
  if(!empty($user->membership_level->enddate))
814
  {
815
- $this->data["membership_change"] .= ". " . sprintf(__("This membership will expire on %s", "pmpro"), date(get_option('date_format'), $user->membership_level->enddate));
816
  }
817
  elseif(!empty($this->expiration_changed))
818
  {
162
  //start and end date
163
  $startdate = $wpdb->get_var("SELECT UNIX_TIMESTAMP(startdate) as startdate FROM $wpdb->pmpro_memberships_users WHERE user_id = '" . $user->ID . "' AND membership_id = '" . $old_level_id . "' AND status IN('inactive', 'cancelled', 'admin_cancelled') ORDER BY id DESC");
164
  if(!empty($startdate))
165
+ $this->data['startdate'] = date_i18n(get_option('date_format'), $startdate);
166
  else
167
  $this->data['startdate'] = "";
168
  $enddate = $wpdb->get_var("SELECT UNIX_TIMESTAMP(enddate) as enddate FROM $wpdb->pmpro_memberships_users WHERE user_id = '" . $user->ID . "' AND membership_id = '" . $old_level_id . "' AND status IN('inactive', 'cancelled', 'admin_cancelled') ORDER BY id DESC");
169
  if(!empty($enddate))
170
+ $this->data['enddate'] = date_i18n(get_option('date_format'), $enddate);
171
  else
172
  $this->data['enddate'] = "";
173
 
215
  $this->template = "checkout_paid";
216
  $this->data["invoice_id"] = $invoice->code;
217
  $this->data["invoice_total"] = pmpro_formatPrice($invoice->total);
218
+ $this->data["invoice_date"] = date_i18n(get_option('date_format'), $invoice->timestamp);
219
  $this->data["billing_name"] = $invoice->billing->name;
220
  $this->data["billing_street"] = $invoice->billing->street;
221
  $this->data["billing_city"] = $invoice->billing->city;
262
 
263
  $enddate = $wpdb->get_var("SELECT UNIX_TIMESTAMP(enddate) FROM $wpdb->pmpro_memberships_users WHERE user_id = '" . $user->ID . "' AND status = 'active' LIMIT 1");
264
  if($enddate)
265
+ $this->data["membership_expiration"] = "<p>" . sprintf(__("This membership will expire on %s.", "pmpro"), date_i18n(get_option('date_format'), $enddate)) . "</p>\n";
266
  else
267
  $this->data["membership_expiration"] = "";
268
 
312
  $this->template = "checkout_paid_admin";
313
  $this->data["invoice_id"] = $invoice->code;
314
  $this->data["invoice_total"] = pmpro_formatPrice($invoice->total);
315
+ $this->data["invoice_date"] = date_i18n(get_option('date_format'), $invoice->timestamp);
316
  $this->data["billing_name"] = $invoice->billing->name;
317
  $this->data["billing_street"] = $invoice->billing->street;
318
  $this->data["billing_city"] = $invoice->billing->city;
355
 
356
  $enddate = $wpdb->get_var("SELECT UNIX_TIMESTAMP(enddate) FROM $wpdb->pmpro_memberships_users WHERE user_id = '" . $user->ID . "' AND status = 'active' LIMIT 1");
357
  if($enddate)
358
+ $this->data["membership_expiration"] = "<p>" . sprintf(__("This membership will expire on %s.", "pmpro"), date_i18n(get_option('date_format'), $enddate)) . "</p>\n";
359
  else
360
  $this->data["membership_expiration"] = "";
361
 
629
  "user_email" => $user->user_email,
630
  "invoice_id" => $invoice->code,
631
  "invoice_total" => pmpro_formatPrice($invoice->total),
632
+ "invoice_date" => date_i18n(get_option('date_format'), $invoice->timestamp),
633
  "billing_name" => $invoice->billing->name,
634
  "billing_street" => $invoice->billing->street,
635
  "billing_city" => $invoice->billing->city,
660
 
661
  $enddate = $wpdb->get_var("SELECT UNIX_TIMESTAMP(enddate) FROM $wpdb->pmpro_memberships_users WHERE user_id = '" . $user->ID . "' AND status = 'active' LIMIT 1");
662
  if($enddate)
663
+ $this->data["membership_expiration"] = "<p>" . sprintf(__("This membership will expire on %s.", "pmpro"), date_i18n(get_option('date_format'), $enddate)) . "</p>\n";
664
  else
665
  $this->data["membership_expiration"] = "";
666
 
703
  "cycle_period" => $user->membership_level->cycle_period,
704
  "trial_amount" => pmpro_formatPrice($user->membership_level->trial_amount),
705
  "trial_limit" => $user->membership_level->trial_limit,
706
+ "trial_end" => date_i18n(get_option('date_format'), strtotime(date_i18n("m/d/Y", $user->membership_level->startdate) . " + " . $user->membership_level->trial_limit . " " . $user->membership_level->cycle_period), current_time("timestamp"))
707
  );
708
 
709
  return $this->sendEmail();
746
  $this->email = $user->user_email;
747
  $this->subject = sprintf(__("Your membership at %s will end soon", "pmpro"), get_option("blogname"));
748
  $this->template = "membership_expiring";
749
+ $this->data = array("subject" => $this->subject, "name" => $user->display_name, "user_login" => $user->user_login, "sitename" => get_option("blogname"), "membership_id" => $user->membership_level->id, "membership_level_name" => $user->membership_level->name, "siteemail" => pmpro_getOption("from_email"), "login_link" => wp_login_url(), "enddate" => date_i18n(get_option('date_format'), $user->membership_level->enddate), "display_name" => $user->display_name, "user_email" => $user->user_email);
750
 
751
  return $this->sendEmail();
752
  }
774
 
775
  if(!empty($user->membership_level->enddate))
776
  {
777
+ $this->data["membership_change"] .= ". " . sprintf(__("This membership will expire on %s", "pmpro"), date_i18n(get_option('date_format'), $user->membership_level->enddate));
778
  }
779
  elseif(!empty($this->expiration_changed))
780
  {
812
 
813
  if(!empty($user->membership_level->enddate))
814
  {
815
+ $this->data["membership_change"] .= ". " . sprintf(__("This membership will expire on %s", "pmpro"), date_i18n(get_option('date_format'), $user->membership_level->enddate));
816
  }
817
  elseif(!empty($this->expiration_changed))
818
  {
classes/gateways/class.pmprogateway_payflowpro.php CHANGED
@@ -588,6 +588,7 @@
588
  //post to PayPal
589
  $response = wp_remote_post( $API_Endpoint, array(
590
  'sslverify' => FALSE,
 
591
  'body' => $nvpreq
592
  )
593
  );
588
  //post to PayPal
589
  $response = wp_remote_post( $API_Endpoint, array(
590
  'sslverify' => FALSE,
591
+ 'httpversion' => '1.1',
592
  'body' => $nvpreq
593
  )
594
  );
classes/gateways/class.pmprogateway_paypal.php CHANGED
@@ -639,6 +639,7 @@
639
  //post to PayPal
640
  $response = wp_remote_post( $API_Endpoint, array(
641
  'sslverify' => FALSE,
 
642
  'body' => $nvpreq
643
  )
644
  );
639
  //post to PayPal
640
  $response = wp_remote_post( $API_Endpoint, array(
641
  'sslverify' => FALSE,
642
+ 'httpversion' => '1.1',
643
  'body' => $nvpreq
644
  )
645
  );
classes/gateways/class.pmprogateway_paypalexpress.php CHANGED
@@ -850,6 +850,7 @@
850
  //post to PayPal
851
  $response = wp_remote_post( $API_Endpoint, array(
852
  'sslverify' => FALSE,
 
853
  'body' => $nvpreq
854
  )
855
  );
850
  //post to PayPal
851
  $response = wp_remote_post( $API_Endpoint, array(
852
  'sslverify' => FALSE,
853
+ 'httpversion' => '1.1',
854
  'body' => $nvpreq
855
  )
856
  );
classes/gateways/class.pmprogateway_paypalstandard.php CHANGED
@@ -498,6 +498,7 @@
498
  //post to PayPal
499
  $response = wp_remote_post( $API_Endpoint, array(
500
  'sslverify' => FALSE,
 
501
  'body' => $nvpreq
502
  )
503
  );
498
  //post to PayPal
499
  $response = wp_remote_post( $API_Endpoint, array(
500
  'sslverify' => FALSE,
501
+ 'httpversion' => '1.1',
502
  'body' => $nvpreq
503
  )
504
  );
classes/gateways/class.pmprogateway_stripe.php CHANGED
@@ -886,7 +886,7 @@
886
  */
887
  static function pmpro_activation()
888
  {
889
- wp_schedule_event(time(), 'daily', 'pmpro_cron_stripe_subscription_updates');
890
  }
891
 
892
  /**
886
  */
887
  static function pmpro_activation()
888
  {
889
+ pmpro_maybe_schedule_event(time(), 'daily', 'pmpro_cron_stripe_subscription_updates');
890
  }
891
 
892
  /**
includes/functions.php CHANGED
@@ -2180,4 +2180,22 @@ function pmpro_generatePages($pages) {
2180
  }
2181
 
2182
  return $pages_created;
2183
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2180
  }
2181
 
2182
  return $pages_created;
2183
+ }
2184
+
2185
+ /**
2186
+ * Schedule a periodic event unless one with the same hook is already scheduled.
2187
+ *
2188
+ * @param int $timestamp Timestamp for when to run the event.
2189
+ * @param string $recurrence How often the event should recur.
2190
+ * @param string $hook Action hook to execute when cron is run.
2191
+ * @param array $args Optional. Arguments to pass to the hook's callback function.
2192
+ * @return false|void False when an event is not scheduled.
2193
+ * @since 1.8.7.3
2194
+ */
2195
+ function pmpro_maybe_schedule_event( $timestamp, $recurrence, $hook, $args = array()) {
2196
+ $next = wp_next_scheduled($hook, $args);
2197
+ if(empty($next))
2198
+ return wp_schedule_event($timestamp, $recurrence, $hook, $args);
2199
+ else
2200
+ return false;
2201
+ }
includes/license.php CHANGED
@@ -158,7 +158,7 @@ function pmpro_license_isValid($key = NULL, $type = NULL, $force = false) {
158
  */
159
  //activation
160
  function pmpro_license_activation() {
161
- wp_schedule_event(current_time('timestamp'), 'monthly', 'pmpro_license_check_key');
162
  }
163
  register_activation_hook(__FILE__, 'pmpro_activation');
164
 
158
  */
159
  //activation
160
  function pmpro_license_activation() {
161
+ pmpro_maybe_schedule_event(current_time('timestamp'), 'monthly', 'pmpro_license_check_key');
162
  }
163
  register_activation_hook(__FILE__, 'pmpro_activation');
164
 
includes/upgradecheck.php CHANGED
@@ -73,7 +73,7 @@ function pmpro_checkForUpgrades()
73
  if($pmpro_db_version < 1.72)
74
  {
75
  //schedule the credit card expiring cron
76
- wp_schedule_event(current_time('timestamp'), 'monthly', 'pmpro_cron_credit_card_expiring_warnings');
77
 
78
  pmpro_setOption("db_version", "1.72");
79
  $pmpro_db_version = 1.72;
@@ -107,29 +107,48 @@ function pmpro_checkForUpgrades()
107
  }
108
 
109
  //fix subscription ids on stripe orders
110
- if($pmpro_db_version < 1.869) {
111
- pmpro_upgrade_1_8_6_9();
112
- $pmpro_db_version = 1.869;
113
  }
114
 
115
- //add level meta table
116
- /*
117
- if($pmpro_db_version < 1.87) {
118
-
119
- pmpro_db_delta();
120
- pmpro_upgrade_1_8_7();
121
-
122
- pmpro_setOption("db_version", "1.87");
123
- $pmpro_db_version = 1.87;
124
  }
125
- */
126
  }
127
 
 
 
 
128
  function pmpro_upgrade_1_8_7() {
129
 
130
- /*
131
- Additional upgrade scripts will go here or we will remove it.
132
- */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
133
  return 1.87;
134
  }
135
 
73
  if($pmpro_db_version < 1.72)
74
  {
75
  //schedule the credit card expiring cron
76
+ pmpro_maybe_schedule_event(current_time('timestamp'), 'monthly', 'pmpro_cron_credit_card_expiring_warnings');
77
 
78
  pmpro_setOption("db_version", "1.72");
79
  $pmpro_db_version = 1.72;
107
  }
108
 
109
  //fix subscription ids on stripe orders
110
+ if($pmpro_db_version < 1.869) {
111
+ $pmpro_db_version = pmpro_upgrade_1_8_6_9();
 
112
  }
113
 
114
+ //Remove extra cron jobs inserted in version 1.8.7 and 1.8.7.1
115
+ if($pmpro_db_version < 1.87) {
116
+ $pmpro_db_version = pmpro_upgrade_1_8_7();
 
 
 
 
 
 
117
  }
 
118
  }
119
 
120
+ /*
121
+ Remove extra cron jobs inserted in version 1.8.7 and 1.8.7.1
122
+ */
123
  function pmpro_upgrade_1_8_7() {
124
 
125
+ //fix cron jobs
126
+ $jobs = _get_cron_array();
127
+
128
+ // Remove all pmpro cron jobs (for now).
129
+ foreach( $jobs as $when => $job_array ) {
130
+
131
+ foreach($job_array as $name => $job) {
132
+ //delete pmpro cron
133
+ if ( false !== stripos( $name, 'pmpro_cron') )
134
+ unset($jobs[$when][$name]);
135
+ }
136
+
137
+ //delete empty cron time slots
138
+ if( empty($jobs[$when]) )
139
+ unset($jobs[$when]);
140
+ }
141
+
142
+ // Save the data
143
+ _set_cron_array($jobs);
144
+
145
+ //add the three we want back
146
+ pmpro_maybe_schedule_event(current_time('timestamp'), 'daily', 'pmpro_cron_expire_memberships');
147
+ pmpro_maybe_schedule_event(current_time('timestamp')+1, 'daily', 'pmpro_cron_expiration_warnings');
148
+ pmpro_maybe_schedule_event(current_time('timestamp'), 'monthly', 'pmpro_cron_credit_card_expiring_warnings');
149
+
150
+ pmpro_setOption("db_version", "1.87");
151
+
152
  return 1.87;
153
  }
154
 
languages/pmpro-nb_NO.mo CHANGED
Binary file
languages/pmpro-nb_NO.po CHANGED
@@ -2,8 +2,8 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: Paid Memberships Pro v1.8.6.8.1\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2016-01-16 22:46-0500\n"
6
- "PO-Revision-Date: 2016-01-16 23:43-0500\n"
7
  "Last-Translator: Thomas Sjolshagen <thomas@eighty20results.com>\n"
8
  "Language-Team: \n"
9
  "Language: nb_NO\n"
@@ -28,15 +28,15 @@ msgstr ""
28
  #: adminpages/memberslist.php:5 adminpages/orders-csv.php:5
29
  #: adminpages/orders-print.php:12 adminpages/orders.php:5
30
  #: adminpages/pagesettings.php:4 adminpages/paymentsettings.php:5
31
- #: includes/license.php:36
32
  msgid "You do not have permissions to perform this action."
33
  msgstr "Du har ikke rettigheter nok for denne aktiviteten."
34
 
35
  # @ pmpro
36
  #: adminpages/addons.php:64 adminpages/admin_header.php:170
37
- #: includes/adminpages.php:52 includes/adminpages.php:146
38
  msgid "Add Ons"
39
- msgstr "Add Ons"
40
 
41
  #: adminpages/addons.php:71
42
  #, php-format
@@ -279,8 +279,8 @@ msgstr "Brukerforum"
279
 
280
  # @ pmpro
281
  #: adminpages/admin_header.php:150 adminpages/membershiplevels.php:618
282
- #: adminpages/pagesettings.php:70 includes/adminpages.php:64
283
- #: includes/adminpages.php:65 includes/adminpages.php:111
284
  #: includes/metaboxes.php:131
285
  msgid "Membership Levels"
286
  msgstr "Medlemskapsnivå"
@@ -337,8 +337,8 @@ msgstr ""
337
  "pålogget som bruker, eller ha registrert deg for å få tilgang."
338
 
339
  # @ pmpro
340
- #: adminpages/advancedsettings.php:88 includes/adminpages.php:51
341
- #: includes/adminpages.php:139
342
  msgid "Advanced Settings"
343
  msgstr "Avanserte innstillinger"
344
 
@@ -830,8 +830,8 @@ msgid "delete"
830
  msgstr "slett"
831
 
832
  # @ pmpro
833
- #: adminpages/emailsettings.php:69 includes/adminpages.php:50
834
- #: includes/adminpages.php:132
835
  msgid "Email Settings"
836
  msgstr "Innstillinger for e-post"
837
 
@@ -880,8 +880,13 @@ msgid "Only Filter PMPro Emails?"
880
  msgstr "Kun behandle e-post for PMPro?"
881
 
882
  #: adminpages/emailsettings.php:98
883
- msgid "If unchecked, all emails from \"WordPress &lt;"
884
- msgstr "Dersom denne ikke er krysset av sendes alle email fra “WordPress &lt;"
 
 
 
 
 
885
 
886
  # @ pmpro
887
  #: adminpages/emailsettings.php:115
@@ -1225,8 +1230,8 @@ msgstr ""
1225
  "abonnement vil bli avsluttet."
1226
 
1227
  # @ pmpro
1228
- #: adminpages/memberslist.php:25 includes/adminpages.php:53
1229
- #: includes/adminpages.php:153
1230
  msgid "Members List"
1231
  msgstr "Medlemsliste"
1232
 
@@ -1574,8 +1579,8 @@ msgid "Send Email"
1574
  msgstr "Send e-post"
1575
 
1576
  # @ pmpro
1577
- #: adminpages/orders.php:677 includes/adminpages.php:55
1578
- #: includes/adminpages.php:167
1579
  msgid "Orders"
1580
  msgstr "Bestillinger"
1581
 
@@ -1904,7 +1909,7 @@ msgid ""
1904
  msgstr ""
1905
  "Kun for USA. Dersom du oppgir verdier her vil statlige skatterrater bli "
1906
  "brukt for medlemmer som bestiller fra den valgte staten.<br />For områder "
1907
- "utenfor USA, eller områder med mer komplekse skatteregler, bruk a target="
1908
  "\"_blank\" href=\"http://www.paidmembershipspro.com/2013/10/non-us-taxes-"
1909
  "paid-memberships-pro/\">pmpro_tax filteret (Engelsk)</a>."
1910
 
@@ -2150,6 +2155,18 @@ msgstr "Pris"
2150
  msgid "Subtotal"
2151
  msgstr "Delsum"
2152
 
 
 
 
 
 
 
 
 
 
 
 
 
2153
  # @ pmpro
2154
  #: classes/class.memberorder.php:697
2155
  #, php-format
@@ -2210,17 +2227,18 @@ msgstr "Dette medlemsskapet kommer til å utløpe den %s"
2210
  msgid "Member Checkout for %s at %s"
2211
  msgstr "Nytt medlem for %s via %s"
2212
 
2213
- # @ pmpro
2214
  #: classes/class.pmproemail.php:375
2215
  #, php-format
2216
- msgid "Your billing information has been udpated at %s"
2217
- msgstr "Faktureringsinformasjonen har blitt oppdatert på %s"
 
2218
 
2219
- # @ pmpro
2220
  #: classes/class.pmproemail.php:428
2221
  #, php-format
2222
- msgid "Billing information has been udpated for %s at %s"
2223
- msgstr "Faktureringsinformasjonen har blitt oppdatert for %s den %s"
 
 
2224
 
2225
  # @ pmpro
2226
  #: classes/class.pmproemail.php:476
@@ -2348,7 +2366,7 @@ msgstr ""
2348
  "problemet."
2349
 
2350
  #: classes/gateways/class.pmprogateway_authorizenet.php:39
2351
- #: paid-memberships-pro.php:131
2352
  msgid "Authorize.net"
2353
  msgstr "Authorize.net"
2354
 
@@ -2386,7 +2404,7 @@ msgid "Could not connect to Authorize.net"
2386
  msgstr "Feil: Kunne ikke koble oss til Authorize.net"
2387
 
2388
  #: classes/gateways/class.pmprogateway_braintree.php:76
2389
- #: paid-memberships-pro.php:132
2390
  msgid "Braintree Payments"
2391
  msgstr "Braintree Payments"
2392
 
@@ -2517,7 +2535,7 @@ msgstr "Fant ikke abonnementet."
2517
 
2518
  # @ pmpro
2519
  #: classes/gateways/class.pmprogateway_check.php:48
2520
- #: paid-memberships-pro.php:125
2521
  msgid "Pay by Check"
2522
  msgstr "Betal med sjekk"
2523
 
@@ -2614,7 +2632,7 @@ msgstr ""
2614
  "kontakt med eieren av denne websiden for å fikse problemet."
2615
 
2616
  #: classes/gateways/class.pmprogateway_paypal.php:57
2617
- #: paid-memberships-pro.php:128
2618
  msgid "PayPal Website Payments Pro"
2619
  msgstr "PayPal Website Payments Pro"
2620
 
@@ -2724,7 +2742,7 @@ msgstr ""
2724
  "blir belastet for dette videre."
2725
 
2726
  #: classes/gateways/class.pmprogateway_paypalexpress.php:73
2727
- #: paid-memberships-pro.php:127
2728
  msgid "PayPal Express"
2729
  msgstr "PayPal Express"
2730
 
@@ -2742,7 +2760,7 @@ msgid "The PayPal Token was lost."
2742
  msgstr "PayPal tokenet var tapt."
2743
 
2744
  #: classes/gateways/class.pmprogateway_paypalstandard.php:60
2745
- #: paid-memberships-pro.php:130
2746
  msgid "PayPal Standard"
2747
  msgstr "PayPal Standard"
2748
 
@@ -2764,7 +2782,7 @@ msgstr ""
2764
  "aktiver den, eller be webhotell leverandøren din om å aktivere den."
2765
 
2766
  #: classes/gateways/class.pmprogateway_stripe.php:126
2767
- #: paid-memberships-pro.php:126
2768
  msgid "Stripe"
2769
  msgstr "Stripe"
2770
 
@@ -2867,7 +2885,7 @@ msgid "Could not find the customer."
2867
  msgstr "Fant ikke kunden"
2868
 
2869
  #: classes/gateways/class.pmprogateway_twocheckout.php:59
2870
- #: paid-memberships-pro.php:133
2871
  msgid "2Checkout"
2872
  msgstr "2Checkout"
2873
 
@@ -2922,62 +2940,66 @@ msgid "Check Out with 2Checkout"
2922
  msgstr "Betal med 2Checkout"
2923
 
2924
  # @ pmpro
2925
- #: includes/adminpages.php:47
2926
  msgid "Memberships"
2927
  msgstr "Medlemskap"
2928
 
2929
  # @ pmpro
2930
- #: includes/adminpages.php:48 includes/adminpages.php:118
2931
  msgid "Page Settings"
2932
  msgstr "Sideinnstillinger"
2933
 
2934
  # @ pmpro
2935
- #: includes/adminpages.php:49 includes/adminpages.php:125
2936
  msgid "Payment Settings"
2937
  msgstr "Betalingsinnstillinger"
2938
 
2939
  # @ pmpro
2940
- #: includes/adminpages.php:54 includes/adminpages.php:160
2941
  msgid "Reports"
2942
  msgstr "Rapporter"
2943
 
2944
  # @ pmpro
2945
- #: includes/adminpages.php:56 includes/adminpages.php:174
2946
  msgid "Discount Codes"
2947
  msgstr "Rabattkoder"
2948
 
2949
- #: includes/adminpages.php:104
 
 
 
 
2950
  msgid "<span class=\"ab-icon\"></span>Memberships"
2951
  msgstr "<span class=\"ab-icon\"></span>Medlemsskap"
2952
 
2953
- #: includes/adminpages.php:265
2954
  msgid "View PMPro Documentation"
2955
  msgstr "Til PMPro dokumentasjonen"
2956
 
2957
- #: includes/adminpages.php:265
2958
  msgid "Docs"
2959
  msgstr "Documentasjon"
2960
 
2961
- #: includes/adminpages.php:266
2962
  msgid "Visit Customer Support Forum"
2963
  msgstr "Besøk brukerstøtte forumet"
2964
 
2965
- #: includes/adminpages.php:266
2966
  msgid "Support"
2967
  msgstr "Brukerstøtte"
2968
 
2969
  # @ pmpro
2970
- #: includes/currencies.php:17 includes/currencies.php:86
2971
  msgid "US Dollars (&#36;)"
2972
  msgstr "Amerikanske dollar (&#36;)"
2973
 
2974
  # @ pmpro
2975
- #: includes/currencies.php:19 includes/currencies.php:89
2976
  msgid "Euros (&euro;)"
2977
  msgstr "Euro (&euro;)"
2978
 
2979
  # @ pmpro
2980
- #: includes/currencies.php:24 includes/currencies.php:88
2981
  msgid "Pounds Sterling (&pound;)"
2982
  msgstr "Britiske pund (&pound;)"
2983
 
@@ -2995,7 +3017,7 @@ msgid "Brazilian Real (R&#36;)"
2995
  msgstr "Brasilianske Real (R&#36;)"
2996
 
2997
  # @ pmpro
2998
- #: includes/currencies.php:35 includes/currencies.php:87
2999
  msgid "Canadian Dollars (&#36;)"
3000
  msgstr "Kanadiske dollar (&#36;)"
3001
 
@@ -3054,67 +3076,71 @@ msgstr "Malaysiske Ringgits"
3054
  msgid "Mexican Peso (&#36;)"
3055
  msgstr "Meksikanske Peso ($#36;)"
3056
 
3057
- # @ pmpro
3058
  #: includes/currencies.php:58
 
 
 
 
 
3059
  msgid "New Zealand Dollar (&#36;)"
3060
  msgstr "New Zealandske Dollar ($#36;)"
3061
 
3062
  # @ pmpro
3063
- #: includes/currencies.php:59
3064
  msgid "Norwegian Krone"
3065
  msgstr "Norske kroner (NOK)"
3066
 
3067
  # @ pmpro
3068
- #: includes/currencies.php:60
3069
  msgid "Philippine Pesos"
3070
  msgstr "Filippinske Pesos"
3071
 
3072
  # @ pmpro
3073
- #: includes/currencies.php:61
3074
  msgid "Polish Zloty"
3075
  msgstr "Polske Zloty"
3076
 
3077
  # @ pmpro
3078
- #: includes/currencies.php:63
3079
  msgid "Singapore Dollar (&#36;)"
3080
  msgstr "Singaporske Dollar ($#36;)"
3081
 
3082
- #: includes/currencies.php:68
3083
  msgid "South African Rand (R)"
3084
  msgstr "Sørafrikanske Rand(R)"
3085
 
3086
  # @ pmpro
3087
- #: includes/currencies.php:72
3088
  msgid "South Korean Won"
3089
  msgstr "Sør-Koreanske Won"
3090
 
3091
  # @ pmpro
3092
- #: includes/currencies.php:73
3093
  msgid "Swedish Krona"
3094
  msgstr "Svenske kroner (SEK)"
3095
 
3096
  # @ pmpro
3097
- #: includes/currencies.php:74
3098
  msgid "Swiss Franc"
3099
  msgstr "Sveitsiske Franc"
3100
 
3101
  # @ pmpro
3102
- #: includes/currencies.php:75
3103
  msgid "Taiwan New Dollars"
3104
  msgstr "Taiwanesiske New Dollars"
3105
 
3106
  # @ pmpro
3107
- #: includes/currencies.php:76
3108
  msgid "Thai Baht"
3109
  msgstr "Thai Baht"
3110
 
3111
  # @ pmpro
3112
- #: includes/currencies.php:77
3113
  msgid "Turkish Lira"
3114
  msgstr "Trykiske Lire"
3115
 
3116
  # @ pmpro
3117
- #: includes/currencies.php:78
3118
  msgid "Vietnamese Dong"
3119
  msgstr "Vietnamesiske Dong"
3120
 
@@ -3285,17 +3311,17 @@ msgid "This discount code is okay."
3285
  msgstr "Denne rabattkoden er korrekt."
3286
 
3287
  # @ pmpro
3288
- #: includes/functions.php:1395
3289
  msgid "and"
3290
  msgstr "og"
3291
 
3292
  # @ pmpro
3293
- #: includes/functions.php:1620
3294
  msgid "Sign Up for !!name!! Now"
3295
  msgstr "Registrer deg for !!name!! i dag"
3296
 
3297
  # @ pmpro
3298
- #: includes/functions.php:1626
3299
  msgid "Please specify a level id."
3300
  msgstr "Oppgi id for nivået"
3301
 
@@ -3450,7 +3476,19 @@ msgstr ""
3450
  "Denne operasjonen kommer ikke til å endre abonnementet på "
3451
  "betalingsformidlings"
3452
 
3453
- #: includes/upgradecheck.php:442
 
 
 
 
 
 
 
 
 
 
 
 
3454
  #, php-format
3455
  msgid ""
3456
  "This content is for !!levels!! members only.<br /><a href=\"%s\">Register</a>"
@@ -3458,7 +3496,7 @@ msgstr ""
3458
  "Dette innholdet er reservert for særskilte medlemmer (!!level!!)<br /><a "
3459
  "href=\"%s\">Registrer deg!</a>"
3460
 
3461
- #: includes/upgradecheck.php:445
3462
  #, php-format
3463
  msgid ""
3464
  "This content is for !!levels!! members only.<br /><a href=\"%s\">Log In</a> "
@@ -3467,7 +3505,7 @@ msgstr ""
3467
  "Dette innholdet er reservert for særskilte medlemmer (!!level!!)<br /><a "
3468
  "href=\"%s\">Logg deg på</a> eller <a href=\"%s\">Register deg</a>"
3469
 
3470
- #: includes/upgradecheck.php:449
3471
  msgid ""
3472
  "This content is for !!levels!! members only. Visit the site and log in/"
3473
  "register to read."
@@ -3905,15 +3943,15 @@ msgid "&larr; Return to Home"
3905
  msgstr "&larr; Til hjemmesiden"
3906
 
3907
  # @ pmpro
3908
- #: paid-memberships-pro.php:124
3909
  msgid "Testing Only"
3910
  msgstr "Kun for test"
3911
 
3912
- #: paid-memberships-pro.php:129
3913
  msgid "PayPal Payflow Pro/PayPal Pro"
3914
  msgstr "PayPal Payflow Pro/PayPal Pro"
3915
 
3916
- #: paid-memberships-pro.php:134
3917
  msgid "Cybersource"
3918
  msgstr "Cybersource"
3919
 
@@ -4189,6 +4227,18 @@ msgstr "Se alle fakturaer"
4189
  msgid "Member Links"
4190
  msgstr "Lenker for medlemmer"
4191
 
 
 
 
 
 
 
 
 
 
 
 
 
4192
  # @ pmpro
4193
  #~ msgid "Enabled"
4194
  #~ msgstr "Aktiv"
2
  msgstr ""
3
  "Project-Id-Version: Paid Memberships Pro v1.8.6.8.1\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2016-01-23 09:56-0500\n"
6
+ "PO-Revision-Date: 2016-01-23 15:18-0500\n"
7
  "Last-Translator: Thomas Sjolshagen <thomas@eighty20results.com>\n"
8
  "Language-Team: \n"
9
  "Language: nb_NO\n"
28
  #: adminpages/memberslist.php:5 adminpages/orders-csv.php:5
29
  #: adminpages/orders-print.php:12 adminpages/orders.php:5
30
  #: adminpages/pagesettings.php:4 adminpages/paymentsettings.php:5
31
+ #: adminpages/updates.php:5 includes/license.php:36
32
  msgid "You do not have permissions to perform this action."
33
  msgstr "Du har ikke rettigheter nok for denne aktiviteten."
34
 
35
  # @ pmpro
36
  #: adminpages/addons.php:64 adminpages/admin_header.php:170
37
+ #: includes/adminpages.php:53 includes/adminpages.php:151
38
  msgid "Add Ons"
39
+ msgstr "Utvidelser"
40
 
41
  #: adminpages/addons.php:71
42
  #, php-format
279
 
280
  # @ pmpro
281
  #: adminpages/admin_header.php:150 adminpages/membershiplevels.php:618
282
+ #: adminpages/pagesettings.php:70 includes/adminpages.php:69
283
+ #: includes/adminpages.php:70 includes/adminpages.php:116
284
  #: includes/metaboxes.php:131
285
  msgid "Membership Levels"
286
  msgstr "Medlemskapsnivå"
337
  "pålogget som bruker, eller ha registrert deg for å få tilgang."
338
 
339
  # @ pmpro
340
+ #: adminpages/advancedsettings.php:88 includes/adminpages.php:52
341
+ #: includes/adminpages.php:144
342
  msgid "Advanced Settings"
343
  msgstr "Avanserte innstillinger"
344
 
830
  msgstr "slett"
831
 
832
  # @ pmpro
833
+ #: adminpages/emailsettings.php:69 includes/adminpages.php:51
834
+ #: includes/adminpages.php:137
835
  msgid "Email Settings"
836
  msgstr "Innstillinger for e-post"
837
 
880
  msgstr "Kun behandle e-post for PMPro?"
881
 
882
  #: adminpages/emailsettings.php:98
883
+ #, php-format
884
+ msgid ""
885
+ "If unchecked, all emails from \"WordPress &lt;%s&gt;\" will be filtered to "
886
+ "use the above settings."
887
+ msgstr ""
888
+ "Dersom denne ikke er krysset av, vil alle mail fra “Wordpress &lt;%s&gt; bli "
889
+ "filtrert basert på innstillingene ovenfor."
890
 
891
  # @ pmpro
892
  #: adminpages/emailsettings.php:115
1230
  "abonnement vil bli avsluttet."
1231
 
1232
  # @ pmpro
1233
+ #: adminpages/memberslist.php:25 includes/adminpages.php:54
1234
+ #: includes/adminpages.php:158
1235
  msgid "Members List"
1236
  msgstr "Medlemsliste"
1237
 
1579
  msgstr "Send e-post"
1580
 
1581
  # @ pmpro
1582
+ #: adminpages/orders.php:677 includes/adminpages.php:56
1583
+ #: includes/adminpages.php:172
1584
  msgid "Orders"
1585
  msgstr "Bestillinger"
1586
 
1909
  msgstr ""
1910
  "Kun for USA. Dersom du oppgir verdier her vil statlige skatterrater bli "
1911
  "brukt for medlemmer som bestiller fra den valgte staten.<br />For områder "
1912
+ "utenfor USA, eller områder med mer komplekse skatteregler, bruk <a target="
1913
  "\"_blank\" href=\"http://www.paidmembershipspro.com/2013/10/non-us-taxes-"
1914
  "paid-memberships-pro/\">pmpro_tax filteret (Engelsk)</a>."
1915
 
2155
  msgid "Subtotal"
2156
  msgstr "Delsum"
2157
 
2158
+ #: adminpages/updates.php:11
2159
+ msgid "Updating Paid Memberships Pro"
2160
+ msgstr "Oppdaterer Paid Memberships Pro"
2161
+
2162
+ #: adminpages/updates.php:18
2163
+ msgid "Updates are processing. This may take a few minutes to complete."
2164
+ msgstr "Vi jobber med oppdateringen. Dette kan komme til å ta noen minutter."
2165
+
2166
+ #: adminpages/updates.php:23
2167
+ msgid "Update complete."
2168
+ msgstr "Oppdateringen er ferdig."
2169
+
2170
  # @ pmpro
2171
  #: classes/class.memberorder.php:697
2172
  #, php-format
2227
  msgid "Member Checkout for %s at %s"
2228
  msgstr "Nytt medlem for %s via %s"
2229
 
 
2230
  #: classes/class.pmproemail.php:375
2231
  #, php-format
2232
+ msgid "Your billing information has been updated at %s"
2233
+ msgstr ""
2234
+ "Faktura adressen og kreditt kort informasjonen din har blitt oppdatert på %s"
2235
 
 
2236
  #: classes/class.pmproemail.php:428
2237
  #, php-format
2238
+ msgid "Billing information has been updated for %s at %s"
2239
+ msgstr ""
2240
+ "Faktura adressen og kreditt kort informasjonen din har blitt oppdatert for "
2241
+ "%s på %s"
2242
 
2243
  # @ pmpro
2244
  #: classes/class.pmproemail.php:476
2366
  "problemet."
2367
 
2368
  #: classes/gateways/class.pmprogateway_authorizenet.php:39
2369
+ #: paid-memberships-pro.php:132
2370
  msgid "Authorize.net"
2371
  msgstr "Authorize.net"
2372
 
2404
  msgstr "Feil: Kunne ikke koble oss til Authorize.net"
2405
 
2406
  #: classes/gateways/class.pmprogateway_braintree.php:76
2407
+ #: paid-memberships-pro.php:133
2408
  msgid "Braintree Payments"
2409
  msgstr "Braintree Payments"
2410
 
2535
 
2536
  # @ pmpro
2537
  #: classes/gateways/class.pmprogateway_check.php:48
2538
+ #: paid-memberships-pro.php:126
2539
  msgid "Pay by Check"
2540
  msgstr "Betal med sjekk"
2541
 
2632
  "kontakt med eieren av denne websiden for å fikse problemet."
2633
 
2634
  #: classes/gateways/class.pmprogateway_paypal.php:57
2635
+ #: paid-memberships-pro.php:129
2636
  msgid "PayPal Website Payments Pro"
2637
  msgstr "PayPal Website Payments Pro"
2638
 
2742
  "blir belastet for dette videre."
2743
 
2744
  #: classes/gateways/class.pmprogateway_paypalexpress.php:73
2745
+ #: paid-memberships-pro.php:128
2746
  msgid "PayPal Express"
2747
  msgstr "PayPal Express"
2748
 
2760
  msgstr "PayPal tokenet var tapt."
2761
 
2762
  #: classes/gateways/class.pmprogateway_paypalstandard.php:60
2763
+ #: paid-memberships-pro.php:131
2764
  msgid "PayPal Standard"
2765
  msgstr "PayPal Standard"
2766
 
2782
  "aktiver den, eller be webhotell leverandøren din om å aktivere den."
2783
 
2784
  #: classes/gateways/class.pmprogateway_stripe.php:126
2785
+ #: paid-memberships-pro.php:127
2786
  msgid "Stripe"
2787
  msgstr "Stripe"
2788
 
2885
  msgstr "Fant ikke kunden"
2886
 
2887
  #: classes/gateways/class.pmprogateway_twocheckout.php:59
2888
+ #: paid-memberships-pro.php:134
2889
  msgid "2Checkout"
2890
  msgstr "2Checkout"
2891
 
2940
  msgstr "Betal med 2Checkout"
2941
 
2942
  # @ pmpro
2943
+ #: includes/adminpages.php:48
2944
  msgid "Memberships"
2945
  msgstr "Medlemskap"
2946
 
2947
  # @ pmpro
2948
+ #: includes/adminpages.php:49 includes/adminpages.php:123
2949
  msgid "Page Settings"
2950
  msgstr "Sideinnstillinger"
2951
 
2952
  # @ pmpro
2953
+ #: includes/adminpages.php:50 includes/adminpages.php:130
2954
  msgid "Payment Settings"
2955
  msgstr "Betalingsinnstillinger"
2956
 
2957
  # @ pmpro
2958
+ #: includes/adminpages.php:55 includes/adminpages.php:165
2959
  msgid "Reports"
2960
  msgstr "Rapporter"
2961
 
2962
  # @ pmpro
2963
+ #: includes/adminpages.php:57 includes/adminpages.php:179
2964
  msgid "Discount Codes"
2965
  msgstr "Rabattkoder"
2966
 
2967
+ #: includes/adminpages.php:61
2968
+ msgid "Updates Required"
2969
+ msgstr "Må oppdateres"
2970
+
2971
+ #: includes/adminpages.php:109
2972
  msgid "<span class=\"ab-icon\"></span>Memberships"
2973
  msgstr "<span class=\"ab-icon\"></span>Medlemsskap"
2974
 
2975
+ #: includes/adminpages.php:274
2976
  msgid "View PMPro Documentation"
2977
  msgstr "Til PMPro dokumentasjonen"
2978
 
2979
+ #: includes/adminpages.php:274
2980
  msgid "Docs"
2981
  msgstr "Documentasjon"
2982
 
2983
+ #: includes/adminpages.php:275
2984
  msgid "Visit Customer Support Forum"
2985
  msgstr "Besøk brukerstøtte forumet"
2986
 
2987
+ #: includes/adminpages.php:275
2988
  msgid "Support"
2989
  msgstr "Brukerstøtte"
2990
 
2991
  # @ pmpro
2992
+ #: includes/currencies.php:17 includes/currencies.php:87
2993
  msgid "US Dollars (&#36;)"
2994
  msgstr "Amerikanske dollar (&#36;)"
2995
 
2996
  # @ pmpro
2997
+ #: includes/currencies.php:19 includes/currencies.php:90
2998
  msgid "Euros (&euro;)"
2999
  msgstr "Euro (&euro;)"
3000
 
3001
  # @ pmpro
3002
+ #: includes/currencies.php:24 includes/currencies.php:89
3003
  msgid "Pounds Sterling (&pound;)"
3004
  msgstr "Britiske pund (&pound;)"
3005
 
3017
  msgstr "Brasilianske Real (R&#36;)"
3018
 
3019
  # @ pmpro
3020
+ #: includes/currencies.php:35 includes/currencies.php:88
3021
  msgid "Canadian Dollars (&#36;)"
3022
  msgstr "Kanadiske dollar (&#36;)"
3023
 
3076
  msgid "Mexican Peso (&#36;)"
3077
  msgstr "Meksikanske Peso ($#36;)"
3078
 
 
3079
  #: includes/currencies.php:58
3080
+ msgid "Nigerian Naira (&#8358;)"
3081
+ msgstr "Nigerianske Naira (%#8358)"
3082
+
3083
+ # @ pmpro
3084
+ #: includes/currencies.php:59
3085
  msgid "New Zealand Dollar (&#36;)"
3086
  msgstr "New Zealandske Dollar ($#36;)"
3087
 
3088
  # @ pmpro
3089
+ #: includes/currencies.php:60
3090
  msgid "Norwegian Krone"
3091
  msgstr "Norske kroner (NOK)"
3092
 
3093
  # @ pmpro
3094
+ #: includes/currencies.php:61
3095
  msgid "Philippine Pesos"
3096
  msgstr "Filippinske Pesos"
3097
 
3098
  # @ pmpro
3099
+ #: includes/currencies.php:62
3100
  msgid "Polish Zloty"
3101
  msgstr "Polske Zloty"
3102
 
3103
  # @ pmpro
3104
+ #: includes/currencies.php:64
3105
  msgid "Singapore Dollar (&#36;)"
3106
  msgstr "Singaporske Dollar ($#36;)"
3107
 
3108
+ #: includes/currencies.php:69
3109
  msgid "South African Rand (R)"
3110
  msgstr "Sørafrikanske Rand(R)"
3111
 
3112
  # @ pmpro
3113
+ #: includes/currencies.php:73
3114
  msgid "South Korean Won"
3115
  msgstr "Sør-Koreanske Won"
3116
 
3117
  # @ pmpro
3118
+ #: includes/currencies.php:74
3119
  msgid "Swedish Krona"
3120
  msgstr "Svenske kroner (SEK)"
3121
 
3122
  # @ pmpro
3123
+ #: includes/currencies.php:75
3124
  msgid "Swiss Franc"
3125
  msgstr "Sveitsiske Franc"
3126
 
3127
  # @ pmpro
3128
+ #: includes/currencies.php:76
3129
  msgid "Taiwan New Dollars"
3130
  msgstr "Taiwanesiske New Dollars"
3131
 
3132
  # @ pmpro
3133
+ #: includes/currencies.php:77
3134
  msgid "Thai Baht"
3135
  msgstr "Thai Baht"
3136
 
3137
  # @ pmpro
3138
+ #: includes/currencies.php:78
3139
  msgid "Turkish Lira"
3140
  msgstr "Trykiske Lire"
3141
 
3142
  # @ pmpro
3143
+ #: includes/currencies.php:79
3144
  msgid "Vietnamese Dong"
3145
  msgstr "Vietnamesiske Dong"
3146
 
3311
  msgstr "Denne rabattkoden er korrekt."
3312
 
3313
  # @ pmpro
3314
+ #: includes/functions.php:1397
3315
  msgid "and"
3316
  msgstr "og"
3317
 
3318
  # @ pmpro
3319
+ #: includes/functions.php:1624
3320
  msgid "Sign Up for !!name!! Now"
3321
  msgstr "Registrer deg for !!name!! i dag"
3322
 
3323
  # @ pmpro
3324
+ #: includes/functions.php:1630
3325
  msgid "Please specify a level id."
3326
  msgstr "Oppgi id for nivået"
3327
 
3476
  "Denne operasjonen kommer ikke til å endre abonnementet på "
3477
  "betalingsformidlings"
3478
 
3479
+ #: includes/updates.php:97
3480
+ msgid "Paid Memberships Pro Data Update Required"
3481
+ msgstr "Må oppdatere data for Paid Memberships Pro"
3482
+
3483
+ #: includes/updates.php:102
3484
+ msgid "Start the Update"
3485
+ msgstr "Start oppdateringen"
3486
+
3487
+ #: includes/updates.php:123
3488
+ msgid "All Paid Memberships Pro updates have finished."
3489
+ msgstr "Alle påkrevde oppdateringer for Paid Memberships Pro er ferdigstilte."
3490
+
3491
+ #: includes/upgradecheck.php:542
3492
  #, php-format
3493
  msgid ""
3494
  "This content is for !!levels!! members only.<br /><a href=\"%s\">Register</a>"
3496
  "Dette innholdet er reservert for særskilte medlemmer (!!level!!)<br /><a "
3497
  "href=\"%s\">Registrer deg!</a>"
3498
 
3499
+ #: includes/upgradecheck.php:545
3500
  #, php-format
3501
  msgid ""
3502
  "This content is for !!levels!! members only.<br /><a href=\"%s\">Log In</a> "
3505
  "Dette innholdet er reservert for særskilte medlemmer (!!level!!)<br /><a "
3506
  "href=\"%s\">Logg deg på</a> eller <a href=\"%s\">Register deg</a>"
3507
 
3508
+ #: includes/upgradecheck.php:549
3509
  msgid ""
3510
  "This content is for !!levels!! members only. Visit the site and log in/"
3511
  "register to read."
3943
  msgstr "&larr; Til hjemmesiden"
3944
 
3945
  # @ pmpro
3946
+ #: paid-memberships-pro.php:125
3947
  msgid "Testing Only"
3948
  msgstr "Kun for test"
3949
 
3950
+ #: paid-memberships-pro.php:130
3951
  msgid "PayPal Payflow Pro/PayPal Pro"
3952
  msgstr "PayPal Payflow Pro/PayPal Pro"
3953
 
3954
+ #: paid-memberships-pro.php:135
3955
  msgid "Cybersource"
3956
  msgstr "Cybersource"
3957
 
4227
  msgid "Member Links"
4228
  msgstr "Lenker for medlemmer"
4229
 
4230
+ #~ msgid "If unchecked, all emails from \"WordPress &lt;"
4231
+ #~ msgstr ""
4232
+ #~ "Dersom denne ikke er krysset av sendes alle email fra “WordPress &lt;"
4233
+
4234
+ # @ pmpro
4235
+ #~ msgid "Your billing information has been udpated at %s"
4236
+ #~ msgstr "Faktureringsinformasjonen har blitt oppdatert på %s"
4237
+
4238
+ # @ pmpro
4239
+ #~ msgid "Billing information has been udpated for %s at %s"
4240
+ #~ msgstr "Faktureringsinformasjonen har blitt oppdatert for %s den %s"
4241
+
4242
  # @ pmpro
4243
  #~ msgid "Enabled"
4244
  #~ msgstr "Aktiv"
languages/pmpro.po CHANGED
@@ -5,7 +5,7 @@
5
  msgid ""
6
  msgstr ""
7
  "Project-Id-Version: pmpro\n"
8
- "POT-Creation-Date: 2016-01-20 11:58-0500\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"
@@ -1112,8 +1112,11 @@ msgstr ""
1112
  msgid "Only Filter PMPro Emails?"
1113
  msgstr ""
1114
 
1115
- #: adminpages/emailsettings.php:98 adminpages/emailsettings.php:98
1116
- msgid "If unchecked, all emails from \"WordPress &lt;"
 
 
 
1117
  msgstr ""
1118
 
1119
  #: adminpages/emailsettings.php:115 adminpages/emailsettings.php:86
@@ -2353,8 +2356,9 @@ msgstr ""
2353
  msgid "Payment Gateway"
2354
  msgstr ""
2355
 
2356
- #: adminpages/paymentsettings.php:93 adminpages/paymentsettings.php:93
2357
- #: adminpages/paymentsettings.php:144 adminpages/paymentsettings.php:146
 
2358
  msgid "SSL Settings"
2359
  msgstr ""
2360
 
@@ -2368,6 +2372,14 @@ msgid ""
2368
  "support/initial-plugin-setup/payment-gateway/\">Payment Gateway Settings</a>."
2369
  msgstr ""
2370
 
 
 
 
 
 
 
 
 
2371
  #: adminpages/paymentsettings.php:153 adminpages/paymentsettings.php:153
2372
  #: adminpages/paymentsettings.php:327 adminpages/paymentsettings.php:337
2373
  #: adminpages/paymentsettings.php:356 adminpages/paymentsettings.php:381
@@ -2414,6 +2426,10 @@ msgstr ""
2414
  msgid "abbreviation, e.g. \"PA\""
2415
  msgstr ""
2416
 
 
 
 
 
2417
  #: adminpages/paymentsettings.php:194 adminpages/paymentsettings.php:194
2418
  #: adminpages/paymentsettings.php:404 adminpages/paymentsettings.php:444
2419
  #: adminpages/paymentsettings.php:449 adminpages/paymentsettings.php:451
@@ -2441,12 +2457,26 @@ msgstr ""
2441
  msgid "Yes (with JavaScript redirects)"
2442
  msgstr ""
2443
 
 
 
 
 
 
 
2444
  #: adminpages/paymentsettings.php:219 adminpages/paymentsettings.php:219
2445
  #: adminpages/paymentsettings.php:430 adminpages/paymentsettings.php:463
2446
  #: adminpages/paymentsettings.php:468 adminpages/paymentsettings.php:470
2447
  msgid "SSL Seal Code"
2448
  msgstr ""
2449
 
 
 
 
 
 
 
 
 
2450
  #: adminpages/paymentsettings.php:228 adminpages/paymentsettings.php:228
2451
  msgid "Extra HTTPS URL Filter"
2452
  msgstr ""
@@ -2826,12 +2856,12 @@ msgstr ""
2826
  msgid "Member Checkout for %s at %s"
2827
  msgstr ""
2828
 
2829
- #: classes/class.pmproemail.php:375
2830
  #, php-format
2831
  msgid "Your billing information has been updated at %s"
2832
  msgstr ""
2833
 
2834
- #: classes/class.pmproemail.php:428
2835
  #, php-format
2836
  msgid "Billing information has been updated for %s at %s"
2837
  msgstr ""
@@ -4808,7 +4838,7 @@ msgstr ""
4808
  msgid "All Paid Memberships Pro updates have finished."
4809
  msgstr ""
4810
 
4811
- #: includes/upgradecheck.php:542 includes/upgradecheck.php:401
4812
  #: includes/upgradecheck.php:410 includes/upgradecheck.php:422
4813
  #: includes/upgradecheck.php:442 includes/upgradecheck.php:542
4814
  #, php-format
@@ -4816,7 +4846,7 @@ msgid ""
4816
  "This content is for !!levels!! members only.<br /><a href=\"%s\">Register</a>"
4817
  msgstr ""
4818
 
4819
- #: includes/upgradecheck.php:545 includes/upgradecheck.php:404
4820
  #: includes/upgradecheck.php:413 includes/upgradecheck.php:425
4821
  #: includes/upgradecheck.php:445 includes/upgradecheck.php:545
4822
  #, php-format
@@ -4825,7 +4855,7 @@ msgid ""
4825
  "<a href=\"%s\">Register</a>"
4826
  msgstr ""
4827
 
4828
- #: includes/upgradecheck.php:549 includes/upgradecheck.php:408
4829
  #: includes/upgradecheck.php:417 includes/upgradecheck.php:429
4830
  #: includes/upgradecheck.php:449 includes/upgradecheck.php:549
4831
  msgid ""
@@ -5305,6 +5335,10 @@ msgstr ""
5305
  msgid "Cybersource"
5306
  msgstr ""
5307
 
 
 
 
 
5308
  #: preheaders/account.php:10 preheaders/levels.php:22 preheaders/account.php:7
5309
  #: preheaders/account.php:9 preheaders/account.php:10 preheaders/levels.php:19
5310
  #: preheaders/levels.php:21 preheaders/levels.php:22
@@ -5670,6 +5704,10 @@ msgid ""
5670
  "be cancelled when the membership expires."
5671
  msgstr ""
5672
 
 
 
 
 
5673
  #: adminpages/membershiplevels.php:364
5674
  msgid ""
5675
  "Stripe integration currently only supports billing periods of \"Month\" or "
5
  msgid ""
6
  msgstr ""
7
  "Project-Id-Version: pmpro\n"
8
+ "POT-Creation-Date: 2016-01-28 11:25-0500\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"
1112
  msgid "Only Filter PMPro Emails?"
1113
  msgstr ""
1114
 
1115
+ #: adminpages/emailsettings.php:98
1116
+ #, php-format
1117
+ msgid ""
1118
+ "If unchecked, all emails from \"WordPress &lt;%s&gt;\" will be filtered to "
1119
+ "use the above settings."
1120
  msgstr ""
1121
 
1122
  #: adminpages/emailsettings.php:115 adminpages/emailsettings.php:86
2356
  msgid "Payment Gateway"
2357
  msgstr ""
2358
 
2359
+ #: adminpages/paymentsettings.php:93 adminpages/paymentsettings.php:201
2360
+ #: adminpages/paymentsettings.php:93 adminpages/paymentsettings.php:144
2361
+ #: adminpages/paymentsettings.php:146
2362
  msgid "SSL Settings"
2363
  msgstr ""
2364
 
2372
  "support/initial-plugin-setup/payment-gateway/\">Payment Gateway Settings</a>."
2373
  msgstr ""
2374
 
2375
+ #: adminpages/paymentsettings.php:101
2376
+ msgid "Choose a Gateway"
2377
+ msgstr ""
2378
+
2379
+ #: adminpages/paymentsettings.php:148
2380
+ msgid "Currency and Tax Settings"
2381
+ msgstr ""
2382
+
2383
  #: adminpages/paymentsettings.php:153 adminpages/paymentsettings.php:153
2384
  #: adminpages/paymentsettings.php:327 adminpages/paymentsettings.php:337
2385
  #: adminpages/paymentsettings.php:356 adminpages/paymentsettings.php:381
2426
  msgid "abbreviation, e.g. \"PA\""
2427
  msgstr ""
2428
 
2429
+ #: adminpages/paymentsettings.php:193
2430
+ msgid "Tax Rate"
2431
+ msgstr ""
2432
+
2433
  #: adminpages/paymentsettings.php:194 adminpages/paymentsettings.php:194
2434
  #: adminpages/paymentsettings.php:404 adminpages/paymentsettings.php:444
2435
  #: adminpages/paymentsettings.php:449 adminpages/paymentsettings.php:451
2457
  msgid "Yes (with JavaScript redirects)"
2458
  msgstr ""
2459
 
2460
+ #: adminpages/paymentsettings.php:214
2461
+ msgid ""
2462
+ "Recommended: Yes. Try the JavaScript redirects setting if you are having "
2463
+ "issues with infinite redirect loops."
2464
+ msgstr ""
2465
+
2466
  #: adminpages/paymentsettings.php:219 adminpages/paymentsettings.php:219
2467
  #: adminpages/paymentsettings.php:430 adminpages/paymentsettings.php:463
2468
  #: adminpages/paymentsettings.php:468 adminpages/paymentsettings.php:470
2469
  msgid "SSL Seal Code"
2470
  msgstr ""
2471
 
2472
+ #: adminpages/paymentsettings.php:223
2473
+ msgid ""
2474
+ "Your <strong><a target=\"_blank\" href=\"http://www.paidmembershipspro.com/"
2475
+ "documentation/initial-plugin-setup/ssl/\">SSL Certificate</a></strong> must "
2476
+ "be installed by your web host. Your <strong>SSL Seal</strong> will be a "
2477
+ "short HTML or JavaScript snippet that can be pasted here."
2478
+ msgstr ""
2479
+
2480
  #: adminpages/paymentsettings.php:228 adminpages/paymentsettings.php:228
2481
  msgid "Extra HTTPS URL Filter"
2482
  msgstr ""
2856
  msgid "Member Checkout for %s at %s"
2857
  msgstr ""
2858
 
2859
+ #: classes/class.pmproemail.php:375 classes/class.pmproemail.php:375
2860
  #, php-format
2861
  msgid "Your billing information has been updated at %s"
2862
  msgstr ""
2863
 
2864
+ #: classes/class.pmproemail.php:428 classes/class.pmproemail.php:428
2865
  #, php-format
2866
  msgid "Billing information has been updated for %s at %s"
2867
  msgstr ""
4838
  msgid "All Paid Memberships Pro updates have finished."
4839
  msgstr ""
4840
 
4841
+ #: includes/upgradecheck.php:563 includes/upgradecheck.php:401
4842
  #: includes/upgradecheck.php:410 includes/upgradecheck.php:422
4843
  #: includes/upgradecheck.php:442 includes/upgradecheck.php:542
4844
  #, php-format
4846
  "This content is for !!levels!! members only.<br /><a href=\"%s\">Register</a>"
4847
  msgstr ""
4848
 
4849
+ #: includes/upgradecheck.php:566 includes/upgradecheck.php:404
4850
  #: includes/upgradecheck.php:413 includes/upgradecheck.php:425
4851
  #: includes/upgradecheck.php:445 includes/upgradecheck.php:545
4852
  #, php-format
4855
  "<a href=\"%s\">Register</a>"
4856
  msgstr ""
4857
 
4858
+ #: includes/upgradecheck.php:570 includes/upgradecheck.php:408
4859
  #: includes/upgradecheck.php:417 includes/upgradecheck.php:429
4860
  #: includes/upgradecheck.php:449 includes/upgradecheck.php:549
4861
  msgid ""
5335
  msgid "Cybersource"
5336
  msgstr ""
5337
 
5338
+ #: paid-memberships-pro.php:156
5339
+ msgid "Once a month"
5340
+ msgstr ""
5341
+
5342
  #: preheaders/account.php:10 preheaders/levels.php:22 preheaders/account.php:7
5343
  #: preheaders/account.php:9 preheaders/account.php:10 preheaders/levels.php:19
5344
  #: preheaders/levels.php:21 preheaders/levels.php:22
5704
  "be cancelled when the membership expires."
5705
  msgstr ""
5706
 
5707
+ #: adminpages/emailsettings.php:98
5708
+ msgid "If unchecked, all emails from \"WordPress &lt;"
5709
+ msgstr ""
5710
+
5711
  #: adminpages/membershiplevels.php:364
5712
  msgid ""
5713
  "Stripe integration currently only supports billing periods of \"Month\" or "
languages/pmpro.pot CHANGED
@@ -5,7 +5,7 @@
5
  msgid ""
6
  msgstr ""
7
  "Project-Id-Version: pmpro\n"
8
- "POT-Creation-Date: 2016-01-20 11:58-0500\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"
@@ -1112,8 +1112,11 @@ msgstr ""
1112
  msgid "Only Filter PMPro Emails?"
1113
  msgstr ""
1114
 
1115
- #: adminpages/emailsettings.php:98 adminpages/emailsettings.php:98
1116
- msgid "If unchecked, all emails from \"WordPress &lt;"
 
 
 
1117
  msgstr ""
1118
 
1119
  #: adminpages/emailsettings.php:115 adminpages/emailsettings.php:86
@@ -2353,8 +2356,9 @@ msgstr ""
2353
  msgid "Payment Gateway"
2354
  msgstr ""
2355
 
2356
- #: adminpages/paymentsettings.php:93 adminpages/paymentsettings.php:93
2357
- #: adminpages/paymentsettings.php:144 adminpages/paymentsettings.php:146
 
2358
  msgid "SSL Settings"
2359
  msgstr ""
2360
 
@@ -2368,6 +2372,14 @@ msgid ""
2368
  "support/initial-plugin-setup/payment-gateway/\">Payment Gateway Settings</a>."
2369
  msgstr ""
2370
 
 
 
 
 
 
 
 
 
2371
  #: adminpages/paymentsettings.php:153 adminpages/paymentsettings.php:153
2372
  #: adminpages/paymentsettings.php:327 adminpages/paymentsettings.php:337
2373
  #: adminpages/paymentsettings.php:356 adminpages/paymentsettings.php:381
@@ -2414,6 +2426,10 @@ msgstr ""
2414
  msgid "abbreviation, e.g. \"PA\""
2415
  msgstr ""
2416
 
 
 
 
 
2417
  #: adminpages/paymentsettings.php:194 adminpages/paymentsettings.php:194
2418
  #: adminpages/paymentsettings.php:404 adminpages/paymentsettings.php:444
2419
  #: adminpages/paymentsettings.php:449 adminpages/paymentsettings.php:451
@@ -2441,12 +2457,26 @@ msgstr ""
2441
  msgid "Yes (with JavaScript redirects)"
2442
  msgstr ""
2443
 
 
 
 
 
 
 
2444
  #: adminpages/paymentsettings.php:219 adminpages/paymentsettings.php:219
2445
  #: adminpages/paymentsettings.php:430 adminpages/paymentsettings.php:463
2446
  #: adminpages/paymentsettings.php:468 adminpages/paymentsettings.php:470
2447
  msgid "SSL Seal Code"
2448
  msgstr ""
2449
 
 
 
 
 
 
 
 
 
2450
  #: adminpages/paymentsettings.php:228 adminpages/paymentsettings.php:228
2451
  msgid "Extra HTTPS URL Filter"
2452
  msgstr ""
@@ -2826,12 +2856,12 @@ msgstr ""
2826
  msgid "Member Checkout for %s at %s"
2827
  msgstr ""
2828
 
2829
- #: classes/class.pmproemail.php:375
2830
  #, php-format
2831
  msgid "Your billing information has been updated at %s"
2832
  msgstr ""
2833
 
2834
- #: classes/class.pmproemail.php:428
2835
  #, php-format
2836
  msgid "Billing information has been updated for %s at %s"
2837
  msgstr ""
@@ -4808,7 +4838,7 @@ msgstr ""
4808
  msgid "All Paid Memberships Pro updates have finished."
4809
  msgstr ""
4810
 
4811
- #: includes/upgradecheck.php:542 includes/upgradecheck.php:401
4812
  #: includes/upgradecheck.php:410 includes/upgradecheck.php:422
4813
  #: includes/upgradecheck.php:442 includes/upgradecheck.php:542
4814
  #, php-format
@@ -4816,7 +4846,7 @@ msgid ""
4816
  "This content is for !!levels!! members only.<br /><a href=\"%s\">Register</a>"
4817
  msgstr ""
4818
 
4819
- #: includes/upgradecheck.php:545 includes/upgradecheck.php:404
4820
  #: includes/upgradecheck.php:413 includes/upgradecheck.php:425
4821
  #: includes/upgradecheck.php:445 includes/upgradecheck.php:545
4822
  #, php-format
@@ -4825,7 +4855,7 @@ msgid ""
4825
  "<a href=\"%s\">Register</a>"
4826
  msgstr ""
4827
 
4828
- #: includes/upgradecheck.php:549 includes/upgradecheck.php:408
4829
  #: includes/upgradecheck.php:417 includes/upgradecheck.php:429
4830
  #: includes/upgradecheck.php:449 includes/upgradecheck.php:549
4831
  msgid ""
@@ -5305,6 +5335,10 @@ msgstr ""
5305
  msgid "Cybersource"
5306
  msgstr ""
5307
 
 
 
 
 
5308
  #: preheaders/account.php:10 preheaders/levels.php:22 preheaders/account.php:7
5309
  #: preheaders/account.php:9 preheaders/account.php:10 preheaders/levels.php:19
5310
  #: preheaders/levels.php:21 preheaders/levels.php:22
@@ -5670,6 +5704,10 @@ msgid ""
5670
  "be cancelled when the membership expires."
5671
  msgstr ""
5672
 
 
 
 
 
5673
  #: adminpages/membershiplevels.php:364
5674
  msgid ""
5675
  "Stripe integration currently only supports billing periods of \"Month\" or "
5
  msgid ""
6
  msgstr ""
7
  "Project-Id-Version: pmpro\n"
8
+ "POT-Creation-Date: 2016-01-28 11:25-0500\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"
1112
  msgid "Only Filter PMPro Emails?"
1113
  msgstr ""
1114
 
1115
+ #: adminpages/emailsettings.php:98
1116
+ #, php-format
1117
+ msgid ""
1118
+ "If unchecked, all emails from \"WordPress &lt;%s&gt;\" will be filtered to "
1119
+ "use the above settings."
1120
  msgstr ""
1121
 
1122
  #: adminpages/emailsettings.php:115 adminpages/emailsettings.php:86
2356
  msgid "Payment Gateway"
2357
  msgstr ""
2358
 
2359
+ #: adminpages/paymentsettings.php:93 adminpages/paymentsettings.php:201
2360
+ #: adminpages/paymentsettings.php:93 adminpages/paymentsettings.php:144
2361
+ #: adminpages/paymentsettings.php:146
2362
  msgid "SSL Settings"
2363
  msgstr ""
2364
 
2372
  "support/initial-plugin-setup/payment-gateway/\">Payment Gateway Settings</a>."
2373
  msgstr ""
2374
 
2375
+ #: adminpages/paymentsettings.php:101
2376
+ msgid "Choose a Gateway"
2377
+ msgstr ""
2378
+
2379
+ #: adminpages/paymentsettings.php:148
2380
+ msgid "Currency and Tax Settings"
2381
+ msgstr ""
2382
+
2383
  #: adminpages/paymentsettings.php:153 adminpages/paymentsettings.php:153
2384
  #: adminpages/paymentsettings.php:327 adminpages/paymentsettings.php:337
2385
  #: adminpages/paymentsettings.php:356 adminpages/paymentsettings.php:381
2426
  msgid "abbreviation, e.g. \"PA\""
2427
  msgstr ""
2428
 
2429
+ #: adminpages/paymentsettings.php:193
2430
+ msgid "Tax Rate"
2431
+ msgstr ""
2432
+
2433
  #: adminpages/paymentsettings.php:194 adminpages/paymentsettings.php:194
2434
  #: adminpages/paymentsettings.php:404 adminpages/paymentsettings.php:444
2435
  #: adminpages/paymentsettings.php:449 adminpages/paymentsettings.php:451
2457
  msgid "Yes (with JavaScript redirects)"
2458
  msgstr ""
2459
 
2460
+ #: adminpages/paymentsettings.php:214
2461
+ msgid ""
2462
+ "Recommended: Yes. Try the JavaScript redirects setting if you are having "
2463
+ "issues with infinite redirect loops."
2464
+ msgstr ""
2465
+
2466
  #: adminpages/paymentsettings.php:219 adminpages/paymentsettings.php:219
2467
  #: adminpages/paymentsettings.php:430 adminpages/paymentsettings.php:463
2468
  #: adminpages/paymentsettings.php:468 adminpages/paymentsettings.php:470
2469
  msgid "SSL Seal Code"
2470
  msgstr ""
2471
 
2472
+ #: adminpages/paymentsettings.php:223
2473
+ msgid ""
2474
+ "Your <strong><a target=\"_blank\" href=\"http://www.paidmembershipspro.com/"
2475
+ "documentation/initial-plugin-setup/ssl/\">SSL Certificate</a></strong> must "
2476
+ "be installed by your web host. Your <strong>SSL Seal</strong> will be a "
2477
+ "short HTML or JavaScript snippet that can be pasted here."
2478
+ msgstr ""
2479
+
2480
  #: adminpages/paymentsettings.php:228 adminpages/paymentsettings.php:228
2481
  msgid "Extra HTTPS URL Filter"
2482
  msgstr ""
2856
  msgid "Member Checkout for %s at %s"
2857
  msgstr ""
2858
 
2859
+ #: classes/class.pmproemail.php:375 classes/class.pmproemail.php:375
2860
  #, php-format
2861
  msgid "Your billing information has been updated at %s"
2862
  msgstr ""
2863
 
2864
+ #: classes/class.pmproemail.php:428 classes/class.pmproemail.php:428
2865
  #, php-format
2866
  msgid "Billing information has been updated for %s at %s"
2867
  msgstr ""
4838
  msgid "All Paid Memberships Pro updates have finished."
4839
  msgstr ""
4840
 
4841
+ #: includes/upgradecheck.php:563 includes/upgradecheck.php:401
4842
  #: includes/upgradecheck.php:410 includes/upgradecheck.php:422
4843
  #: includes/upgradecheck.php:442 includes/upgradecheck.php:542
4844
  #, php-format
4846
  "This content is for !!levels!! members only.<br /><a href=\"%s\">Register</a>"
4847
  msgstr ""
4848
 
4849
+ #: includes/upgradecheck.php:566 includes/upgradecheck.php:404
4850
  #: includes/upgradecheck.php:413 includes/upgradecheck.php:425
4851
  #: includes/upgradecheck.php:445 includes/upgradecheck.php:545
4852
  #, php-format
4855
  "<a href=\"%s\">Register</a>"
4856
  msgstr ""
4857
 
4858
+ #: includes/upgradecheck.php:570 includes/upgradecheck.php:408
4859
  #: includes/upgradecheck.php:417 includes/upgradecheck.php:429
4860
  #: includes/upgradecheck.php:449 includes/upgradecheck.php:549
4861
  msgid ""
5335
  msgid "Cybersource"
5336
  msgstr ""
5337
 
5338
+ #: paid-memberships-pro.php:156
5339
+ msgid "Once a month"
5340
+ msgstr ""
5341
+
5342
  #: preheaders/account.php:10 preheaders/levels.php:22 preheaders/account.php:7
5343
  #: preheaders/account.php:9 preheaders/account.php:10 preheaders/levels.php:19
5344
  #: preheaders/levels.php:21 preheaders/levels.php:22
5704
  "be cancelled when the membership expires."
5705
  msgstr ""
5706
 
5707
+ #: adminpages/emailsettings.php:98
5708
+ msgid "If unchecked, all emails from \"WordPress &lt;"
5709
+ msgstr ""
5710
+
5711
  #: adminpages/membershiplevels.php:364
5712
  msgid ""
5713
  "Stripe integration currently only supports billing periods of \"Month\" or "
pages/cancel.php CHANGED
@@ -62,7 +62,7 @@
62
  <td class="pmpro_cancel-membership-expiration">
63
  <?php
64
  if($current_user->membership_level->enddate)
65
- echo date(get_option('date_format'), $current_user->membership_level->enddate);
66
  else
67
  echo "---";
68
  ?>
62
  <td class="pmpro_cancel-membership-expiration">
63
  <?php
64
  if($current_user->membership_level->enddate)
65
+ echo date_i18n(get_option('date_format'), $current_user->membership_level->enddate);
66
  else
67
  echo "---";
68
  ?>
pages/confirmation.php CHANGED
@@ -46,7 +46,7 @@
46
  <li><strong><?php _e('Account', 'pmpro');?>:</strong> <?php echo $current_user->display_name?> (<?php echo $current_user->user_email?>)</li>
47
  <li><strong><?php _e('Membership Level', 'pmpro');?>:</strong> <?php echo $current_user->membership_level->name?></li>
48
  <?php if($current_user->membership_level->enddate) { ?>
49
- <li><strong><?php _e('Membership Expires', 'pmpro');?>:</strong> <?php echo date(get_option('date_format'), $current_user->membership_level->enddate)?></li>
50
  <?php } ?>
51
  <?php if($pmpro_invoice->getDiscountCode()) { ?>
52
  <li><strong><?php _e('Discount Code', 'pmpro');?>:</strong> <?php echo $pmpro_invoice->discount_code->code?></li>
46
  <li><strong><?php _e('Account', 'pmpro');?>:</strong> <?php echo $current_user->display_name?> (<?php echo $current_user->user_email?>)</li>
47
  <li><strong><?php _e('Membership Level', 'pmpro');?>:</strong> <?php echo $current_user->membership_level->name?></li>
48
  <?php if($current_user->membership_level->enddate) { ?>
49
+ <li><strong><?php _e('Membership Expires', 'pmpro');?>:</strong> <?php echo date_i18n(get_option('date_format'), $current_user->membership_level->enddate)?></li>
50
  <?php } ?>
51
  <?php if($pmpro_invoice->getDiscountCode()) { ?>
52
  <li><strong><?php _e('Discount Code', 'pmpro');?>:</strong> <?php echo $pmpro_invoice->discount_code->code?></li>
pages/invoice.php CHANGED
@@ -27,7 +27,7 @@
27
  <li><strong><?php _e('Account', 'pmpro');?>:</strong> <?php echo $pmpro_invoice->user->display_name?> (<?php echo $pmpro_invoice->user->user_email?>)</li>
28
  <li><strong><?php _e('Membership Level', 'pmpro');?>:</strong> <?php echo $current_user->membership_level->name?></li>
29
  <?php if($current_user->membership_level->enddate) { ?>
30
- <li><strong><?php _e('Membership Expires', 'pmpro');?>:</strong> <?php echo date(get_option('date_format'), $current_user->membership_level->enddate)?></li>
31
  <?php } ?>
32
  <?php if($pmpro_invoice->getDiscountCode()) { ?>
33
  <li><strong><?php _e('Discount Code', 'pmpro');?>:</strong> <?php echo $pmpro_invoice->discount_code->code?></li>
@@ -116,7 +116,7 @@
116
  {
117
  ?>
118
  <tr>
119
- <td><a href="<?php echo pmpro_url("invoice", "?invoice=" . $invoice->code)?>"><?php echo date(get_option("date_format"), $invoice->timestamp)?></a></td>
120
  <td><a href="<?php echo pmpro_url("invoice", "?invoice=" . $invoice->code)?>"><?php echo $invoice->code; ?></a></td>
121
  <td><?php echo $invoice->membership_level_name;?></td>
122
  <td><?php echo pmpro_formatPrice($invoice->total);?></td>
27
  <li><strong><?php _e('Account', 'pmpro');?>:</strong> <?php echo $pmpro_invoice->user->display_name?> (<?php echo $pmpro_invoice->user->user_email?>)</li>
28
  <li><strong><?php _e('Membership Level', 'pmpro');?>:</strong> <?php echo $current_user->membership_level->name?></li>
29
  <?php if($current_user->membership_level->enddate) { ?>
30
+ <li><strong><?php _e('Membership Expires', 'pmpro');?>:</strong> <?php echo date_i18n(get_option('date_format'), $current_user->membership_level->enddate)?></li>
31
  <?php } ?>
32
  <?php if($pmpro_invoice->getDiscountCode()) { ?>
33
  <li><strong><?php _e('Discount Code', 'pmpro');?>:</strong> <?php echo $pmpro_invoice->discount_code->code?></li>
116
  {
117
  ?>
118
  <tr>
119
+ <td><a href="<?php echo pmpro_url("invoice", "?invoice=" . $invoice->code)?>"><?php echo date_i18n(get_option("date_format"), $invoice->timestamp)?></a></td>
120
  <td><a href="<?php echo pmpro_url("invoice", "?invoice=" . $invoice->code)?>"><?php echo $invoice->code; ?></a></td>
121
  <td><?php echo $invoice->membership_level_name;?></td>
122
  <td><?php echo pmpro_formatPrice($invoice->total);?></td>
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.8.7.1
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.8.7.1");
17
  define("PMPRO_USER_AGENT", "Paid Memberships Pro v" . PMPRO_VERSION . "; " . site_url());
18
 
19
  //if the session has been started yet, start it (ignore if running from command line)
@@ -149,13 +149,22 @@ $membership_levels = $wpdb->get_results( "SELECT * FROM {$wpdb->pmpro_membership
149
  /*
150
  Activation/Deactivation
151
  */
152
- function pmpro_activation()
153
- {
154
- //schedule crons
155
- wp_schedule_event(current_time('timestamp'), 'daily', 'pmpro_cron_expire_memberships');
156
- wp_schedule_event(current_time('timestamp')+1, 'daily', 'pmpro_cron_expiration_warnings');
157
- //wp_schedule_event(current_time('timestamp')(), 'daily', 'pmpro_cron_trial_ending_warnings'); //this warning has been deprecated since 1.7.2
158
- wp_schedule_event(current_time('timestamp'), 'monthly', 'pmpro_cron_credit_card_expiring_warnings');
 
 
 
 
 
 
 
 
 
159
 
160
  //add caps to admin role
161
  $role = get_role( 'administrator' );
@@ -177,8 +186,9 @@ function pmpro_activation()
177
 
178
  do_action('pmpro_activation');
179
  }
180
- function pmpro_deactivation()
181
- {
 
182
  //remove crons
183
  wp_clear_scheduled_hook('pmpro_cron_expiration_warnings');
184
  wp_clear_scheduled_hook('pmpro_cron_trial_ending_warnings');
3
  Plugin Name: Paid Memberships Pro
4
  Plugin URI: http://www.paidmembershipspro.com
5
  Description: Plugin to Handle Memberships
6
+ Version: 1.8.7.3
7
  Author: Stranger Studios
8
  Author URI: http://www.strangerstudios.com
9
  */
13
  */
14
 
15
  //version constant
16
+ define("PMPRO_VERSION", "1.8.7.3");
17
  define("PMPRO_USER_AGENT", "Paid Memberships Pro v" . PMPRO_VERSION . "; " . site_url());
18
 
19
  //if the session has been started yet, start it (ignore if running from command line)
149
  /*
150
  Activation/Deactivation
151
  */
152
+ //we need monthly crons
153
+ function pmpro_cron_schedules_monthly($schedules) {
154
+ $schedules['monthly'] = array(
155
+ 'interval' => 2635200,
156
+ 'display' => __('Once a month')
157
+ );
158
+ return $schedules;
159
+ }
160
+ add_filter( 'cron_schedules', 'pmpro_cron_schedules_monthly');
161
+
162
+ //activation
163
+ function pmpro_activation() {
164
+ //schedule crons
165
+ pmpro_maybe_schedule_event(current_time('timestamp'), 'daily', 'pmpro_cron_expire_memberships');
166
+ pmpro_maybe_schedule_event(current_time('timestamp')+1, 'daily', 'pmpro_cron_expiration_warnings');
167
+ pmpro_maybe_schedule_event(current_time('timestamp'), 'monthly', 'pmpro_cron_credit_card_expiring_warnings');
168
 
169
  //add caps to admin role
170
  $role = get_role( 'administrator' );
186
 
187
  do_action('pmpro_activation');
188
  }
189
+
190
+ //deactivation
191
+ function pmpro_deactivation() {
192
  //remove crons
193
  wp_clear_scheduled_hook('pmpro_cron_expiration_warnings');
194
  wp_clear_scheduled_hook('pmpro_cron_trial_ending_warnings');
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.4
6
- Stable tag: 1.8.7.1
7
 
8
  A revenue-generating machine for membership sites. Unlimited levels with recurring payment, protected content and member management.
9
 
@@ -115,6 +115,15 @@ Not sure? You can find out by doing a bit a research.
115
  [View All Screenshots](http://www.paidmembershipspro.com/features/screenshots/)
116
 
117
  == Changelog ==
 
 
 
 
 
 
 
 
 
118
 
119
  = 1.8.7.1 =
120
  * BUG: Added missing files via svn.
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.4.1
6
+ Stable tag: 1.8.7.3
7
 
8
  A revenue-generating machine for membership sites. Unlimited levels with recurring payment, protected content and member management.
9
 
115
  [View All Screenshots](http://www.paidmembershipspro.com/features/screenshots/)
116
 
117
  == Changelog ==
118
+ = 1.8.7.3 =
119
+ * BUG: Using HTTP 1.1 for calls to the PayPal API now.
120
+ * BUG: The pmpro_cron_credit_card_expiring_warnings cron job setup by PMPro needed a monthly schedule added via the cron_schedules filter.
121
+ * ENHANCEMENT: Added the pmpro_maybe_schedule_event() function. This checks if an event with the same hook and args is already scheduled before scheduling the new event.
122
+ * ENHANCEMENT: Added a script that will run on upgrade to clean out old cron jobs.
123
+
124
+ = 1.8.7.2 =
125
+ * BUG: Fixed bug where pmpro_activation() was firing on every page load. (Thanks, Tigertech and MegaZ on WordPress.org)
126
+ * BUG: Fixed bugs with internationalized date formats in a few places.
127
 
128
  = 1.8.7.1 =
129
  * BUG: Added missing files via svn.