Version Description
- Added a new filter (swpm_transactions_menu_items_per_page) that can be used to customize the number of items that is listed in the transactions menu.
- Added more sorting option in the transactions table.
- Added sanitization for the sort inputs in the member transactions table.
- Fixed an issue with the auto delete pending account settings.
- Changed admin heading structure from h2 to h1.
Download this release
Release Info
Developer | wp.insider |
Plugin | Simple Membership |
Version | 3.2.1 |
Comparing to | |
See all releases |
Code changes from version 3.1.8 to 3.2.1
- classes/admin-includes/class.swpm-payment-buttons-list-table.php +6 -5
- classes/admin-includes/class.swpm-payments-list-table.php +8 -1
- classes/class.simple-wp-membership.php +15 -9
- classes/class.swpm-access-control.php +5 -3
- classes/class.swpm-auth.php +2 -0
- classes/class.swpm-category-list.php +21 -10
- classes/class.swpm-front-registration.php +2 -3
- classes/class.swpm-init-time-tasks.php +2 -1
- classes/class.swpm-members.php +1 -1
- classes/class.swpm-membership-levels.php +5 -4
- classes/class.swpm-protection-base.php +39 -21
- classes/class.swpm-registration.php +5 -0
- classes/class.swpm-settings.php +2 -0
- classes/class.swpm-utils-misc.php +27 -0
- classes/class.swpm-utils-template.php +42 -0
- classes/class.swpm-utils.php +8 -1
- images/addons/google-first-click-free-addon.png +0 -0
- images/addons/show-member-info.png +0 -0
- ipn/swpm_handle_pp_ipn.php +5 -4
- ipn/swpm_handle_subsc_ipn.php +6 -9
- languages/swpm-ca_ES.mo +0 -0
- languages/swpm-ca_ES.po +1324 -0
- readme.txt +30 -2
- simple-wp-membership.php +3 -2
- views/add.php +8 -8
- views/admin_add.php +0 -1
- views/admin_add_ons_page.php +17 -1
- views/admin_addon_settings.php +1 -1
- views/admin_category_list.php +1 -1
- views/admin_members.php +2 -2
- views/admin_membership_levels.php +2 -2
- views/admin_membership_manage.php +1 -1
- views/admin_settings.php +1 -1
- views/admin_tools_settings.php +1 -1
- views/edit.php +14 -14
- views/loggedin.php +3 -0
- views/login.php +13 -7
- views/payments/admin_all_payment_transactions.php +1 -1
- views/payments/admin_create_payment_buttons.php +1 -1
- views/payments/admin_edit_payment_buttons.php +2 -2
- views/payments/admin_payment_settings.php +1 -1
- views/payments/admin_payments_page.php +1 -1
- views/payments/payment-gateway/admin_paypal_buy_now_button.php +25 -23
- views/payments/payment-gateway/admin_paypal_subscription_button.php +32 -34
classes/admin-includes/class.swpm-payment-buttons-list-table.php
CHANGED
@@ -16,7 +16,7 @@ class SwpmPaymentButtonsListTable extends WP_List_Table {
|
|
16 |
'ajax' => false //does this table support ajax?
|
17 |
));
|
18 |
|
19 |
-
$this->per_page =
|
20 |
}
|
21 |
|
22 |
function column_default($item, $column_name) {
|
@@ -75,9 +75,10 @@ class SwpmPaymentButtonsListTable extends WP_List_Table {
|
|
75 |
}
|
76 |
|
77 |
function get_sortable_columns() {
|
78 |
-
$sortable_columns = array(
|
79 |
-
|
80 |
-
|
|
|
81 |
return $sortable_columns;
|
82 |
}
|
83 |
|
@@ -106,7 +107,7 @@ class SwpmPaymentButtonsListTable extends WP_List_Table {
|
|
106 |
function process_delete_action() {
|
107 |
|
108 |
if (isset($_REQUEST['action']) && $_REQUEST['action'] == 'delete_payment_btn') { //Delete link was clicked for a row in list table
|
109 |
-
$record_id =
|
110 |
wp_delete_post( $record_id );
|
111 |
$success_msg = '<div id="message" class="updated"><p>';
|
112 |
$success_msg .= SwpmUtils::_('The selected entry was deleted!');
|
16 |
'ajax' => false //does this table support ajax?
|
17 |
));
|
18 |
|
19 |
+
$this->per_page = 50;
|
20 |
}
|
21 |
|
22 |
function column_default($item, $column_name) {
|
75 |
}
|
76 |
|
77 |
function get_sortable_columns() {
|
78 |
+
$sortable_columns = array();
|
79 |
+
// $sortable_columns = array(
|
80 |
+
// 'ID' => array('ID', false), //true means its already sorted
|
81 |
+
// );
|
82 |
return $sortable_columns;
|
83 |
}
|
84 |
|
107 |
function process_delete_action() {
|
108 |
|
109 |
if (isset($_REQUEST['action']) && $_REQUEST['action'] == 'delete_payment_btn') { //Delete link was clicked for a row in list table
|
110 |
+
$record_id = sanitize_text_field($_REQUEST['button_id']);
|
111 |
wp_delete_post( $record_id );
|
112 |
$success_msg = '<div id="message" class="updated"><p>';
|
113 |
$success_msg .= SwpmUtils::_('The selected entry was deleted!');
|
classes/admin-includes/class.swpm-payments-list-table.php
CHANGED
@@ -89,6 +89,8 @@ class SWPMPaymentsListTable extends WP_List_Table {
|
|
89 |
$sortable_columns = array(
|
90 |
'id' => array('id', false), //true means its already sorted
|
91 |
'membership_level' => array('membership_level', false),
|
|
|
|
|
92 |
);
|
93 |
return $sortable_columns;
|
94 |
}
|
@@ -128,7 +130,7 @@ class SWPMPaymentsListTable extends WP_List_Table {
|
|
128 |
function prepare_items() {
|
129 |
|
130 |
// Lets decide how many records per page to show
|
131 |
-
$per_page = 50;
|
132 |
|
133 |
$columns = $this->get_columns();
|
134 |
$hidden = array();
|
@@ -145,6 +147,11 @@ class SWPMPaymentsListTable extends WP_List_Table {
|
|
145 |
$orderby_column = "id";
|
146 |
$sort_order = "DESC";
|
147 |
}
|
|
|
|
|
|
|
|
|
|
|
148 |
global $wpdb;
|
149 |
$payments_table_name = $wpdb->prefix . "swpm_payments_tbl";
|
150 |
|
89 |
$sortable_columns = array(
|
90 |
'id' => array('id', false), //true means its already sorted
|
91 |
'membership_level' => array('membership_level', false),
|
92 |
+
'last_name' => array('last_name', false),
|
93 |
+
'txn_date' => array('txn_date', false),
|
94 |
);
|
95 |
return $sortable_columns;
|
96 |
}
|
130 |
function prepare_items() {
|
131 |
|
132 |
// Lets decide how many records per page to show
|
133 |
+
$per_page = apply_filters('swpm_transactions_menu_items_per_page', 50);
|
134 |
|
135 |
$columns = $this->get_columns();
|
136 |
$hidden = array();
|
147 |
$orderby_column = "id";
|
148 |
$sort_order = "DESC";
|
149 |
}
|
150 |
+
|
151 |
+
//Sanitize the inputs
|
152 |
+
$orderby_column = SwpmUtils::sanitize_value_by_array($orderby_column, $sortable);
|
153 |
+
$sort_order = SwpmUtils::sanitize_value_by_array($sort_order, array('DESC' => '1', 'ASC' => '1'));
|
154 |
+
|
155 |
global $wpdb;
|
156 |
$payments_table_name = $wpdb->prefix . "swpm_payments_tbl";
|
157 |
|
classes/class.simple-wp-membership.php
CHANGED
@@ -3,6 +3,7 @@
|
|
3 |
include_once('class.swpm-utils-misc.php');
|
4 |
include_once('class.swpm-utils.php');
|
5 |
include_once('class.swpm-utils-member.php');
|
|
|
6 |
include_once('class.swpm-init-time-tasks.php');
|
7 |
include_once('class.swpm-settings.php');
|
8 |
include_once('class.swpm-protection.php');
|
@@ -242,13 +243,11 @@ class SimpleWpMembership {
|
|
242 |
ob_start();
|
243 |
$auth = SwpmAuth::get_instance();
|
244 |
if ($auth->is_logged_in()) {
|
245 |
-
|
|
|
246 |
} else {
|
247 |
-
|
248 |
-
|
249 |
-
$join_url = $setting->get_value('join-us-page-url');
|
250 |
-
|
251 |
-
include(SIMPLE_WP_MEMBERSHIP_PATH . 'views/login.php');
|
252 |
}
|
253 |
return ob_get_clean();
|
254 |
}
|
@@ -259,7 +258,8 @@ class SimpleWpMembership {
|
|
259 |
return '';
|
260 |
}
|
261 |
ob_start();
|
262 |
-
|
|
|
263 |
return ob_get_clean();
|
264 |
}
|
265 |
|
@@ -412,13 +412,19 @@ class SimpleWpMembership {
|
|
412 |
}
|
413 |
|
414 |
public function filter_comment($content) {
|
|
|
|
|
|
|
|
|
|
|
415 |
$acl = SwpmAccessControl::get_instance();
|
416 |
global $comment;
|
417 |
-
return $acl->
|
418 |
}
|
419 |
|
420 |
public function filter_content($content) {
|
421 |
-
if (is_preview()) {
|
|
|
422 |
return $content;
|
423 |
}
|
424 |
$acl = SwpmAccessControl::get_instance();
|
3 |
include_once('class.swpm-utils-misc.php');
|
4 |
include_once('class.swpm-utils.php');
|
5 |
include_once('class.swpm-utils-member.php');
|
6 |
+
include_once('class.swpm-utils-template.php');
|
7 |
include_once('class.swpm-init-time-tasks.php');
|
8 |
include_once('class.swpm-settings.php');
|
9 |
include_once('class.swpm-protection.php');
|
243 |
ob_start();
|
244 |
$auth = SwpmAuth::get_instance();
|
245 |
if ($auth->is_logged_in()) {
|
246 |
+
//Load the template for logged-in member
|
247 |
+
SwpmUtilsTemplate::swpm_load_template('loggedin.php', false);
|
248 |
} else {
|
249 |
+
//Load the login widget template
|
250 |
+
SwpmUtilsTemplate::swpm_load_template('login.php', false);
|
|
|
|
|
|
|
251 |
}
|
252 |
return ob_get_clean();
|
253 |
}
|
258 |
return '';
|
259 |
}
|
260 |
ob_start();
|
261 |
+
//Load the forgot password template
|
262 |
+
SwpmUtilsTemplate::swpm_load_template('forgot_password.php', false);
|
263 |
return ob_get_clean();
|
264 |
}
|
265 |
|
412 |
}
|
413 |
|
414 |
public function filter_comment($content) {
|
415 |
+
if (is_admin()) {
|
416 |
+
//Do not apply filtering for admin side viewing
|
417 |
+
return $content;
|
418 |
+
}
|
419 |
+
|
420 |
$acl = SwpmAccessControl::get_instance();
|
421 |
global $comment;
|
422 |
+
return $acl->filter_comment($comment->comment_post_ID, $content);
|
423 |
}
|
424 |
|
425 |
public function filter_content($content) {
|
426 |
+
if (is_preview() || is_admin()) {
|
427 |
+
//Do not apply filtering for admin side viewing or preview page viewing.
|
428 |
return $content;
|
429 |
}
|
430 |
$acl = SwpmAccessControl::get_instance();
|
classes/class.swpm-access-control.php
CHANGED
@@ -70,8 +70,10 @@ class SwpmAccessControl {
|
|
70 |
return $this->lastError;
|
71 |
}
|
72 |
public function filter_post($id,$content){
|
|
|
73 |
if(in_array($id, $this->moretags)) {return $content; }
|
74 |
if($this->can_i_read_post($id)) {return $content; }
|
|
|
75 |
$moretag = SwpmSettings::get_instance()->get_value('enable-moretag');
|
76 |
if (empty($moretag)){
|
77 |
return $this->lastError;
|
@@ -88,17 +90,17 @@ class SwpmAccessControl {
|
|
88 |
$error_msg = '<div class="swpm-margin-top-10">' . SwpmUtils::_("You need to login to view the rest of the content. ") . SwpmSettings::get_instance()->get_login_link() . '</div>';
|
89 |
$this->lastError = apply_filters('swpm_not_logged_in_more_tag_msg', $error_msg);
|
90 |
}
|
91 |
-
|
92 |
return do_shortcode($post_segments[0]) . $this->lastError;
|
93 |
}
|
94 |
|
95 |
return $this->lastError;
|
96 |
}
|
97 |
-
public function filter_comment($
|
98 |
-
if($this->
|
99 |
return $this->lastError;
|
100 |
}
|
101 |
public function filter_post_with_moretag($id, $more_link, $more_link_text){
|
|
|
102 |
$this->moretags[] = $id;
|
103 |
if($this->can_i_read_post($id)) {
|
104 |
return $more_link;
|
70 |
return $this->lastError;
|
71 |
}
|
72 |
public function filter_post($id,$content){
|
73 |
+
if(SwpmUtils::is_first_click_free($content)) {return $content;}
|
74 |
if(in_array($id, $this->moretags)) {return $content; }
|
75 |
if($this->can_i_read_post($id)) {return $content; }
|
76 |
+
|
77 |
$moretag = SwpmSettings::get_instance()->get_value('enable-moretag');
|
78 |
if (empty($moretag)){
|
79 |
return $this->lastError;
|
90 |
$error_msg = '<div class="swpm-margin-top-10">' . SwpmUtils::_("You need to login to view the rest of the content. ") . SwpmSettings::get_instance()->get_login_link() . '</div>';
|
91 |
$this->lastError = apply_filters('swpm_not_logged_in_more_tag_msg', $error_msg);
|
92 |
}
|
|
|
93 |
return do_shortcode($post_segments[0]) . $this->lastError;
|
94 |
}
|
95 |
|
96 |
return $this->lastError;
|
97 |
}
|
98 |
+
public function filter_comment($parent_post_id,$content){
|
99 |
+
if($this->can_i_read_post($parent_post_id)) { return $content; }
|
100 |
return $this->lastError;
|
101 |
}
|
102 |
public function filter_post_with_moretag($id, $more_link, $more_link_text){
|
103 |
+
if (SwpmUtils::is_first_click_free($content)) {return $content;}
|
104 |
$this->moretags[] = $id;
|
105 |
if($this->can_i_read_post($id)) {
|
106 |
return $more_link;
|
classes/class.swpm-auth.php
CHANGED
@@ -170,6 +170,8 @@ class SwpmAuth {
|
|
170 |
$expire = $expiration; //The minimum cookie expiration should be at least couple of days.
|
171 |
}
|
172 |
|
|
|
|
|
173 |
$expiration_timestamp = SwpmUtils::get_expiration_timestamp($this->userData);
|
174 |
$enable_expired_login = SwpmSettings::get_instance()->get_value('enable-expired-account-login', '');
|
175 |
// make sure cookie doesn't live beyond account expiration date.
|
170 |
$expire = $expiration; //The minimum cookie expiration should be at least couple of days.
|
171 |
}
|
172 |
|
173 |
+
setcookie("swpm_in_use", "swpm_in_use", $expire, COOKIEPATH, COOKIE_DOMAIN);
|
174 |
+
|
175 |
$expiration_timestamp = SwpmUtils::get_expiration_timestamp($this->userData);
|
176 |
$enable_expired_login = SwpmSettings::get_instance()->get_value('enable-expired-account-login', '');
|
177 |
// make sure cookie doesn't live beyond account expiration date.
|
classes/class.swpm-category-list.php
CHANGED
@@ -30,17 +30,16 @@ class SwpmCategoryList extends WP_List_Table {
|
|
30 |
function get_columns() {
|
31 |
return array(
|
32 |
'cb' => '<input type="checkbox" />'
|
33 |
-
, 'term_id' => SwpmUtils::_('ID')
|
34 |
-
, 'name' => SwpmUtils::_('Name')
|
|
|
35 |
, 'description' => SwpmUtils::_('Description')
|
36 |
, 'count' => SwpmUtils::_('Count')
|
37 |
);
|
38 |
}
|
39 |
|
40 |
function get_sortable_columns() {
|
41 |
-
return array(
|
42 |
-
'name' => array('name', true)
|
43 |
-
);
|
44 |
}
|
45 |
|
46 |
function column_default($item, $column_name) {
|
@@ -51,6 +50,16 @@ class SwpmCategoryList extends WP_List_Table {
|
|
51 |
return $item->term_id;
|
52 |
}
|
53 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
54 |
function column_cb($item) {
|
55 |
return sprintf(
|
56 |
'<input type="hidden" name="ids_in_page[]" value="%s">
|
@@ -83,10 +92,12 @@ class SwpmCategoryList extends WP_List_Table {
|
|
83 |
|
84 |
function prepare_items() {
|
85 |
$all_categories = array();
|
86 |
-
$
|
87 |
-
$
|
|
|
|
|
88 |
$perpage = 100;
|
89 |
-
$paged = !empty($_GET["paged"]) ?
|
90 |
if (empty($paged) || !is_numeric($paged) || $paged <= 0) {
|
91 |
$paged = 1;
|
92 |
}
|
@@ -95,8 +106,8 @@ class SwpmCategoryList extends WP_List_Table {
|
|
95 |
if (!empty($paged) && !empty($perpage)) {
|
96 |
$offset = ($paged - 1) * $perpage;
|
97 |
}
|
98 |
-
for ($i = $offset; $i < ((int) $offset + (int) $perpage) && !empty($
|
99 |
-
$all_categories[] = $
|
100 |
}
|
101 |
$this->set_pagination_args(array(
|
102 |
"total_items" => $totalitems,
|
30 |
function get_columns() {
|
31 |
return array(
|
32 |
'cb' => '<input type="checkbox" />'
|
33 |
+
, 'term_id' => SwpmUtils::_('Category ID')
|
34 |
+
, 'name' => SwpmUtils::_('Category Name')
|
35 |
+
, 'taxonomy' => SwpmUtils::_('Category Type (Taxonomy)')
|
36 |
, 'description' => SwpmUtils::_('Description')
|
37 |
, 'count' => SwpmUtils::_('Count')
|
38 |
);
|
39 |
}
|
40 |
|
41 |
function get_sortable_columns() {
|
42 |
+
return array();
|
|
|
|
|
43 |
}
|
44 |
|
45 |
function column_default($item, $column_name) {
|
50 |
return $item->term_id;
|
51 |
}
|
52 |
|
53 |
+
function column_taxonomy($item) {
|
54 |
+
$taxonomy = $item->taxonomy;
|
55 |
+
if ($taxonomy == 'category'){
|
56 |
+
$taxonomy = 'Post Category';
|
57 |
+
} else {
|
58 |
+
$taxonomy = 'Custom Post Type ('.$taxonomy.')';
|
59 |
+
}
|
60 |
+
return $taxonomy;
|
61 |
+
}
|
62 |
+
|
63 |
function column_cb($item) {
|
64 |
return sprintf(
|
65 |
'<input type="hidden" name="ids_in_page[]" value="%s">
|
92 |
|
93 |
function prepare_items() {
|
94 |
$all_categories = array();
|
95 |
+
$taxonomies = get_taxonomies($args = array('public' => true,'_builtin'=>false));
|
96 |
+
$taxonomies['category'] = 'category';
|
97 |
+
$all_terms = get_terms( $taxonomies, 'orderby=count&hide_empty=0&order=DESC');
|
98 |
+
$totalitems = count($all_terms);
|
99 |
$perpage = 100;
|
100 |
+
$paged = !empty($_GET["paged"]) ? sanitize_text_field($_GET["paged"]) : '';
|
101 |
if (empty($paged) || !is_numeric($paged) || $paged <= 0) {
|
102 |
$paged = 1;
|
103 |
}
|
106 |
if (!empty($paged) && !empty($perpage)) {
|
107 |
$offset = ($paged - 1) * $perpage;
|
108 |
}
|
109 |
+
for ($i = $offset; $i < ((int) $offset + (int) $perpage) && !empty($all_terms[$i]); $i++) {
|
110 |
+
$all_categories[] = $all_terms[$i];
|
111 |
}
|
112 |
$this->set_pagination_args(array(
|
113 |
"total_items" => $totalitems,
|
classes/class.swpm-front-registration.php
CHANGED
@@ -215,10 +215,9 @@ class SwpmFrontRegistration extends SwpmRegistration {
|
|
215 |
|
216 |
$body = $settings->get_value('reset-mail-body');
|
217 |
$subject = $settings->get_value('reset-mail-subject');
|
218 |
-
$search = array('{user_name}', '{first_name}', '{last_name}', '{password}');
|
219 |
-
$replace = array($user->user_name, $user->first_name, $user->last_name, $password);
|
220 |
$body = html_entity_decode($body);
|
221 |
-
$
|
|
|
222 |
$from = $settings->get_value('email-from');
|
223 |
$headers = "From: " . $from . "\r\n";
|
224 |
wp_mail($email, $subject, $body, $headers);
|
215 |
|
216 |
$body = $settings->get_value('reset-mail-body');
|
217 |
$subject = $settings->get_value('reset-mail-subject');
|
|
|
|
|
218 |
$body = html_entity_decode($body);
|
219 |
+
$additional_args = array('password' => $password);
|
220 |
+
$body = SwpmMiscUtils::replace_dynamic_tags($body, $user->member_id, $additional_args);
|
221 |
$from = $settings->get_value('email-from');
|
222 |
$headers = "From: " . $from . "\r\n";
|
223 |
wp_mail($email, $subject, $body, $headers);
|
classes/class.swpm-init-time-tasks.php
CHANGED
@@ -34,7 +34,8 @@ class SwpmInitTimeTasks {
|
|
34 |
$swpm_logout = filter_input(INPUT_GET, 'swpm-logout');
|
35 |
if (!empty($swpm_logout)) {
|
36 |
SwpmAuth::get_instance()->logout();
|
37 |
-
|
|
|
38 |
exit(0);
|
39 |
}
|
40 |
$this->process_password_reset();
|
34 |
$swpm_logout = filter_input(INPUT_GET, 'swpm-logout');
|
35 |
if (!empty($swpm_logout)) {
|
36 |
SwpmAuth::get_instance()->logout();
|
37 |
+
$home_url = home_url();
|
38 |
+
wp_redirect(trailingslashit($home_url));
|
39 |
exit(0);
|
40 |
}
|
41 |
$this->process_password_reset();
|
classes/class.swpm-members.php
CHANGED
@@ -135,7 +135,7 @@ class SwpmMembers extends WP_List_Table {
|
|
135 |
$totalitems = $wpdb->query($query); //return the total number of affected rows
|
136 |
|
137 |
//Pagination setup
|
138 |
-
$perpage =
|
139 |
$paged = filter_input(INPUT_GET, 'paged');
|
140 |
if (empty($paged) || !is_numeric($paged) || $paged <= 0) {
|
141 |
$paged = 1;
|
135 |
$totalitems = $wpdb->query($query); //return the total number of affected rows
|
136 |
|
137 |
//Pagination setup
|
138 |
+
$perpage = apply_filters('swpm_members_menu_items_per_page', 50);
|
139 |
$paged = filter_input(INPUT_GET, 'paged');
|
140 |
if (empty($paged) || !is_numeric($paged) || $paged <= 0) {
|
141 |
$paged = 1;
|
classes/class.swpm-membership-levels.php
CHANGED
@@ -86,8 +86,9 @@ class SwpmMembershipLevels extends WP_List_Table {
|
|
86 |
$this->process_bulk_action();
|
87 |
|
88 |
$query = "SELECT * FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id !=1 ";
|
89 |
-
if (isset($_POST['s']))
|
90 |
-
$query .= " AND alias LIKE '%" .
|
|
|
91 |
$orderby = !empty($_GET["orderby"]) ? esc_sql($_GET["orderby"]) : 'id';
|
92 |
$order = !empty($_GET["order"]) ? esc_sql($_GET["order"]) : 'DESC';
|
93 |
|
@@ -100,8 +101,8 @@ class SwpmMembershipLevels extends WP_List_Table {
|
|
100 |
}
|
101 |
|
102 |
$totalitems = $wpdb->query($query); //return the total number of affected rows
|
103 |
-
$perpage =
|
104 |
-
$paged = !empty($_GET["paged"]) ?
|
105 |
if (empty($paged) || !is_numeric($paged) || $paged <= 0) {
|
106 |
$paged = 1;
|
107 |
}
|
86 |
$this->process_bulk_action();
|
87 |
|
88 |
$query = "SELECT * FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id !=1 ";
|
89 |
+
if (isset($_POST['s'])){
|
90 |
+
$query .= " AND alias LIKE '%" . sanitize_text_field($_POST['s']) . "%' ";
|
91 |
+
}
|
92 |
$orderby = !empty($_GET["orderby"]) ? esc_sql($_GET["orderby"]) : 'id';
|
93 |
$order = !empty($_GET["order"]) ? esc_sql($_GET["order"]) : 'DESC';
|
94 |
|
101 |
}
|
102 |
|
103 |
$totalitems = $wpdb->query($query); //return the total number of affected rows
|
104 |
+
$perpage = 50;
|
105 |
+
$paged = !empty($_GET["paged"]) ? sanitize_text_field($_GET["paged"]) : '';
|
106 |
if (empty($paged) || !is_numeric($paged) || $paged <= 0) {
|
107 |
$paged = 1;
|
108 |
}
|
classes/class.swpm-protection-base.php
CHANGED
@@ -114,40 +114,58 @@ abstract class SwpmProtectionBase {
|
|
114 |
}
|
115 |
|
116 |
public function post_in_categories($post_id) {
|
117 |
-
if (empty($this->categories))
|
|
|
|
|
|
|
|
|
|
|
|
|
118 |
return false;
|
119 |
-
|
|
|
|
|
|
|
|
|
|
|
120 |
}
|
121 |
|
122 |
public function in_parent_categories($id) {
|
123 |
-
|
124 |
return false;
|
125 |
-
|
126 |
-
$
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
|
|
|
|
|
|
|
|
|
|
132 |
}
|
133 |
return false;
|
134 |
}
|
135 |
|
136 |
public function post_in_parent_categories($post_id) {
|
137 |
-
if (empty($this->categories))
|
138 |
return false;
|
139 |
-
$cats = get_the_category($post_id);
|
140 |
-
$parents = array();
|
141 |
-
foreach ($cats as $key => $cat) {
|
142 |
-
$parents = array_merge($parents, explode(',', get_category_parents($cat->cat_ID, false, ',')));
|
143 |
}
|
144 |
-
$
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
|
|
|
|
|
|
|
|
|
|
150 |
}
|
|
|
151 |
return false;
|
152 |
}
|
153 |
|
114 |
}
|
115 |
|
116 |
public function post_in_categories($post_id) {
|
117 |
+
if (empty($this->categories)){
|
118 |
+
return false;
|
119 |
+
}
|
120 |
+
$taxonomies = get_taxonomies($args = array('public' => true,'_builtin'=>false));
|
121 |
+
$taxonomies['category'] = 'category';
|
122 |
+
$terms = wp_get_post_terms( $post_id, $taxonomies, array('fields'=>'ids'));
|
123 |
+
if(!is_array($terms)){
|
124 |
return false;
|
125 |
+
}
|
126 |
+
|
127 |
+
foreach ($terms as $key=>$value){
|
128 |
+
if (in_array($value, $this->categories)) {return true;}
|
129 |
+
}
|
130 |
+
return false;
|
131 |
}
|
132 |
|
133 |
public function in_parent_categories($id) {
|
134 |
+
if (empty($this->categories)){
|
135 |
return false;
|
136 |
+
}
|
137 |
+
$taxonomies = get_taxonomies($args = array('public' => true,'_builtin'=>false));
|
138 |
+
$taxonomies['category'] = 'category';
|
139 |
+
$terms = get_term($id, $taxonomies);
|
140 |
+
if(!is_array($terms)){
|
141 |
+
return false;
|
142 |
+
}
|
143 |
+
|
144 |
+
foreach ($terms as $term){
|
145 |
+
if ($term->parent == 0) {continue;}
|
146 |
+
|
147 |
+
if (in_array($term->parent, $this->categories)) {return true;}
|
148 |
}
|
149 |
return false;
|
150 |
}
|
151 |
|
152 |
public function post_in_parent_categories($post_id) {
|
153 |
+
if (empty($this->categories)){
|
154 |
return false;
|
|
|
|
|
|
|
|
|
155 |
}
|
156 |
+
$taxonomies = get_taxonomies($args = array('public' => true,'_builtin'=>false));
|
157 |
+
$taxonomies['category'] = 'category';
|
158 |
+
$terms = wp_get_post_terms( $post_id, $taxonomies, array('fields'=>'all'));
|
159 |
+
if(!is_array($terms)){
|
160 |
+
return false;
|
161 |
+
}
|
162 |
+
|
163 |
+
foreach ($terms as $term){
|
164 |
+
if ($term->parent != 0 &&in_array($term->parent, $this->categories)) {
|
165 |
+
return true;
|
166 |
+
}
|
167 |
}
|
168 |
+
|
169 |
return false;
|
170 |
}
|
171 |
|
classes/class.swpm-registration.php
CHANGED
@@ -30,6 +30,11 @@ abstract class SwpmRegistration {
|
|
30 |
$keys = array_map('swpm_enclose_var', array_keys($member_info));
|
31 |
$body = html_entity_decode($body);
|
32 |
$body = str_replace($keys, $values, $body);
|
|
|
|
|
|
|
|
|
|
|
33 |
$email = sanitize_email(filter_input(INPUT_POST, 'email', FILTER_UNSAFE_RAW));
|
34 |
|
35 |
wp_mail(trim($email), $subject, $body, $headers);
|
30 |
$keys = array_map('swpm_enclose_var', array_keys($member_info));
|
31 |
$body = html_entity_decode($body);
|
32 |
$body = str_replace($keys, $values, $body);
|
33 |
+
|
34 |
+
$swpm_user = SwpmMemberUtils::get_user_by_user_name($member_info['user_name']);
|
35 |
+
$member_id = $swpm_user->member_id;
|
36 |
+
$body = SwpmMiscUtils::replace_dynamic_tags($body, $member_id);//Do the standard merge var replacement.
|
37 |
+
|
38 |
$email = sanitize_email(filter_input(INPUT_POST, 'email', FILTER_UNSAFE_RAW));
|
39 |
|
40 |
wp_mail(trim($email), $subject, $body, $headers);
|
classes/class.swpm-settings.php
CHANGED
@@ -311,6 +311,8 @@ class SwpmSettings {
|
|
311 |
$output['reset-page-url'] = esc_url($input['reset-page-url']);
|
312 |
$output['join-us-page-url'] = esc_url($input['join-us-page-url']);
|
313 |
$output['default-account-status'] = esc_attr($input['default-account-status']);
|
|
|
|
|
314 |
return $output;
|
315 |
}
|
316 |
|
311 |
$output['reset-page-url'] = esc_url($input['reset-page-url']);
|
312 |
$output['join-us-page-url'] = esc_url($input['join-us-page-url']);
|
313 |
$output['default-account-status'] = esc_attr($input['default-account-status']);
|
314 |
+
$output['delete-pending-account'] = isset($input['delete-pending-account']) ? esc_attr($input['delete-pending-account']) : 0;
|
315 |
+
|
316 |
return $output;
|
317 |
}
|
318 |
|
classes/class.swpm-utils-misc.php
CHANGED
@@ -176,4 +176,31 @@ class SwpmMiscUtils {
|
|
176 |
return $pageURL;
|
177 |
}
|
178 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
179 |
}
|
176 |
return $pageURL;
|
177 |
}
|
178 |
|
179 |
+
public static function replace_dynamic_tags($msg_body, $member_id, $additional_args='') {
|
180 |
+
$settings = SwpmSettings::get_instance();
|
181 |
+
$user_record = SwpmMemberUtils::get_user_by_id($member_id);
|
182 |
+
|
183 |
+
$password = '';
|
184 |
+
$reg_link = '';
|
185 |
+
if (!empty($additional_args)) {
|
186 |
+
$password = isset($additional_args['password']) ? $additional_args['password'] : $password;
|
187 |
+
$reg_link = isset($additional_args['reg_link']) ? $additional_args['reg_link'] : $reg_link;
|
188 |
+
}
|
189 |
+
$login_link = $settings->get_value('login-page-url');
|
190 |
+
|
191 |
+
//Define the replacable tags
|
192 |
+
$tags = array("{member_id}", "{user_name}", "{first_name}", "{last_name}", "{membership_level}",
|
193 |
+
"{account_state}", "{email}", "{phone}", "{member_since}", "{subscription_starts}", "{company_name}",
|
194 |
+
"{password}", "{login_link}", "{reg_link}"
|
195 |
+
);
|
196 |
+
|
197 |
+
//Define the values
|
198 |
+
$vals = array($member_id, $user_record->user_name, $user_record->first_name, $user_record->last_name, $user_record->membership_level,
|
199 |
+
$user_record->account_state, $user_record->email, $user_record->phone, $user_record->member_since, $user_record->subscription_starts, $user_record->company_name,
|
200 |
+
$password, $login_link, $reg_link
|
201 |
+
);
|
202 |
+
|
203 |
+
$msg_body = str_replace($tags, $vals, $msg_body);
|
204 |
+
return $msg_body;
|
205 |
+
}
|
206 |
}
|
classes/class.swpm-utils-template.php
ADDED
@@ -0,0 +1,42 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class SwpmUtilsTemplate {
|
4 |
+
|
5 |
+
/*
|
6 |
+
* This function will load the template file in the following order
|
7 |
+
* wp-content/themes/your-child-theme/simple-membership/template-name.php
|
8 |
+
* wp-content/themes/your-main-theme/simple-membership/template-name.php
|
9 |
+
* The standard plugin's template file
|
10 |
+
*/
|
11 |
+
public static function swpm_load_template($template_name, $require_once = true) {
|
12 |
+
|
13 |
+
//List of file paths (in order of priority) where the plugin should check for the template.
|
14 |
+
$template_files = array(
|
15 |
+
get_stylesheet_directory() . '/' . SIMPLE_WP_MEMBERSHIP_TEMPLATE_PATH . '/' . $template_name, //First check inside child theme (if you are using a child theme)
|
16 |
+
get_template_directory() . '/' . SIMPLE_WP_MEMBERSHIP_TEMPLATE_PATH . '/' . $template_name, //Then check inside the main theme folder
|
17 |
+
SIMPLE_WP_MEMBERSHIP_PATH . 'views/' . $template_name //Otherwise load the standard template
|
18 |
+
);
|
19 |
+
|
20 |
+
//Filter hook to allow overriding of the template file path
|
21 |
+
$template_files = apply_filters( 'swpm_load_template_files', $template_files, $template_name);
|
22 |
+
|
23 |
+
foreach ($template_files as $file) {
|
24 |
+
if (file_exists($file)) {
|
25 |
+
$template_to_load = $file;
|
26 |
+
break;
|
27 |
+
}
|
28 |
+
}
|
29 |
+
|
30 |
+
//Lets load this template
|
31 |
+
if ($template_to_load) {
|
32 |
+
if ($require_once) {
|
33 |
+
require_once( $template_to_load );
|
34 |
+
} else {
|
35 |
+
require( $template_to_load );
|
36 |
+
}
|
37 |
+
} else {
|
38 |
+
wp_die(SwpmUtils::_('Error! Failed to find a template path for the specified template: ' . $template_name));
|
39 |
+
}
|
40 |
+
}
|
41 |
+
|
42 |
+
}
|
classes/class.swpm-utils.php
CHANGED
@@ -432,5 +432,12 @@ abstract class SwpmUtils {
|
|
432 |
|
433 |
return apply_filters('swpm_get_user_ip_address', $user_ip);
|
434 |
}
|
435 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
436 |
}
|
432 |
|
433 |
return apply_filters('swpm_get_user_ip_address', $user_ip);
|
434 |
}
|
435 |
+
|
436 |
+
public static function is_first_click_free(&$content){
|
437 |
+
$is_first_click = false;
|
438 |
+
$args = array($is_first_click, $content );
|
439 |
+
$filtered = apply_filters('swpm_first_click_free', $args);
|
440 |
+
list($is_first_click, $content) = $filtered;
|
441 |
+
return $is_first_click;
|
442 |
+
}
|
443 |
}
|
images/addons/google-first-click-free-addon.png
ADDED
Binary file
|
images/addons/show-member-info.png
ADDED
Binary file
|
ipn/swpm_handle_pp_ipn.php
CHANGED
@@ -138,16 +138,17 @@ class swpm_paypal_ipn_handler {
|
|
138 |
$cart_item_data_quantity = $current_cart_item['quantity'];
|
139 |
$cart_item_data_total = $current_cart_item['mc_gross'];
|
140 |
$cart_item_data_currency = $current_cart_item['mc_currency'];
|
141 |
-
if(empty($cart_item_data_quantity))
|
142 |
-
|
143 |
-
|
144 |
-
}
|
145 |
$this->debug_log('Item Number: '.$cart_item_data_num,true);
|
146 |
$this->debug_log('Item Name: '.$cart_item_data_name,true);
|
147 |
$this->debug_log('Item Quantity: '.$cart_item_data_quantity,true);
|
148 |
$this->debug_log('Item Total: '.$cart_item_data_total,true);
|
149 |
$this->debug_log('Item Currency: '.$cart_item_data_currency,true);
|
150 |
|
|
|
|
|
151 |
|
152 |
//*** Handle Membership Payment ***
|
153 |
//--------------------------------------------------------------------------------------
|
138 |
$cart_item_data_quantity = $current_cart_item['quantity'];
|
139 |
$cart_item_data_total = $current_cart_item['mc_gross'];
|
140 |
$cart_item_data_currency = $current_cart_item['mc_currency'];
|
141 |
+
if(empty($cart_item_data_quantity)){
|
142 |
+
$cart_item_data_quantity = 1;
|
143 |
+
}
|
|
|
144 |
$this->debug_log('Item Number: '.$cart_item_data_num,true);
|
145 |
$this->debug_log('Item Name: '.$cart_item_data_name,true);
|
146 |
$this->debug_log('Item Quantity: '.$cart_item_data_quantity,true);
|
147 |
$this->debug_log('Item Total: '.$cart_item_data_total,true);
|
148 |
$this->debug_log('Item Currency: '.$cart_item_data_currency,true);
|
149 |
|
150 |
+
//Get the button id
|
151 |
+
$button_id = $cart_item_data_num;//Button id is the item number.
|
152 |
|
153 |
//*** Handle Membership Payment ***
|
154 |
//--------------------------------------------------------------------------------------
|
ipn/swpm_handle_subsc_ipn.php
CHANGED
@@ -63,11 +63,9 @@ function swpm_handle_subsc_signup_stand_alone($ipn_data, $subsc_ref, $unique_ref
|
|
63 |
$body = "Your account has been upgraded successfully";
|
64 |
}
|
65 |
$from_address = $settings->get_value('email-from');
|
66 |
-
|
67 |
-
|
68 |
-
$
|
69 |
-
$vals1 = array($resultset->first_name, $resultset->last_name, $resultset->user_name, $login_link);
|
70 |
-
$email_body = str_replace($tags1, $vals1, $body);
|
71 |
$headers = 'From: ' . $from_address . "\r\n";
|
72 |
}// End of existing user account upgrade
|
73 |
else {
|
@@ -128,11 +126,10 @@ function swpm_handle_subsc_signup_stand_alone($ipn_data, $subsc_ref, $unique_ref
|
|
128 |
$body = "Please use the following link to complete your registration. \n {reg_link}";
|
129 |
}
|
130 |
$from_address = $settings->get_value('email-from');
|
131 |
-
|
132 |
-
$tags = array("{first_name}", "{last_name}", "{reg_link}");
|
133 |
-
$vals = array($data['first_name'], $data['last_name'], $reg_url);
|
134 |
$body = html_entity_decode($body);
|
135 |
-
|
|
|
|
|
136 |
$headers = 'From: ' . $from_address . "\r\n";
|
137 |
}
|
138 |
|
63 |
$body = "Your account has been upgraded successfully";
|
64 |
}
|
65 |
$from_address = $settings->get_value('email-from');
|
66 |
+
|
67 |
+
$additional_args = array();
|
68 |
+
$email_body = SwpmMiscUtils::replace_dynamic_tags($body, $swpm_id, $additional_args);
|
|
|
|
|
69 |
$headers = 'From: ' . $from_address . "\r\n";
|
70 |
}// End of existing user account upgrade
|
71 |
else {
|
126 |
$body = "Please use the following link to complete your registration. \n {reg_link}";
|
127 |
}
|
128 |
$from_address = $settings->get_value('email-from');
|
|
|
|
|
|
|
129 |
$body = html_entity_decode($body);
|
130 |
+
|
131 |
+
$additional_args = array('reg_link' => $reg_url);
|
132 |
+
$email_body = SwpmMiscUtils::replace_dynamic_tags($body, $id, $additional_args);
|
133 |
$headers = 'From: ' . $from_address . "\r\n";
|
134 |
}
|
135 |
|
languages/swpm-ca_ES.mo
ADDED
Binary file
|
languages/swpm-ca_ES.po
ADDED
@@ -0,0 +1,1324 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: Simple Membership\n"
|
4 |
+
"POT-Creation-Date: 2015-10-20 18:32+0200\n"
|
5 |
+
"PO-Revision-Date: 2015-10-20 20:29+0200\n"
|
6 |
+
"Language-Team: \n"
|
7 |
+
"MIME-Version: 1.0\n"
|
8 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
9 |
+
"Content-Transfer-Encoding: 8bit\n"
|
10 |
+
"X-Generator: Poedit 1.8.5\n"
|
11 |
+
"X-Poedit-KeywordsList: __;_e\n"
|
12 |
+
"X-Poedit-Basepath: .\n"
|
13 |
+
"Last-Translator: \n"
|
14 |
+
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
+
"Language: ca_ES\n"
|
16 |
+
"X-Poedit-SearchPath-0: .\n"
|
17 |
+
|
18 |
+
#: classes/class.simple-wp-membership.php:263
|
19 |
+
msgid "You are not logged in."
|
20 |
+
msgstr "No esteu connectat."
|
21 |
+
|
22 |
+
#: classes/class.simple-wp-membership.php:297
|
23 |
+
msgid "Simple WP Membership Protection"
|
24 |
+
msgstr "Protecció Simple per Usuaris de WP"
|
25 |
+
|
26 |
+
#: classes/class.simple-wp-membership.php:309
|
27 |
+
msgid "Simple Membership Protection options"
|
28 |
+
msgstr "Opcions simples de pertinença i protecció"
|
29 |
+
|
30 |
+
#: classes/class.simple-wp-membership.php:325
|
31 |
+
msgid "Do you want to protect this content?"
|
32 |
+
msgstr "Voleu protegir aquest contingut?"
|
33 |
+
|
34 |
+
#: classes/class.simple-wp-membership.php:330
|
35 |
+
msgid "Select the membership level that can access this content:"
|
36 |
+
msgstr ""
|
37 |
+
"Seleccioneu el nivell de pertinença que pot accedir a aquest contingut:"
|
38 |
+
|
39 |
+
#: classes/class.simple-wp-membership.php:463
|
40 |
+
msgid "WP Membership"
|
41 |
+
msgstr "Membres de WP"
|
42 |
+
|
43 |
+
#: classes/class.simple-wp-membership.php:464 classes/class.swpm-members.php:10
|
44 |
+
#: views/admin_members_menu.php:2
|
45 |
+
msgid "Members"
|
46 |
+
msgstr "Membres"
|
47 |
+
|
48 |
+
#: classes/class.simple-wp-membership.php:465
|
49 |
+
#: classes/class.swpm-category-list.php:20
|
50 |
+
#: classes/class.swpm-membership-levels.php:11
|
51 |
+
msgid "Membership Levels"
|
52 |
+
msgstr "Nivells"
|
53 |
+
|
54 |
+
#: classes/class.simple-wp-membership.php:466
|
55 |
+
msgid "Settings"
|
56 |
+
msgstr "Ajustos"
|
57 |
+
|
58 |
+
#: classes/class.simple-wp-membership.php:467
|
59 |
+
msgid "Payments"
|
60 |
+
msgstr "Pagaments"
|
61 |
+
|
62 |
+
#: classes/class.simple-wp-membership.php:468
|
63 |
+
msgid "Add-ons"
|
64 |
+
msgstr "Afegits"
|
65 |
+
|
66 |
+
#: classes/class.swpm-access-control.php:21
|
67 |
+
#: classes/class.swpm-access-control.php:28
|
68 |
+
#: classes/class.swpm-access-control.php:55
|
69 |
+
msgid "You need to login to view this content. "
|
70 |
+
msgstr "Has d’identificar-te per poder veure aquest contingut."
|
71 |
+
|
72 |
+
#: classes/class.swpm-access-control.php:34
|
73 |
+
#: classes/class.swpm-access-control.php:60
|
74 |
+
msgid ""
|
75 |
+
"Your account has expired. Please renew your account to gain access to this "
|
76 |
+
"content."
|
77 |
+
msgstr ""
|
78 |
+
"El teu compte ha caducat. Si et plau renova el teu compte per poder "
|
79 |
+
"continuar accedint a aquest contingut."
|
80 |
+
|
81 |
+
#: classes/class.swpm-access-control.php:41
|
82 |
+
msgid "This content can only be viewed by members who joined on or before "
|
83 |
+
msgstr ""
|
84 |
+
"Aquest contingut només pot ser visualitzat per membres que s’han identificat "
|
85 |
+
"prèviament"
|
86 |
+
|
87 |
+
#: classes/class.swpm-access-control.php:46
|
88 |
+
#: classes/class.swpm-access-control.php:66
|
89 |
+
msgid "This content is not permitted for your membership level."
|
90 |
+
msgstr "Aquest contingut no és accessible amb el seu nivell d’accés."
|
91 |
+
|
92 |
+
#: classes/class.swpm-access-control.php:84
|
93 |
+
msgid " The rest of the content is not permitted for your membership level."
|
94 |
+
msgstr ""
|
95 |
+
"La resta d’aquest contingut no és accessible amb el seu nivell d’accés."
|
96 |
+
|
97 |
+
#: classes/class.swpm-access-control.php:88
|
98 |
+
#: classes/class.swpm-access-control.php:106
|
99 |
+
msgid "You need to login to view the rest of the content. "
|
100 |
+
msgstr "Has d’identificar-te per poder veure la resta d’aquest contingut"
|
101 |
+
|
102 |
+
#: classes/class.swpm-admin-registration.php:54
|
103 |
+
msgid "Member record added successfully."
|
104 |
+
msgstr "Registre d’usuari efectuat amb èxit."
|
105 |
+
|
106 |
+
#: classes/class.swpm-admin-registration.php:59
|
107 |
+
#: classes/class.swpm-admin-registration.php:100
|
108 |
+
#: classes/class.swpm-membership-level.php:43
|
109 |
+
#: classes/class.swpm-membership-level.php:62
|
110 |
+
msgid "Please correct the following:"
|
111 |
+
msgstr "Si us plau corregiu el següent:"
|
112 |
+
|
113 |
+
#: classes/class.swpm-admin-registration.php:91
|
114 |
+
msgid "Your current password"
|
115 |
+
msgstr "La teva contrasenya actual"
|
116 |
+
|
117 |
+
#: classes/class.swpm-ajax.php:14
|
118 |
+
msgid "Invalid Email Address"
|
119 |
+
msgstr "Adreça de correu incorrecta"
|
120 |
+
|
121 |
+
#: classes/class.swpm-ajax.php:21 classes/class.swpm-ajax.php:32
|
122 |
+
msgid "Aready taken"
|
123 |
+
msgstr "Ja està agafat"
|
124 |
+
|
125 |
+
#: classes/class.swpm-ajax.php:33
|
126 |
+
msgid "Available"
|
127 |
+
msgstr "Disponible"
|
128 |
+
|
129 |
+
#: classes/class.swpm-auth.php:50
|
130 |
+
msgid "User Not Found."
|
131 |
+
msgstr "Usuari no trobat."
|
132 |
+
|
133 |
+
#: classes/class.swpm-auth.php:57
|
134 |
+
msgid "Password Empty or Invalid."
|
135 |
+
msgstr "Contrasenya en blanc o incorrecta."
|
136 |
+
|
137 |
+
#: classes/class.swpm-auth.php:82
|
138 |
+
msgid "Account is inactive."
|
139 |
+
msgstr "El compte és inactiu"
|
140 |
+
|
141 |
+
#: classes/class.swpm-auth.php:85
|
142 |
+
msgid "Account is pending."
|
143 |
+
msgstr "El compte està en tràmit."
|
144 |
+
|
145 |
+
#: classes/class.swpm-auth.php:88 classes/class.swpm-auth.php:106
|
146 |
+
msgid "Account has expired."
|
147 |
+
msgstr "El compte ha caducat."
|
148 |
+
|
149 |
+
#: classes/class.swpm-auth.php:114
|
150 |
+
msgid "You are logged in as:"
|
151 |
+
msgstr "Has connectat com:"
|
152 |
+
|
153 |
+
#: classes/class.swpm-auth.php:160
|
154 |
+
msgid "Logged Out Successfully."
|
155 |
+
msgstr "S’ha desconnectat correctament. "
|
156 |
+
|
157 |
+
#: classes/class.swpm-auth.php:210
|
158 |
+
msgid "Session Expired."
|
159 |
+
msgstr "La sessió ha finalitzat."
|
160 |
+
|
161 |
+
#: classes/class.swpm-auth.php:219
|
162 |
+
msgid "Invalid User Name"
|
163 |
+
msgstr "Nom no vàlid"
|
164 |
+
|
165 |
+
#: classes/class.swpm-auth.php:227
|
166 |
+
msgid "Please login again."
|
167 |
+
msgstr "Si us plau torneu a connectar."
|
168 |
+
|
169 |
+
#: classes/class.swpm-category-list.php:19 classes/class.swpm-members.php:23
|
170 |
+
#: classes/class.swpm-membership-levels.php:10
|
171 |
+
#: classes/class.swpm-membership-levels.php:20
|
172 |
+
#: classes/admin-includes/class.swpm-payments-list-table.php:53
|
173 |
+
#: views/add.php:30 views/admin_member_form_common_part.php:2 views/edit.php:52
|
174 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:36
|
175 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:217
|
176 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:37
|
177 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:310
|
178 |
+
msgid "Membership Level"
|
179 |
+
msgstr "Nivell de seguretat"
|
180 |
+
|
181 |
+
#: classes/class.swpm-category-list.php:33 classes/class.swpm-members.php:18
|
182 |
+
#: classes/class.swpm-membership-levels.php:19
|
183 |
+
msgid "ID"
|
184 |
+
msgstr "ID"
|
185 |
+
|
186 |
+
#: classes/class.swpm-category-list.php:34
|
187 |
+
msgid "Name"
|
188 |
+
msgstr "Nom"
|
189 |
+
|
190 |
+
#: classes/class.swpm-category-list.php:35
|
191 |
+
msgid "Description"
|
192 |
+
msgstr "Descripció"
|
193 |
+
|
194 |
+
#: classes/class.swpm-category-list.php:36
|
195 |
+
msgid "Count"
|
196 |
+
msgstr "Compte"
|
197 |
+
|
198 |
+
#: classes/class.swpm-category-list.php:80
|
199 |
+
msgid "Category protection updated!"
|
200 |
+
msgstr "Categoria de protecció actualitzada!"
|
201 |
+
|
202 |
+
#: classes/class.swpm-form.php:26
|
203 |
+
msgid ""
|
204 |
+
"Wordpress account exists with given user name. But given email doesn't match."
|
205 |
+
msgstr "Existeix un usuari amb aquest usuari, però el correu no coincideix."
|
206 |
+
|
207 |
+
#: classes/class.swpm-form.php:31
|
208 |
+
msgid ""
|
209 |
+
"Wordpress account exists with given email. But given user name doesn't match."
|
210 |
+
msgstr ""
|
211 |
+
"Existeix un compte amb aquest correu, però el nom d’usuari no coincideix."
|
212 |
+
|
213 |
+
#: classes/class.swpm-form.php:40
|
214 |
+
msgid "User name is required"
|
215 |
+
msgstr "Cal un nom d’usuari"
|
216 |
+
|
217 |
+
#: classes/class.swpm-form.php:44
|
218 |
+
msgid "User name contains invalid character"
|
219 |
+
msgstr "El nom d’usuari conté caràcters no vàlids"
|
220 |
+
|
221 |
+
#: classes/class.swpm-form.php:52
|
222 |
+
msgid "User name already exists."
|
223 |
+
msgstr "Ja existeix aquest nom d’usuari."
|
224 |
+
|
225 |
+
#: classes/class.swpm-form.php:75
|
226 |
+
msgid "Password is required"
|
227 |
+
msgstr "Cal una contrasenya"
|
228 |
+
|
229 |
+
#: classes/class.swpm-form.php:82
|
230 |
+
msgid "Password mismatch"
|
231 |
+
msgstr "La contrasenya és incorrecta"
|
232 |
+
|
233 |
+
#: classes/class.swpm-form.php:93
|
234 |
+
msgid "Email is required"
|
235 |
+
msgstr "Cal escriure un correu"
|
236 |
+
|
237 |
+
#: classes/class.swpm-form.php:97
|
238 |
+
msgid "Email is invalid"
|
239 |
+
msgstr "El còrreu no és vàlid"
|
240 |
+
|
241 |
+
#: classes/class.swpm-form.php:113
|
242 |
+
msgid "Email is already used."
|
243 |
+
msgstr "Aquest correu ja es fa servir."
|
244 |
+
|
245 |
+
#: classes/class.swpm-form.php:170
|
246 |
+
msgid "Member since field is invalid"
|
247 |
+
msgstr "Camp de membre no vàlid"
|
248 |
+
|
249 |
+
#: classes/class.swpm-form.php:181
|
250 |
+
msgid "Access starts field is invalid"
|
251 |
+
msgstr "El camp d’accés és no vàlid "
|
252 |
+
|
253 |
+
#: classes/class.swpm-form.php:191
|
254 |
+
msgid "Gender field is invalid"
|
255 |
+
msgstr "Camp de gènere no vàlid"
|
256 |
+
|
257 |
+
#: classes/class.swpm-form.php:202
|
258 |
+
msgid "Account state field is invalid"
|
259 |
+
msgstr "Camp d’estat no vàlid"
|
260 |
+
|
261 |
+
#: classes/class.swpm-form.php:209
|
262 |
+
msgid "Invalid membership level"
|
263 |
+
msgstr "Nivell d’accés no vàlid"
|
264 |
+
|
265 |
+
#: classes/class.swpm-front-registration.php:71
|
266 |
+
msgid "Security check: captcha validation failed."
|
267 |
+
msgstr "La validació ha fallat. "
|
268 |
+
|
269 |
+
#: classes/class.swpm-front-registration.php:80
|
270 |
+
msgid "Registration Successful. "
|
271 |
+
msgstr "Registre realitzat amb correctament."
|
272 |
+
|
273 |
+
#: classes/class.swpm-front-registration.php:80
|
274 |
+
#: classes/class.swpm-settings.php:377
|
275 |
+
msgid "Please"
|
276 |
+
msgstr "Per favor"
|
277 |
+
|
278 |
+
#: classes/class.swpm-front-registration.php:80
|
279 |
+
#: classes/class.swpm-settings.php:377 views/login.php:21
|
280 |
+
msgid "Login"
|
281 |
+
msgstr "Entra"
|
282 |
+
|
283 |
+
#: classes/class.swpm-front-registration.php:92
|
284 |
+
#: classes/class.swpm-front-registration.php:179
|
285 |
+
msgid "Please correct the following"
|
286 |
+
msgstr "Si us plau corregiu el següent"
|
287 |
+
|
288 |
+
#: classes/class.swpm-front-registration.php:123
|
289 |
+
msgid "Membership Level Couldn't be found."
|
290 |
+
msgstr "Nivell de seguretat no trobat"
|
291 |
+
|
292 |
+
#: classes/class.swpm-front-registration.php:162
|
293 |
+
msgid "Profile updated successfully."
|
294 |
+
msgstr "Perfil actualitzat amb èxit."
|
295 |
+
|
296 |
+
#: classes/class.swpm-front-registration.php:170
|
297 |
+
msgid ""
|
298 |
+
"Profile updated successfully. You will need to re-login since you changed "
|
299 |
+
"your password."
|
300 |
+
msgstr "Perfil actualitzat amb èxit. Cal reiniciar."
|
301 |
+
|
302 |
+
#: classes/class.swpm-front-registration.php:189
|
303 |
+
msgid "Email address not valid."
|
304 |
+
msgstr "Correu incorrecte."
|
305 |
+
|
306 |
+
#: classes/class.swpm-front-registration.php:200
|
307 |
+
msgid "No user found with that email address."
|
308 |
+
msgstr "No hi ha cap usuari amb aquest correu."
|
309 |
+
|
310 |
+
#: classes/class.swpm-front-registration.php:201
|
311 |
+
#: classes/class.swpm-front-registration.php:224
|
312 |
+
msgid "Email Address: "
|
313 |
+
msgstr "Adreça de correu:"
|
314 |
+
|
315 |
+
#: classes/class.swpm-front-registration.php:223
|
316 |
+
msgid "New password has been sent to your email address."
|
317 |
+
msgstr "Hem tramés una nova contrasenya al seu correu."
|
318 |
+
|
319 |
+
#: classes/class.swpm-init-time-tasks.php:108
|
320 |
+
msgid "Sorry, Nonce verification failed."
|
321 |
+
msgstr "Perdò, ha fallat la verificació."
|
322 |
+
|
323 |
+
#: classes/class.swpm-init-time-tasks.php:115
|
324 |
+
msgid "Sorry, Password didn't match."
|
325 |
+
msgstr "Perdò, la contrasenya és incorrecta."
|
326 |
+
|
327 |
+
#: classes/class.swpm-level-form.php:47
|
328 |
+
msgid "Date format is not valid."
|
329 |
+
msgstr "Format de data incorrecte."
|
330 |
+
|
331 |
+
#: classes/class.swpm-level-form.php:55
|
332 |
+
msgid "Access duration must be > 0."
|
333 |
+
msgstr "La duració ha de ser > 0."
|
334 |
+
|
335 |
+
#: classes/class.swpm-member-utils.php:22
|
336 |
+
#: classes/class.swpm-member-utils.php:30
|
337 |
+
#: classes/class.swpm-member-utils.php:38
|
338 |
+
#: classes/class.swpm-member-utils.php:48
|
339 |
+
msgid "User is not logged in."
|
340 |
+
msgstr "L’usuari no està connectat."
|
341 |
+
|
342 |
+
#: classes/class.swpm-members.php:9
|
343 |
+
msgid "Member"
|
344 |
+
msgstr "Membre"
|
345 |
+
|
346 |
+
#: classes/class.swpm-members.php:19 views/add.php:6 views/edit.php:4
|
347 |
+
msgid "User Name"
|
348 |
+
msgstr "Nom d’usuari"
|
349 |
+
|
350 |
+
#: classes/class.swpm-members.php:20
|
351 |
+
#: classes/admin-includes/class.swpm-payments-list-table.php:48
|
352 |
+
#: views/add.php:22 views/admin_member_form_common_part.php:15
|
353 |
+
#: views/edit.php:20
|
354 |
+
msgid "First Name"
|
355 |
+
msgstr "Nom"
|
356 |
+
|
357 |
+
#: classes/class.swpm-members.php:21
|
358 |
+
#: classes/admin-includes/class.swpm-payments-list-table.php:49
|
359 |
+
#: views/add.php:26 views/admin_member_form_common_part.php:19
|
360 |
+
#: views/edit.php:24
|
361 |
+
msgid "Last Name"
|
362 |
+
msgstr "Cognoms"
|
363 |
+
|
364 |
+
#: classes/class.swpm-members.php:22 views/add.php:10 views/edit.php:8
|
365 |
+
msgid "Email"
|
366 |
+
msgstr "Correu"
|
367 |
+
|
368 |
+
#: classes/class.swpm-members.php:24 views/admin_member_form_common_part.php:11
|
369 |
+
msgid "Access Starts"
|
370 |
+
msgstr "Inici de l’accés"
|
371 |
+
|
372 |
+
#: classes/class.swpm-members.php:25
|
373 |
+
msgid "Account State"
|
374 |
+
msgstr "Estat del compte"
|
375 |
+
|
376 |
+
#: classes/class.swpm-members.php:38
|
377 |
+
#: classes/class.swpm-membership-levels.php:35
|
378 |
+
#: classes/admin-includes/class.swpm-payment-buttons-list-table.php:80
|
379 |
+
#: classes/admin-includes/class.swpm-payments-list-table.php:68
|
380 |
+
msgid "Delete"
|
381 |
+
msgstr "Esborrar"
|
382 |
+
|
383 |
+
#: classes/class.swpm-members.php:112
|
384 |
+
msgid "No Member found."
|
385 |
+
msgstr "No es troba el membre."
|
386 |
+
|
387 |
+
#: classes/class.swpm-membership-level.php:38
|
388 |
+
msgid "Membership Level Creation Successful."
|
389 |
+
msgstr "Nivell creat correctament."
|
390 |
+
|
391 |
+
#: classes/class.swpm-membership-level.php:57
|
392 |
+
msgid "Updated Successfully."
|
393 |
+
msgstr "Actualització correcta."
|
394 |
+
|
395 |
+
#: classes/class.swpm-membership-levels.php:21
|
396 |
+
msgid "Role"
|
397 |
+
msgstr "Rol"
|
398 |
+
|
399 |
+
#: classes/class.swpm-membership-levels.php:22
|
400 |
+
msgid "Access Valid For/Until"
|
401 |
+
msgstr "Accés vàlid fins"
|
402 |
+
|
403 |
+
#: classes/class.swpm-misc-utils.php:50
|
404 |
+
msgid "Registration"
|
405 |
+
msgstr "Registre"
|
406 |
+
|
407 |
+
#: classes/class.swpm-misc-utils.php:73
|
408 |
+
msgid "Member Login"
|
409 |
+
msgstr "Entrada Membres"
|
410 |
+
|
411 |
+
#: classes/class.swpm-misc-utils.php:96
|
412 |
+
msgid "Profile"
|
413 |
+
msgstr "Perfil"
|
414 |
+
|
415 |
+
#: classes/class.swpm-misc-utils.php:119
|
416 |
+
msgid "Password Reset"
|
417 |
+
msgstr "Canviar Contrasenya"
|
418 |
+
|
419 |
+
#: classes/class.swpm-settings.php:21 classes/class.swpm-settings.php:39
|
420 |
+
msgid "General Settings"
|
421 |
+
msgstr "Paràmetres generals"
|
422 |
+
|
423 |
+
#: classes/class.swpm-settings.php:21
|
424 |
+
msgid "Payment Settings"
|
425 |
+
msgstr "Paràmetres de Pagament"
|
426 |
+
|
427 |
+
#: classes/class.swpm-settings.php:22
|
428 |
+
msgid "Email Settings"
|
429 |
+
msgstr "Paràmetres del correu"
|
430 |
+
|
431 |
+
#: classes/class.swpm-settings.php:22
|
432 |
+
msgid "Tools"
|
433 |
+
msgstr "Eines"
|
434 |
+
|
435 |
+
#: classes/class.swpm-settings.php:22 classes/class.swpm-settings.php:150
|
436 |
+
msgid "Advanced Settings"
|
437 |
+
msgstr "Paràmetres Avançats"
|
438 |
+
|
439 |
+
#: classes/class.swpm-settings.php:22
|
440 |
+
msgid "Addons Settings"
|
441 |
+
msgstr "Paràmetres Extres"
|
442 |
+
|
443 |
+
#: classes/class.swpm-settings.php:38
|
444 |
+
msgid "Plugin Documentation"
|
445 |
+
msgstr "Documentació del afegit"
|
446 |
+
|
447 |
+
#: classes/class.swpm-settings.php:40
|
448 |
+
msgid "Enable Free Membership"
|
449 |
+
msgstr "Permetre membres gratuits"
|
450 |
+
|
451 |
+
#: classes/class.swpm-settings.php:41
|
452 |
+
msgid ""
|
453 |
+
"Enable/disable registration for free membership level. When you enable this "
|
454 |
+
"option, make sure to specify a free membership level ID in the field below."
|
455 |
+
msgstr ""
|
456 |
+
"Activa/Desactiva el registre de membres gratuits. Quan actives aquesta opció "
|
457 |
+
"cal estar segur d’especificar l’identificador del nivell gratuit en el camp "
|
458 |
+
"inferior."
|
459 |
+
|
460 |
+
#: classes/class.swpm-settings.php:42
|
461 |
+
msgid "Free Membership Level ID"
|
462 |
+
msgstr "Identificador dels membres gratuits."
|
463 |
+
|
464 |
+
#: classes/class.swpm-settings.php:43
|
465 |
+
msgid "Assign free membership level ID"
|
466 |
+
msgstr "Assignar l’identificador dels membres gratuits"
|
467 |
+
|
468 |
+
#: classes/class.swpm-settings.php:44
|
469 |
+
msgid "Enable More Tag Protection"
|
470 |
+
msgstr "Activar protecció d’etiquetes"
|
471 |
+
|
472 |
+
#: classes/class.swpm-settings.php:45
|
473 |
+
msgid ""
|
474 |
+
"Enables or disables \"more\" tag protection in the posts and pages. Anything "
|
475 |
+
"after the More tag is protected. Anything before the more tag is teaser "
|
476 |
+
"content."
|
477 |
+
msgstr ""
|
478 |
+
"Activa o desactiva el la protecció addicional d'etiquetes a les entrades i "
|
479 |
+
"pàgines. Qualsevol cosa després de l'etiqueta Més està protegida. Qualsevol "
|
480 |
+
"cosa abans de l'etiqueta és més contingut de sumari."
|
481 |
+
|
482 |
+
#: classes/class.swpm-settings.php:46
|
483 |
+
msgid "Hide Adminbar"
|
484 |
+
msgstr "Amagar barra d’administració"
|
485 |
+
|
486 |
+
#: classes/class.swpm-settings.php:47
|
487 |
+
msgid ""
|
488 |
+
"WordPress shows an admin toolbar to the logged in users of the site. Check "
|
489 |
+
"this box if you want to hide that admin toolbar in the fronend of your site."
|
490 |
+
msgstr ""
|
491 |
+
"WordPress mostra una barra d'eines d'administració per a la els usuaris "
|
492 |
+
"registrats del lloc. Marqueu aquesta casella si voleu amagar aquesta barra "
|
493 |
+
"d'eines d'administració en el fronend del seu lloc."
|
494 |
+
|
495 |
+
#: classes/class.swpm-settings.php:49
|
496 |
+
msgid "Default Account Status"
|
497 |
+
msgstr "Status per defecte del compte"
|
498 |
+
|
499 |
+
#: classes/class.swpm-settings.php:52
|
500 |
+
msgid ""
|
501 |
+
"Select the default account status for newly registered users. If you want to "
|
502 |
+
"manually approve the members then you can set the status to \"Pending\"."
|
503 |
+
msgstr ""
|
504 |
+
"Seleccioneu l'estat del compte per defecte per als usuaris recentment "
|
505 |
+
"registrats. Si desitja aprovar manualment els membres llavors es pot "
|
506 |
+
"establir l'estat a \"Pendent\"."
|
507 |
+
|
508 |
+
#: classes/class.swpm-settings.php:53
|
509 |
+
msgid "Allow Account Deletion"
|
510 |
+
msgstr "Permetre esborrar comptes"
|
511 |
+
|
512 |
+
#: classes/class.swpm-settings.php:55
|
513 |
+
msgid "Allow users to delete their accounts."
|
514 |
+
msgstr "Permetre als usuaris esborrar el seu compte."
|
515 |
+
|
516 |
+
#: classes/class.swpm-settings.php:56
|
517 |
+
msgid "Auto Delete Pending Account"
|
518 |
+
msgstr "Autoesborrat de comptes pendents"
|
519 |
+
|
520 |
+
#: classes/class.swpm-settings.php:59
|
521 |
+
msgid "Select how long you want to keep \"pending\" account."
|
522 |
+
msgstr "Seleccioneu quant temps voleu mantenir \"pendent\" un compte."
|
523 |
+
|
524 |
+
#: classes/class.swpm-settings.php:67
|
525 |
+
msgid "Pages Settings"
|
526 |
+
msgstr "Configuració de les pàgines"
|
527 |
+
|
528 |
+
#: classes/class.swpm-settings.php:68
|
529 |
+
msgid "Login Page URL"
|
530 |
+
msgstr "URL de la pàgina d’entrada"
|
531 |
+
|
532 |
+
#: classes/class.swpm-settings.php:70
|
533 |
+
msgid "Registration Page URL"
|
534 |
+
msgstr "URL de la pàgina de registre"
|
535 |
+
|
536 |
+
#: classes/class.swpm-settings.php:72
|
537 |
+
msgid "Join Us Page URL"
|
538 |
+
msgstr "URL de la pàgina de uneix-te"
|
539 |
+
|
540 |
+
#: classes/class.swpm-settings.php:74
|
541 |
+
msgid "Edit Profile Page URL"
|
542 |
+
msgstr "URL de la pàgina d’edició del perfil"
|
543 |
+
|
544 |
+
#: classes/class.swpm-settings.php:76
|
545 |
+
msgid "Password Reset Page URL"
|
546 |
+
msgstr "URL de la pàgina de canviar la contrasenya"
|
547 |
+
|
548 |
+
#: classes/class.swpm-settings.php:79
|
549 |
+
msgid "Test & Debug Settings"
|
550 |
+
msgstr "Configuració de Test i depuració"
|
551 |
+
|
552 |
+
#: classes/class.swpm-settings.php:81
|
553 |
+
msgid "Check this option to enable debug logging."
|
554 |
+
msgstr "Marqueu aquesta opció per activar el registre de depuració."
|
555 |
+
|
556 |
+
#: classes/class.swpm-settings.php:86
|
557 |
+
msgid "Enable Sandbox Testing"
|
558 |
+
msgstr "Permetre test de proves"
|
559 |
+
|
560 |
+
#: classes/class.swpm-settings.php:87
|
561 |
+
msgid "Enable this option if you want to do sandbox payment testing."
|
562 |
+
msgstr "Habiliteu aquesta opció si vostè vol fer la prova de pagament simulat."
|
563 |
+
|
564 |
+
#: classes/class.swpm-settings.php:97 classes/class.swpm-settings.php:145
|
565 |
+
#: classes/class.swpm-settings.php:243
|
566 |
+
msgid "Settings updated!"
|
567 |
+
msgstr "Configuració actualitzada!"
|
568 |
+
|
569 |
+
#: classes/class.swpm-settings.php:102
|
570 |
+
msgid "Email Misc. Settings"
|
571 |
+
msgstr "Paràmetres del correu"
|
572 |
+
|
573 |
+
#: classes/class.swpm-settings.php:103
|
574 |
+
msgid "From Email Address"
|
575 |
+
msgstr "Emissor del correu"
|
576 |
+
|
577 |
+
#: classes/class.swpm-settings.php:106
|
578 |
+
msgid "Email Settings (Prompt to Complete Registration )"
|
579 |
+
msgstr ""
|
580 |
+
"Configuració del correu electrònic (Sol·licitud per a completar el registre)"
|
581 |
+
|
582 |
+
#: classes/class.swpm-settings.php:107 classes/class.swpm-settings.php:113
|
583 |
+
#: classes/class.swpm-settings.php:125 classes/class.swpm-settings.php:132
|
584 |
+
msgid "Email Subject"
|
585 |
+
msgstr "Assumpte del correu"
|
586 |
+
|
587 |
+
#: classes/class.swpm-settings.php:109 classes/class.swpm-settings.php:115
|
588 |
+
#: classes/class.swpm-settings.php:127 classes/class.swpm-settings.php:134
|
589 |
+
msgid "Email Body"
|
590 |
+
msgstr "Cos del correu"
|
591 |
+
|
592 |
+
#: classes/class.swpm-settings.php:112
|
593 |
+
msgid "Email Settings (Registration Complete)"
|
594 |
+
msgstr "Configuració del correu electrònic (Registre complet)"
|
595 |
+
|
596 |
+
#: classes/class.swpm-settings.php:117
|
597 |
+
msgid "Send Notification to Admin"
|
598 |
+
msgstr "Trametre una notificació al Administrador"
|
599 |
+
|
600 |
+
#: classes/class.swpm-settings.php:118
|
601 |
+
msgid ""
|
602 |
+
"Enable this option if you want the admin to receive a notification when a "
|
603 |
+
"member registers."
|
604 |
+
msgstr ""
|
605 |
+
"Habiliteu aquesta opció si voleu que l'administrador per rebre una "
|
606 |
+
"notificació quan un registres membres."
|
607 |
+
|
608 |
+
#: classes/class.swpm-settings.php:119
|
609 |
+
msgid "Admin Email Address"
|
610 |
+
msgstr "Correu del administrador"
|
611 |
+
|
612 |
+
#: classes/class.swpm-settings.php:120
|
613 |
+
msgid ""
|
614 |
+
"Enter the email address where you want the admin notification email to be "
|
615 |
+
"sent to."
|
616 |
+
msgstr ""
|
617 |
+
"Introduïu l'adreça de correu electrònic on voleu enviar el correu electrònic "
|
618 |
+
"de notificació a l’administració."
|
619 |
+
|
620 |
+
#: classes/class.swpm-settings.php:121
|
621 |
+
msgid "Send Email to Member When Added via Admin Dashboard"
|
622 |
+
msgstr ""
|
623 |
+
"Enviar correu electrònic notificant membres afegits a través del panell "
|
624 |
+
"d'administració"
|
625 |
+
|
626 |
+
#: classes/class.swpm-settings.php:124
|
627 |
+
msgid "Email Settings (Password Reset)"
|
628 |
+
msgstr "Configuració del correu electrònic (Restablir contrasenya)"
|
629 |
+
|
630 |
+
#: classes/class.swpm-settings.php:131
|
631 |
+
msgid " Email Settings (Account Upgrade Notification)"
|
632 |
+
msgstr ""
|
633 |
+
"Configuració del correu electrònic (Compte d'actualització de notificació)"
|
634 |
+
|
635 |
+
#: classes/class.swpm-settings.php:152
|
636 |
+
msgid "Enable Expired Account Login"
|
637 |
+
msgstr "Habilitar la entrada de comptes caducats"
|
638 |
+
|
639 |
+
#: classes/class.swpm-settings.php:153
|
640 |
+
msgid ""
|
641 |
+
"When enabled, expired members will be able to log into the system but won't "
|
642 |
+
"be able to view any protected content. This allows them to easily renew "
|
643 |
+
"their account by making another payment."
|
644 |
+
msgstr ""
|
645 |
+
"Quan s'activa, els membres caducats podran iniciar sessió en el sistema, "
|
646 |
+
"però no seran capaços de veure qualsevol contingut protegit. Això els permet "
|
647 |
+
"renovar fàcilment el seu compte al fer un altre pagament."
|
648 |
+
|
649 |
+
#: classes/class.swpm-settings.php:377
|
650 |
+
msgid "Not a Member?"
|
651 |
+
msgstr "No ets membre?"
|
652 |
+
|
653 |
+
#: classes/class.swpm-settings.php:377 views/login.php:27
|
654 |
+
msgid "Join Us"
|
655 |
+
msgstr "Uneix-te"
|
656 |
+
|
657 |
+
#: classes/class.swpm-utils.php:67
|
658 |
+
msgid "Active"
|
659 |
+
msgstr "Actiu"
|
660 |
+
|
661 |
+
#: classes/class.swpm-utils.php:68
|
662 |
+
msgid "Inactive"
|
663 |
+
msgstr "Inactiu"
|
664 |
+
|
665 |
+
#: classes/class.swpm-utils.php:69
|
666 |
+
msgid "Pending"
|
667 |
+
msgstr "Pendent"
|
668 |
+
|
669 |
+
#: classes/class.swpm-utils.php:70
|
670 |
+
msgid "Expired"
|
671 |
+
msgstr "Caducat"
|
672 |
+
|
673 |
+
#: classes/class.swpm-utils.php:296
|
674 |
+
msgid "Never"
|
675 |
+
msgstr "Mai"
|
676 |
+
|
677 |
+
#: classes/class.swpm-utils.php:370
|
678 |
+
msgid "Delete Account"
|
679 |
+
msgstr "Compte esborrat"
|
680 |
+
|
681 |
+
#: classes/admin-includes/class.swpm-payment-buttons-list-table.php:63
|
682 |
+
msgid "Payment Button ID"
|
683 |
+
msgstr "ID del botó de pagament"
|
684 |
+
|
685 |
+
#: classes/admin-includes/class.swpm-payment-buttons-list-table.php:64
|
686 |
+
msgid "Payment Button Title"
|
687 |
+
msgstr "Etiqueta del botó de pagament"
|
688 |
+
|
689 |
+
#: classes/admin-includes/class.swpm-payment-buttons-list-table.php:65
|
690 |
+
msgid "Membership Level ID"
|
691 |
+
msgstr "ID del nivell d’identificació"
|
692 |
+
|
693 |
+
#: classes/admin-includes/class.swpm-payment-buttons-list-table.php:66
|
694 |
+
msgid "Button Shortcode"
|
695 |
+
msgstr "Shortcode del botó"
|
696 |
+
|
697 |
+
#: classes/admin-includes/class.swpm-payment-buttons-list-table.php:106
|
698 |
+
#: views/admin_members_list.php:15
|
699 |
+
#: views/payments/admin_all_payment_transactions.php:33
|
700 |
+
msgid "The selected entry was deleted!"
|
701 |
+
msgstr "L’entrada seleccionada està esborrada!"
|
702 |
+
|
703 |
+
#: classes/admin-includes/class.swpm-payments-list-table.php:46
|
704 |
+
msgid "Row ID"
|
705 |
+
msgstr "ID de Casella"
|
706 |
+
|
707 |
+
#: classes/admin-includes/class.swpm-payments-list-table.php:47
|
708 |
+
#: views/forgot_password.php:5
|
709 |
+
msgid "Email Address"
|
710 |
+
msgstr "Adreça de correu"
|
711 |
+
|
712 |
+
#: classes/admin-includes/class.swpm-payments-list-table.php:50
|
713 |
+
msgid "Date"
|
714 |
+
msgstr "Data"
|
715 |
+
|
716 |
+
#: classes/admin-includes/class.swpm-payments-list-table.php:51
|
717 |
+
msgid "Transaction ID"
|
718 |
+
msgstr "ID de la transacció"
|
719 |
+
|
720 |
+
#: classes/admin-includes/class.swpm-payments-list-table.php:52
|
721 |
+
msgid "Amount"
|
722 |
+
msgstr "Import"
|
723 |
+
|
724 |
+
#: classes/common/class.swpm-list-table.php:137
|
725 |
+
msgid "List View"
|
726 |
+
msgstr "Vista de llista"
|
727 |
+
|
728 |
+
#: classes/common/class.swpm-list-table.php:138
|
729 |
+
msgid "Excerpt View"
|
730 |
+
msgstr "Vista de resum"
|
731 |
+
|
732 |
+
#: classes/common/class.swpm-list-table.php:305
|
733 |
+
msgid "No items found."
|
734 |
+
msgstr "No es troben entrades."
|
735 |
+
|
736 |
+
#: classes/common/class.swpm-list-table.php:431
|
737 |
+
msgid "Select bulk action"
|
738 |
+
msgstr "Seleccionar l’acció global"
|
739 |
+
|
740 |
+
#: classes/common/class.swpm-list-table.php:433
|
741 |
+
msgid "Bulk Actions"
|
742 |
+
msgstr "Accions globals"
|
743 |
+
|
744 |
+
#: classes/common/class.swpm-list-table.php:443
|
745 |
+
msgid "Apply"
|
746 |
+
msgstr "Aplicar"
|
747 |
+
|
748 |
+
#: classes/common/class.swpm-list-table.php:543
|
749 |
+
msgid "Filter by date"
|
750 |
+
msgstr "Filtre per dates"
|
751 |
+
|
752 |
+
#: classes/common/class.swpm-list-table.php:545
|
753 |
+
msgid "All dates"
|
754 |
+
msgstr "Totes les dates"
|
755 |
+
|
756 |
+
#: classes/common/class.swpm-list-table.php:555
|
757 |
+
#, php-format
|
758 |
+
msgid "%1$s %2$d"
|
759 |
+
msgstr "%1$s %2$d"
|
760 |
+
|
761 |
+
#: classes/common/class.swpm-list-table.php:599
|
762 |
+
#, php-format
|
763 |
+
msgid "%s pending"
|
764 |
+
msgstr "%s restant"
|
765 |
+
|
766 |
+
#: classes/common/class.swpm-list-table.php:704
|
767 |
+
msgid "Select Page"
|
768 |
+
msgstr "Seleccionar pàgina"
|
769 |
+
|
770 |
+
#: classes/common/class.swpm-list-table.php:848
|
771 |
+
msgid "Select All"
|
772 |
+
msgstr "Seleccionar tot"
|
773 |
+
|
774 |
+
#: classes/shortcode-related/class.swpm-shortcodes-handler.php:47
|
775 |
+
msgid "Your membership profile will be updated to reflect the payment."
|
776 |
+
msgstr "El seu perfil de membres s'actualitzarà per reflectir el pagament."
|
777 |
+
|
778 |
+
#: classes/shortcode-related/class.swpm-shortcodes-handler.php:48
|
779 |
+
msgid "Your profile username: "
|
780 |
+
msgstr "El seu perfil d’usuari:"
|
781 |
+
|
782 |
+
#: classes/shortcode-related/class.swpm-shortcodes-handler.php:60
|
783 |
+
msgid "Click on the following link to complete the registration."
|
784 |
+
msgstr "Feu clic al següent enllaç per a completar el registre."
|
785 |
+
|
786 |
+
#: classes/shortcode-related/class.swpm-shortcodes-handler.php:61
|
787 |
+
msgid "Click here to complete your paid registration"
|
788 |
+
msgstr "Feu clic aquí per completar la seva inscripció de pagament"
|
789 |
+
|
790 |
+
#: classes/shortcode-related/class.swpm-shortcodes-handler.php:66
|
791 |
+
msgid ""
|
792 |
+
"If you have just made a membership payment then your payment is yet to be "
|
793 |
+
"processed. Please check back in a few minutes. An email will be sent to you "
|
794 |
+
"with the details shortly."
|
795 |
+
msgstr ""
|
796 |
+
"Si vostè acaba de fer un pagament, el pagament encara no s'ha processat. Si "
|
797 |
+
"us plau, torni a uns pocs minuts. En breu se li trametrà un correu "
|
798 |
+
"electrònic amb els detalls."
|
799 |
+
|
800 |
+
#: views/add.php:14 views/admin_add.php:19 views/admin_edit.php:17
|
801 |
+
#: views/edit.php:12 views/login.php:11
|
802 |
+
msgid "Password"
|
803 |
+
msgstr "Contrasenya"
|
804 |
+
|
805 |
+
#: views/add.php:18 views/edit.php:16
|
806 |
+
msgid "Repeat Password"
|
807 |
+
msgstr "Repeteixi la contrasenya"
|
808 |
+
|
809 |
+
#: views/add.php:41
|
810 |
+
msgid "Register"
|
811 |
+
msgstr "Registre"
|
812 |
+
|
813 |
+
#: views/admin_add.php:6
|
814 |
+
msgid "Add Member"
|
815 |
+
msgstr "Afegir membre"
|
816 |
+
|
817 |
+
#: views/admin_add.php:7
|
818 |
+
msgid "Create a brand new user and add it to this site."
|
819 |
+
msgstr "Crea un nou usuari i l’afegeix a aquest lloc."
|
820 |
+
|
821 |
+
#: views/admin_add.php:11
|
822 |
+
msgid "User name"
|
823 |
+
msgstr "Nom d’usuari"
|
824 |
+
|
825 |
+
#: views/admin_add.php:11 views/admin_add.php:15 views/admin_add_level.php:11
|
826 |
+
#: views/admin_add_level.php:15 views/admin_add_level.php:19
|
827 |
+
#: views/admin_edit.php:9 views/admin_edit.php:13 views/admin_edit_level.php:10
|
828 |
+
#: views/admin_edit_level.php:14 views/admin_edit_level.php:18
|
829 |
+
msgid "(required)"
|
830 |
+
msgstr "(obligatori)"
|
831 |
+
|
832 |
+
#: views/admin_add.php:15 views/admin_edit.php:13
|
833 |
+
msgid "E-mail"
|
834 |
+
msgstr "Correu"
|
835 |
+
|
836 |
+
#: views/admin_add.php:19
|
837 |
+
msgid "(twice, required)"
|
838 |
+
msgstr "(dues vegades, es requereix)"
|
839 |
+
|
840 |
+
#: views/admin_add.php:24 views/admin_edit.php:21
|
841 |
+
msgid "Strength indicator"
|
842 |
+
msgstr "Força de la contrasenya"
|
843 |
+
|
844 |
+
#: views/admin_add.php:25 views/admin_edit.php:22
|
845 |
+
msgid ""
|
846 |
+
"Hint: The password should be at least seven characters long. To make it "
|
847 |
+
"stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
|
848 |
+
"$ % ^ & )."
|
849 |
+
msgstr ""
|
850 |
+
"Consell: La contrasenya ha de tenir almenys set caràcters. Per fer-ho més "
|
851 |
+
"fort, utilitzeu lletres majúscules i minúscules, nombres i símbols com! ? \"$"
|
852 |
+
"% ^ & Amp;)."
|
853 |
+
|
854 |
+
#: views/admin_add.php:29 views/admin_edit.php:26 views/loggedin.php:7
|
855 |
+
msgid "Account Status"
|
856 |
+
msgstr "Status del compte"
|
857 |
+
|
858 |
+
#: views/admin_add.php:39
|
859 |
+
msgid "Add New Member "
|
860 |
+
msgstr "Afegir un nou membre"
|
861 |
+
|
862 |
+
#: views/admin_addon_settings.php:3 views/admin_settings.php:3
|
863 |
+
#: views/admin_tools_settings.php:3 views/payments/admin_payment_settings.php:3
|
864 |
+
msgid "Simple WP Membership::Settings"
|
865 |
+
msgstr "Simple WP Membership::Configuració"
|
866 |
+
|
867 |
+
#: views/admin_addon_settings.php:8
|
868 |
+
msgid ""
|
869 |
+
"Some of the simple membership plugin's addon settings and options will be "
|
870 |
+
"displayed here (if you have them)"
|
871 |
+
msgstr ""
|
872 |
+
"Algunes de les configuracions i opcions de plugins es mostraran aquí (si els "
|
873 |
+
"té)"
|
874 |
+
|
875 |
+
#: views/admin_addon_settings.php:13
|
876 |
+
msgid "Save Changes"
|
877 |
+
msgstr "Desar canvis"
|
878 |
+
|
879 |
+
#: views/admin_add_level.php:6
|
880 |
+
msgid "Create new membership level."
|
881 |
+
msgstr "Crear un nou nivell de membres."
|
882 |
+
|
883 |
+
#: views/admin_add_level.php:11 views/admin_edit_level.php:10
|
884 |
+
msgid "Membership Level Name"
|
885 |
+
msgstr "Nom del nivell de membres"
|
886 |
+
|
887 |
+
#: views/admin_add_level.php:15 views/admin_edit_level.php:14
|
888 |
+
msgid "Default WordPress Role"
|
889 |
+
msgstr "Rol per defecte a WordPress"
|
890 |
+
|
891 |
+
#: views/admin_add_level.php:19 views/admin_edit_level.php:18
|
892 |
+
msgid "Access Duration"
|
893 |
+
msgstr "Duració del accés"
|
894 |
+
|
895 |
+
#: views/admin_add_level.php:22
|
896 |
+
msgid "No Expiry (Access for this level will not expire until cancelled"
|
897 |
+
msgstr ""
|
898 |
+
"No Expiració (accés per a aquest nivell no expira fins que es cancel·li)"
|
899 |
+
|
900 |
+
#: views/admin_add_level.php:23 views/admin_add_level.php:25
|
901 |
+
#: views/admin_add_level.php:27 views/admin_add_level.php:29
|
902 |
+
#: views/admin_edit_level.php:22 views/admin_edit_level.php:25
|
903 |
+
#: views/admin_edit_level.php:28 views/admin_edit_level.php:31
|
904 |
+
msgid "Expire After"
|
905 |
+
msgstr "Expira després de"
|
906 |
+
|
907 |
+
#: views/admin_add_level.php:24 views/admin_edit_level.php:23
|
908 |
+
msgid "Days (Access expires after given number of days)"
|
909 |
+
msgstr "Dies (Access expira després de determinat nombre de dies)"
|
910 |
+
|
911 |
+
#: views/admin_add_level.php:26
|
912 |
+
msgid "Weeks (Access expires after given number of weeks"
|
913 |
+
msgstr "Setmanes (Access expira després de determinat nombre de setmanes)"
|
914 |
+
|
915 |
+
#: views/admin_add_level.php:28 views/admin_edit_level.php:29
|
916 |
+
msgid "Months (Access expires after given number of months)"
|
917 |
+
msgstr "Mesos (Access expira després de determinat nombre de mesos)"
|
918 |
+
|
919 |
+
#: views/admin_add_level.php:30 views/admin_edit_level.php:32
|
920 |
+
msgid "Years (Access expires after given number of years)"
|
921 |
+
msgstr "Anys (Access expira després de determinat nombre d’anys)"
|
922 |
+
|
923 |
+
#: views/admin_add_level.php:31 views/admin_edit_level.php:34
|
924 |
+
msgid "Fixed Date Expiry"
|
925 |
+
msgstr "Data d’expiració fixa"
|
926 |
+
|
927 |
+
#: views/admin_add_level.php:32 views/admin_edit_level.php:35
|
928 |
+
msgid "(Access expires on a fixed date)"
|
929 |
+
msgstr "(L’accés expira en una data fixa)"
|
930 |
+
|
931 |
+
#: views/admin_add_level.php:38
|
932 |
+
msgid "Add New Membership Level "
|
933 |
+
msgstr "Afegir nou nivell de membres"
|
934 |
+
|
935 |
+
#: views/admin_add_ons_page.php:7
|
936 |
+
msgid "Simple WP Membership::Add-ons"
|
937 |
+
msgstr "Membres WP simple :: Complements"
|
938 |
+
|
939 |
+
#: views/admin_category_list.php:2
|
940 |
+
msgid "Simple WP Membership::Categories"
|
941 |
+
msgstr "Membres WP simple :: Categories"
|
942 |
+
|
943 |
+
#: views/admin_category_list.php:7
|
944 |
+
msgid ""
|
945 |
+
"First of all, globally protect the category on your site by selecting "
|
946 |
+
"\"General Protection\" from the drop-down box below and then select the "
|
947 |
+
"categories that should be protected from non-logged in users."
|
948 |
+
msgstr ""
|
949 |
+
"En primer lloc, protegir a nivell global la categoria al seu lloc mitjançant "
|
950 |
+
"la selecció de \"protecció general\" al quadre desplegable de sota i després "
|
951 |
+
"seleccionar les categories que han de ser protegides dels usuaris no "
|
952 |
+
"registrats."
|
953 |
+
|
954 |
+
#: views/admin_category_list.php:10
|
955 |
+
msgid ""
|
956 |
+
"Next, select an existing membership level from the drop-down box below and "
|
957 |
+
"then select the categories you want to grant access to (for that particular "
|
958 |
+
"membership level)."
|
959 |
+
msgstr ""
|
960 |
+
"A continuació, seleccioneu un nivell de membres vigent des del quadre "
|
961 |
+
"desplegable de sota i després seleccioneu les categories que voleu concedir "
|
962 |
+
"accés a (per a aquest nivell de membres en particular)."
|
963 |
+
|
964 |
+
#: views/admin_edit.php:5
|
965 |
+
msgid "Edit Member"
|
966 |
+
msgstr "Editar membre"
|
967 |
+
|
968 |
+
#: views/admin_edit.php:6
|
969 |
+
msgid "Edit existing member details."
|
970 |
+
msgstr "Editar detalls del membre."
|
971 |
+
|
972 |
+
#: views/admin_edit.php:9 views/login.php:5
|
973 |
+
msgid "Username"
|
974 |
+
msgstr "Nom d’usuari"
|
975 |
+
|
976 |
+
#: views/admin_edit.php:17
|
977 |
+
msgid "(twice, leave empty to retain old password)"
|
978 |
+
msgstr "(dues vegades, deixar en blanc per mantenir la contrasenya antiga)"
|
979 |
+
|
980 |
+
#: views/admin_edit.php:33
|
981 |
+
msgid "Notify User"
|
982 |
+
msgstr "Notificar a l’usuari"
|
983 |
+
|
984 |
+
#: views/admin_edit.php:40
|
985 |
+
msgid "Subscriber ID/Reference"
|
986 |
+
msgstr "Referència ID del subscriptor"
|
987 |
+
|
988 |
+
#: views/admin_edit.php:44
|
989 |
+
msgid "Last Accessed From IP"
|
990 |
+
msgstr "IP del darrer accés"
|
991 |
+
|
992 |
+
#: views/admin_edit.php:52
|
993 |
+
msgid "Edit User "
|
994 |
+
msgstr "Editar Usuari"
|
995 |
+
|
996 |
+
#: views/admin_edit_level.php:5
|
997 |
+
msgid "Edit membership level"
|
998 |
+
msgstr "Editar nivell de membres"
|
999 |
+
|
1000 |
+
#: views/admin_edit_level.php:6
|
1001 |
+
msgid "Edit membership level."
|
1002 |
+
msgstr "Editar nivell de membres"
|
1003 |
+
|
1004 |
+
#: views/admin_edit_level.php:21
|
1005 |
+
msgid "No Expiry (Access for this level will not expire until cancelled)"
|
1006 |
+
msgstr ""
|
1007 |
+
"No Expiració (accés per a aquest nivell no expira fins que es cancel·li)"
|
1008 |
+
|
1009 |
+
#: views/admin_edit_level.php:26
|
1010 |
+
msgid "Weeks (Access expires after given number of weeks)"
|
1011 |
+
msgstr "Setmanes (Access expira després de determinat nombre de setmanes)"
|
1012 |
+
|
1013 |
+
#: views/admin_edit_level.php:41
|
1014 |
+
msgid "Edit Membership Level "
|
1015 |
+
msgstr "Editar nivell de membres"
|
1016 |
+
|
1017 |
+
#: views/admin_members.php:2
|
1018 |
+
msgid "Simple WP Membership::Members"
|
1019 |
+
msgstr "Simple WP Membership::Membres"
|
1020 |
+
|
1021 |
+
#: views/admin_members.php:3 views/admin_members_list.php:30
|
1022 |
+
msgid "Add New"
|
1023 |
+
msgstr "Afegir nou"
|
1024 |
+
|
1025 |
+
#: views/admin_membership_levels.php:2
|
1026 |
+
msgid "Simple WP Membership::Membership Levels"
|
1027 |
+
msgstr "Simple WP Membership::Nivells de Membres"
|
1028 |
+
|
1029 |
+
#: views/admin_membership_levels.php:12 views/admin_members_list.php:6
|
1030 |
+
msgid "search"
|
1031 |
+
msgstr "cercar"
|
1032 |
+
|
1033 |
+
#: views/admin_membership_level_menu.php:2
|
1034 |
+
msgid "Membership level"
|
1035 |
+
msgstr "Nivell de membres"
|
1036 |
+
|
1037 |
+
#: views/admin_membership_level_menu.php:3
|
1038 |
+
msgid "Manage Content Production"
|
1039 |
+
msgstr "Maneig de Producció de Continguts"
|
1040 |
+
|
1041 |
+
#: views/admin_membership_level_menu.php:4
|
1042 |
+
msgid "Category Protection"
|
1043 |
+
msgstr "Categoria de protecció"
|
1044 |
+
|
1045 |
+
#: views/admin_membership_manage.php:17
|
1046 |
+
msgid "Example Content Protection Settings"
|
1047 |
+
msgstr "Exemple Configuració de protecció de contingut"
|
1048 |
+
|
1049 |
+
#: views/admin_member_form_common_part.php:23
|
1050 |
+
msgid "Gender"
|
1051 |
+
msgstr "Gènere"
|
1052 |
+
|
1053 |
+
#: views/admin_member_form_common_part.php:30 views/edit.php:28
|
1054 |
+
msgid "Phone"
|
1055 |
+
msgstr "Telèfon"
|
1056 |
+
|
1057 |
+
#: views/admin_member_form_common_part.php:34 views/edit.php:32
|
1058 |
+
msgid "Street"
|
1059 |
+
msgstr "Carrer"
|
1060 |
+
|
1061 |
+
#: views/admin_member_form_common_part.php:38 views/edit.php:36
|
1062 |
+
msgid "City"
|
1063 |
+
msgstr "Ciutat"
|
1064 |
+
|
1065 |
+
#: views/admin_member_form_common_part.php:42 views/edit.php:40
|
1066 |
+
msgid "State"
|
1067 |
+
msgstr "Estat"
|
1068 |
+
|
1069 |
+
#: views/admin_member_form_common_part.php:46 views/edit.php:44
|
1070 |
+
msgid "Zipcode"
|
1071 |
+
msgstr "Codi Postal"
|
1072 |
+
|
1073 |
+
#: views/admin_member_form_common_part.php:50 views/edit.php:48
|
1074 |
+
msgid "Country"
|
1075 |
+
msgstr "País"
|
1076 |
+
|
1077 |
+
#: views/admin_member_form_common_part.php:54
|
1078 |
+
msgid "Company"
|
1079 |
+
msgstr "Companyia"
|
1080 |
+
|
1081 |
+
#: views/admin_member_form_common_part.php:58
|
1082 |
+
msgid "Member Since"
|
1083 |
+
msgstr "Membre des de"
|
1084 |
+
|
1085 |
+
#: views/admin_tools_settings.php:9
|
1086 |
+
msgid "Generate a Registration Completion link"
|
1087 |
+
msgstr "Generar un enllaç de finalització del registre"
|
1088 |
+
|
1089 |
+
#: views/admin_tools_settings.php:12
|
1090 |
+
msgid ""
|
1091 |
+
"You can manually generate a registration completion link here and give it to "
|
1092 |
+
"your customer if they have missed the email that was automatically sent out "
|
1093 |
+
"to them after the payment."
|
1094 |
+
msgstr ""
|
1095 |
+
"Pot generar manualment un enllaç de finalització d'inscripció aquí i donar-"
|
1096 |
+
"li al seu client si han perdut el correu electrònic que s'envia "
|
1097 |
+
"automàticament després del pagament."
|
1098 |
+
|
1099 |
+
#: views/admin_tools_settings.php:17
|
1100 |
+
msgid "Generate Registration Completion Link"
|
1101 |
+
msgstr "Generar un enllaç de finalització de registre"
|
1102 |
+
|
1103 |
+
#: views/admin_tools_settings.php:20
|
1104 |
+
msgid "OR"
|
1105 |
+
msgstr "o"
|
1106 |
+
|
1107 |
+
#: views/admin_tools_settings.php:21
|
1108 |
+
msgid "For All Pending Registrations"
|
1109 |
+
msgstr "Per tots els registres pendents"
|
1110 |
+
|
1111 |
+
#: views/admin_tools_settings.php:24
|
1112 |
+
msgid "Registration Completion Links Will Appear Below:"
|
1113 |
+
msgstr "L’enllaç de finalització del registre apareixerà a sota:"
|
1114 |
+
|
1115 |
+
#: views/admin_tools_settings.php:31
|
1116 |
+
msgid "Send Registration Reminder Email too"
|
1117 |
+
msgstr "També trametre un correu recordatori del registre"
|
1118 |
+
|
1119 |
+
#: views/admin_tools_settings.php:34
|
1120 |
+
msgid "Submit"
|
1121 |
+
msgstr "Trametre"
|
1122 |
+
|
1123 |
+
#: views/edit.php:58
|
1124 |
+
msgid "Update"
|
1125 |
+
msgstr "Actualitzar"
|
1126 |
+
|
1127 |
+
#: views/forgot_password.php:12
|
1128 |
+
msgid "Reset Password"
|
1129 |
+
msgstr "Restablir contrasenya"
|
1130 |
+
|
1131 |
+
#: views/loggedin.php:3
|
1132 |
+
msgid "Logged in as"
|
1133 |
+
msgstr "Connectat com"
|
1134 |
+
|
1135 |
+
#: views/loggedin.php:11
|
1136 |
+
msgid "Membership"
|
1137 |
+
msgstr "Membre"
|
1138 |
+
|
1139 |
+
#: views/loggedin.php:15
|
1140 |
+
msgid "Account Expiry"
|
1141 |
+
msgstr "El comte expira el"
|
1142 |
+
|
1143 |
+
#: views/loggedin.php:19
|
1144 |
+
msgid "Logout"
|
1145 |
+
msgstr "Sortir"
|
1146 |
+
|
1147 |
+
#: views/login.php:18
|
1148 |
+
msgid "Remember Me"
|
1149 |
+
msgstr "Recordar-me"
|
1150 |
+
|
1151 |
+
#: views/login.php:24
|
1152 |
+
msgid "Forgot Password"
|
1153 |
+
msgstr "Contrasenya oblidada"
|
1154 |
+
|
1155 |
+
#: views/payments/admin_all_payment_transactions.php:7
|
1156 |
+
msgid "All the payments/transactions of your members are recorded here."
|
1157 |
+
msgstr "Tots els pagaments / transaccions dels seus membres es registren aquí."
|
1158 |
+
|
1159 |
+
#: views/payments/admin_all_payment_transactions.php:14
|
1160 |
+
msgid "Search for a transaction by using email or name"
|
1161 |
+
msgstr "Recerca d'una transacció mitjançant l'ús de correu electrònic o nom"
|
1162 |
+
|
1163 |
+
#: views/payments/admin_all_payment_transactions.php:18
|
1164 |
+
msgid "Search"
|
1165 |
+
msgstr "Cerca"
|
1166 |
+
|
1167 |
+
#: views/payments/admin_create_payment_buttons.php:13
|
1168 |
+
msgid ""
|
1169 |
+
"You can create new payment button for your memberships using this interface."
|
1170 |
+
msgstr ""
|
1171 |
+
"Pots crear un nou botó de pagament per als seus membres utilitzant aquesta "
|
1172 |
+
"interfície."
|
1173 |
+
|
1174 |
+
#: views/payments/admin_create_payment_buttons.php:22
|
1175 |
+
msgid "Select Payment Button Type"
|
1176 |
+
msgstr "Seleccioneu tipus de botó de pagament"
|
1177 |
+
|
1178 |
+
#: views/payments/admin_create_payment_buttons.php:34
|
1179 |
+
msgid "Next"
|
1180 |
+
msgstr "Següent"
|
1181 |
+
|
1182 |
+
#: views/payments/admin_edit_payment_buttons.php:12
|
1183 |
+
msgid "You can edit a payment button using this interface."
|
1184 |
+
msgstr "Podeu editar un botó de pagament utilitzant aquesta interfície."
|
1185 |
+
|
1186 |
+
#: views/payments/admin_payments_page.php:9
|
1187 |
+
msgid "Simple Membership::Payments"
|
1188 |
+
msgstr "Simple Membership::Pagaments"
|
1189 |
+
|
1190 |
+
#: views/payments/admin_payment_buttons.php:7
|
1191 |
+
msgid ""
|
1192 |
+
"All the membership buttons that you created in the plugin are displayed here."
|
1193 |
+
msgstr "Tots els botons de membres que ha creat en el plugin es mostren aquí."
|
1194 |
+
|
1195 |
+
#: views/payments/admin_payment_settings.php:31
|
1196 |
+
msgid "PayPal Integration Settings"
|
1197 |
+
msgstr "Configuració de la integració amb PayPal"
|
1198 |
+
|
1199 |
+
#: views/payments/admin_payment_settings.php:34
|
1200 |
+
msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
|
1201 |
+
msgstr "Generar Codi \"Variables avançades\" per al seu botó de PayPal"
|
1202 |
+
|
1203 |
+
#: views/payments/admin_payment_settings.php:37
|
1204 |
+
msgid "Enter the Membership Level ID"
|
1205 |
+
msgstr "Entrar el nivell ID del membre"
|
1206 |
+
|
1207 |
+
#: views/payments/admin_payment_settings.php:39
|
1208 |
+
msgid "Generate Code"
|
1209 |
+
msgstr "Generar Codi"
|
1210 |
+
|
1211 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:18
|
1212 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:192
|
1213 |
+
msgid "PayPal Buy Now Button Configuration"
|
1214 |
+
msgstr "Configuració del botó Comprar Ara de PayPal"
|
1215 |
+
|
1216 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:28
|
1217 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:209
|
1218 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:29
|
1219 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:302
|
1220 |
+
msgid "Button Title"
|
1221 |
+
msgstr "Títol del botó"
|
1222 |
+
|
1223 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:46
|
1224 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:227
|
1225 |
+
msgid "Payment Amount"
|
1226 |
+
msgstr "Import del pagament"
|
1227 |
+
|
1228 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:54
|
1229 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:235
|
1230 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:47
|
1231 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:320
|
1232 |
+
msgid "Payment Currency"
|
1233 |
+
msgstr "Moneda del pagament"
|
1234 |
+
|
1235 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:93
|
1236 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:274
|
1237 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:173
|
1238 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:446
|
1239 |
+
msgid "Return URL"
|
1240 |
+
msgstr "URL de retorn"
|
1241 |
+
|
1242 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:101
|
1243 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:282
|
1244 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:86
|
1245 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:359
|
1246 |
+
msgid "PayPal Email"
|
1247 |
+
msgstr "Correu de PayPal"
|
1248 |
+
|
1249 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:109
|
1250 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:290
|
1251 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:181
|
1252 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:454
|
1253 |
+
msgid "Button Image URL"
|
1254 |
+
msgstr "URL del botó d’imatge"
|
1255 |
+
|
1256 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:119
|
1257 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:300
|
1258 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:193
|
1259 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:466
|
1260 |
+
msgid "Save Payment Data"
|
1261 |
+
msgstr "Desar data de pagament"
|
1262 |
+
|
1263 |
+
#: views/payments/payment-gateway/admin_paypal_buy_now_button.php:201
|
1264 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:294
|
1265 |
+
msgid "Button ID"
|
1266 |
+
msgstr "ID del botó"
|
1267 |
+
|
1268 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:20
|
1269 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:288
|
1270 |
+
msgid "PayPal Subscription Button Configuration"
|
1271 |
+
msgstr "Botó de configuració de la subscripció de PayPal"
|
1272 |
+
|
1273 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:94
|
1274 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:367
|
1275 |
+
msgid "Billing Amount Each Cycle"
|
1276 |
+
msgstr "Quantitat a facturar cada cicle"
|
1277 |
+
|
1278 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:102
|
1279 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:375
|
1280 |
+
msgid "Billing Cycle"
|
1281 |
+
msgstr "Cicle de pagament"
|
1282 |
+
|
1283 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:115
|
1284 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:388
|
1285 |
+
msgid "Billing Cycle Count"
|
1286 |
+
msgstr "Contador del cicle de pagament"
|
1287 |
+
|
1288 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:123
|
1289 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:396
|
1290 |
+
msgid "Re-attempt on Failure"
|
1291 |
+
msgstr "Reintentar si falla"
|
1292 |
+
|
1293 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:136
|
1294 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:409
|
1295 |
+
msgid ""
|
1296 |
+
"Trial Billing Details (Leave empty if you are not offering a trial period)"
|
1297 |
+
msgstr ""
|
1298 |
+
"Detalls de facturació de Prova (Deixar en blanc si no està oferint un "
|
1299 |
+
"període de prova)"
|
1300 |
+
|
1301 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:142
|
1302 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:415
|
1303 |
+
msgid "Trial Billing Amount"
|
1304 |
+
msgstr "Preu de la prova"
|
1305 |
+
|
1306 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:150
|
1307 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:423
|
1308 |
+
msgid "Trial Billing Period"
|
1309 |
+
msgstr "Temps del periode de prova"
|
1310 |
+
|
1311 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:167
|
1312 |
+
#: views/payments/payment-gateway/admin_paypal_subscription_button.php:440
|
1313 |
+
msgid "Optional Details"
|
1314 |
+
msgstr "Detalls opcionals"
|
1315 |
+
|
1316 |
+
#: views/payments/payment-gateway/paypal_button_shortcode_view.php:77
|
1317 |
+
#: views/payments/payment-gateway/paypal_button_shortcode_view.php:79
|
1318 |
+
msgid "Buy Now"
|
1319 |
+
msgstr "Comprar ara"
|
1320 |
+
|
1321 |
+
#: views/payments/payment-gateway/paypal_button_shortcode_view.php:197
|
1322 |
+
#: views/payments/payment-gateway/paypal_button_shortcode_view.php:199
|
1323 |
+
msgid "Subscribe Now"
|
1324 |
+
msgstr "Subscriure ara"
|
readme.txt
CHANGED
@@ -3,8 +3,8 @@ Contributors: smp7, wp.insider, amijanina
|
|
3 |
Donate link: https://simple-membership-plugin.com/
|
4 |
Tags: member, members, members only, membership, memberships, register, WordPress membership plugin, content, content protection, paypal, restrict, restrict access, Restrict content, admin, access control, subscription, teaser, protection, profile, login, login page, bbpress,
|
5 |
Requires at least: 3.3
|
6 |
-
Tested up to: 4.4
|
7 |
-
Stable tag: 3.1
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -35,6 +35,8 @@ All the payments from your members are recorded in the plugin. You can view them
|
|
35 |
= Member Login Widget on The Sidebar =
|
36 |
You can easily add a member login widget on the sidebar of your site. Simply use the login form shortcode in the sidebar widget.
|
37 |
|
|
|
|
|
38 |
= Documentation =
|
39 |
|
40 |
Read the [setup documentation](https://simple-membership-plugin.com/simple-membership-documentation/) after you install the plugin to get started.
|
@@ -54,6 +56,7 @@ You can create a free forum user account and ask your questions.
|
|
54 |
* Comments on your protected posts will also be protected automatically.
|
55 |
* There is an option to enable debug logging so you can troubleshoot membership payment related issues easily (if any).
|
56 |
* Ability to customize the content protection message that gets shown to non-members.
|
|
|
57 |
* Membership management side is handled by the plugin.
|
58 |
* Ability to manually approve your members.
|
59 |
* Ability to import WordPress users as members.
|
@@ -96,6 +99,7 @@ The following language translations are already available:
|
|
96 |
* Latvian
|
97 |
* Indonesian
|
98 |
* Hebrew
|
|
|
99 |
|
100 |
You can translate the plugin using the language [translation documentation](https://simple-membership-plugin.com/translate-simple-membership-plugin/).
|
101 |
|
@@ -117,6 +121,30 @@ https://simple-membership-plugin.com/
|
|
117 |
|
118 |
== Changelog ==
|
119 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
120 |
= 3.1.8 =
|
121 |
- Improved the members and payments menu rendering for smaller screen devices.
|
122 |
- Added a utility function to easily output a formatted date in the plugin according to the WordPress's date format settings.
|
3 |
Donate link: https://simple-membership-plugin.com/
|
4 |
Tags: member, members, members only, membership, memberships, register, WordPress membership plugin, content, content protection, paypal, restrict, restrict access, Restrict content, admin, access control, subscription, teaser, protection, profile, login, login page, bbpress,
|
5 |
Requires at least: 3.3
|
6 |
+
Tested up to: 4.4
|
7 |
+
Stable tag: 3.2.1
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
35 |
= Member Login Widget on The Sidebar =
|
36 |
You can easily add a member login widget on the sidebar of your site. Simply use the login form shortcode in the sidebar widget.
|
37 |
|
38 |
+
You can also customize the member login widget by creating a custom template file in your theme (or child theme) folder.
|
39 |
+
|
40 |
= Documentation =
|
41 |
|
42 |
Read the [setup documentation](https://simple-membership-plugin.com/simple-membership-documentation/) after you install the plugin to get started.
|
56 |
* Comments on your protected posts will also be protected automatically.
|
57 |
* There is an option to enable debug logging so you can troubleshoot membership payment related issues easily (if any).
|
58 |
* Ability to customize the content protection message that gets shown to non-members.
|
59 |
+
* Ability to use merge vars in the membership email notification.
|
60 |
* Membership management side is handled by the plugin.
|
61 |
* Ability to manually approve your members.
|
62 |
* Ability to import WordPress users as members.
|
99 |
* Latvian
|
100 |
* Indonesian
|
101 |
* Hebrew
|
102 |
+
* Catalan
|
103 |
|
104 |
You can translate the plugin using the language [translation documentation](https://simple-membership-plugin.com/translate-simple-membership-plugin/).
|
105 |
|
121 |
|
122 |
== Changelog ==
|
123 |
|
124 |
+
= 3.2.1 =
|
125 |
+
- Added a new filter (swpm_transactions_menu_items_per_page) that can be used to customize the number of items that is listed in the transactions menu.
|
126 |
+
- Added more sorting option in the transactions table.
|
127 |
+
- Added sanitization for the sort inputs in the member transactions table.
|
128 |
+
- Fixed an issue with the auto delete pending account settings.
|
129 |
+
- Changed admin heading structure from h2 to h1.
|
130 |
+
|
131 |
+
= 3.2.0 =
|
132 |
+
- Added Catalan language translation file. The translation was submitted by Josep Ramon.
|
133 |
+
- Custom post type categories are also listed in the category protection menu.
|
134 |
+
- Added a new filter (swpm_members_menu_items_per_page) that can be used to customize the number of items that is listed in the members menu.
|
135 |
+
- The default number of items listed in the members menu by default has been increased to 50.
|
136 |
+
- Comment protection fix for posts using "more" tag.
|
137 |
+
- Comments of protected posts are also protected.
|
138 |
+
- Added CSS classes for all the field rows in the standard membership registration form.
|
139 |
+
- Added CSS classes for all the field rows in the edit profile form.
|
140 |
+
|
141 |
+
= 3.1.9 =
|
142 |
+
- Added new merge vars that can be used in the registration complete email. These are {member_id}, {account_state}, {email}, {member_since}
|
143 |
+
- Added trailingslashit() to the after logout redirect URL.
|
144 |
+
- Created a new extension to show member info. [usage documentation](https://simple-membership-plugin.com/simple-membership-addon-show-member-info/)
|
145 |
+
- A new cookie is dropped when a member logs into the site. It can be used for caching plugin compatibility.
|
146 |
+
- Added a new function to load the template for login widget and password reset form. This will allow customization of the login widget by adding the custom template to the theme folder.
|
147 |
+
|
148 |
= 3.1.8 =
|
149 |
- Improved the members and payments menu rendering for smaller screen devices.
|
150 |
- Added a utility function to easily output a formatted date in the plugin according to the WordPress's date format settings.
|
simple-wp-membership.php
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: Simple WordPress Membership
|
4 |
-
Version: 3.1
|
5 |
Plugin URI: https://simple-membership-plugin.com/
|
6 |
Author: smp7, wp.insider
|
7 |
Author URI: https://simple-membership-plugin.com/
|
@@ -17,12 +17,13 @@ include_once('classes/class.simple-wp-membership.php');
|
|
17 |
include_once('classes/class.swpm-cronjob.php');
|
18 |
include_once('swpm-compat.php');
|
19 |
|
20 |
-
define('SIMPLE_WP_MEMBERSHIP_VER', '3.1
|
21 |
define('SIMPLE_WP_MEMBERSHIP_DB_VER', '1.2');
|
22 |
define('SIMPLE_WP_MEMBERSHIP_SITE_HOME_URL', home_url());
|
23 |
define('SIMPLE_WP_MEMBERSHIP_PATH', dirname(__FILE__) . '/');
|
24 |
define('SIMPLE_WP_MEMBERSHIP_URL', plugins_url('', __FILE__));
|
25 |
define('SIMPLE_WP_MEMBERSHIP_DIRNAME', dirname(plugin_basename(__FILE__)));
|
|
|
26 |
if (!defined('COOKIEHASH')) {
|
27 |
define('COOKIEHASH', md5(get_site_option('siteurl')));
|
28 |
}
|
1 |
<?php
|
2 |
/*
|
3 |
Plugin Name: Simple WordPress Membership
|
4 |
+
Version: 3.2.1
|
5 |
Plugin URI: https://simple-membership-plugin.com/
|
6 |
Author: smp7, wp.insider
|
7 |
Author URI: https://simple-membership-plugin.com/
|
17 |
include_once('classes/class.swpm-cronjob.php');
|
18 |
include_once('swpm-compat.php');
|
19 |
|
20 |
+
define('SIMPLE_WP_MEMBERSHIP_VER', '3.2.1');
|
21 |
define('SIMPLE_WP_MEMBERSHIP_DB_VER', '1.2');
|
22 |
define('SIMPLE_WP_MEMBERSHIP_SITE_HOME_URL', home_url());
|
23 |
define('SIMPLE_WP_MEMBERSHIP_PATH', dirname(__FILE__) . '/');
|
24 |
define('SIMPLE_WP_MEMBERSHIP_URL', plugins_url('', __FILE__));
|
25 |
define('SIMPLE_WP_MEMBERSHIP_DIRNAME', dirname(plugin_basename(__FILE__)));
|
26 |
+
define('SIMPLE_WP_MEMBERSHIP_TEMPLATE_PATH', 'simple-membership');
|
27 |
if (!defined('COOKIEHASH')) {
|
28 |
define('COOKIEHASH', md5(get_site_option('siteurl')));
|
29 |
}
|
views/add.php
CHANGED
@@ -2,31 +2,31 @@
|
|
2 |
<form id="swpm-registration-form" name="swpm-registration-form" method="post" action="">
|
3 |
<input type ="hidden" name="level_identifier" value="<?php echo $level_identifier ?>" />
|
4 |
<table>
|
5 |
-
<tr>
|
6 |
<td><label for="user_name"><?php echo SwpmUtils::_('Username') ?></label></td>
|
7 |
<td><input type="text" id="user_name" class="validate[required,custom[noapostrophe],custom[SWPMUserName],minSize[4],ajax[ajaxUserCall]]" value="<?php echo $user_name; ?>" size="50" name="user_name" /></td>
|
8 |
</tr>
|
9 |
-
<tr>
|
10 |
<td><label for="email"><?php echo SwpmUtils::_('Email') ?></label></td>
|
11 |
<td><input type="text" id="email" class="validate[required,custom[email],ajax[ajaxEmailCall]]" value="<?php echo $email; ?>" size="50" name="email" /></td>
|
12 |
</tr>
|
13 |
-
<tr>
|
14 |
<td><label for="password"><?php echo SwpmUtils::_('Password') ?></label></td>
|
15 |
<td><input type="password" autocomplete="off" id="password" value="" size="50" name="password" /></td>
|
16 |
</tr>
|
17 |
-
<tr>
|
18 |
<td><label for="password_re"><?php echo SwpmUtils::_('Repeat Password') ?></label></td>
|
19 |
<td><input type="password" autocomplete="off" id="password_re" value="" size="50" name="password_re" /></td>
|
20 |
</tr>
|
21 |
-
<tr>
|
22 |
<td><label for="first_name"><?php echo SwpmUtils::_('First Name') ?></label></td>
|
23 |
<td><input type="text" id="first_name" value="<?php echo $first_name; ?>" size="50" name="first_name" /></td>
|
24 |
</tr>
|
25 |
-
<tr>
|
26 |
<td><label for="last_name"><?php echo SwpmUtils::_('Last Name') ?></label></td>
|
27 |
<td><input type="text" id="last_name" value="<?php echo $last_name; ?>" size="50" name="last_name" /></td>
|
28 |
</tr>
|
29 |
-
<tr>
|
30 |
<td><label for="membership_level"><?php echo SwpmUtils::_('Membership Level') ?></label></td>
|
31 |
<td>
|
32 |
<?php echo $membership_level_alias; ?>
|
@@ -42,7 +42,7 @@
|
|
42 |
</div>
|
43 |
|
44 |
<input type="hidden" name="action" value="custom_posts" />
|
45 |
-
|
46 |
</form>
|
47 |
</div>
|
48 |
<script>
|
2 |
<form id="swpm-registration-form" name="swpm-registration-form" method="post" action="">
|
3 |
<input type ="hidden" name="level_identifier" value="<?php echo $level_identifier ?>" />
|
4 |
<table>
|
5 |
+
<tr class="swpm-registration-username-row">
|
6 |
<td><label for="user_name"><?php echo SwpmUtils::_('Username') ?></label></td>
|
7 |
<td><input type="text" id="user_name" class="validate[required,custom[noapostrophe],custom[SWPMUserName],minSize[4],ajax[ajaxUserCall]]" value="<?php echo $user_name; ?>" size="50" name="user_name" /></td>
|
8 |
</tr>
|
9 |
+
<tr class="swpm-registration-email-row">
|
10 |
<td><label for="email"><?php echo SwpmUtils::_('Email') ?></label></td>
|
11 |
<td><input type="text" id="email" class="validate[required,custom[email],ajax[ajaxEmailCall]]" value="<?php echo $email; ?>" size="50" name="email" /></td>
|
12 |
</tr>
|
13 |
+
<tr class="swpm-registration-password-row">
|
14 |
<td><label for="password"><?php echo SwpmUtils::_('Password') ?></label></td>
|
15 |
<td><input type="password" autocomplete="off" id="password" value="" size="50" name="password" /></td>
|
16 |
</tr>
|
17 |
+
<tr class="swpm-registration-password-retype-row">
|
18 |
<td><label for="password_re"><?php echo SwpmUtils::_('Repeat Password') ?></label></td>
|
19 |
<td><input type="password" autocomplete="off" id="password_re" value="" size="50" name="password_re" /></td>
|
20 |
</tr>
|
21 |
+
<tr class="swpm-registration-firstname-row">
|
22 |
<td><label for="first_name"><?php echo SwpmUtils::_('First Name') ?></label></td>
|
23 |
<td><input type="text" id="first_name" value="<?php echo $first_name; ?>" size="50" name="first_name" /></td>
|
24 |
</tr>
|
25 |
+
<tr class="swpm-registration-lastname-row">
|
26 |
<td><label for="last_name"><?php echo SwpmUtils::_('Last Name') ?></label></td>
|
27 |
<td><input type="text" id="last_name" value="<?php echo $last_name; ?>" size="50" name="last_name" /></td>
|
28 |
</tr>
|
29 |
+
<tr class="swpm-registration-membership-level-row">
|
30 |
<td><label for="membership_level"><?php echo SwpmUtils::_('Membership Level') ?></label></td>
|
31 |
<td>
|
32 |
<?php echo $membership_level_alias; ?>
|
42 |
</div>
|
43 |
|
44 |
<input type="hidden" name="action" value="custom_posts" />
|
45 |
+
|
46 |
</form>
|
47 |
</div>
|
48 |
<script>
|
views/admin_add.php
CHANGED
@@ -1,5 +1,4 @@
|
|
1 |
<div class="wrap" id="swpm-profile-page" type="add">
|
2 |
-
<?php //screen_icon(); ?>
|
3 |
<form action="" method="post" name="swpm-create-user" id="swpm-create-user" class="validate"<?php do_action('user_new_form_tag');?>>
|
4 |
<input name="action" type="hidden" value="createuser" />
|
5 |
<?php wp_nonce_field( 'create-swpmuser', '_wpnonce_create-swpmuser' ) ?>
|
1 |
<div class="wrap" id="swpm-profile-page" type="add">
|
|
|
2 |
<form action="" method="post" name="swpm-create-user" id="swpm-create-user" class="validate"<?php do_action('user_new_form_tag');?>>
|
3 |
<input name="action" type="hidden" value="createuser" />
|
4 |
<?php wp_nonce_field( 'create-swpmuser', '_wpnonce_create-swpmuser' ) ?>
|
views/admin_add_ons_page.php
CHANGED
@@ -4,7 +4,7 @@ echo '<link type="text/css" rel="stylesheet" href="' . SIMPLE_WP_MEMBERSHIP_URL
|
|
4 |
?>
|
5 |
|
6 |
<div class="wrap">
|
7 |
-
<
|
8 |
|
9 |
<div id="poststuff"><div id="post-body">
|
10 |
|
@@ -105,6 +105,22 @@ echo '<link type="text/css" rel="stylesheet" href="' . SIMPLE_WP_MEMBERSHIP_URL
|
|
105 |
'page_url' => 'https://simple-membership-plugin.com/simple-membership-and-google-recaptcha-integration/',
|
106 |
);
|
107 |
array_push($addons_data, $addon_12);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
108 |
|
109 |
/*** Show the addons list ***/
|
110 |
foreach ($addons_data as $addon) {
|
4 |
?>
|
5 |
|
6 |
<div class="wrap">
|
7 |
+
<h1><?php echo SwpmUtils::_('Simple WP Membership::Add-ons') ?></h1>
|
8 |
|
9 |
<div id="poststuff"><div id="post-body">
|
10 |
|
105 |
'page_url' => 'https://simple-membership-plugin.com/simple-membership-and-google-recaptcha-integration/',
|
106 |
);
|
107 |
array_push($addons_data, $addon_12);
|
108 |
+
|
109 |
+
$addon_13 = array(
|
110 |
+
'name' => 'Show Member Info',
|
111 |
+
'thumbnail' => SIMPLE_WP_MEMBERSHIP_URL . '/images/addons/show-member-info.png',
|
112 |
+
'description' => 'Allows you to show various member info using shortcodes.',
|
113 |
+
'page_url' => 'https://simple-membership-plugin.com/simple-membership-addon-show-member-info/',
|
114 |
+
);
|
115 |
+
array_push($addons_data, $addon_13);
|
116 |
+
|
117 |
+
$addon_14 = array(
|
118 |
+
'name' => 'Google First Click Free',
|
119 |
+
'thumbnail' => SIMPLE_WP_MEMBERSHIP_URL . '/images/addons/google-first-click-free-addon.png',
|
120 |
+
'description' => 'Allows you to integrate with the Google First Click Free feature.',
|
121 |
+
'page_url' => 'https://simple-membership-plugin.com/simple-membership-google-first-click-free-integration-addon',
|
122 |
+
);
|
123 |
+
array_push($addons_data, $addon_14);
|
124 |
|
125 |
/*** Show the addons list ***/
|
126 |
foreach ($addons_data as $addon) {
|
views/admin_addon_settings.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<div class="wrap">
|
2 |
|
3 |
-
<
|
4 |
|
5 |
<?php do_action("swpm-draw-tab"); ?>
|
6 |
|
1 |
<div class="wrap">
|
2 |
|
3 |
+
<h1><?php echo SwpmUtils::_('Simple WP Membership::Settings') ?></h1>
|
4 |
|
5 |
<?php do_action("swpm-draw-tab"); ?>
|
6 |
|
views/admin_category_list.php
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
<div class="wrap">
|
2 |
-
<
|
3 |
<?php include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_membership_level_menu.php'); ?>
|
4 |
|
5 |
<div style="background: none repeat scroll 0 0 #FFF6D5;border: 1px solid #D1B655;color: #3F2502;margin: 10px 0;padding: 5px 5px 5px 10px;text-shadow: 1px 1px #FFFFFF;">
|
1 |
<div class="wrap">
|
2 |
+
<h1><?php echo SwpmUtils::_('Simple WP Membership::Categories') ?></h1>
|
3 |
<?php include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_membership_level_menu.php'); ?>
|
4 |
|
5 |
<div style="background: none repeat scroll 0 0 #FFF6D5;border: 1px solid #D1B655;color: #3F2502;margin: 10px 0;padding: 5px 5px 5px 10px;text-shadow: 1px 1px #FFFFFF;">
|
views/admin_members.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<div class="wrap">
|
2 |
-
<
|
3 |
-
<a href="admin.php?page=simple_wp_membership&member_action=add" class="add-new-h2"><?php echo SwpmUtils::_('Add New'); ?></a></
|
4 |
<?php include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_members_menu.php'); ?>
|
5 |
<?php echo $output ?>
|
6 |
</div><!-- end of wrap -->
|
1 |
<div class="wrap">
|
2 |
+
<h1><?php echo SwpmUtils::_('Simple WP Membership::Members') ?>
|
3 |
+
<a href="admin.php?page=simple_wp_membership&member_action=add" class="add-new-h2"><?php echo SwpmUtils::_('Add New'); ?></a></h1>
|
4 |
<?php include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_members_menu.php'); ?>
|
5 |
<?php echo $output ?>
|
6 |
</div><!-- end of wrap -->
|
views/admin_membership_levels.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<div class="wrap">
|
2 |
-
<
|
3 |
-
<a href="admin.php?page=simple_wp_membership_levels&level_action=add" class="add-new-h2"><?php SwpmUtils::e('Add New', 'Level'); ?></a></
|
4 |
|
5 |
<?php include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_membership_level_menu.php'); ?>
|
6 |
|
1 |
<div class="wrap">
|
2 |
+
<h1><?php echo SwpmUtils::_('Simple WP Membership::Membership Levels') ?>
|
3 |
+
<a href="admin.php?page=simple_wp_membership_levels&level_action=add" class="add-new-h2"><?php SwpmUtils::e('Add New', 'Level'); ?></a></h1>
|
4 |
|
5 |
<?php include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_membership_level_menu.php'); ?>
|
6 |
|
views/admin_membership_manage.php
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
<div class="wrap">
|
2 |
-
<
|
3 |
<?php include_once(SIMPLE_WP_MEMBERSHIP_PATH.'views/admin_membership_level_menu.php');?>
|
4 |
|
5 |
<div id="poststuff"><div id="post-body">
|
1 |
<div class="wrap">
|
2 |
+
<h1>Simple WP Membership::Manage Protection</h1>
|
3 |
<?php include_once(SIMPLE_WP_MEMBERSHIP_PATH.'views/admin_membership_level_menu.php');?>
|
4 |
|
5 |
<div id="poststuff"><div id="post-body">
|
views/admin_settings.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<div class="wrap">
|
2 |
|
3 |
-
<
|
4 |
|
5 |
<?php do_action("swpm-draw-tab"); ?>
|
6 |
<form action="options.php" method="POST">
|
1 |
<div class="wrap">
|
2 |
|
3 |
+
<h1><?php echo SwpmUtils::_('Simple WP Membership::Settings') ?></h1>
|
4 |
|
5 |
<?php do_action("swpm-draw-tab"); ?>
|
6 |
<form action="options.php" method="POST">
|
views/admin_tools_settings.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<div class="wrap">
|
2 |
|
3 |
-
<
|
4 |
|
5 |
<?php do_action("swpm-draw-tab"); ?>
|
6 |
|
1 |
<div class="wrap">
|
2 |
|
3 |
+
<h1><?php echo SwpmUtils::_('Simple WP Membership::Settings') ?></h1>
|
4 |
|
5 |
<?php do_action("swpm-draw-tab"); ?>
|
6 |
|
views/edit.php
CHANGED
@@ -1,55 +1,55 @@
|
|
1 |
<div class="swpm-edit-profile-form">
|
2 |
<form id="swpm-editprofile-form" name="swpm-editprofile-form" method="post" action="">
|
3 |
<table>
|
4 |
-
<tr>
|
5 |
<td><label for="user_name"><?php echo SwpmUtils::_('Username') ?></label></td>
|
6 |
<td><?php echo $user_name ?></td>
|
7 |
</tr>
|
8 |
-
<tr>
|
9 |
<td><label for="email"><?php echo SwpmUtils::_('Email')?></label></td>
|
10 |
<td><input type="text" id="email" class="validate[required,custom[email],ajax[ajaxEmailCall]]" value="<?php echo $email;?>" size="50" name="email" /></td>
|
11 |
</tr>
|
12 |
-
<tr>
|
13 |
<td><label for="password"><?php echo SwpmUtils::_('Password')?></label></td>
|
14 |
<td><input type="text" id="password" value="" size="50" name="password" /></td>
|
15 |
</tr>
|
16 |
-
<tr>
|
17 |
<td><label for="password_re"><?php echo SwpmUtils::_('Repeat Password')?></label></td>
|
18 |
<td><input type="text" id="password_re" value="" size="50" name="password_re" /></td>
|
19 |
</tr>
|
20 |
-
<tr>
|
21 |
<td><label for="first_name"><?php echo SwpmUtils::_('First Name')?></label></td>
|
22 |
<td><input type="text" id="first_name" value="<?php echo $first_name; ?>" size="50" name="first_name" /></td>
|
23 |
</tr>
|
24 |
-
<tr>
|
25 |
<td><label for="last_name"><?php echo SwpmUtils::_('Last Name')?></label></td>
|
26 |
<td><input type="text" id="last_name" value="<?php echo $last_name; ?>" size="50" name="last_name" /></td>
|
27 |
</tr>
|
28 |
-
<tr>
|
29 |
<td><label for="phone"><?php echo SwpmUtils::_('Phone')?></label></td>
|
30 |
<td><input type="text" id="phone" value="<?php echo $phone; ?>" size="50" name="phone" /></td>
|
31 |
</tr>
|
32 |
-
<tr>
|
33 |
<td><label for="address_street"><?php echo SwpmUtils::_('Street')?></label></td>
|
34 |
<td><input type="text" id="address_street" value="<?php echo $address_street; ?>" size="50" name="address_street" /></td>
|
35 |
</tr>
|
36 |
-
<tr>
|
37 |
<td><label for="address_city"><?php echo SwpmUtils::_('City')?></label></td>
|
38 |
<td><input type="text" id="address_city" value="<?php echo $address_city; ?>" size="50" name="address_city" /></td>
|
39 |
</tr>
|
40 |
-
<tr>
|
41 |
<td><label for="address_state"><?php echo SwpmUtils::_('State')?></label></td>
|
42 |
<td><input type="text" id="address_state" value="<?php echo $address_state; ?>" size="50" name="address_state" /></td>
|
43 |
</tr>
|
44 |
-
<tr>
|
45 |
<td><label for="address_zipcode"><?php echo SwpmUtils::_('Zipcode')?></label></td>
|
46 |
<td><input type="text" id="address_zipcode" value="<?php echo $address_zipcode; ?>" size="50" name="address_zipcode" /></td>
|
47 |
</tr>
|
48 |
-
<tr>
|
49 |
<td><label for="country"><?php echo SwpmUtils::_('Country') ?></label></td>
|
50 |
<td><input type="text" id="country" value="<?php echo $country; ?>" size="50" name="country" /></td>
|
51 |
</tr>
|
52 |
-
<tr>
|
53 |
<td><label for="membership_level"><?php echo SwpmUtils::_('Membership Level')?></label></td>
|
54 |
<td>
|
55 |
<?php echo $membership_level_alias; ?>
|
@@ -62,7 +62,7 @@
|
|
62 |
<?php echo SwpmUtils::delete_account_button(); ?>
|
63 |
|
64 |
<input type="hidden" name="action" value="custom_posts" />
|
65 |
-
|
66 |
</form>
|
67 |
</div>
|
68 |
<script>
|
1 |
<div class="swpm-edit-profile-form">
|
2 |
<form id="swpm-editprofile-form" name="swpm-editprofile-form" method="post" action="">
|
3 |
<table>
|
4 |
+
<tr class="swpm-profile-username-row">
|
5 |
<td><label for="user_name"><?php echo SwpmUtils::_('Username') ?></label></td>
|
6 |
<td><?php echo $user_name ?></td>
|
7 |
</tr>
|
8 |
+
<tr class="swpm-profile-email-row">
|
9 |
<td><label for="email"><?php echo SwpmUtils::_('Email')?></label></td>
|
10 |
<td><input type="text" id="email" class="validate[required,custom[email],ajax[ajaxEmailCall]]" value="<?php echo $email;?>" size="50" name="email" /></td>
|
11 |
</tr>
|
12 |
+
<tr class="swpm-profile-password-row">
|
13 |
<td><label for="password"><?php echo SwpmUtils::_('Password')?></label></td>
|
14 |
<td><input type="text" id="password" value="" size="50" name="password" /></td>
|
15 |
</tr>
|
16 |
+
<tr class="swpm-profile-password-retype-row">
|
17 |
<td><label for="password_re"><?php echo SwpmUtils::_('Repeat Password')?></label></td>
|
18 |
<td><input type="text" id="password_re" value="" size="50" name="password_re" /></td>
|
19 |
</tr>
|
20 |
+
<tr class="swpm-profile-firstname-row">
|
21 |
<td><label for="first_name"><?php echo SwpmUtils::_('First Name')?></label></td>
|
22 |
<td><input type="text" id="first_name" value="<?php echo $first_name; ?>" size="50" name="first_name" /></td>
|
23 |
</tr>
|
24 |
+
<tr class="swpm-profile-lastname-row">
|
25 |
<td><label for="last_name"><?php echo SwpmUtils::_('Last Name')?></label></td>
|
26 |
<td><input type="text" id="last_name" value="<?php echo $last_name; ?>" size="50" name="last_name" /></td>
|
27 |
</tr>
|
28 |
+
<tr class="swpm-profile-phone-row">
|
29 |
<td><label for="phone"><?php echo SwpmUtils::_('Phone')?></label></td>
|
30 |
<td><input type="text" id="phone" value="<?php echo $phone; ?>" size="50" name="phone" /></td>
|
31 |
</tr>
|
32 |
+
<tr class="swpm-profile-street-row">
|
33 |
<td><label for="address_street"><?php echo SwpmUtils::_('Street')?></label></td>
|
34 |
<td><input type="text" id="address_street" value="<?php echo $address_street; ?>" size="50" name="address_street" /></td>
|
35 |
</tr>
|
36 |
+
<tr class="swpm-profile-city-row">
|
37 |
<td><label for="address_city"><?php echo SwpmUtils::_('City')?></label></td>
|
38 |
<td><input type="text" id="address_city" value="<?php echo $address_city; ?>" size="50" name="address_city" /></td>
|
39 |
</tr>
|
40 |
+
<tr class="swpm-profile-state-row">
|
41 |
<td><label for="address_state"><?php echo SwpmUtils::_('State')?></label></td>
|
42 |
<td><input type="text" id="address_state" value="<?php echo $address_state; ?>" size="50" name="address_state" /></td>
|
43 |
</tr>
|
44 |
+
<tr class="swpm-profile-zipcode-row">
|
45 |
<td><label for="address_zipcode"><?php echo SwpmUtils::_('Zipcode')?></label></td>
|
46 |
<td><input type="text" id="address_zipcode" value="<?php echo $address_zipcode; ?>" size="50" name="address_zipcode" /></td>
|
47 |
</tr>
|
48 |
+
<tr class="swpm-profile-country-row">
|
49 |
<td><label for="country"><?php echo SwpmUtils::_('Country') ?></label></td>
|
50 |
<td><input type="text" id="country" value="<?php echo $country; ?>" size="50" name="country" /></td>
|
51 |
</tr>
|
52 |
+
<tr class="swpm-profile-membership-level-row">
|
53 |
<td><label for="membership_level"><?php echo SwpmUtils::_('Membership Level')?></label></td>
|
54 |
<td>
|
55 |
<?php echo $membership_level_alias; ?>
|
62 |
<?php echo SwpmUtils::delete_account_button(); ?>
|
63 |
|
64 |
<input type="hidden" name="action" value="custom_posts" />
|
65 |
+
|
66 |
</form>
|
67 |
</div>
|
68 |
<script>
|
views/loggedin.php
CHANGED
@@ -1,3 +1,6 @@
|
|
|
|
|
|
|
|
1 |
<div class="swpm-login-widget-logged">
|
2 |
<div class="swpm-logged-username">
|
3 |
<div class="swpm-logged-username-label swpm-logged-label"><?php echo SwpmUtils::_('Logged in as') ?></div>
|
1 |
+
<?php
|
2 |
+
$auth = SwpmAuth::get_instance();
|
3 |
+
?>
|
4 |
<div class="swpm-login-widget-logged">
|
5 |
<div class="swpm-logged-username">
|
6 |
<div class="swpm-logged-username-label swpm-logged-label"><?php echo SwpmUtils::_('Logged in as') ?></div>
|
views/login.php
CHANGED
@@ -1,33 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
<div class="swpm-login-widget-form">
|
2 |
<form id="swpm-login-form" name="swpm-login-form" method="post" action="">
|
3 |
<div class="swpm-login-form-inner">
|
4 |
<div class="swpm-username-label">
|
5 |
-
<label for="swpm_user_name" class="swpm-label"><?php echo
|
6 |
</div>
|
7 |
<div class="swpm-username-input">
|
8 |
<input type="text" class="swpm-text-field swpm-username-field" id="swpm_user_name" value="" size="25" name="swpm_user_name" />
|
9 |
</div>
|
10 |
<div class="swpm-password-label">
|
11 |
-
<label for="swpm_password" class="swpm-label"><?php echo
|
12 |
</div>
|
13 |
<div class="swpm-password-input">
|
14 |
<input type="password" class="swpm-text-field swpm-password-field" id="swpm_password" value="" size="25" name="swpm_password" />
|
15 |
</div>
|
16 |
<div class="swpm-remember-me">
|
17 |
<span class="swpm-remember-checkbox"><input type="checkbox" name="rememberme" value="checked='checked'"></span>
|
18 |
-
<span class="swpm-rember-label"> <?php echo
|
19 |
</div>
|
20 |
<div class="swpm-login-submit">
|
21 |
-
<input type="submit" class="swpm-login-form-submit" name="swpm-login" value="<?php echo
|
22 |
</div>
|
23 |
<div class="swpm-forgot-pass-link">
|
24 |
-
<a id="forgot_pass" class="swpm-login-form-pw-reset-link" href="<?php echo
|
25 |
</div>
|
26 |
<div class="swpm-join-us-link">
|
27 |
-
<a id="register" class="swpm-login-form-register-link" href="<?php echo
|
28 |
</div>
|
29 |
<div class="swpm-login-action-msg">
|
30 |
-
<span class="swpm-login-widget-action-msg"><?php echo
|
31 |
</div>
|
32 |
</div>
|
33 |
</form>
|
1 |
+
<?php
|
2 |
+
$auth = SwpmAuth::get_instance();
|
3 |
+
$setting = SwpmSettings::get_instance();
|
4 |
+
$password_reset_url = $setting->get_value('reset-page-url');
|
5 |
+
$join_url = $setting->get_value('join-us-page-url');
|
6 |
+
?>
|
7 |
<div class="swpm-login-widget-form">
|
8 |
<form id="swpm-login-form" name="swpm-login-form" method="post" action="">
|
9 |
<div class="swpm-login-form-inner">
|
10 |
<div class="swpm-username-label">
|
11 |
+
<label for="swpm_user_name" class="swpm-label"><?php echo SwpmUtils::_('Username') ?></label>
|
12 |
</div>
|
13 |
<div class="swpm-username-input">
|
14 |
<input type="text" class="swpm-text-field swpm-username-field" id="swpm_user_name" value="" size="25" name="swpm_user_name" />
|
15 |
</div>
|
16 |
<div class="swpm-password-label">
|
17 |
+
<label for="swpm_password" class="swpm-label"><?php echo SwpmUtils::_('Password') ?></label>
|
18 |
</div>
|
19 |
<div class="swpm-password-input">
|
20 |
<input type="password" class="swpm-text-field swpm-password-field" id="swpm_password" value="" size="25" name="swpm_password" />
|
21 |
</div>
|
22 |
<div class="swpm-remember-me">
|
23 |
<span class="swpm-remember-checkbox"><input type="checkbox" name="rememberme" value="checked='checked'"></span>
|
24 |
+
<span class="swpm-rember-label"> <?php echo SwpmUtils::_('Remember Me') ?></span>
|
25 |
</div>
|
26 |
<div class="swpm-login-submit">
|
27 |
+
<input type="submit" class="swpm-login-form-submit" name="swpm-login" value="<?php echo SwpmUtils::_('Login') ?>"/>
|
28 |
</div>
|
29 |
<div class="swpm-forgot-pass-link">
|
30 |
+
<a id="forgot_pass" class="swpm-login-form-pw-reset-link" href="<?php echo $password_reset_url; ?>"><?php echo SwpmUtils::_('Forgot Password') ?>?</a>
|
31 |
</div>
|
32 |
<div class="swpm-join-us-link">
|
33 |
+
<a id="register" class="swpm-login-form-register-link" href="<?php echo $join_url; ?>"><?php echo SwpmUtils::_('Join Us') ?></a>
|
34 |
</div>
|
35 |
<div class="swpm-login-action-msg">
|
36 |
+
<span class="swpm-login-widget-action-msg"><?php echo $auth->get_message(); ?></span>
|
37 |
</div>
|
38 |
</div>
|
39 |
</form>
|
views/payments/admin_all_payment_transactions.php
CHANGED
@@ -27,7 +27,7 @@ $payments_list_table = new SWPMPaymentsListTable();
|
|
27 |
//Check if an action was performed
|
28 |
if (isset($_REQUEST['action'])) { //Do list table form row action tasks
|
29 |
if (isset($_REQUEST['action']) && $_REQUEST['action'] == 'delete_txn') { //Delete link was clicked for a row in list table
|
30 |
-
$record_id =
|
31 |
$payments_list_table->delete_record($record_id);
|
32 |
$success_msg = '<div id="message" class="updated"><p><strong>';
|
33 |
$success_msg .= SwpmUtils::_('The selected entry was deleted!');
|
27 |
//Check if an action was performed
|
28 |
if (isset($_REQUEST['action'])) { //Do list table form row action tasks
|
29 |
if (isset($_REQUEST['action']) && $_REQUEST['action'] == 'delete_txn') { //Delete link was clicked for a row in list table
|
30 |
+
$record_id = sanitize_text_field($_REQUEST['id']);
|
31 |
$payments_list_table->delete_record($record_id);
|
32 |
$success_msg = '<div id="message" class="updated"><p><strong>';
|
33 |
$success_msg .= SwpmUtils::_('The selected entry was deleted!');
|
views/payments/admin_create_payment_buttons.php
CHANGED
@@ -40,7 +40,7 @@ if (!isset($_REQUEST['swpm_button_type_selected'])) {
|
|
40 |
} else {
|
41 |
//Button type has been selected. Show the payment button configuration option.
|
42 |
//Fire the action hook. The addons can render the payment button configuration option as appropriate.
|
43 |
-
$button_type =
|
44 |
do_action('swpm_create_new_button_for_'.$button_type);
|
45 |
//The payment addons will create the button from then redirect to the "edit" interface of that button after save.
|
46 |
|
40 |
} else {
|
41 |
//Button type has been selected. Show the payment button configuration option.
|
42 |
//Fire the action hook. The addons can render the payment button configuration option as appropriate.
|
43 |
+
$button_type = sanitize_text_field($_REQUEST['button_type']);
|
44 |
do_action('swpm_create_new_button_for_'.$button_type);
|
45 |
//The payment addons will create the button from then redirect to the "edit" interface of that button after save.
|
46 |
|
views/payments/admin_edit_payment_buttons.php
CHANGED
@@ -16,7 +16,7 @@ do_action('swpm_edit_payment_button_process_submission'); //Addons can use this
|
|
16 |
<?php
|
17 |
//Fire the action hook. The addons can render the payment button edit interface
|
18 |
//Button type (button_type) and Button id (button_id) must be present in the REQUEST
|
19 |
-
$button_type =
|
20 |
-
$button_id =
|
21 |
do_action('swpm_edit_payment_button_for_' . $button_type, $button_id);
|
22 |
|
16 |
<?php
|
17 |
//Fire the action hook. The addons can render the payment button edit interface
|
18 |
//Button type (button_type) and Button id (button_id) must be present in the REQUEST
|
19 |
+
$button_type = sanitize_text_field($_REQUEST['button_type']);
|
20 |
+
$button_id = sanitize_text_field($_REQUEST['button_id']);
|
21 |
do_action('swpm_edit_payment_button_for_' . $button_type, $button_id);
|
22 |
|
views/payments/admin_payment_settings.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<div class="wrap">
|
2 |
|
3 |
-
<
|
4 |
|
5 |
<?php do_action("swpm-draw-tab"); ?>
|
6 |
|
1 |
<div class="wrap">
|
2 |
|
3 |
+
<h1><?php echo SwpmUtils::_('Simple WP Membership::Settings') ?></h1>
|
4 |
|
5 |
<?php do_action("swpm-draw-tab"); ?>
|
6 |
|
views/payments/admin_payments_page.php
CHANGED
@@ -6,7 +6,7 @@ $tab = isset($_GET['tab']) ? $_GET['tab'] : '';
|
|
6 |
|
7 |
<div class="wrap">
|
8 |
|
9 |
-
<
|
10 |
|
11 |
<h2 class="nav-tab-wrapper">
|
12 |
<a class="nav-tab <?php echo ($tab == '') ? 'nav-tab-active' : ''; ?>" href="admin.php?page=simple_wp_membership_payments"><?php SwpmUtils::e('Transactions'); ?></a>
|
6 |
|
7 |
<div class="wrap">
|
8 |
|
9 |
+
<h1><?php echo SwpmUtils::_('Simple Membership::Payments') ?></h1>
|
10 |
|
11 |
<h2 class="nav-tab-wrapper">
|
12 |
<a class="nav-tab <?php echo ($tab == '') ? 'nav-tab-active' : ''; ?>" href="admin.php?page=simple_wp_membership_payments"><?php SwpmUtils::e('Transactions'); ?></a>
|
views/payments/payment-gateway/admin_paypal_buy_now_button.php
CHANGED
@@ -19,7 +19,7 @@ function swpm_create_new_pp_buy_now_button() {
|
|
19 |
<div class="inside">
|
20 |
|
21 |
<form id="pp_button_config_form" method="post">
|
22 |
-
<input type="hidden" name="button_type" value="<?php echo
|
23 |
<input type="hidden" name="swpm_button_type_selected" value="1">
|
24 |
|
25 |
<table class="form-table" width="100%" border="0" cellspacing="0" cellpadding="6">
|
@@ -134,29 +134,30 @@ add_action('swpm_create_new_button_process_submission', 'swpm_save_new_pp_buy_no
|
|
134 |
function swpm_save_new_pp_buy_now_button_data() {
|
135 |
if (isset($_REQUEST['swpm_pp_buy_now_save_submit'])) {
|
136 |
//This is a PayPal buy now button save event. Process the submission.
|
137 |
-
//TODO - Do some
|
|
|
138 |
//Save the button data
|
139 |
$button_id = wp_insert_post(
|
140 |
array(
|
141 |
-
'post_title' =>
|
142 |
'post_type' => 'swpm_payment_button',
|
143 |
'post_content' => '',
|
144 |
'post_status' => 'publish'
|
145 |
)
|
146 |
);
|
147 |
|
148 |
-
$button_type =
|
149 |
add_post_meta($button_id, 'button_type', $button_type);
|
150 |
-
add_post_meta($button_id, 'membership_level_id',
|
151 |
-
add_post_meta($button_id, 'payment_amount', trim(
|
152 |
-
add_post_meta($button_id, 'payment_currency',
|
153 |
-
add_post_meta($button_id, 'return_url', trim(
|
154 |
-
add_post_meta($button_id, 'paypal_email', trim(
|
155 |
-
add_post_meta($button_id, 'button_image_url', trim(
|
156 |
|
157 |
//Redirect to the edit interface of this button with $button_id
|
158 |
//$url = admin_url() . 'admin.php?page=simple_wp_membership_payments&tab=edit_button&button_id=' . $button_id . '&button_type=' . $button_type;
|
159 |
-
//Redirect to the
|
160 |
$url = admin_url() . 'admin.php?page=simple_wp_membership_payments&tab=payment_buttons';
|
161 |
SwpmMiscUtils::redirect_to_url($url);
|
162 |
}
|
@@ -176,8 +177,8 @@ function swpm_edit_pp_buy_now_button() {
|
|
176 |
|
177 |
//Retrieve the payment button data and present it for editing.
|
178 |
|
179 |
-
$button_id =
|
180 |
-
$button_type =
|
181 |
|
182 |
$button = get_post($button_id); //Retrieve the CPT for this button
|
183 |
|
@@ -315,11 +316,12 @@ add_action('swpm_edit_payment_button_process_submission', 'swpm_edit_pp_buy_now_
|
|
315 |
function swpm_edit_pp_buy_now_button_data() {
|
316 |
if (isset($_REQUEST['swpm_pp_buy_now_edit_submit'])) {
|
317 |
//This is a PayPal buy now button edit event. Process the submission.
|
318 |
-
//TODO - Do some
|
|
|
319 |
//Update and Save the edited payment button data
|
320 |
-
$button_id =
|
321 |
-
$button_type =
|
322 |
-
$button_name =
|
323 |
|
324 |
$button_post = array(
|
325 |
'ID' => $button_id,
|
@@ -329,12 +331,12 @@ function swpm_edit_pp_buy_now_button_data() {
|
|
329 |
wp_update_post($button_post);
|
330 |
|
331 |
update_post_meta($button_id, 'button_type', $button_type);
|
332 |
-
update_post_meta($button_id, 'membership_level_id',
|
333 |
-
update_post_meta($button_id, 'payment_amount', trim(
|
334 |
-
update_post_meta($button_id, 'payment_currency',
|
335 |
-
update_post_meta($button_id, 'return_url', trim(
|
336 |
-
update_post_meta($button_id, 'paypal_email', trim(
|
337 |
-
update_post_meta($button_id, 'button_image_url', trim(
|
338 |
|
339 |
echo '<div id="message" class="updated fade"><p>Payment button data successfully updated!</p></div>';
|
340 |
}
|
19 |
<div class="inside">
|
20 |
|
21 |
<form id="pp_button_config_form" method="post">
|
22 |
+
<input type="hidden" name="button_type" value="<?php echo sanitize_text_field($_REQUEST['button_type']); ?>">
|
23 |
<input type="hidden" name="swpm_button_type_selected" value="1">
|
24 |
|
25 |
<table class="form-table" width="100%" border="0" cellspacing="0" cellpadding="6">
|
134 |
function swpm_save_new_pp_buy_now_button_data() {
|
135 |
if (isset($_REQUEST['swpm_pp_buy_now_save_submit'])) {
|
136 |
//This is a PayPal buy now button save event. Process the submission.
|
137 |
+
//TODO - Do some extra validation check?
|
138 |
+
|
139 |
//Save the button data
|
140 |
$button_id = wp_insert_post(
|
141 |
array(
|
142 |
+
'post_title' => sanitize_text_field($_REQUEST['button_name']),
|
143 |
'post_type' => 'swpm_payment_button',
|
144 |
'post_content' => '',
|
145 |
'post_status' => 'publish'
|
146 |
)
|
147 |
);
|
148 |
|
149 |
+
$button_type = sanitize_text_field($_REQUEST['button_type']);
|
150 |
add_post_meta($button_id, 'button_type', $button_type);
|
151 |
+
add_post_meta($button_id, 'membership_level_id', sanitize_text_field($_REQUEST['membership_level_id']));
|
152 |
+
add_post_meta($button_id, 'payment_amount', trim(sanitize_text_field($_REQUEST['payment_amount'])));
|
153 |
+
add_post_meta($button_id, 'payment_currency', sanitize_text_field($_REQUEST['payment_currency']));
|
154 |
+
add_post_meta($button_id, 'return_url', trim(sanitize_text_field($_REQUEST['return_url'])));
|
155 |
+
add_post_meta($button_id, 'paypal_email', trim(sanitize_email($_REQUEST['paypal_email'])));
|
156 |
+
add_post_meta($button_id, 'button_image_url', trim(sanitize_text_field($_REQUEST['button_image_url'])));
|
157 |
|
158 |
//Redirect to the edit interface of this button with $button_id
|
159 |
//$url = admin_url() . 'admin.php?page=simple_wp_membership_payments&tab=edit_button&button_id=' . $button_id . '&button_type=' . $button_type;
|
160 |
+
//Redirect to the manage payment buttons interface
|
161 |
$url = admin_url() . 'admin.php?page=simple_wp_membership_payments&tab=payment_buttons';
|
162 |
SwpmMiscUtils::redirect_to_url($url);
|
163 |
}
|
177 |
|
178 |
//Retrieve the payment button data and present it for editing.
|
179 |
|
180 |
+
$button_id = sanitize_text_field($_REQUEST['button_id']);
|
181 |
+
$button_type = sanitize_text_field($_REQUEST['button_type']);
|
182 |
|
183 |
$button = get_post($button_id); //Retrieve the CPT for this button
|
184 |
|
316 |
function swpm_edit_pp_buy_now_button_data() {
|
317 |
if (isset($_REQUEST['swpm_pp_buy_now_edit_submit'])) {
|
318 |
//This is a PayPal buy now button edit event. Process the submission.
|
319 |
+
//TODO - Do some extra validation check?
|
320 |
+
|
321 |
//Update and Save the edited payment button data
|
322 |
+
$button_id = sanitize_text_field($_REQUEST['button_id']);
|
323 |
+
$button_type = sanitize_text_field($_REQUEST['button_type']);
|
324 |
+
$button_name = sanitize_text_field($_REQUEST['button_name']);
|
325 |
|
326 |
$button_post = array(
|
327 |
'ID' => $button_id,
|
331 |
wp_update_post($button_post);
|
332 |
|
333 |
update_post_meta($button_id, 'button_type', $button_type);
|
334 |
+
update_post_meta($button_id, 'membership_level_id', sanitize_text_field($_REQUEST['membership_level_id']));
|
335 |
+
update_post_meta($button_id, 'payment_amount', trim(sanitize_text_field($_REQUEST['payment_amount'])));
|
336 |
+
update_post_meta($button_id, 'payment_currency', sanitize_text_field($_REQUEST['payment_currency']));
|
337 |
+
update_post_meta($button_id, 'return_url', trim(sanitize_text_field($_REQUEST['return_url'])));
|
338 |
+
update_post_meta($button_id, 'paypal_email', trim(sanitize_email($_REQUEST['paypal_email'])));
|
339 |
+
update_post_meta($button_id, 'button_image_url', trim(sanitize_text_field($_REQUEST['button_image_url'])));
|
340 |
|
341 |
echo '<div id="message" class="updated fade"><p>Payment button data successfully updated!</p></div>';
|
342 |
}
|
views/payments/payment-gateway/admin_paypal_subscription_button.php
CHANGED
@@ -20,7 +20,7 @@ function swpm_create_new_pp_subscription_button() {
|
|
20 |
<h3 class="hndle"><label for="title"><?php echo SwpmUtils::_('PayPal Subscription Button Configuration'); ?></label></h3>
|
21 |
<div class="inside">
|
22 |
|
23 |
-
<input type="hidden" name="button_type" value="<?php echo
|
24 |
<input type="hidden" name="swpm_button_type_selected" value="1">
|
25 |
|
26 |
<table class="form-table" width="100%" border="0" cellspacing="0" cellpadding="6">
|
@@ -210,33 +210,32 @@ function swpm_save_new_pp_subscription_button_data() {
|
|
210 |
|
211 |
$button_id = wp_insert_post(
|
212 |
array(
|
213 |
-
'post_title' =>
|
214 |
'post_type' => 'swpm_payment_button',
|
215 |
'post_content' => '',
|
216 |
'post_status' => 'publish'
|
217 |
)
|
218 |
);
|
219 |
|
220 |
-
$button_type =
|
221 |
add_post_meta($button_id, 'button_type', $button_type);
|
222 |
-
add_post_meta($button_id, 'membership_level_id',
|
223 |
-
|
224 |
-
add_post_meta($button_id, '
|
225 |
-
add_post_meta($button_id, '
|
226 |
-
add_post_meta($button_id, '
|
227 |
-
add_post_meta($button_id, 'button_image_url', trim(strip_tags($_REQUEST['button_image_url'])));
|
228 |
|
229 |
//Subscription billing details
|
230 |
-
add_post_meta($button_id, 'billing_amount',
|
231 |
-
add_post_meta($button_id, 'billing_cycle',
|
232 |
-
add_post_meta($button_id, 'billing_cycle_term',
|
233 |
-
add_post_meta($button_id, 'billing_cycle_count',
|
234 |
add_post_meta($button_id, 'billing_reattempt', isset($_REQUEST['billing_reattempt']) ? '1' : '');
|
235 |
|
236 |
//Trial billing details
|
237 |
-
add_post_meta($button_id, 'trial_billing_amount',
|
238 |
-
add_post_meta($button_id, 'trial_billing_cycle',
|
239 |
-
add_post_meta($button_id, 'trial_billing_cycle_term',
|
240 |
|
241 |
//Redirect to the edit interface of this button with $button_id
|
242 |
$url = admin_url() . 'admin.php?page=simple_wp_membership_payments&tab=edit_button&button_id=' . $button_id . '&button_type=' . $button_type;
|
@@ -257,8 +256,8 @@ add_action('swpm_edit_payment_button_for_pp_subscription', 'swpm_edit_pp_subscri
|
|
257 |
function swpm_edit_pp_subscription_button() {
|
258 |
//Retrieve the payment button data and present it for editing.
|
259 |
|
260 |
-
$button_id =
|
261 |
-
$button_type =
|
262 |
|
263 |
$button = get_post($button_id); //Retrieve the CPT for this button
|
264 |
|
@@ -482,9 +481,9 @@ function swpm_edit_pp_subscription_button_data() {
|
|
482 |
//TODO - Do some basic validation check?
|
483 |
|
484 |
//Update and Save the edited payment button data
|
485 |
-
$button_id =
|
486 |
-
$button_type =
|
487 |
-
$button_name =
|
488 |
|
489 |
$button_post = array(
|
490 |
'ID' => $button_id,
|
@@ -494,24 +493,23 @@ function swpm_edit_pp_subscription_button_data() {
|
|
494 |
wp_update_post($button_post);
|
495 |
|
496 |
update_post_meta($button_id, 'button_type', $button_type);
|
497 |
-
update_post_meta($button_id, 'membership_level_id',
|
498 |
-
|
499 |
-
update_post_meta($button_id, '
|
500 |
-
update_post_meta($button_id, '
|
501 |
-
update_post_meta($button_id, '
|
502 |
-
update_post_meta($button_id, 'button_image_url', trim(strip_tags($_REQUEST['button_image_url'])));
|
503 |
|
504 |
//Subscription billing details
|
505 |
-
update_post_meta($button_id, 'billing_amount',
|
506 |
-
update_post_meta($button_id, 'billing_cycle',
|
507 |
-
update_post_meta($button_id, 'billing_cycle_term',
|
508 |
-
update_post_meta($button_id, 'billing_cycle_count',
|
509 |
update_post_meta($button_id, 'billing_reattempt', isset($_REQUEST['billing_reattempt']) ? '1' : '');
|
510 |
|
511 |
//Trial billing details
|
512 |
-
update_post_meta($button_id, 'trial_billing_amount',
|
513 |
-
update_post_meta($button_id, 'trial_billing_cycle',
|
514 |
-
update_post_meta($button_id, 'trial_billing_cycle_term',
|
515 |
|
516 |
echo '<div id="message" class="updated fade"><p>Payment button data successfully updated!</p></div>';
|
517 |
}
|
20 |
<h3 class="hndle"><label for="title"><?php echo SwpmUtils::_('PayPal Subscription Button Configuration'); ?></label></h3>
|
21 |
<div class="inside">
|
22 |
|
23 |
+
<input type="hidden" name="button_type" value="<?php echo sanitize_text_field($_REQUEST['button_type']); ?>">
|
24 |
<input type="hidden" name="swpm_button_type_selected" value="1">
|
25 |
|
26 |
<table class="form-table" width="100%" border="0" cellspacing="0" cellpadding="6">
|
210 |
|
211 |
$button_id = wp_insert_post(
|
212 |
array(
|
213 |
+
'post_title' => sanitize_text_field($_REQUEST['button_name']),
|
214 |
'post_type' => 'swpm_payment_button',
|
215 |
'post_content' => '',
|
216 |
'post_status' => 'publish'
|
217 |
)
|
218 |
);
|
219 |
|
220 |
+
$button_type = sanitize_text_field($_REQUEST['button_type']);
|
221 |
add_post_meta($button_id, 'button_type', $button_type);
|
222 |
+
add_post_meta($button_id, 'membership_level_id', sanitize_text_field($_REQUEST['membership_level_id']));
|
223 |
+
add_post_meta($button_id, 'payment_currency', sanitize_text_field($_REQUEST['payment_currency']));
|
224 |
+
add_post_meta($button_id, 'return_url', trim(sanitize_text_field($_REQUEST['return_url'])));
|
225 |
+
add_post_meta($button_id, 'paypal_email', trim(sanitize_email($_REQUEST['paypal_email'])));
|
226 |
+
add_post_meta($button_id, 'button_image_url', trim(sanitize_text_field($_REQUEST['button_image_url'])));
|
|
|
227 |
|
228 |
//Subscription billing details
|
229 |
+
add_post_meta($button_id, 'billing_amount', sanitize_text_field($_REQUEST['billing_amount']));
|
230 |
+
add_post_meta($button_id, 'billing_cycle', sanitize_text_field($_REQUEST['billing_cycle']));
|
231 |
+
add_post_meta($button_id, 'billing_cycle_term', sanitize_text_field($_REQUEST['billing_cycle_term']));
|
232 |
+
add_post_meta($button_id, 'billing_cycle_count', sanitize_text_field($_REQUEST['billing_cycle_count']));
|
233 |
add_post_meta($button_id, 'billing_reattempt', isset($_REQUEST['billing_reattempt']) ? '1' : '');
|
234 |
|
235 |
//Trial billing details
|
236 |
+
add_post_meta($button_id, 'trial_billing_amount', sanitize_text_field($_REQUEST['trial_billing_amount']));
|
237 |
+
add_post_meta($button_id, 'trial_billing_cycle', sanitize_text_field($_REQUEST['trial_billing_cycle']));
|
238 |
+
add_post_meta($button_id, 'trial_billing_cycle_term', sanitize_text_field($_REQUEST['trial_billing_cycle_term']));
|
239 |
|
240 |
//Redirect to the edit interface of this button with $button_id
|
241 |
$url = admin_url() . 'admin.php?page=simple_wp_membership_payments&tab=edit_button&button_id=' . $button_id . '&button_type=' . $button_type;
|
256 |
function swpm_edit_pp_subscription_button() {
|
257 |
//Retrieve the payment button data and present it for editing.
|
258 |
|
259 |
+
$button_id = sanitize_text_field($_REQUEST['button_id']);
|
260 |
+
$button_type = sanitize_text_field($_REQUEST['button_type']);
|
261 |
|
262 |
$button = get_post($button_id); //Retrieve the CPT for this button
|
263 |
|
481 |
//TODO - Do some basic validation check?
|
482 |
|
483 |
//Update and Save the edited payment button data
|
484 |
+
$button_id = sanitize_text_field($_REQUEST['button_id']);
|
485 |
+
$button_type = sanitize_text_field($_REQUEST['button_type']);
|
486 |
+
$button_name = sanitize_text_field($_REQUEST['button_name']);
|
487 |
|
488 |
$button_post = array(
|
489 |
'ID' => $button_id,
|
493 |
wp_update_post($button_post);
|
494 |
|
495 |
update_post_meta($button_id, 'button_type', $button_type);
|
496 |
+
update_post_meta($button_id, 'membership_level_id', sanitize_text_field($_REQUEST['membership_level_id']));
|
497 |
+
update_post_meta($button_id, 'payment_currency', sanitize_text_field($_REQUEST['payment_currency']));
|
498 |
+
update_post_meta($button_id, 'return_url', trim(sanitize_text_field($_REQUEST['return_url'])));
|
499 |
+
update_post_meta($button_id, 'paypal_email', trim(sanitize_email($_REQUEST['paypal_email'])));
|
500 |
+
update_post_meta($button_id, 'button_image_url', trim(sanitize_text_field($_REQUEST['button_image_url'])));
|
|
|
501 |
|
502 |
//Subscription billing details
|
503 |
+
update_post_meta($button_id, 'billing_amount', sanitize_text_field($_REQUEST['billing_amount']));
|
504 |
+
update_post_meta($button_id, 'billing_cycle', sanitize_text_field($_REQUEST['billing_cycle']));
|
505 |
+
update_post_meta($button_id, 'billing_cycle_term', sanitize_text_field($_REQUEST['billing_cycle_term']));
|
506 |
+
update_post_meta($button_id, 'billing_cycle_count', sanitize_text_field($_REQUEST['billing_cycle_count']));
|
507 |
update_post_meta($button_id, 'billing_reattempt', isset($_REQUEST['billing_reattempt']) ? '1' : '');
|
508 |
|
509 |
//Trial billing details
|
510 |
+
update_post_meta($button_id, 'trial_billing_amount', sanitize_text_field($_REQUEST['trial_billing_amount']));
|
511 |
+
update_post_meta($button_id, 'trial_billing_cycle', sanitize_text_field($_REQUEST['trial_billing_cycle']));
|
512 |
+
update_post_meta($button_id, 'trial_billing_cycle_term', sanitize_text_field($_REQUEST['trial_billing_cycle_term']));
|
513 |
|
514 |
echo '<div id="message" class="updated fade"><p>Payment button data successfully updated!</p></div>';
|
515 |
}
|