Simple Membership - Version 2.2.4

Version Description

  • Fixed an issue with not being able to unprotect the category protection.
  • Minor refactoring work with the classes.
Download this release

Release Info

Developer mra13
Plugin Icon 128x128 Simple Membership
Version 2.2.4
Comparing to
See all releases

Code changes from version 1.8.0 to 2.2.4

Files changed (101) hide show
  1. classes/admin-includes/swpm-payments-list-table.php +153 -0
  2. classes/class.bAccessControl.php +41 -21
  3. classes/class.bAdminRegistration.php +28 -12
  4. classes/class.bAjax.php +9 -5
  5. classes/class.bAuth.php +92 -30
  6. classes/class.bAuthPermissionCollection.php +9 -0
  7. classes/class.bCategoryList.php +115 -0
  8. classes/class.bCronJob.php +60 -0
  9. classes/class.bForm.php +25 -17
  10. classes/class.bFrontRegistration.php +52 -50
  11. classes/class.bInstallation.php +87 -18
  12. classes/class.bLevelForm.php +115 -51
  13. classes/class.bMemberUtils.php +35 -0
  14. classes/class.bMembers.php +38 -23
  15. classes/class.bMembershipLevel.php +9 -2
  16. classes/class.bMembershipLevelUtils.php +3 -1
  17. classes/class.bMembershipLevels.php +31 -17
  18. classes/class.bPermission.php +10 -5
  19. classes/class.bPermissionCollection.php +49 -0
  20. classes/class.bProtectionBase.php +44 -8
  21. classes/class.bRegistration.php +1 -2
  22. classes/class.bSettings.php +127 -71
  23. classes/class.bTransactions.php +55 -0
  24. classes/class.bTransfer.php +1 -1
  25. classes/class.bUtils.php +203 -57
  26. classes/class.miscUtils.php +89 -65
  27. classes/class.simple-wp-membership.php +160 -54
  28. classes/common/class-swpm-list-table.php +1138 -0
  29. classes/index.html +0 -0
  30. css/index.html +0 -0
  31. css/swpm.addons.listing.css +34 -0
  32. css/swpm.common.css +75 -14
  33. images/addons/form-shortcode-generator.png +0 -0
  34. images/addons/mailchimp-integration.png +0 -0
  35. images/addons/swpm-custom-messages.png +0 -0
  36. images/addons/swpm-form-builder.png +0 -0
  37. images/addons/swpm-login-redirection.png +0 -0
  38. images/addons/swpm-older-posts-protection.png +0 -0
  39. images/addons/wp-user-import.png +0 -0
  40. images/index.html +0 -0
  41. images/restricted-icon.png +0 -0
  42. index.html +0 -0
  43. ipn/index.html +0 -0
  44. ipn/swpm_handle_pp_ipn.php +40 -14
  45. ipn/swpm_handle_subsc_ipn.php +54 -51
  46. js/index.html +0 -0
  47. js/jquery.validationEngine-en.js +4 -1
  48. js/swpm.password-meter.js +36 -33
  49. languages/swpm-da_DA.mo +0 -0
  50. languages/swpm-da_DA.po +934 -0
  51. languages/swpm-de_DE.mo +0 -0
  52. languages/swpm-de_DE.po +710 -0
  53. languages/swpm-es_ES.mo +0 -0
  54. languages/swpm-es_ES.po +971 -714
  55. languages/swpm-lt_LT.mo +0 -0
  56. languages/swpm-lt_LT.po +519 -0
  57. languages/swpm-mk_MK.mo +0 -0
  58. languages/swpm-mk_MK.po +713 -0
  59. languages/swpm-nl_NL.mo +0 -0
  60. languages/swpm-nl_NL.po +709 -0
  61. languages/swpm-pl_PL.mo +0 -0
  62. languages/swpm-pl_PL.po +708 -0
  63. languages/swpm-pt_BR.mo +0 -0
  64. languages/swpm-pt_BR.po +88 -88
  65. languages/swpm-ro_RO.mo +0 -0
  66. languages/swpm-ro_RO.po +709 -0
  67. languages/swpm-ru_RU.mo +0 -0
  68. languages/swpm-ru_RU.po +712 -0
  69. languages/swpm-sv_SE.mo +0 -0
  70. languages/swpm-sv_SE.po +708 -0
  71. languages/swpm-tr_TR.mo +0 -0
  72. languages/swpm-tr_TR.po +709 -0
  73. languages/swpm.pot +452 -241
  74. readme.txt +176 -7
  75. simple-wp-membership.php +8 -6
  76. views/account_delete_warning.php +16 -0
  77. views/add.php +41 -74
  78. views/admin_add.php +26 -6
  79. views/admin_add_level.php +20 -46
  80. views/admin_add_ons_page.php +95 -0
  81. views/admin_addon_settings.php +14 -0
  82. views/admin_category_list.php +34 -0
  83. views/admin_edit.php +67 -19
  84. views/admin_edit_level.php +24 -46
  85. views/admin_member_form_common_js.php +6 -0
  86. views/admin_member_form_common_part.php +26 -54
  87. views/admin_members.php +5 -5
  88. views/admin_membership_level_menu.php +4 -3
  89. views/admin_membership_levels.php +4 -5
  90. views/admin_membership_manage.php +1 -1
  91. views/admin_payment_settings.php +6 -6
  92. views/admin_payments_page.php +55 -0
  93. views/admin_settings.php +1 -1
  94. views/admin_tools_settings.php +10 -10
  95. views/edit.php +37 -27
  96. views/forgot_password.php +2 -2
  97. views/index.html +0 -0
  98. views/loggedin.php +21 -21
  99. views/login.php +32 -35
  100. views/login_widget.php +0 -16
  101. views/login_widget_logged.php +0 -18
classes/admin-includes/swpm-payments-list-table.php ADDED
@@ -0,0 +1,153 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'classes/common/class-swpm-list-table.php');
4
+
5
+ class SWPM_Payments_List_Table extends SWPM_List_Table {
6
+
7
+ function __construct() {
8
+ global $status, $page;
9
+
10
+ //Set parent defaults
11
+ parent::__construct(array(
12
+ 'singular' => 'transaction', //singular name of the listed records
13
+ 'plural' => 'transactions', //plural name of the listed records
14
+ 'ajax' => false //does this table support ajax?
15
+ ));
16
+ }
17
+
18
+ function column_default($item, $column_name) {
19
+ //Just print the data for that column
20
+ return $item[$column_name];
21
+ }
22
+
23
+ function column_id($item) {
24
+
25
+ //Build row actions
26
+ $actions = array(
27
+ /* 'edit' => sprintf('<a href="admin.php?page=simple_wp_membership_payments&edit_txn=%s">Edit</a>', $item['id']),//TODO - Will be implemented in a future date */
28
+ 'delete' => sprintf('<a href="admin.php?page=simple_wp_membership_payments&action=delete_txn&id=%s" onclick="return confirm(\'Are you sure you want to delete this record?\')">Delete</a>', $item['id']),
29
+ );
30
+
31
+ //Return the refid column contents
32
+ return $item['id'] . $this->row_actions($actions);
33
+ }
34
+
35
+ function column_cb($item) {
36
+ return sprintf(
37
+ '<input type="checkbox" name="%1$s[]" value="%2$s" />',
38
+ /* $1%s */ $this->_args['singular'], //Let's reuse singular label (affiliate)
39
+ /* $2%s */ $item['id'] //The value of the checkbox should be the record's key/id
40
+ );
41
+ }
42
+
43
+ function get_columns() {
44
+ $columns = array(
45
+ 'cb' => '<input type="checkbox" />', //Render a checkbox instead of text
46
+ 'id' => 'Row ID',
47
+ 'email' => 'Email Address',
48
+ 'first_name' => 'First Name',
49
+ 'last_name' => 'Last Name',
50
+ 'txn_date' => 'Date',
51
+ 'txn_id' => 'Transaction ID',
52
+ 'payment_amount' => 'Amount',
53
+ 'membership_level' => 'Membership Level'
54
+ );
55
+ return $columns;
56
+ }
57
+
58
+ function get_sortable_columns() {
59
+ $sortable_columns = array(
60
+ 'id' => array('id', false), //true means its already sorted
61
+ 'membership_level' => array('membership_level', false),
62
+ );
63
+ return $sortable_columns;
64
+ }
65
+
66
+ function get_bulk_actions() {
67
+ $actions = array(
68
+ 'delete' => 'Delete'
69
+ );
70
+ return $actions;
71
+ }
72
+
73
+ function process_bulk_action() {
74
+ //Detect when a bulk action is being triggered... //print_r($_GET);
75
+ if ('delete' === $this->current_action()) {
76
+ $records_to_delete = $_GET['transaction'];
77
+ if (empty($records_to_delete)) {
78
+ echo '<div id="message" class="updated fade"><p>Error! You need to select multiple records to perform a bulk action!</p></div>';
79
+ return;
80
+ }
81
+ foreach ($records_to_delete as $record_id) {
82
+ global $wpdb;
83
+ $payments_table_name = $wpdb->prefix . "swpm_payments_tbl";
84
+ $updatedb = "DELETE FROM $payments_table_name WHERE id='$record_id'";
85
+ $results = $wpdb->query($updatedb);
86
+ }
87
+ echo '<div id="message" class="updated fade"><p>Selected records deleted successfully!</p></div>';
88
+ }
89
+ }
90
+
91
+ function delete_record($record_id) {
92
+ global $wpdb;
93
+ $payments_table_name = $wpdb->prefix . "swpm_payments_tbl";
94
+ $delete_command = "DELETE FROM " . $payments_table_name . " WHERE id = '$record_id'";
95
+ $result = $wpdb->query($delete_command);
96
+ }
97
+
98
+ function prepare_items() {
99
+
100
+ // Lets decide how many records per page to show
101
+ $per_page = 50;
102
+
103
+ $columns = $this->get_columns();
104
+ $hidden = array();
105
+ $sortable = $this->get_sortable_columns();
106
+
107
+ $this->_column_headers = array($columns, $hidden, $sortable);
108
+
109
+ $this->process_bulk_action();
110
+
111
+ // This checks for sorting input and sorts the data.
112
+ $orderby_column = isset($_GET['orderby']) ? $_GET['orderby'] : '';
113
+ $sort_order = isset($_GET['order']) ? $_GET['order'] : '';
114
+ if (empty($orderby_column)) {
115
+ $orderby_column = "id";
116
+ $sort_order = "DESC";
117
+ }
118
+ global $wpdb;
119
+ $payments_table_name = $wpdb->prefix . "swpm_payments_tbl";
120
+
121
+ //pagination requirement
122
+ $current_page = $this->get_pagenum();
123
+
124
+ if (isset($_POST['swpm_txn_search'])) {//Only load the searched records
125
+ $search_term = trim(strip_tags($_POST['swpm_txn_search']));
126
+ $prepare_query = $wpdb->prepare("SELECT * FROM " . $payments_table_name . " WHERE `email` LIKE '%%%s%%' OR `txn_id` LIKE '%%%s%%' OR `first_name` LIKE '%%%s%%' OR `last_name` LIKE '%%%s%%'", $search_term, $search_term, $search_term, $search_term);
127
+ $data = $wpdb->get_results($prepare_query, ARRAY_A);
128
+ $total_items = count($data);
129
+ } else {//Load all data in an optimized way (so it is only loading data for the current page)
130
+ $query = "SELECT COUNT(*) FROM $payments_table_name";
131
+ $total_items = $wpdb->get_var($query);
132
+
133
+ //pagination requirement
134
+ $query = "SELECT * FROM $payments_table_name ORDER BY $orderby_column $sort_order";
135
+
136
+ $offset = ($current_page - 1) * $per_page;
137
+ $query.=' LIMIT ' . (int) $offset . ',' . (int) $per_page;
138
+
139
+ $data = $wpdb->get_results($query, ARRAY_A);
140
+ }
141
+
142
+ // Now we add our *sorted* data to the items property, where it can be used by the rest of the class.
143
+ $this->items = $data;
144
+
145
+ //pagination requirement
146
+ $this->set_pagination_args(array(
147
+ 'total_items' => $total_items, //WE have to calculate the total number of items
148
+ 'per_page' => $per_page, //WE have to determine how many items to show on a page
149
+ 'total_pages' => ceil($total_items / $per_page) //WE have to calculate the total number of pages
150
+ ));
151
+ }
152
+
153
+ }
classes/class.bAccessControl.php CHANGED
@@ -14,44 +14,64 @@ class BAccessControl {
14
 
15
  public function can_i_read_post($id){
16
  $this->lastError = '';
 
 
 
 
 
 
 
 
17
  $protected = BProtection::get_instance();
18
- if ($protected->is_protected($id)){
19
- $auth = BAuth::get_instance();
20
- if($auth->is_logged_in()){
21
- $perms = BPermission::get_instance($auth->get('membership_level'));
22
- if($perms->is_permitted($id)) {return true;}
23
- $this->lastError = apply_filters ('swpm_restricted_post_msg', BUtils::_('You are not allowed to view this content')) ;
24
- return false;
25
- }
26
  $error_msg = BUtils::_( 'You need to login to view this content. ' ) . BSettings::get_instance()->get_login_link();
27
  $this->lastError = apply_filters('swpm_not_logged_in_post_msg', $error_msg);
 
 
 
 
 
 
 
 
 
 
 
 
28
  return false;
29
  }
30
- return true;
 
 
 
31
  }
32
  public function can_i_read_comment($id){
33
  $this->lastError = '';
34
  $protected = BProtection::get_instance();
35
- if ($protected->is_protected_comment($id)){
36
- $auth = BAuth::get_instance();
37
- if($auth->is_logged_in()){
38
- $perms = BPermission::get_instance($auth->get('membership_level'));
39
- if($perms->is_permitted_comment($id)) {return true; }
40
- $this->lastError = apply_filters ('swpm_restricted_comment_msg', BUtils::_("You are not allowed to view this content") );
41
- return false;
42
- }
43
  $this->lastError = apply_filters('swpm_not_logged_in_comment_msg', BUtils::_("You need to login to view this content. ")
44
  . BSettings::get_instance()->get_login_link());
45
- return false;
46
  }
47
- return true;
 
 
 
 
 
 
 
 
48
  }
49
  public function why(){
50
  return $this->lastError;
51
  }
52
  public function filter_post($id,$content){
53
  if(in_array($id, $this->moretags)) {return $content; }
54
- if($this->can_i_read_post($id)) {return $content; }
55
  $moretag = BSettings::get_instance()->get_value('enable-moretag');
56
  if (empty($moretag)){
57
  return $this->lastError;
@@ -61,7 +81,7 @@ class BAccessControl {
61
 
62
  if (count($post_segments) >= 2){
63
  if (BAuth::get_instance()->is_logged_in()){
64
- $error_msg = '<div class="swpm-margin-top-10">' . BUtils::_("You do no have permission to view rest of the content") . '</div>';
65
  $this->lastError = apply_filters ('swpm_restricted_more_tag_msg', $error_msg);
66
  }
67
  else {
14
 
15
  public function can_i_read_post($id){
16
  $this->lastError = '';
17
+ global $post;
18
+ $auth = BAuth::get_instance();
19
+ $protect_everything = BSettings::get_instance()->get_value('protect-everything');
20
+ if(!empty($protect_everything)){
21
+ $error_msg = BUtils::_( 'You need to login to view this content. ' ) . BSettings::get_instance()->get_login_link();
22
+ $this->lastError = apply_filters('swpm_not_logged_in_post_msg', $error_msg);
23
+ return false;
24
+ }
25
  $protected = BProtection::get_instance();
26
+ if (!$protected->is_protected($id)){ return true;}
27
+ if(!$auth->is_logged_in()){
 
 
 
 
 
 
28
  $error_msg = BUtils::_( 'You need to login to view this content. ' ) . BSettings::get_instance()->get_login_link();
29
  $this->lastError = apply_filters('swpm_not_logged_in_post_msg', $error_msg);
30
+ return false;
31
+ }
32
+
33
+ if ($auth->is_expired_account()){
34
+ $error_msg = '<div class="swpm-account-expired-msg swpm-yellow-box">'.BUtils::_('Your account has expired. Please renew your account to gain access to this content.').'</div>';
35
+ $this->lastError = apply_filters('swpm_account_expired_msg', $error_msg);
36
+ return false;
37
+ }
38
+ $protect_older_posts = apply_filters('swpm_should_protect_older_post', false, $id);
39
+ if ($protect_older_posts){
40
+ $this->lastError = apply_filters ('swpm_restricted_post_msg_older_post',
41
+ BUtils::_('This content can only be viewed by members who joined on or before ' . date(get_option( 'date_format' ), strtotime($post->post_date)))) ;
42
  return false;
43
  }
44
+ $perms = BPermission::get_instance($auth->get('membership_level'));
45
+ if($perms->is_permitted($id)) {return true;}
46
+ $this->lastError = apply_filters ('swpm_restricted_post_msg', '<div class="swpm-no-access-msg">'.BUtils::_('This content is not permitted for your membership level.').'</div>') ;
47
+ return false;
48
  }
49
  public function can_i_read_comment($id){
50
  $this->lastError = '';
51
  $protected = BProtection::get_instance();
52
+ if (!$protected->is_protected_comment($id)){ return true;}
53
+ $auth = BAuth::get_instance();
54
+ if(!$auth->is_logged_in()){
 
 
 
 
 
55
  $this->lastError = apply_filters('swpm_not_logged_in_comment_msg', BUtils::_("You need to login to view this content. ")
56
  . BSettings::get_instance()->get_login_link());
57
+ return false;
58
  }
59
+ if ($auth->is_expired_account()){
60
+ $error_msg = '<div class="swpm-account-expired-msg swpm-yellow-box">'.BUtils::_('Your account has expired. Please renew your account to gain access to this content.').'</div>';
61
+ $this->lastError = apply_filters('swpm_account_expired_msg', $error_msg);
62
+ return false;
63
+ }
64
+ $perms = BPermission::get_instance($auth->get('membership_level'));
65
+ if($perms->is_permitted_comment($id)) {return true; }
66
+ $this->lastError = apply_filters ('swpm_restricted_comment_msg', '<div class="swpm-no-access-msg">'.BUtils::_("This content is not permitted for your membership level.").'</div>' );
67
+ return false;
68
  }
69
  public function why(){
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 = BSettings::get_instance()->get_value('enable-moretag');
76
  if (empty($moretag)){
77
  return $this->lastError;
81
 
82
  if (count($post_segments) >= 2){
83
  if (BAuth::get_instance()->is_logged_in()){
84
+ $error_msg = '<div class="swpm-margin-top-10">' . BUtils::_(" The rest of the content is not permitted for your membership level.") . '</div>';
85
  $this->lastError = apply_filters ('swpm_restricted_more_tag_msg', $error_msg);
86
  }
87
  else {
classes/class.bAdminRegistration.php CHANGED
@@ -3,7 +3,6 @@
3
  /**
4
  * Description of BAdminRegistration
5
  *
6
- * @author nur
7
  */
8
  class BAdminRegistration extends BRegistration {
9
  public static function get_instance(){
@@ -20,19 +19,20 @@ class BAdminRegistration extends BRegistration {
20
  $form = new BForm($member);
21
  if ($form->is_valid()) {
22
  $member_info = $form->get_sanitized();
23
- $member_info['account_state'] = 'active';
 
24
  $plain_password = $member_info['plain_password'];
25
  unset($member_info['plain_password']);
26
  $wpdb->insert($wpdb->prefix . "swpm_members_tbl", $member_info);
27
  /* * ******************** register to wordpress ********** */
28
- $query = "SELECT role FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id = " . $member_info['membership_level'];
29
  $wp_user_info = array();
30
  $wp_user_info['user_nicename'] = implode('-', explode(' ', $member_info['user_name']));
31
  $wp_user_info['display_name'] = $member_info['user_name'];
32
  $wp_user_info['user_email'] = $member_info['email'];
33
  $wp_user_info['nickname'] = $member_info['user_name'];
34
- $wp_user_info['first_name'] = $member_info['first_name'];
35
- $wp_user_info['last_name'] = $member_info['last_name'];
36
  $wp_user_info['user_login'] = $member_info['user_name'];
37
  $wp_user_info['password'] = $plain_password;
38
  $wp_user_info['role'] = $wpdb->get_var($query);
@@ -45,9 +45,9 @@ class BAdminRegistration extends BRegistration {
45
  if (!empty($send_notification)){
46
  $this->send_reg_email();
47
  }
48
- $message = array('succeeded' => true, 'message' => BUtils::_('Registration Successful. '));
49
  BTransfer::get_instance()->set('status', $message);
50
- wp_redirect('admin.php?page=simple_wp_membership');
51
  return;
52
  }
53
  $message = array('succeeded' => false, 'message' => BUtils::_('Please correct the following:'), 'extra' => $form->get_errors());
@@ -55,21 +55,37 @@ class BAdminRegistration extends BRegistration {
55
  }
56
  public function edit($id){
57
  global $wpdb;
58
- $query = "SELECT * FROM " . $wpdb->prefix . "swpm_members_tbl WHERE member_id = $id";
59
  $member = $wpdb->get_row($query, ARRAY_A);
 
 
60
  unset($member['member_id']);
61
- unset($member['email']);
62
  unset($member['user_name']);
63
  $form = new BForm($member);
64
  if ($form->is_valid()) {
65
- $member = $form->get_sanitized();
 
66
  unset($member['plain_password']);
67
  $wpdb->update($wpdb->prefix . "swpm_members_tbl", $member, array('member_id' => $id));
68
  $message = array('succeeded' => true, 'message' => 'Updated Successfully.');
69
- do_action('swpm_admin_edit_custom_fields', $member+array('member_id'=>$id));
70
  BTransfer::get_instance()->set('status', $message);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
71
  wp_redirect('admin.php?page=simple_wp_membership');
72
- }
73
  $message = array('succeeded' => false, 'message' => BUtils::_('Please correct the following:'), 'extra' => $form->get_errors());
74
  BTransfer::get_instance()->set('status', $message);
75
  }
3
  /**
4
  * Description of BAdminRegistration
5
  *
 
6
  */
7
  class BAdminRegistration extends BRegistration {
8
  public static function get_instance(){
19
  $form = new BForm($member);
20
  if ($form->is_valid()) {
21
  $member_info = $form->get_sanitized();
22
+ $account_status = BSettings::get_instance()->get_value('default-account-status', 'active');
23
+ $member_info['account_state'] = $account_status;
24
  $plain_password = $member_info['plain_password'];
25
  unset($member_info['plain_password']);
26
  $wpdb->insert($wpdb->prefix . "swpm_members_tbl", $member_info);
27
  /* * ******************** register to wordpress ********** */
28
+ $query = $wpdb->prepare("SELECT role FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id = %d", $member_info['membership_level']) ;
29
  $wp_user_info = array();
30
  $wp_user_info['user_nicename'] = implode('-', explode(' ', $member_info['user_name']));
31
  $wp_user_info['display_name'] = $member_info['user_name'];
32
  $wp_user_info['user_email'] = $member_info['email'];
33
  $wp_user_info['nickname'] = $member_info['user_name'];
34
+ if (isset($member_info['first_name'])){$wp_user_info['first_name'] = $member_info['first_name']; }
35
+ if (isset($member_info['last_name'])){$wp_user_info['last_name'] = $member_info['last_name'];}
36
  $wp_user_info['user_login'] = $member_info['user_name'];
37
  $wp_user_info['password'] = $plain_password;
38
  $wp_user_info['role'] = $wpdb->get_var($query);
45
  if (!empty($send_notification)){
46
  $this->send_reg_email();
47
  }
48
+ $message = array('succeeded' => true, 'message' => BUtils::_('Registration Successful.'));
49
  BTransfer::get_instance()->set('status', $message);
50
+ wp_redirect('admin.php?page=simple_wp_membership');
51
  return;
52
  }
53
  $message = array('succeeded' => false, 'message' => BUtils::_('Please correct the following:'), 'extra' => $form->get_errors());
55
  }
56
  public function edit($id){
57
  global $wpdb;
58
+ $query = $wpdb->prepare("SELECT * FROM " . $wpdb->prefix . "swpm_members_tbl WHERE member_id = %d", $id);
59
  $member = $wpdb->get_row($query, ARRAY_A);
60
+ $email_address = $member['email'];
61
+ $user_name = $member['user_name'];
62
  unset($member['member_id']);
 
63
  unset($member['user_name']);
64
  $form = new BForm($member);
65
  if ($form->is_valid()) {
66
+ $member = $form->get_sanitized();
67
+ BUtils::update_wp_user($user_name, $member);
68
  unset($member['plain_password']);
69
  $wpdb->update($wpdb->prefix . "swpm_members_tbl", $member, array('member_id' => $id));
70
  $message = array('succeeded' => true, 'message' => 'Updated Successfully.');
71
+ do_action('swpm_admin_edit_custom_fields', $member + array('member_id'=>$id));
72
  BTransfer::get_instance()->set('status', $message);
73
+ $send_notification = filter_input(INPUT_POST, 'account_status_change');
74
+ if (!empty($send_notification)){
75
+ $settings = BSettings::get_instance();
76
+ $from_address = $settings->get_value('email-from');
77
+ $headers = 'From: ' . $from_address . "\r\n";
78
+ $subject = filter_input(INPUT_POST,'notificationmailhead');
79
+ $body = filter_input(INPUT_POST, 'notificationmailbody');
80
+ $settings->set_value('account-change-email-body', $body)->set_value('account-change-email-subject', $subject)->save();
81
+ $member['login_link'] = $settings->get_value('login-page-url');
82
+ $values = array_values($member);
83
+ $keys = array_map('swpm_enclose_var', array_keys($member));
84
+ $body = str_replace($keys, $values, $body);
85
+ wp_mail($email_address, $subject, $body, $headers);
86
+ }
87
  wp_redirect('admin.php?page=simple_wp_membership');
88
+ }
89
  $message = array('succeeded' => false, 'message' => BUtils::_('Please correct the following:'), 'extra' => $form->get_errors());
90
  BTransfer::get_instance()->set('status', $message);
91
  }
classes/class.bAjax.php CHANGED
@@ -9,10 +9,15 @@ class BAjax {
9
  global $wpdb;
10
  $field_value = filter_input(INPUT_GET, 'fieldValue');
11
  $field_id = filter_input(INPUT_GET, 'fieldId');
 
 
 
 
 
12
  $table = $wpdb->prefix . "swpm_members_tbl";
13
- $email = esc_sql($field_value);
14
- $query = $wpdb->prepare("SELECT COUNT(*) FROM $table WHERE email = %s", $email);
15
- $exists = $wpdb->get_var($query) > 0;
16
  echo '[ "' . $field_id . (($exists) ? '",false, "&chi;&nbsp;'.BUtils::_('Aready taken').'"]' : '",true, "&radic;&nbsp;Available"]');
17
  exit;
18
  }
@@ -22,8 +27,7 @@ class BAjax {
22
  $field_value = filter_input(INPUT_GET, 'fieldValue');
23
  $field_id = filter_input(INPUT_GET, 'fieldId');
24
  $table = $wpdb->prefix . "swpm_members_tbl";
25
- $user = esc_sql($field_value);
26
- $query = $wpdb->prepare("SELECT COUNT(*) FROM $table WHERE user_name = %s", $user);
27
  $exists = $wpdb->get_var($query) > 0;
28
  echo '[ "' . $field_id . (($exists) ? '",false,"&chi;&nbsp;'. BUtils::_('Aready taken'). '"]' :
29
  '",true,"&radic;&nbsp;'.BUtils::_('Available'). '"]');
9
  global $wpdb;
10
  $field_value = filter_input(INPUT_GET, 'fieldValue');
11
  $field_id = filter_input(INPUT_GET, 'fieldId');
12
+ $member_id = filter_input(INPUT_GET, 'member_id');
13
+ if (!is_email($field_value)){
14
+ echo '[ "' . $field_id . '",false, "'.BUtils::_('Invalid Email Address').'" ]' ;
15
+ exit;
16
+ }
17
  $table = $wpdb->prefix . "swpm_members_tbl";
18
+ $query = $wpdb->prepare("SELECT member_id FROM $table WHERE email = %s", $field_value);
19
+ $db_id = $wpdb->get_var($query) ;
20
+ $exists = ($db_id > 0) && $db_id != $member_id;
21
  echo '[ "' . $field_id . (($exists) ? '",false, "&chi;&nbsp;'.BUtils::_('Aready taken').'"]' : '",true, "&radic;&nbsp;Available"]');
22
  exit;
23
  }
27
  $field_value = filter_input(INPUT_GET, 'fieldValue');
28
  $field_id = filter_input(INPUT_GET, 'fieldId');
29
  $table = $wpdb->prefix . "swpm_members_tbl";
30
+ $query = $wpdb->prepare("SELECT COUNT(*) FROM $table WHERE user_name = %s", $field_value);
 
31
  $exists = $wpdb->get_var($query) > 0;
32
  echo '[ "' . $field_id . (($exists) ? '",false,"&chi;&nbsp;'. BUtils::_('Aready taken'). '"]' :
33
  '",true,"&radic;&nbsp;'.BUtils::_('Available'). '"]');
classes/class.bAuth.php CHANGED
@@ -16,7 +16,7 @@ class BAuth {
16
  }
17
  private function init(){
18
  $valid = $this->validate();
19
- Blog::log_simple_debug("init:". ($valid? "valid": "invalid"), true);
20
  if (!$valid){
21
  $this->authenticate();
22
  }
@@ -29,18 +29,16 @@ class BAuth {
29
  return self::$_this;
30
  }
31
 
32
- private function authenticate() {
33
  global $wpdb;
34
- $swpm_user_name = filter_input(INPUT_POST, 'swpm_user_name');
35
- $swpm_password = filter_input(INPUT_POST, 'swpm_password');
36
- $swpm_user_name = apply_filters('swpm_user_name', $swpm_user_name);
37
- Blog::log_simple_debug("Authenticate:" . $swpm_user_name, true);
38
  if (!empty($swpm_user_name) && !empty($swpm_password)) {
39
  $user = sanitize_user($swpm_user_name);
40
  $pass = trim($swpm_password);
41
- $query = " SELECT * FROM " . $wpdb->prefix . "swpm_members_tbl";
42
- $query.= " WHERE user_name = '" . $user . "'";
43
- $userData = $wpdb->get_row($query);
44
  $this->userData = $userData;
45
  if (!$userData) {
46
  $this->isLoggedIn = false;
@@ -73,19 +71,48 @@ class BAuth {
73
  if (empty($this->userData)){
74
  return false;
75
  }
76
- $permission = BPermission::get_instance($this->userData->membership_level);
77
- $valid = true;
78
- if ($this->userData->account_state != 'active') {
 
79
  $this->lastStatusMsg = BUtils::_('Account is inactive.');
80
- $valid = false;
81
  }
82
- if (!$valid) {
 
 
 
 
 
 
 
 
 
83
  $this->isLoggedIn = false;
84
  $this->userData = null;
85
- return false;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
86
  }
87
- //:todo check if account expired and update db if it did.
88
- $this->permitted = $permission;
89
  $this->lastStatusMsg = BUtils::_("You are logged in as:") . $this->userData->user_name;
90
  $this->isLoggedIn = true;
91
  return true;
@@ -102,14 +129,17 @@ class BAuth {
102
  }
103
  return $wp_hasher->CheckPassword($password, $hash);
104
  }
105
-
 
 
 
106
  public function login($user, $pass, $remember = '', $secure = '') {
107
  Blog::log_simple_debug("login",true);
108
  if ($this->isLoggedIn){
109
  return;
110
  }
111
  if ($this->authenticate($user, $pass) && $this->validate()) {
112
- $this->set_cookie($remember, $secure);
113
  } else {
114
  $this->isLoggedIn = false;
115
  $this->userData = null;
@@ -131,19 +161,27 @@ class BAuth {
131
 
132
  private function set_cookie($remember = '', $secure = '') {
133
  if ($remember){
134
- $expire = time() + 1209600;
 
135
  }
136
  else{
137
- $expire = time() + 172800;
 
138
  }
 
 
 
 
 
 
139
  $pass_frag = substr($this->userData->password, 8, 4);
140
  $scheme = 'auth';
141
  if (!$secure){
142
  $secure = is_ssl();
143
  }
144
- $key = BAuth::b_hash($this->userData->user_name . $pass_frag . '|' . $expire, $scheme);
145
- $hash = hash_hmac('md5', $this->userData->user_name . '|' . $expire, $key);
146
- $auth_cookie = $this->userData->user_name . '|' . $expire . '|' . $hash;
147
  $auth_cookie_name = $secure ? SIMPLE_WP_MEMBERSHIP_SEC_AUTH : SIMPLE_WP_MEMBERSHIP_AUTH;
148
  //setcookie($auth_cookie_name, $auth_cookie, $expire, PLUGINS_COOKIE_PATH, COOKIE_DOMAIN, $secure, true);
149
  setcookie($auth_cookie_name, $auth_cookie, $expire, COOKIEPATH, COOKIE_DOMAIN, $secure, true);
@@ -172,9 +210,8 @@ class BAuth {
172
  }
173
  Blog::log_simple_debug("validate:Session Expired",true);
174
  global $wpdb;
175
- $query = " SELECT * FROM " . $wpdb->prefix . "swpm_members_tbl";
176
- $query.= " WHERE user_name = '" . $username . "'";
177
- $user = $wpdb->get_row($query);
178
  if (empty($user)) {
179
  $this->lastStatusMsg = BUtils::_("Invalid User Name");
180
  return false;
@@ -184,7 +221,7 @@ class BAuth {
184
  $key = BAuth::b_hash($username . $pass_frag . '|' . $expiration);
185
  $hash = hash_hmac('md5', $username . '|' . $expiration, $key);
186
  if ($hmac != $hash) {
187
- $this->lastStatusMsg = BUtils::_("Bad Cookie Hash");
188
  return false;
189
  }
190
  Blog::log_simple_debug("validate:bad hash",true);
@@ -211,7 +248,10 @@ class BAuth {
211
  if (isset($this->permitted->$key)){
212
  return $this->permitted->$key;
213
  }
214
- return $this->permitted->get($key, $default);
 
 
 
215
  }
216
 
217
  public function get_message() {
@@ -222,8 +262,30 @@ class BAuth {
222
  return BUtils::get_expire_date(
223
  $this->get('subscription_starts'),
224
  $this->get('subscription_period'),
225
- $this->get('subscription_unit'));
226
  }
227
  return "";
228
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
229
  }
16
  }
17
  private function init(){
18
  $valid = $this->validate();
19
+ //Blog::log_simple_debug("init:". ($valid? "valid": "invalid"), true);
20
  if (!$valid){
21
  $this->authenticate();
22
  }
29
  return self::$_this;
30
  }
31
 
32
+ private function authenticate($user = null, $pass = null) {
33
  global $wpdb;
34
+ $swpm_password = empty($pass)?filter_input(INPUT_POST, 'swpm_password') : $pass;
35
+ $swpm_user_name = empty($user)? apply_filters('swpm_user_name', filter_input(INPUT_POST, 'swpm_user_name')) : $user;
36
+ //Blog::log_simple_debug("Authenticate:" . $swpm_user_name, true);
 
37
  if (!empty($swpm_user_name) && !empty($swpm_password)) {
38
  $user = sanitize_user($swpm_user_name);
39
  $pass = trim($swpm_password);
40
+ $query = "SELECT * FROM " . $wpdb->prefix . "swpm_members_tbl WHERE user_name = %s";
41
+ $userData = $wpdb->get_row($wpdb->prepare($query, $user));
 
42
  $this->userData = $userData;
43
  if (!$userData) {
44
  $this->isLoggedIn = false;
71
  if (empty($this->userData)){
72
  return false;
73
  }
74
+ $enable_expired_login = BSettings::get_instance()->get_value('enable-expired-account-login', '');
75
+
76
+ $can_login = true;
77
+ if( $this->userData->account_state == 'inactive'){
78
  $this->lastStatusMsg = BUtils::_('Account is inactive.');
79
+ $can_login = false;
80
  }
81
+ else if( $this->userData->account_state == 'pending'){
82
+ $this->lastStatusMsg = BUtils::_('Account is pending.');
83
+ $can_login = false;
84
+ }
85
+ else if( ($this->userData->account_state == 'expired') && empty($enable_expired_login) ){
86
+ $this->lastStatusMsg = BUtils::_('Account has expired.');
87
+ $can_login = false;
88
+ }
89
+
90
+ if(!$can_login){
91
  $this->isLoggedIn = false;
92
  $this->userData = null;
93
+ return false;
94
+ }
95
+
96
+ if (BUtils::is_subscription_expired($this->userData)){
97
+ if ($this->userData->account_state == 'active'){
98
+ global $wpdb;
99
+ $wpdb->update(
100
+ $wpdb->prefix . 'swpm_members_tbl',
101
+ array( 'account_state' => 'expired'),
102
+ array( 'member_id' => $this->userData->member_id ),
103
+ array( '%s'),
104
+ array( '%d' )
105
+ );
106
+ }
107
+ if (empty($enable_expired_login)){
108
+ $this->lastStatusMsg = BUtils::_('Account has expired.');
109
+ $this->isLoggedIn = false;
110
+ $this->userData = null;
111
+ return false;
112
+ }
113
  }
114
+
115
+ $this->permitted = BPermission::get_instance($this->userData->membership_level);
116
  $this->lastStatusMsg = BUtils::_("You are logged in as:") . $this->userData->user_name;
117
  $this->isLoggedIn = true;
118
  return true;
129
  }
130
  return $wp_hasher->CheckPassword($password, $hash);
131
  }
132
+ public function match_password($password){
133
+ if (!$this->is_logged_in()) {return false;}
134
+ return $this->check_password($password, $this->get('password'));
135
+ }
136
  public function login($user, $pass, $remember = '', $secure = '') {
137
  Blog::log_simple_debug("login",true);
138
  if ($this->isLoggedIn){
139
  return;
140
  }
141
  if ($this->authenticate($user, $pass) && $this->validate()) {
142
+ $this->set_cookie($remember, $secure);
143
  } else {
144
  $this->isLoggedIn = false;
145
  $this->userData = null;
161
 
162
  private function set_cookie($remember = '', $secure = '') {
163
  if ($remember){
164
+ $expiration = time() + 1209600; // 14 days
165
+ $expire = $expiration + 43200; // 12 hours grace period
166
  }
167
  else{
168
+ $expiration = time() + 172800; // 2 days.
169
+ $expire = $expiration;//The minimum cookie expiration should be at least couple of days.
170
  }
171
+
172
+ $expiration_timestamp = BUtils::get_expiration_timestamp($this->userData);
173
+ $enable_expired_login = BSettings::get_instance()->get_value('enable-expired-account-login', '');
174
+ // make sure cookie doesn't live beyond account expiration date.
175
+ // but if expired account login is enabled then ignore if account is expired
176
+ $expiration = empty($enable_expired_login)? min ($expiration,$expiration_timestamp) : $expiration;
177
  $pass_frag = substr($this->userData->password, 8, 4);
178
  $scheme = 'auth';
179
  if (!$secure){
180
  $secure = is_ssl();
181
  }
182
+ $key = BAuth::b_hash($this->userData->user_name . $pass_frag . '|' . $expiration, $scheme);
183
+ $hash = hash_hmac('md5', $this->userData->user_name . '|' . $expiration, $key);
184
+ $auth_cookie = $this->userData->user_name . '|' . $expiration . '|' . $hash;
185
  $auth_cookie_name = $secure ? SIMPLE_WP_MEMBERSHIP_SEC_AUTH : SIMPLE_WP_MEMBERSHIP_AUTH;
186
  //setcookie($auth_cookie_name, $auth_cookie, $expire, PLUGINS_COOKIE_PATH, COOKIE_DOMAIN, $secure, true);
187
  setcookie($auth_cookie_name, $auth_cookie, $expire, COOKIEPATH, COOKIE_DOMAIN, $secure, true);
210
  }
211
  Blog::log_simple_debug("validate:Session Expired",true);
212
  global $wpdb;
213
+ $query = " SELECT * FROM " . $wpdb->prefix . "swpm_members_tbl WHERE user_name = %s";
214
+ $user = $wpdb->get_row($wpdb->prepare($query, $username));
 
215
  if (empty($user)) {
216
  $this->lastStatusMsg = BUtils::_("Invalid User Name");
217
  return false;
221
  $key = BAuth::b_hash($username . $pass_frag . '|' . $expiration);
222
  $hash = hash_hmac('md5', $username . '|' . $expiration, $key);
223
  if ($hmac != $hash) {
224
+ $this->lastStatusMsg = BUtils::_("Sorry! Something went wrong");
225
  return false;
226
  }
227
  Blog::log_simple_debug("validate:bad hash",true);
248
  if (isset($this->permitted->$key)){
249
  return $this->permitted->$key;
250
  }
251
+ if (!empty($this->permitted)){
252
+ return $this->permitted->get($key, $default);
253
+ }
254
+ return $default;
255
  }
256
 
257
  public function get_message() {
262
  return BUtils::get_expire_date(
263
  $this->get('subscription_starts'),
264
  $this->get('subscription_period'),
265
+ $this->get('subscription_duration_type'));
266
  }
267
  return "";
268
  }
269
+ public function delete(){
270
+ if (!$this->is_logged_in()) {return ;}
271
+ $user_name = $this->get('user_name');
272
+ $user_id = $this->get('member_id');
273
+ wp_clear_auth_cookie();
274
+ $this->logout();
275
+ BMembers::delete_swpm_user_by_id($user_id);
276
+ BMembers::delete_wp_user($user_name);
277
+ }
278
+
279
+ public function reload_user_data(){
280
+ if (!$this->is_logged_in()) {return ;}
281
+ global $wpdb;
282
+ $query = "SELECT * FROM " . $wpdb->prefix . "swpm_members_tbl WHERE member_id = %d";
283
+ $this->userData = $wpdb->get_row($wpdb->prepare($query, $this->userData->member_id));
284
+
285
+ }
286
+ public function is_expired_account(){
287
+ // should be called after logging in.
288
+ if (!$this->is_logged_in()) {return null;}
289
+ return $this->get('account_state') === 'expired';
290
+ }
291
  }
classes/class.bAuthPermissionCollection.php ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Description of BAuthPermissionCollection
4
+ *
5
+ * @author nur
6
+ */
7
+ class BAuthPermissionCollection extends BPermissionCollection{
8
+ //put your code here
9
+ }
classes/class.bCategoryList.php ADDED
@@ -0,0 +1,115 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * BCategoryList
5
+ *
6
+ * @author nur
7
+ */
8
+ if (!class_exists('WP_List_Table')) {
9
+ require_once( ABSPATH . 'wp-admin/includes/class-wp-list-table.php' );
10
+ }
11
+
12
+ class BCategoryList extends WP_List_Table {
13
+
14
+ public $selected_level_id = 1;
15
+ public $category;
16
+
17
+ function __construct() {
18
+ parent::__construct(array(
19
+ 'singular' => BUtils::_('Membership Level'),
20
+ 'plural' => BUtils::_('Membership Levels'),
21
+ 'ajax' => false
22
+ ));
23
+ $this->category = array();
24
+ $selected = filter_input(INPUT_POST, 'membership_level_id');
25
+ $this->selected_level_id = empty($selected) ? 1 : $selected;
26
+ $this->category = ($this->selected_level_id == 1) ?
27
+ BProtection::get_instance() :
28
+ BPermission::get_instance($this->selected_level_id);
29
+ }
30
+
31
+ function get_columns() {
32
+ return array(
33
+ 'cb' => '<input type="checkbox" />'
34
+ , 'term_id' => BUtils::_('ID')
35
+ , 'name' => BUtils::_('Name')
36
+ , 'description' => BUtils::_('Description')
37
+ , 'count' => BUtils::_('Count')
38
+ );
39
+ }
40
+
41
+ function get_sortable_columns() {
42
+ return array(
43
+ 'name' => array('name', true)
44
+ );
45
+ }
46
+
47
+ function column_default($item, $column_name) {
48
+ return stripslashes($item->$column_name);
49
+ }
50
+
51
+ function column_term_id($item) {
52
+ return $item->term_id;
53
+ }
54
+
55
+ function column_cb($item) {
56
+ return sprintf(
57
+ '<input type="hidden" name="ids_in_page[]" value="%s">
58
+ <input type="checkbox" %s name="ids[]" value="%s" />', $item->term_id, $this->category->in_categories($item->term_id) ? "checked" : "", $item->term_id
59
+ );
60
+ }
61
+
62
+ function prepare_items() {
63
+ $submitted = filter_input(INPUT_POST, 'update_category_list');
64
+ if (!empty($submitted)) {
65
+ $args = array('ids' => array(
66
+ 'filter' => FILTER_VALIDATE_INT,
67
+ 'flags' => FILTER_REQUIRE_ARRAY,
68
+ ));
69
+ $filtered = filter_input_array(INPUT_POST, $args);
70
+ $ids = $filtered['ids'];
71
+ $args = array('ids_in_page' => array(
72
+ 'filter' => FILTER_VALIDATE_INT,
73
+ 'flags' => FILTER_REQUIRE_ARRAY,
74
+ ));
75
+ $filtered = filter_input_array(INPUT_POST, $args);
76
+ $ids_in_page = $filtered['ids_in_page'];
77
+ $this->category->remove($ids_in_page, 'category')->apply($ids, 'category')->save();
78
+ $message = array('succeeded' => true, 'message' => BUtils::_('Updated! '));
79
+ BTransfer::get_instance()->set('status', $message);
80
+ }
81
+ $all_categories = array();
82
+ $all_cat_ids = get_categories(array('hide_empty' => '0'));
83
+ $totalitems = count($all_cat_ids);
84
+ $perpage = 100;
85
+ $paged = !empty($_GET["paged"]) ? mysql_real_escape_string($_GET["paged"]) : '';
86
+ if (empty($paged) || !is_numeric($paged) || $paged <= 0) {
87
+ $paged = 1;
88
+ }
89
+ $totalpages = ceil($totalitems / $perpage);
90
+ $offset = 0;
91
+ if (!empty($paged) && !empty($perpage)) {
92
+ $offset = ($paged - 1) * $perpage;
93
+ }
94
+ for ($i = $offset; $i < ((int) $offset + (int) $perpage) && !empty($all_cat_ids[$i]); $i++) {
95
+ $all_categories[] = $all_cat_ids[$i];
96
+ }
97
+ $this->set_pagination_args(array(
98
+ "total_items" => $totalitems,
99
+ "total_pages" => $totalpages,
100
+ "per_page" => $perpage,
101
+ ));
102
+
103
+ $columns = $this->get_columns();
104
+ $hidden = array();
105
+ $sortable = $this->get_sortable_columns();
106
+
107
+ $this->_column_headers = array($columns, $hidden, $sortable);
108
+ $this->items = $all_categories;
109
+ }
110
+
111
+ function no_items() {
112
+ BUtils::e('No category found.');
113
+ }
114
+
115
+ }
classes/class.bCronJob.php ADDED
@@ -0,0 +1,60 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Description of BCronJob
4
+ *
5
+ * @author nur
6
+ */
7
+ class BCronJob {
8
+ public function __construct() {
9
+ add_action('swpm_account_status_event', array(&$this, 'update_account_status'));
10
+ add_action('swpm_delete_pending_account_event',array(&$this, 'delete_pending_account'));
11
+ }
12
+
13
+ public function update_account_status(){
14
+ global $wpdb;
15
+ for($counter = 0;; $counter += 100){
16
+ $query = $wpdb->prepare("SELECT member_id, membership_level, subscription_starts, account_state
17
+ FROM {$wpdb->prefix}swpm_members_tbl LIMIT %d, 100", $counter);
18
+ $results = $wpdb->get_results($query);
19
+ if (empty($results)) {break;}
20
+ $expired = array();
21
+ foreach($results as $result){
22
+ $timestamp = BUtils::get_expiration_timestamp($result);
23
+ if ($timestamp < time() && $result->account_state == 'active'){
24
+ $expired[] = $result->member_id;
25
+ }
26
+ }
27
+ if (count($expired)>0){
28
+ $query = "UPDATE {$wpdb->prefix}swpm_members_tbl
29
+ SET account_state='expired' WHERE member_id IN (" . implode(',', $expired) . ")";
30
+ $wpdb->query($query);
31
+ }
32
+ }
33
+ }
34
+
35
+ public function delete_pending_account(){
36
+ global $wpdb;
37
+ $interval = BSettings::get_instance()->get_value('delete-pending-account');
38
+ if (empty($interval)) {return;}
39
+ for($counter = 0;; $counter += 100){
40
+ $query = $wpdb->prepare("SELECT member_id
41
+ FROM
42
+ {$wpdb->prefix}swpm_members_tbl
43
+ WHERE account_state='pending'
44
+ AND subscription_starts < DATE_SUB(NOW(), INTERVAL %d MONTH) LIMIT %d, 100",
45
+ $interval, $counter);
46
+ $results = $wpdb->get_results($query);
47
+ if (empty($results)) {break;}
48
+ $to_delete = array();
49
+ foreach($results as $result){
50
+ $to_delete[] = $result->member_id;
51
+ }
52
+ if (count($to_delete)>0){
53
+ Blog::log_simple_debug("Auto deleting pending account.", true);
54
+ $query = "DELETE FROM {$wpdb->prefix}swpm_members_tbl
55
+ WHERE member_id IN (" . implode(',', $to_delete) . ")";
56
+ $wpdb->query($query);
57
+ }
58
+ }
59
+ }
60
+ }
classes/class.bForm.php CHANGED
@@ -40,10 +40,13 @@ class BForm {
40
  $this->errors['user_name'] = BUtils::_('User name is required');
41
  return;
42
  }
 
 
 
 
43
  $saned = sanitize_text_field($user_name);
44
- $query = "SELECT count(member_id) FROM {$wpdb->prefix}swpm_members_tbl WHERE user_name= '" .
45
- strip_tags($saned) . "'";
46
- $result = $wpdb->get_var($query);
47
  if ($result > 0) {
48
  if ($saned != $this->fields['user_name']) {
49
  $this->errors['user_name'] = BUtils::_('User name already exists.');
@@ -78,18 +81,13 @@ class BForm {
78
  if ($saned != $saned_re){
79
  $this->errors['password'] = BUtils::_('Password mismatch');
80
  }
81
- include_once(ABSPATH . WPINC . '/class-phpass.php');
82
- $wp_hasher = new PasswordHash(8, TRUE);
83
  $this->sanitized['plain_password'] = $password;
84
- $this->sanitized['password'] = $wp_hasher->HashPassword(trim($password)); //should use $saned??;
85
  }
86
  }
87
 
88
  protected function email() {
89
  global $wpdb;
90
- if (!empty($this->fields['email'])){
91
- return;
92
- }
93
  $email = filter_input(INPUT_POST, 'email', FILTER_UNSAFE_RAW);
94
  if (empty($email)) {
95
  $this->errors['email'] = BUtils::_('Email is required');
@@ -100,13 +98,16 @@ class BForm {
100
  return;
101
  }
102
  $saned = sanitize_email($email);
103
- $query = "SELECT count(member_id) FROM {$wpdb->prefix}swpm_members_tbl WHERE email= '" .
104
- strip_tags($saned) . "'";
105
- $member_id = filter_input(INPUT_GET, 'member_id', FILTER_SANITIZE_NUMBER_INT);
106
  if (!empty($member_id)) {
107
- $query .= ' AND member_id !=' . $member_id;
 
 
 
 
108
  }
109
- $result = $wpdb->get_var($query);
110
  if ($result > 0) {
111
  if ($saned != $this->fields['email']) {
112
  $this->errors['email'] = BUtils::_('Email is already used.');
@@ -119,7 +120,8 @@ class BForm {
119
  protected function phone() {
120
  $phone = filter_input(INPUT_POST, 'phone', FILTER_UNSAFE_RAW);
121
  if (empty($phone)) {return;}
122
-
 
123
  return;
124
  //Not doing phone number validation
125
 
@@ -186,7 +188,7 @@ class BForm {
186
  $this->sanitized['subscription_starts'] = sanitize_text_field($subscription_starts);
187
  return;
188
  }
189
- $this->errors['subscription_starts'] = BUtils::_('Subscription starts field is invalid');
190
  }
191
 
192
  protected function gender() {
@@ -213,6 +215,11 @@ class BForm {
213
 
214
  protected function membership_level() {
215
  $membership_level = filter_input(INPUT_POST, 'membership_level', FILTER_SANITIZE_NUMBER_INT);
 
 
 
 
 
216
  if (empty($membership_level)) {return;}
217
  $this->sanitized['membership_level'] = $membership_level;
218
  }
@@ -246,7 +253,8 @@ class BForm {
246
  }
247
 
248
  protected function subscr_id() {
249
-
 
250
  }
251
 
252
  protected function flags() {
40
  $this->errors['user_name'] = BUtils::_('User name is required');
41
  return;
42
  }
43
+ if (preg_match("/^[a-zA-Z0-9!@#$%&*+\/=?^_`{|}~\.-]+$/", $user_name) === 0) {
44
+ $this->errors['user_name'] = BUtils::_('User name contains invalid character');
45
+ return;
46
+ }
47
  $saned = sanitize_text_field($user_name);
48
+ $query = "SELECT count(member_id) FROM {$wpdb->prefix}swpm_members_tbl WHERE user_name= %s";
49
+ $result = $wpdb->get_var($wpdb->prepare($query, strip_tags($saned)));
 
50
  if ($result > 0) {
51
  if ($saned != $this->fields['user_name']) {
52
  $this->errors['user_name'] = BUtils::_('User name already exists.');
81
  if ($saned != $saned_re){
82
  $this->errors['password'] = BUtils::_('Password mismatch');
83
  }
 
 
84
  $this->sanitized['plain_password'] = $password;
85
+ $this->sanitized['password'] = BUtils::encrypt_password(trim($password)); //should use $saned??;
86
  }
87
  }
88
 
89
  protected function email() {
90
  global $wpdb;
 
 
 
91
  $email = filter_input(INPUT_POST, 'email', FILTER_UNSAFE_RAW);
92
  if (empty($email)) {
93
  $this->errors['email'] = BUtils::_('Email is required');
98
  return;
99
  }
100
  $saned = sanitize_email($email);
101
+ $query = "SELECT count(member_id) FROM {$wpdb->prefix}swpm_members_tbl WHERE email= %s";
102
+ $member_id = filter_input(INPUT_GET, 'member_id', FILTER_SANITIZE_NUMBER_INT);
 
103
  if (!empty($member_id)) {
104
+ $query .= ' AND member_id !=%d';
105
+ $result = $wpdb->get_var($wpdb->prepare($query, strip_tags($saned), $member_id));
106
+ }
107
+ else{
108
+ $result = $wpdb->get_var($wpdb->prepare($query, strip_tags($saned)));
109
  }
110
+
111
  if ($result > 0) {
112
  if ($saned != $this->fields['email']) {
113
  $this->errors['email'] = BUtils::_('Email is already used.');
120
  protected function phone() {
121
  $phone = filter_input(INPUT_POST, 'phone', FILTER_UNSAFE_RAW);
122
  if (empty($phone)) {return;}
123
+ $saned = wp_kses($phone, array());
124
+ $this->sanitized['phone'] = $saned;
125
  return;
126
  //Not doing phone number validation
127
 
188
  $this->sanitized['subscription_starts'] = sanitize_text_field($subscription_starts);
189
  return;
190
  }
191
+ $this->errors['subscription_starts'] = BUtils::_('Access starts field is invalid');
192
  }
193
 
194
  protected function gender() {
215
 
216
  protected function membership_level() {
217
  $membership_level = filter_input(INPUT_POST, 'membership_level', FILTER_SANITIZE_NUMBER_INT);
218
+ if ($membership_level == 1){
219
+ $this->errors['membership_level'] = BUtils::_('Invalid membership level');
220
+ return;
221
+ }
222
+
223
  if (empty($membership_level)) {return;}
224
  $this->sanitized['membership_level'] = $membership_level;
225
  }
253
  }
254
 
255
  protected function subscr_id() {
256
+ $subscr_id = filter_input(INPUT_POST, 'subscr_id', FILTER_SANITIZE_STRING);
257
+ $this->sanitized['subscr_id'] = $subscr_id;
258
  }
259
 
260
  protected function flags() {
classes/class.bFrontRegistration.php CHANGED
@@ -10,29 +10,24 @@ class BFrontRegistration extends BRegistration {
10
  self::$_intance = empty(self::$_intance)? new BFrontRegistration():self::$_intance;
11
  return self::$_intance;
12
  }
13
- public function regigstration_ui(){
14
  $settings_configs = BSettings::get_instance();
15
- $is_free = BSettings::get_instance()->get_value('enable-free-membership');
16
- $free_level = absint(BSettings::get_instance()->get_value('free-membership-id'));
17
  $joinuspage_url = $settings_configs->get_value('join-us-page-url');
18
  $membership_level = '';
19
  $member_id = filter_input(INPUT_GET, 'member_id', FILTER_SANITIZE_NUMBER_INT);
20
  $code = filter_input(INPUT_GET, 'code', FILTER_SANITIZE_STRING);
21
- $member = BTransfer::$default_fields;
22
- global $wpdb;
23
- if (!empty($member_id) && !empty($code)){
24
- $query = 'SELECT * FROM ' . $wpdb->prefix . 'swpm_members_tbl WHERE member_id= %d AND reg_code=%s';
25
- $query = $wpdb->prepare($query, $member_id, $code);
26
- $member = $wpdb->get_row($query);
27
  if (empty($member)){
28
  BUtils::e('Error! Invalid Request. Could not find a match for the given security code and the user ID.');
29
  }
30
  $membership_level = $member->membership_level;
31
  }
32
- else if (isset($_SESSION['swpm-registered-level'])) {
33
- $membership_level = absint($_SESSION['swpm-registered-level']);
34
- } else if ($is_free) {
35
- $membership_level = $free_level;
36
  }
37
  if (empty($membership_level)) {
38
  $joinuspage_link = '<a href="' . $joinuspage_url . '">Join us</a>';
@@ -41,12 +36,14 @@ class BFrontRegistration extends BRegistration {
41
  }
42
  $form = apply_filters('swpm_registration_form_override', '', $membership_level);
43
  if (!empty($form)) {return $form;}
44
- $query = "SELECT alias FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id = $membership_level";
45
- $result = $wpdb->get_row($query);
46
- if (empty($result)) {
 
47
  return "Membership Level Not Found.";
48
  }
49
- $membership_level_alias = $result->alias;
 
50
  $swpm_registration_submit = filter_input(INPUT_POST, 'swpm_registration_submit');
51
  if (!empty($swpm_registration_submit)){
52
  $member = $_POST;
@@ -71,48 +68,45 @@ class BFrontRegistration extends BRegistration {
71
  global $wpdb;
72
  $member = BTransfer::$default_fields;
73
  $form = new BFrontForm($member);
74
- $is_free = BSettings::get_instance()->get_value('enable-free-membership');
75
- $free_level = absint(BSettings::get_instance()->get_value('free-membership-id'));
76
- $member_id = filter_input(INPUT_GET, 'member_id', FILTER_SANITIZE_NUMBER_INT);
77
- $code = filter_input(INPUT_GET, 'code', FILTER_SANITIZE_STRING);
78
  if (!$form->is_valid()) {
79
  $message = array('succeeded' => false, 'message' => BUtils::_('Please correct the following'),
80
  'extra' => $form->get_errors());
81
  BTransfer::get_instance()->set('status', $message);
82
  return false;
83
  }
84
- $member_info = $form->get_sanitized();
85
- if (isset($_SESSION['swpm-registered-level'])){
86
- $member_info['membership_level'] = absint($_SESSION['swpm-registered-level']);
87
- }
88
- else if ($is_free && !empty($free_level)){
89
- $member_info['membership_level'] = $free_level;
90
- }
91
- else if (empty($member_id)){
92
- $message = array('succeeded' => false, 'message' => BUtils::_('Membership Level Couldn\'t be found.'));
93
- BTransfer::get_instance()->set('status', $message);
94
- return false;
95
- }
96
  $member_info['last_accessed_from_ip'] = BTransfer::get_real_ip_addr();
97
  $member_info['member_since'] = date("Y-m-d");
98
  $member_info['subscription_starts'] = date("Y-m-d");
99
- $member_info['account_state'] = 'active';
100
  $plain_password = $member_info['plain_password'];
101
  unset($member_info['plain_password']);
102
- if(!empty($member_id) && !empty($code)){
 
103
  $member_info['reg_code'] = '';
 
 
104
  $wpdb->update($wpdb->prefix . "swpm_members_tbl", $member_info,
105
  array('member_id' => $member_id,'reg_code'=>$code));
 
 
 
106
  $last_insert_id = $member_id;
107
  }
108
- else{
 
109
  $wpdb->insert($wpdb->prefix . "swpm_members_tbl", $member_info);
110
  $last_insert_id = $wpdb->insert_id;
111
  }
112
- if (!isset($member_info['membership_level'])){
113
- $query = 'SELECT membership_level FROM ' . $wpdb->prefix . 'swpm_members_tbl WHERE member_id=' . $member_id;
114
- $member_info['membership_level'] = $wpdb->get_var( $query );
115
- }
 
116
  $member_info['plain_password'] = $plain_password;
117
  $this->member_info = $member_info;
118
  return true;
@@ -120,7 +114,7 @@ class BFrontRegistration extends BRegistration {
120
  private function create_wp_user(){
121
  global $wpdb;
122
  $member_info = $this->member_info;
123
- $query = "SELECT role FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id = " . $member_info['membership_level'];
124
  $wp_user_info = array();
125
  $wp_user_info['user_nicename'] = implode('-', explode(' ', $member_info['user_name']));
126
  $wp_user_info['display_name'] = $member_info['user_name'];
@@ -147,11 +141,15 @@ class BFrontRegistration extends BRegistration {
147
  if ($form->is_valid()) {
148
  global $wpdb;
149
  $member_info = $form->get_sanitized();
 
 
150
  if (isset($member_info['plain_password'])) {
151
  unset($member_info['plain_password']);
152
  }
 
153
  $wpdb->update(
154
- $wpdb->prefix . "swpm_members_tbl", $member_info, array('member_id' => $auth->get('member_id')));
 
155
  $message = array('succeeded' => true, 'message' => 'Profile Updated.');
156
  BTransfer::get_instance()->set('status', $message);
157
  } else {
@@ -165,7 +163,7 @@ class BFrontRegistration extends BRegistration {
165
  public function reset_password($email) {
166
  $email = sanitize_email($email);
167
  if (!is_email($email)) {
168
- $message = BUtils::_("Email Address Not Valid.");
169
  $message = array('succeeded' => false, 'message' => $message);
170
  BTransfer::get_instance()->set('status', $message);
171
  return;
@@ -176,18 +174,21 @@ class BFrontRegistration extends BRegistration {
176
  ' WHERE email = %s';
177
  $user = $wpdb->get_row($wpdb->prepare($query, $email));
178
  if (empty($user)) {
179
- $message = BUtils::_("User Not Found.");
 
180
  $message = array('succeeded' => false, 'message' => $message);
181
  BTransfer::get_instance()->set('status', $message);
182
  return;
183
  }
184
  $settings = BSettings::get_instance();
185
  $password = wp_generate_password();
186
- include_once(ABSPATH . WPINC . '/class-phpass.php');
187
- $wp_hasher = new PasswordHash(8, TRUE);
188
- $password_hash = $wp_hasher->HashPassword(trim($password)); //should use $saned??;
189
- $wpdb->update($wpdb->prefix . "swpm_members_tbl", array('password' => $password_hash), array('member_id' => $user->member_id));
190
 
 
 
 
 
 
 
191
  $body = $settings->get_value('reset-mail-body');
192
  $subject = $settings->get_value('reset-mail-subject');
193
  $search = array('{user_name}', '{first_name}', '{last_name}', '{password}');
@@ -196,9 +197,10 @@ class BFrontRegistration extends BRegistration {
196
  $from = $settings->get_value('email-from');
197
  $headers = "From: " . $from . "\r\n";
198
  wp_mail($email, $subject, $body, $headers);
199
- $message = BUtils::_("New password has been sent to your email address.");
 
 
200
  $message = array('succeeded' => false, 'message' => $message);
201
  BTransfer::get_instance()->set('status', $message);
202
  }
203
-
204
  }
10
  self::$_intance = empty(self::$_intance)? new BFrontRegistration():self::$_intance;
11
  return self::$_intance;
12
  }
13
+ public function regigstration_ui($level){
14
  $settings_configs = BSettings::get_instance();
 
 
15
  $joinuspage_url = $settings_configs->get_value('join-us-page-url');
16
  $membership_level = '';
17
  $member_id = filter_input(INPUT_GET, 'member_id', FILTER_SANITIZE_NUMBER_INT);
18
  $code = filter_input(INPUT_GET, 'code', FILTER_SANITIZE_STRING);
19
+
20
+ global $wpdb;
21
+ if (BUtils::is_paid_registration()){
22
+ $member = $member = BUtils::get_paid_member_info();
 
 
23
  if (empty($member)){
24
  BUtils::e('Error! Invalid Request. Could not find a match for the given security code and the user ID.');
25
  }
26
  $membership_level = $member->membership_level;
27
  }
28
+ else if (!empty($level)) {
29
+ $member = BTransfer::$default_fields;
30
+ $membership_level = absint($level);
 
31
  }
32
  if (empty($membership_level)) {
33
  $joinuspage_link = '<a href="' . $joinuspage_url . '">Join us</a>';
36
  }
37
  $form = apply_filters('swpm_registration_form_override', '', $membership_level);
38
  if (!empty($form)) {return $form;}
39
+
40
+ $mebership_info = BPermission::get_instance($membership_level);
41
+ $membership_level = $mebership_info->get('id');
42
+ if (empty($membership_level)) {
43
  return "Membership Level Not Found.";
44
  }
45
+ $level_identifier = md5($membership_level);
46
+ $membership_level_alias = $mebership_info->get('alias');
47
  $swpm_registration_submit = filter_input(INPUT_POST, 'swpm_registration_submit');
48
  if (!empty($swpm_registration_submit)){
49
  $member = $_POST;
68
  global $wpdb;
69
  $member = BTransfer::$default_fields;
70
  $form = new BFrontForm($member);
 
 
 
 
71
  if (!$form->is_valid()) {
72
  $message = array('succeeded' => false, 'message' => BUtils::_('Please correct the following'),
73
  'extra' => $form->get_errors());
74
  BTransfer::get_instance()->set('status', $message);
75
  return false;
76
  }
77
+
78
+
79
+ $member_info = $form->get_sanitized();
80
+ $free_level = BUtils::get_free_level();
81
+ $account_status = BSettings::get_instance()->get_value('default-account-status', 'active');
 
 
 
 
 
 
 
82
  $member_info['last_accessed_from_ip'] = BTransfer::get_real_ip_addr();
83
  $member_info['member_since'] = date("Y-m-d");
84
  $member_info['subscription_starts'] = date("Y-m-d");
85
+ $member_info['account_state'] = $account_status;
86
  $plain_password = $member_info['plain_password'];
87
  unset($member_info['plain_password']);
88
+
89
+ if (BUtils::is_paid_registration()){
90
  $member_info['reg_code'] = '';
91
+ $member_id = filter_input(INPUT_GET, 'member_id', FILTER_SANITIZE_NUMBER_INT);
92
+ $code = filter_input(INPUT_GET, 'code', FILTER_SANITIZE_STRING);
93
  $wpdb->update($wpdb->prefix . "swpm_members_tbl", $member_info,
94
  array('member_id' => $member_id,'reg_code'=>$code));
95
+
96
+ $query = $wpdb->prepare('SELECT membership_level FROM ' . $wpdb->prefix . 'swpm_members_tbl WHERE member_id=%d', $member_id);
97
+ $member_info['membership_level'] = $wpdb->get_var( $query );
98
  $last_insert_id = $member_id;
99
  }
100
+ else if (!empty($free_level)){
101
+ $member_info['membership_level'] = $free_level;
102
  $wpdb->insert($wpdb->prefix . "swpm_members_tbl", $member_info);
103
  $last_insert_id = $wpdb->insert_id;
104
  }
105
+ else{
106
+ $message = array('succeeded' => false, 'message' => BUtils::_('Membership Level Couldn\'t be found.'));
107
+ BTransfer::get_instance()->set('status', $message);
108
+ return false;
109
+ }
110
  $member_info['plain_password'] = $plain_password;
111
  $this->member_info = $member_info;
112
  return true;
114
  private function create_wp_user(){
115
  global $wpdb;
116
  $member_info = $this->member_info;
117
+ $query = $wpdb->prepare("SELECT role FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id = %d", $member_info['membership_level']) ;
118
  $wp_user_info = array();
119
  $wp_user_info['user_nicename'] = implode('-', explode(' ', $member_info['user_name']));
120
  $wp_user_info['display_name'] = $member_info['user_name'];
141
  if ($form->is_valid()) {
142
  global $wpdb;
143
  $member_info = $form->get_sanitized();
144
+ // update corresponding wp user.
145
+ BUtils::update_wp_user($auth->get('user_name'),$member_info);
146
  if (isset($member_info['plain_password'])) {
147
  unset($member_info['plain_password']);
148
  }
149
+
150
  $wpdb->update(
151
+ $wpdb->prefix . "swpm_members_tbl", $member_info, array('member_id' => $auth->get('member_id')));
152
+ $auth->reload_user_data();
153
  $message = array('succeeded' => true, 'message' => 'Profile Updated.');
154
  BTransfer::get_instance()->set('status', $message);
155
  } else {
163
  public function reset_password($email) {
164
  $email = sanitize_email($email);
165
  if (!is_email($email)) {
166
+ $message = '<div class="swpm-reset-pw-error">' . BUtils::_("Email address not valid.") . '</div>';
167
  $message = array('succeeded' => false, 'message' => $message);
168
  BTransfer::get_instance()->set('status', $message);
169
  return;
174
  ' WHERE email = %s';
175
  $user = $wpdb->get_row($wpdb->prepare($query, $email));
176
  if (empty($user)) {
177
+ $message = '<div class="swpm-reset-pw-error">' . BUtils::_("No user not found with that email address.") .'</div>';
178
+ $message .= '<div class="swpm-reset-pw-error-email">' . BUtils::_("Email Address: ") . $email .'</div>';
179
  $message = array('succeeded' => false, 'message' => $message);
180
  BTransfer::get_instance()->set('status', $message);
181
  return;
182
  }
183
  $settings = BSettings::get_instance();
184
  $password = wp_generate_password();
 
 
 
 
185
 
186
+ $password_hash = BUtils::encrypt_password(trim($password)); //should use $saned??;
187
+ $wpdb->update($wpdb->prefix . "swpm_members_tbl", array('password' => $password_hash), array('member_id' => $user->member_id));
188
+
189
+ // update wp user pass.
190
+ BUtils::update_wp_user($user->user_name, array('plain_password'=>$password));
191
+
192
  $body = $settings->get_value('reset-mail-body');
193
  $subject = $settings->get_value('reset-mail-subject');
194
  $search = array('{user_name}', '{first_name}', '{last_name}', '{password}');
197
  $from = $settings->get_value('email-from');
198
  $headers = "From: " . $from . "\r\n";
199
  wp_mail($email, $subject, $body, $headers);
200
+ $message = '<div class="swpm-reset-pw-success">' . BUtils::_("New password has been sent to your email address.") .'</div>';
201
+ $message .= '<div class="swpm-reset-pw-success-email">' . BUtils::_("Email Address: ") . $email .'</div>';
202
+
203
  $message = array('succeeded' => false, 'message' => $message);
204
  BTransfer::get_instance()->set('status', $message);
205
  }
 
206
  }
classes/class.bInstallation.php CHANGED
@@ -7,26 +7,51 @@
7
  */
8
  class BInstallation {
9
 
10
- public static function do_multisite() {
 
 
 
 
11
  global $wpdb;
12
- $networkwide = filter_input(INPUT_GET, 'networkwide');
13
- // check if it is a network activation - if so, run the activation function for each blog id
14
- if ($networkwide == 1) {
15
- $old_blog = $wpdb->blogid;
16
- // Get all blog ids
17
- $blogids = $wpdb->get_col("SELECT blog_id FROM $wpdb->blogs");
18
- foreach ($blogids as $blog_id) {
19
- switch_to_blog($blog_id);
20
- SimpleWpMembership::installer();
21
- SimpleWpMembership::initdb();
 
 
 
 
 
 
 
22
  }
23
- switch_to_blog($old_blog);
24
- return;
25
  }
 
 
 
 
26
  }
 
27
  public static function installer() {
28
  global $wpdb;
29
  require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
 
 
 
 
 
 
 
 
 
 
 
30
  $sql = "CREATE TABLE " . $wpdb->prefix . "swpm_members_tbl (
31
  member_id int(12) NOT NULL PRIMARY KEY AUTO_INCREMENT,
32
  user_name varchar(32) NOT NULL,
@@ -59,7 +84,7 @@ class BInstallation {
59
  notes text DEFAULT NULL,
60
  flags int(11) DEFAULT '0',
61
  profile_image varchar(255) DEFAULT ''
62
- )ENGINE=MyISAM DEFAULT CHARSET=utf8;";
63
  dbDelta($sql);
64
 
65
  $sql = "CREATE TABLE " . $wpdb->prefix . "swpm_membership_tbl (
@@ -67,8 +92,9 @@ class BInstallation {
67
  alias varchar(127) NOT NULL,
68
  role varchar(255) NOT NULL DEFAULT 'subscriber',
69
  permissions tinyint(4) NOT NULL DEFAULT '0',
70
- subscription_period int(11) NOT NULL DEFAULT '-1',
71
- subscription_unit VARCHAR(20) NULL,
 
72
  loginredirect_page text NULL,
73
  category_list longtext,
74
  page_list longtext,
@@ -78,8 +104,9 @@ class BInstallation {
78
  custom_post_list longtext,
79
  disable_bookmark_list longtext,
80
  options longtext,
 
81
  campaign_name varchar(60) NOT NULL DEFAULT ''
82
- ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;";
83
  dbDelta($sql);
84
  $sql = "SELECT * FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id = 1";
85
  $results = $wpdb->get_row($sql);
@@ -102,6 +129,17 @@ class BInstallation {
102
  )VALUES (1 , 'Content Protection', 'administrator', '15', '0',NULL,NULL, NULL , NULL , NULL , NULL,NULL,NULL,'');";
103
  $wpdb->query($sql);
104
  }
 
 
 
 
 
 
 
 
 
 
 
105
  $sql = "CREATE TABLE " . $wpdb->prefix . "swpm_membership_meta_tbl (
106
  id int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
107
  level_id int(11) NOT NULL,
@@ -113,8 +151,29 @@ class BInstallation {
113
  meta_context varchar(255) NOT NULL DEFAULT 'default',
114
  KEY level_id (level_id),
115
  UNIQUE KEY meta_key_id (level_id,meta_key)
116
- ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;";
117
  dbDelta($sql);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
118
  }
119
 
120
  public static function initdb() {
@@ -149,6 +208,14 @@ class BInstallation {
149
  "\n\nUser name: {user_name}" .
150
  "\n\nPassword: {password}" .
151
  "\n\nThank You";
 
 
 
 
 
 
 
 
152
  if (empty($installed_version)) {
153
  //Do fresh install tasks
154
 
@@ -163,6 +230,8 @@ class BInstallation {
163
  ->set_value('upgrade-complete-mail-body', stripslashes($upgrade_email_body))
164
  ->set_value('reset-mail-subject', stripslashes($reset_email_subject))
165
  ->set_value('reset-mail-body', stripslashes($reset_email_body))
 
 
166
  ->set_value('email-from', trim(get_option('admin_email')));
167
  }
168
  if (version_compare($installed_version, SIMPLE_WP_MEMBERSHIP_VER) == -1) {
7
  */
8
  class BInstallation {
9
 
10
+ /*
11
+ * This function is capable of handing both single site or multi-site install and upgrade all in one.
12
+ */
13
+ static function run_safe_installer()
14
+ {
15
  global $wpdb;
16
+
17
+ //Do this if multi-site setup
18
+ if (function_exists('is_multisite') && is_multisite())
19
+ {
20
+ // check if it is a network activation - if so, run the activation function for each blog id
21
+ if (isset($_GET['networkwide']) && ($_GET['networkwide'] == 1))
22
+ {
23
+ $old_blog = $wpdb->blogid;
24
+ // Get all blog ids
25
+ $blogids = $wpdb->get_col("SELECT blog_id FROM $wpdb->blogs");
26
+ foreach ($blogids as $blog_id) {
27
+ switch_to_blog($blog_id);
28
+ BInstallation::installer();
29
+ BInstallation::initdb();
30
+ }
31
+ switch_to_blog($old_blog);
32
+ return;
33
  }
 
 
34
  }
35
+
36
+ //Do this if single site standard install
37
+ BInstallation::installer();
38
+ BInstallation::initdb();
39
  }
40
+
41
  public static function installer() {
42
  global $wpdb;
43
  require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
44
+
45
+ $charset_collate = '';
46
+ if (!empty($wpdb->charset)){
47
+ $charset_collate = "DEFAULT CHARACTER SET $wpdb->charset";
48
+ }else{
49
+ $charset_collate = "DEFAULT CHARSET=utf8";
50
+ }
51
+ if (!empty($wpdb->collate)){
52
+ $charset_collate .= " COLLATE $wpdb->collate";
53
+ }
54
+
55
  $sql = "CREATE TABLE " . $wpdb->prefix . "swpm_members_tbl (
56
  member_id int(12) NOT NULL PRIMARY KEY AUTO_INCREMENT,
57
  user_name varchar(32) NOT NULL,
84
  notes text DEFAULT NULL,
85
  flags int(11) DEFAULT '0',
86
  profile_image varchar(255) DEFAULT ''
87
+ )" . $charset_collate . ";";
88
  dbDelta($sql);
89
 
90
  $sql = "CREATE TABLE " . $wpdb->prefix . "swpm_membership_tbl (
92
  alias varchar(127) NOT NULL,
93
  role varchar(255) NOT NULL DEFAULT 'subscriber',
94
  permissions tinyint(4) NOT NULL DEFAULT '0',
95
+ subscription_period varchar(11) NOT NULL DEFAULT '-1',
96
+ subscription_duration_type tinyint NOT NULL default 0,
97
+ subscription_unit VARCHAR(20) NULL,
98
  loginredirect_page text NULL,
99
  category_list longtext,
100
  page_list longtext,
104
  custom_post_list longtext,
105
  disable_bookmark_list longtext,
106
  options longtext,
107
+ protect_older_posts tinyint(1) NOT NULL DEFAULT '0',
108
  campaign_name varchar(60) NOT NULL DEFAULT ''
109
+ )" . $charset_collate . " AUTO_INCREMENT=1 ;";
110
  dbDelta($sql);
111
  $sql = "SELECT * FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id = 1";
112
  $results = $wpdb->get_row($sql);
129
  )VALUES (1 , 'Content Protection', 'administrator', '15', '0',NULL,NULL, NULL , NULL , NULL , NULL,NULL,NULL,'');";
130
  $wpdb->query($sql);
131
  }
132
+ $sql = "UPDATE " . $wpdb->prefix . "swpm_membership_tbl SET subscription_duration_type = 1 WHERE subscription_unit='days' AND subscription_duration_type = 0";
133
+ $wpdb->query($sql);
134
+
135
+ $sql = "UPDATE " . $wpdb->prefix . "swpm_membership_tbl SET subscription_duration_type = 2 WHERE subscription_unit='weeks' AND subscription_duration_type = 0";
136
+ $wpdb->query($sql);
137
+
138
+ $sql = "UPDATE " . $wpdb->prefix . "swpm_membership_tbl SET subscription_duration_type = 3 WHERE subscription_unit='months' AND subscription_duration_type = 0";
139
+ $wpdb->query($sql);
140
+
141
+ $sql = "UPDATE " . $wpdb->prefix . "swpm_membership_tbl SET subscription_duration_type = 4 WHERE subscription_unit='years' AND subscription_duration_type = 0";
142
+ $wpdb->query($sql);
143
  $sql = "CREATE TABLE " . $wpdb->prefix . "swpm_membership_meta_tbl (
144
  id int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
145
  level_id int(11) NOT NULL,
151
  meta_context varchar(255) NOT NULL DEFAULT 'default',
152
  KEY level_id (level_id),
153
  UNIQUE KEY meta_key_id (level_id,meta_key)
154
+ )" . $charset_collate . " AUTO_INCREMENT=1 ;";
155
  dbDelta($sql);
156
+
157
+ $sql = "CREATE TABLE " . $wpdb->prefix . "swpm_payments_tbl (
158
+ id int(12) NOT NULL PRIMARY KEY AUTO_INCREMENT,
159
+ email varchar(64) DEFAULT NULL,
160
+ first_name varchar(32) DEFAULT '',
161
+ last_name varchar(32) DEFAULT '',
162
+ member_id varchar(16) DEFAULT '',
163
+ membership_level varchar(16) DEFAULT '',
164
+ txn_date date NOT NULL default '0000-00-00',
165
+ txn_id varchar(128) NOT NULL default '',
166
+ subscr_id varchar(128) NOT NULL default '',
167
+ reference varchar(128) NOT NULL default '',
168
+ payment_amount varchar(32) NOT NULL default '',
169
+ gateway varchar(16) DEFAULT '',
170
+ status varchar(16) DEFAULT '',
171
+ ip_address varchar(64) default ''
172
+ )" . $charset_collate . ";";
173
+ dbDelta($sql);
174
+
175
+ //Save the current DB version
176
+ update_option("swpm_db_version", SIMPLE_WP_MEMBERSHIP_DB_VER);
177
  }
178
 
179
  public static function initdb() {
208
  "\n\nUser name: {user_name}" .
209
  "\n\nPassword: {password}" .
210
  "\n\nThank You";
211
+
212
+ $status_change_email_subject = "Account Updated!";
213
+ $status_change_email_body = "Dear {first_name} {last_name}," .
214
+ "\n\n Your account status has been updated!" .
215
+ " Please login to the member area at the following URL:" .
216
+ "\n\n {login_link}" .
217
+ "\n\nThank You";
218
+
219
  if (empty($installed_version)) {
220
  //Do fresh install tasks
221
 
230
  ->set_value('upgrade-complete-mail-body', stripslashes($upgrade_email_body))
231
  ->set_value('reset-mail-subject', stripslashes($reset_email_subject))
232
  ->set_value('reset-mail-body', stripslashes($reset_email_body))
233
+ ->set_value('account-change-email-subject', stripslashes($status_change_email_subject))
234
+ ->set_value('account-change-email-body', stripslashes($status_change_email_body))
235
  ->set_value('email-from', trim(get_option('admin_email')));
236
  }
237
  if (version_compare($installed_version, SIMPLE_WP_MEMBERSHIP_VER) == -1) {
classes/class.bLevelForm.php CHANGED
@@ -1,62 +1,126 @@
1
  <?php
2
- class BLevelForm{
3
- protected $fields;
4
- protected $op;
5
- protected $errors;
6
- protected $sanitized;
7
- public function __construct($fields){
8
- $this->fields = $fields;
9
- $this->sanitized = array();
10
- foreach($fields as $key=>$value)
11
- $this->$key();
12
- }
13
-
14
- protected function id(){}
15
- protected function alias(){
16
- $this->sanitized['alias'] = sanitize_text_field($_POST['alias']);
17
- }
18
- protected function role(){
19
- $this->sanitized['role'] = sanitize_text_field($_POST['role']);
20
- }
21
- protected function permissions(){
 
 
 
 
 
 
 
 
 
 
22
  $this->sanitized['permissions'] = 63;
23
  }
24
- protected function subscription_period(){
25
- if($_POST['subscript_duration_type'] == 0){
26
- $this->sanitized['subscription_period'] = 0;
 
 
 
27
  return;
28
  }
29
 
30
- if(empty($_POST['subscription_period'])){
31
- $this->errors['subscription_period'] = BUtils::_("Subscriptoin duration must be > 0.");
 
 
 
 
 
 
32
  return;
33
  }
34
- $this->sanitized['subscription_period'] = absint($_POST['subscription_period']);
35
- }
36
- protected function subscription_unit(){
37
- if($_POST['subscript_duration_type'] == 0){
38
- $this->sanitized['subscription_unit'] = null;
39
  return;
40
  }
41
- $this->sanitized['subscription_unit'] = sanitize_text_field($_POST['subscription_unit']);
42
- }
43
- protected function loginredirect_page(){}
44
- protected function category_list(){}
45
- protected function page_list(){}
46
- protected function post_list(){}
47
- protected function comment_list(){}
48
- protected function attachment_list(){}
49
- protected function custom_post_list(){}
50
- protected function disable_bookmark_list(){}
51
- protected function options(){}
52
- protected function campaign_name(){}
53
- public function is_valid(){
54
- return count($this->errors)<1;
55
- }
56
- public function get_sanitized(){
57
- return $this->sanitized;
58
- }
59
- public function get_errors(){
60
- return $this->errors;
61
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
62
  }
1
  <?php
2
+
3
+ class BLevelForm {
4
+
5
+ protected $fields;
6
+ protected $op;
7
+ protected $errors;
8
+ protected $sanitized;
9
+
10
+ public function __construct($fields) {
11
+ $this->fields = $fields;
12
+ $this->sanitized = array();
13
+ foreach ($fields as $key => $value)
14
+ $this->$key();
15
+ }
16
+
17
+ protected function id() {
18
+
19
+ }
20
+
21
+ protected function alias() {
22
+ $alias = filter_input(INPUT_POST, 'alias');
23
+ $this->sanitized['alias'] = sanitize_text_field($alias);
24
+ }
25
+
26
+ protected function role() {
27
+ $role = filter_input(INPUT_POST, 'role');
28
+ $this->sanitized['role'] = sanitize_text_field($role);
29
+ }
30
+
31
+ protected function permissions() {
32
  $this->sanitized['permissions'] = 63;
33
  }
34
+
35
+ protected function subscription_period() {
36
+ $subscript_duration_type = filter_input(INPUT_POST, 'subscription_duration_type');
37
+
38
+ if ($subscript_duration_type == BMembershipLevel::NO_EXPIRY) {
39
+ $this->sanitized['subscription_period'] = "";
40
  return;
41
  }
42
 
43
+ $subscription_period = filter_input(INPUT_POST, 'subscription_period_'. $subscript_duration_type);
44
+ if (($subscript_duration_type == BMembershipLevel::FIXED_DATE)){
45
+ $dateinfo = date_parse($subscription_period);
46
+ if ($dateinfo['warning_count']|| $dateinfo['error_count']){
47
+ $this->errors['subscription_period'] = BUtils::_("Date format is not valid.");
48
+ return;
49
+ }
50
+ $this->sanitized['subscription_period'] = sanitize_text_field($subscription_period);
51
  return;
52
  }
53
+
54
+ if (!is_numeric($subscription_period)) {
55
+ $this->errors['subscription_period'] = BUtils::_("Access duration must be > 0.");
 
 
56
  return;
57
  }
58
+ $this->sanitized['subscription_period'] = sanitize_text_field($subscription_period);
59
+ }
60
+
61
+ protected function subscription_duration_type(){
62
+ $subscription_duration_type = filter_input(INPUT_POST, 'subscription_duration_type');
63
+ $this->sanitized['subscription_duration_type'] = $subscription_duration_type;
64
+ return;
65
+ }
66
+ protected function subscription_unit(){
67
+
68
+ }
69
+ protected function loginredirect_page() {
70
+
71
+ }
72
+
73
+ protected function category_list() {
74
+
75
+ }
76
+
77
+ protected function page_list() {
78
+
79
+ }
80
+
81
+ protected function post_list() {
82
+
83
+ }
84
+
85
+ protected function comment_list() {
86
+
87
+ }
88
+
89
+ protected function attachment_list() {
90
+
91
+ }
92
+
93
+ protected function custom_post_list() {
94
+
95
+ }
96
+
97
+ protected function disable_bookmark_list() {
98
+
99
+ }
100
+
101
+ protected function options() {
102
+
103
+ }
104
+
105
+ protected function campaign_name() {
106
+
107
+ }
108
+
109
+ protected function protect_older_posts() {
110
+ $checked = filter_input(INPUT_POST, 'protect_older_posts');
111
+ $this->sanitized['protect_older_posts'] = empty($checked) ? 0 : 1;
112
+ }
113
+
114
+ public function is_valid() {
115
+ return count($this->errors) < 1;
116
+ }
117
+
118
+ public function get_sanitized() {
119
+ return $this->sanitized;
120
+ }
121
+
122
+ public function get_errors() {
123
+ return $this->errors;
124
+ }
125
+
126
  }
classes/class.bMemberUtils.php ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * BMemberUtils
5
+ *
6
+ * @author nur
7
+ */
8
+ class BMemberUtils {
9
+
10
+ public static function is_member_logged_in() {
11
+ $auth = BAuth::get_instance();
12
+ if ($auth->is_logged_in()) {
13
+ return true;
14
+ } else {
15
+ return false;
16
+ }
17
+ }
18
+
19
+ public static function get_logged_in_members_id() {
20
+ $auth = BAuth::get_instance();
21
+ if (!$auth->is_logged_in()) {
22
+ return bUtils::_("User is not logged in.");
23
+ }
24
+ return $auth->get('member_id');
25
+ }
26
+
27
+ public static function get_logged_in_members_level() {
28
+ $auth = BAuth::get_instance();
29
+ if (!$auth->is_logged_in()) {
30
+ return bUtils::_("User is not logged in.");
31
+ }
32
+ return $auth->get('membership_level');
33
+ }
34
+
35
+ }
classes/class.bMembers.php CHANGED
@@ -19,13 +19,14 @@ class BMembers extends WP_List_Table {
19
  , 'last_name' => BUtils::_('Last Name')
20
  , 'email' => BUtils::_('Email')
21
  , 'alias' => BUtils::_('Membership Level')
22
- , 'subscription_starts' => BUtils::_('Subscription Starts')
23
  , 'account_state' => BUtils::_('Account State')
24
  );
25
  }
26
 
27
  function get_sortable_columns() {
28
  return array(
 
29
  'user_name' => array('user_name', true)
30
  );
31
  }
@@ -61,19 +62,25 @@ class BMembers extends WP_List_Table {
61
  $query = "SELECT * FROM " . $wpdb->prefix . "swpm_members_tbl";
62
  $query .= " LEFT JOIN " . $wpdb->prefix . "swpm_membership_tbl";
63
  $query .= " ON ( membership_level = id ) ";
64
- if (isset($_POST['s'])){
65
- $query .= " WHERE user_name LIKE '%" . strip_tags($_POST['s']) . "%' "
66
- . " OR first_name LIKE '%" . strip_tags($_POST['s']) . "%' "
67
- . " OR last_name LIKE '%" . strip_tags($_POST['s']) . "%' ";
68
- }
69
- $orderby = !empty($_GET["orderby"]) ? mysql_real_escape_string($_GET["orderby"]) : 'ASC';
70
- $order = !empty($_GET["order"]) ? mysql_real_escape_string($_GET["order"]) : '';
71
- if (!empty($orderby) & !empty($order)) {
72
- $query.=' ORDER BY ' . $orderby . ' ' . $order;
73
  }
 
 
 
 
 
 
 
 
 
 
74
  $totalitems = $wpdb->query($query); //return the total number of affected rows
75
  $perpage = 20;
76
- $paged = !empty($_GET["paged"]) ? mysql_real_escape_string($_GET["paged"]) : '';
77
  if (empty($paged) || !is_numeric($paged) || $paged <= 0) {
78
  $paged = 1;
79
  }
@@ -102,7 +109,7 @@ class BMembers extends WP_List_Table {
102
 
103
  function process_form_request() {
104
  if (isset($_REQUEST['member_id']))
105
- return $this->edit($_REQUEST['member_id']);
106
  return $this->add();
107
  }
108
 
@@ -142,31 +149,39 @@ class BMembers extends WP_List_Table {
142
 
143
  function delete() {
144
  global $wpdb;
145
- if (isset($_REQUEST['member_id'])) {
146
- $id = absint($_REQUEST['member_id']);
147
- $user_name = BUtils::get_user_by_id($id);
148
- $this->delete_wp_user($user_name);
149
- $query = "DELETE FROM " . $wpdb->prefix . "swpm_members_tbl WHERE member_id = $id";
150
- $wpdb->query($query);
151
- } else if (isset($_REQUEST['members'])) {
152
  $members = $_REQUEST['members'];
153
  if (!empty($members)) {
154
  $members = array_map('absint', $members);
155
  foreach ($members as $swpm_id) {
156
- $user_name = BUtils::get_user_by_id($swpm_id);
157
- $this->delete_wp_user($user_name);
158
  }
159
  $query = "DELETE FROM " . $wpdb->prefix . "swpm_members_tbl WHERE member_id IN (" . implode(',', $members) . ")";
160
  $wpdb->query($query);
161
  }
162
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
163
  }
164
-
165
  function show() {
166
  include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_members.php');
167
  }
168
 
169
- private function delete_wp_user($user_name) {
170
  $wp_user_id = username_exists($user_name);
171
  $ud = get_userdata($wp_user_id);
172
  if (!empty($ud) && (isset($ud->wp_capabilities['administrator']) || $ud->wp_user_level == 10)) {
19
  , 'last_name' => BUtils::_('Last Name')
20
  , 'email' => BUtils::_('Email')
21
  , 'alias' => BUtils::_('Membership Level')
22
+ , 'subscription_starts' => BUtils::_('Access Starts')
23
  , 'account_state' => BUtils::_('Account State')
24
  );
25
  }
26
 
27
  function get_sortable_columns() {
28
  return array(
29
+ 'member_id' => array('member_id', true),
30
  'user_name' => array('user_name', true)
31
  );
32
  }
62
  $query = "SELECT * FROM " . $wpdb->prefix . "swpm_members_tbl";
63
  $query .= " LEFT JOIN " . $wpdb->prefix . "swpm_membership_tbl";
64
  $query .= " ON ( membership_level = id ) ";
65
+ $s = filter_input(INPUT_POST, 's');
66
+ if (!empty($s)){
67
+ $query .= " WHERE user_name LIKE '%" . strip_tags($s) . "%' "
68
+ . " OR first_name LIKE '%" . strip_tags($s) . "%' "
69
+ . " OR last_name LIKE '%" . strip_tags($s) . "%' ";
 
 
 
 
70
  }
71
+ $orderby = filter_input(INPUT_GET, 'orderby');
72
+ $orderby = empty($orderby) ? 'user_name' : $orderby ;
73
+ $order = filter_input(INPUT_GET, 'order');
74
+ $order = empty($order) ? 'DESC' : $order;
75
+
76
+ $sortable_columns = $this->get_sortable_columns();
77
+ $orderby = BUtils::sanitize_value_by_array($orderby, $sortable_columns);
78
+ $order = BUtils::sanitize_value_by_array($order, array('DESC' => '1', 'ASC' => '1'));
79
+
80
+ $query.=' ORDER BY ' . $orderby . ' ' . $order;
81
  $totalitems = $wpdb->query($query); //return the total number of affected rows
82
  $perpage = 20;
83
+ $paged = filter_input(INPUT_GET, 'paged');
84
  if (empty($paged) || !is_numeric($paged) || $paged <= 0) {
85
  $paged = 1;
86
  }
109
 
110
  function process_form_request() {
111
  if (isset($_REQUEST['member_id']))
112
+ return $this->edit(absint($_REQUEST['member_id']));
113
  return $this->add();
114
  }
115
 
149
 
150
  function delete() {
151
  global $wpdb;
152
+ if (isset($_REQUEST['members'])) {
 
 
 
 
 
 
153
  $members = $_REQUEST['members'];
154
  if (!empty($members)) {
155
  $members = array_map('absint', $members);
156
  foreach ($members as $swpm_id) {
157
+ $user_name = BUtils::get_user_by_id(absint($swpm_id));
158
+ BMembers::delete_wp_user($user_name);
159
  }
160
  $query = "DELETE FROM " . $wpdb->prefix . "swpm_members_tbl WHERE member_id IN (" . implode(',', $members) . ")";
161
  $wpdb->query($query);
162
  }
163
  }
164
+ else if (isset($_REQUEST['member_id'])) {
165
+ $id = absint($_REQUEST['member_id']);
166
+ BMembers::delete_user_by_id($id);
167
+ }
168
+ }
169
+ public static function delete_user_by_id($id){
170
+ $user_name = BUtils::get_user_by_id($id);
171
+ BMembers::delete_wp_user($user_name);
172
+ BMembers::delete_swpm_user_by_id($id);
173
+ }
174
+
175
+ public static function delete_swpm_user_by_id($id){
176
+ global $wpdb;
177
+ $query = "DELETE FROM " . $wpdb->prefix . "swpm_members_tbl WHERE member_id = $id";
178
+ $wpdb->query($query);
179
  }
 
180
  function show() {
181
  include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_members.php');
182
  }
183
 
184
+ public static function delete_wp_user($user_name) {
185
  $wp_user_id = username_exists($user_name);
186
  $ud = get_userdata($wp_user_id);
187
  if (!empty($ud) && (isset($ud->wp_capabilities['administrator']) || $ud->wp_user_level == 10)) {
classes/class.bMembershipLevel.php CHANGED
@@ -6,7 +6,13 @@
6
  * @author nur
7
  */
8
  class BMembershipLevel {
9
-
 
 
 
 
 
 
10
  private static $_instance = null;
11
 
12
  private function __construct() {
@@ -39,7 +45,7 @@ class BMembershipLevel {
39
 
40
  public function edit($id) {
41
  global $wpdb;
42
- $query = "SELECT * FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id = $id";
43
  $level = $wpdb->get_row($query, ARRAY_A);
44
  $form = new BLevelForm($level);
45
  if ($form->is_valid()) {
@@ -50,6 +56,7 @@ class BMembershipLevel {
50
  $message = array('succeeded' => true, 'message' => BUtils::_('Updated Successfully.'));
51
  BTransfer::get_instance()->set('status', $message);
52
  wp_redirect('admin.php?page=simple_wp_membership_levels');
 
53
  }
54
  $message = array('succeeded' => false, 'message' => BUtils::_('Please correct the following:'), 'extra' => $form->get_errors());
55
  BTransfer::get_instance()->set('status', $message);
6
  * @author nur
7
  */
8
  class BMembershipLevel {
9
+ const NO_EXPIRY = 0;
10
+ const DAYS = 1;
11
+ const WEEKS = 2;
12
+ const MONTHS = 3;
13
+ const YEARS = 4;
14
+ const FIXED_DATE = 5;
15
+
16
  private static $_instance = null;
17
 
18
  private function __construct() {
45
 
46
  public function edit($id) {
47
  global $wpdb;
48
+ $query = $wpdb->prepare("SELECT * FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id = %d", $id);
49
  $level = $wpdb->get_row($query, ARRAY_A);
50
  $form = new BLevelForm($level);
51
  if ($form->is_valid()) {
56
  $message = array('succeeded' => true, 'message' => BUtils::_('Updated Successfully.'));
57
  BTransfer::get_instance()->set('status', $message);
58
  wp_redirect('admin.php?page=simple_wp_membership_levels');
59
+ return;
60
  }
61
  $message = array('succeeded' => false, 'message' => BUtils::_('Please correct the following:'), 'extra' => $form->get_errors());
62
  BTransfer::get_instance()->set('status', $message);
classes/class.bMembershipLevelUtils.php CHANGED
@@ -1,8 +1,10 @@
1
  <?php
 
2
  /**
3
- * Description of class
4
  *
5
  * @author nur
6
  */
7
  class BMembershipLevelUtils {
 
8
  }
1
  <?php
2
+
3
  /**
4
+ * BMembershipLevelUtils
5
  *
6
  * @author nur
7
  */
8
  class BMembershipLevelUtils {
9
+
10
  }
classes/class.bMembershipLevels.php CHANGED
@@ -16,12 +16,13 @@ class BMembershipLevels extends WP_List_Table{
16
  ,'id'=>BUtils::_('ID')
17
  ,'alias'=>BUtils::_('Membership Level')
18
  ,'role'=>BUtils::_('Role')
19
- ,'valid_for'=>BUtils::_('Subscription Valid For')
20
  );
21
  }
22
  function get_sortable_columns(){
23
  return array(
24
- 'alias'=>array('alias',true)
 
25
  );
26
  }
27
  function get_bulk_actions() {
@@ -32,11 +33,14 @@ class BMembershipLevels extends WP_List_Table{
32
  }
33
  function column_default($item, $column_name){
34
  if($column_name == 'valid_for'){
35
- if(empty($item['subscription_period'])) return 'No Expiry';
36
- return $item['subscription_period'] ." " . $item['subscription_unit']; //bUtils::calculate_subscription_period($item['subscription_period'],
37
- // $item['subscription_unit']);
 
 
 
38
  }
39
- if($column_name == 'role') return ucfirst($item['role']);
40
  return stripslashes($item[$column_name]);
41
  }
42
  function column_id($item){
@@ -60,7 +64,13 @@ class BMembershipLevels extends WP_List_Table{
60
  if(isset($_POST['s'])) $query .= " AND alias LIKE '%" . strip_tags($_POST['s']). "%' ";
61
  $orderby = !empty($_GET["orderby"]) ? mysql_real_escape_string($_GET["orderby"]) : 'id';
62
  $order = !empty($_GET["order"]) ? mysql_real_escape_string($_GET["order"]) : 'DESC';
 
 
 
 
 
63
  if(!empty($orderby) && !empty($order)){ $query.=' ORDER BY '.$orderby.' '.$order; }
 
64
  $totalitems = $wpdb->query($query); //return the total number of affected rows
65
  $perpage = 20;
66
  $paged = !empty($_GET["paged"]) ? mysql_real_escape_string($_GET["paged"]) : '';
@@ -105,22 +115,15 @@ class BMembershipLevels extends WP_List_Table{
105
  }
106
  function edit($id){
107
  global $wpdb;
108
- $id = absint($id);
109
- $query = "SELECT * FROM {$wpdb->prefix}swpm_membership_tbl WHERE id = $id";
110
- $member = $wpdb->get_row($query, ARRAY_A);
111
- extract($member, EXTR_SKIP);
112
- $noexpire = bUtils::calculate_subscription_period($subscription_period,$subscription_unit) == 'noexpire';
113
  include_once(SIMPLE_WP_MEMBERSHIP_PATH.'views/admin_edit_level.php');
114
  return false;
115
  }
116
  function delete(){
117
  global $wpdb;
118
- if(isset($_REQUEST['id'])){
119
- $id = absint($_REQUEST['id']);
120
- $query = "DELETE FROM " .$wpdb->prefix . "swpm_membership_tbl WHERE id = $id";
121
- $wpdb->query($query);
122
- }
123
- else if (isset($_REQUEST['ids'])){
124
  $members = $_REQUEST['ids'];
125
  if(!empty($members)){
126
  $members = array_map('absint', $members);
@@ -129,6 +132,11 @@ class BMembershipLevels extends WP_List_Table{
129
  $wpdb->query($query);
130
  }
131
  }
 
 
 
 
 
132
  }
133
  function show(){
134
  $selected = 1;
@@ -138,5 +146,11 @@ class BMembershipLevels extends WP_List_Table{
138
  $selected = 2;
139
  include_once(SIMPLE_WP_MEMBERSHIP_PATH.'views/admin_membership_manage.php');
140
  }
 
 
 
 
 
 
141
  }
142
 
16
  ,'id'=>BUtils::_('ID')
17
  ,'alias'=>BUtils::_('Membership Level')
18
  ,'role'=>BUtils::_('Role')
19
+ ,'valid_for'=>BUtils::_('Access Valid For/Until')
20
  );
21
  }
22
  function get_sortable_columns(){
23
  return array(
24
+ 'id' => array('id',true),
25
+ 'alias' => array('alias',true)
26
  );
27
  }
28
  function get_bulk_actions() {
33
  }
34
  function column_default($item, $column_name){
35
  if($column_name == 'valid_for'){
36
+ if($item['subscription_duration_type'] == BMembershipLevel::NO_EXPIRY) {return 'No Expiry';}
37
+ if($item['subscription_duration_type'] == BMembershipLevel::FIXED_DATE) {return date(get_option('date_format'), strtotime($item['subscription_period']));}
38
+ if($item['subscription_duration_type'] == BMembershipLevel::DAYS) {return $item['subscription_period'] ." Day(s)";}
39
+ if($item['subscription_duration_type'] == BMembershipLevel::WEEKS) {return $item['subscription_period'] ." Week(s)";}
40
+ if($item['subscription_duration_type'] == BMembershipLevel::MONTHS) {return $item['subscription_period'] ." Month(s)";}
41
+ if($item['subscription_duration_type'] == BMembershipLevel::YEARS) {return $item['subscription_period'] ." Year(s)";}
42
  }
43
+ if($column_name == 'role') {return ucfirst($item['role']);}
44
  return stripslashes($item[$column_name]);
45
  }
46
  function column_id($item){
64
  if(isset($_POST['s'])) $query .= " AND alias LIKE '%" . strip_tags($_POST['s']). "%' ";
65
  $orderby = !empty($_GET["orderby"]) ? mysql_real_escape_string($_GET["orderby"]) : 'id';
66
  $order = !empty($_GET["order"]) ? mysql_real_escape_string($_GET["order"]) : 'DESC';
67
+
68
+ $sortable_columns = $this->get_sortable_columns();
69
+ $orderby = BUtils::sanitize_value_by_array($orderby, $sortable_columns);
70
+ $order = BUtils::sanitize_value_by_array($order, array('DESC' => '1', 'ASC' => '1'));
71
+
72
  if(!empty($orderby) && !empty($order)){ $query.=' ORDER BY '.$orderby.' '.$order; }
73
+
74
  $totalitems = $wpdb->query($query); //return the total number of affected rows
75
  $perpage = 20;
76
  $paged = !empty($_GET["paged"]) ? mysql_real_escape_string($_GET["paged"]) : '';
115
  }
116
  function edit($id){
117
  global $wpdb;
118
+ $query = $wpdb->prepare("SELECT * FROM {$wpdb->prefix}swpm_membership_tbl WHERE id = %d", absint($id));
119
+ $membership = $wpdb->get_row($query, ARRAY_A);
120
+ extract($membership, EXTR_SKIP);
 
 
121
  include_once(SIMPLE_WP_MEMBERSHIP_PATH.'views/admin_edit_level.php');
122
  return false;
123
  }
124
  function delete(){
125
  global $wpdb;
126
+ if (isset($_REQUEST['ids'])){
 
 
 
 
 
127
  $members = $_REQUEST['ids'];
128
  if(!empty($members)){
129
  $members = array_map('absint', $members);
132
  $wpdb->query($query);
133
  }
134
  }
135
+ else if(isset($_REQUEST['id'])){
136
+ $id = absint($_REQUEST['id']);
137
+ $query = $wpdb->prepare("DELETE FROM " .$wpdb->prefix . "swpm_membership_tbl WHERE id = %d", $id);
138
+ $wpdb->query($query);
139
+ }
140
  }
141
  function show(){
142
  $selected = 1;
146
  $selected = 2;
147
  include_once(SIMPLE_WP_MEMBERSHIP_PATH.'views/admin_membership_manage.php');
148
  }
149
+ function manage_categroy(){
150
+ $selected = 3;
151
+ include_once('class.bCategoryList.php');
152
+ $category_list = new BCategoryList();
153
+ include_once(SIMPLE_WP_MEMBERSHIP_PATH.'views/admin_category_list.php');
154
+ }
155
  }
156
 
classes/class.bPermission.php CHANGED
@@ -2,15 +2,20 @@
2
  include_once('class.bProtectionBase.php');
3
  class BPermission extends bProtectionBase{
4
  private static $_this = array();
5
-
6
- private function __construct($level_id) {
7
  $this->init($level_id);
8
  }
9
 
10
  public static function get_instance($level_id) {
11
- if (!isset(self::$_this[$level_id]))
12
- self::$_this[$level_id] = new BPermission($level_id);
13
- return self::$_this[$level_id];
 
 
 
 
 
 
14
  }
15
 
16
  public function is_permitted($id) {
2
  include_once('class.bProtectionBase.php');
3
  class BPermission extends bProtectionBase{
4
  private static $_this = array();
5
+ private function __construct($level_id) {
 
6
  $this->init($level_id);
7
  }
8
 
9
  public static function get_instance($level_id) {
10
+ if ($level_id ==1 || $level_id == md5(1)){
11
+ wp_die('Invalid Membership level!');
12
+ }
13
+ $key = is_numeric($level_id)? md5($level_id): $level_id;
14
+ if (!isset(self::$_this[$key])){
15
+ self::$_this[$key] = new BPermission($level_id);
16
+ }
17
+
18
+ return self::$_this[$key];
19
  }
20
 
21
  public function is_permitted($id) {
classes/class.bPermissionCollection.php ADDED
@@ -0,0 +1,49 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ * To change this license header, choose License Headers in Project Properties.
5
+ * To change this template file, choose Tools | Templates
6
+ * and open the template in the editor.
7
+ */
8
+
9
+ /**
10
+ * Description of bPermissionCollection
11
+ *
12
+ * @author nur
13
+ */
14
+ class BPermissionCollection {
15
+ protected $permissions;
16
+ protected static $instance;
17
+
18
+ protected function __construct() {
19
+ $this->permissions = array();
20
+ }
21
+
22
+ public static function get_instance(){
23
+ self::$_this = empty(self::$_this)? new BPermissionCollection():self::$_this;
24
+ return self::$_this;
25
+ }
26
+
27
+ public function load($level_ids = array()){
28
+ if (empty($level_ids)){
29
+ global $wpdb;
30
+ $level_ids = $wpdb->get_col("SELECT id FROM {$wpdb->prefix}swpm_membership_tbl WHERE id != 1");
31
+ }
32
+
33
+ foreach($level_ids as $id){
34
+ $this->permissions[] = BPermission::get_instance($id);
35
+ }
36
+ }
37
+
38
+ public function get_permitted_levels($post_id){
39
+ $levels = array();
40
+
41
+ foreach($this->permissions as $permission){
42
+ if ($permission->is_permitted($post_id)){
43
+ $levels[$permission->get($id)] = $permission->get('alias');
44
+ }
45
+ }
46
+
47
+ return $levels;
48
+ }
49
+ }
classes/class.bProtectionBase.php CHANGED
@@ -19,8 +19,10 @@ abstract class BProtectionBase {
19
  protected function init($level_id) {
20
  global $wpdb;
21
  $this->owning_level_id = $level_id;
22
- $query = "SELECT * FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id =" . $level_id;
 
23
  $result = $wpdb->get_row($query);
 
24
  $this->bitmap = isset($result->permissions) ? $result->permissions : 0;
25
  $this->posts = isset($result->post_list) ? (array) unserialize($result->post_list) : array();
26
  $this->pages = isset($result->page_list) ? (array) unserialize($result->page_list) : array();
@@ -32,16 +34,23 @@ abstract class BProtectionBase {
32
  $this->disable_bookmark = isset($result->disable_bookmark_list) ? (array) unserialize($result->disable_bookmark_list) : array();
33
  $this->details = (array) $result;
34
  }
35
- public function apply($ids, $type){
 
36
  $post_types = get_post_types(array('public' => true, '_builtin' => false));
37
- if(in_array($type,$post_types)){$type = 'custom_post';}
 
 
38
  return $this->update_perms($ids, true, $type);
39
  }
40
- public function remove($ids, $type){
 
41
  $post_types = get_post_types(array('public' => true, '_builtin' => false));
42
- if(in_array($type,$post_types)){$type = 'custom_post';}
 
 
43
  return $this->update_perms($ids, false, $type);
44
  }
 
45
  public function get_options() {
46
  return $this->options;
47
  }
@@ -72,9 +81,9 @@ abstract class BProtectionBase {
72
 
73
  public function is_bookmark_disabled($id) {
74
  $posts = isset($this->disable_bookmark['posts']) ?
75
- $this->disable_bookmark['posts'] : array();
76
  $pages = isset($this->disable_bookmark['pages']) ?
77
- $this->disable_bookmark['pages'] : array();
78
  return in_array($id, $pages) || in_array($id, $posts);
79
  }
80
 
@@ -193,6 +202,10 @@ abstract class BProtectionBase {
193
  private function update_perms($ids, $set, $type) {
194
  $list = null;
195
  $index = '';
 
 
 
 
196
  switch ($type) {
197
  case 'page':
198
  $list = $this->pages;
@@ -221,6 +234,7 @@ abstract class BProtectionBase {
221
  default:
222
  break;
223
  }
 
224
  if (!empty($index)) {
225
  if ($set) {
226
  $list = array_merge($list, $ids);
@@ -228,6 +242,28 @@ abstract class BProtectionBase {
228
  } else {
229
  $list = array_diff($list, $ids);
230
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
231
  $this->details[$index] = $list;
232
  }
233
  return $this;
@@ -251,7 +287,7 @@ abstract class BProtectionBase {
251
  }
252
 
253
  public function get($key, $default = '') {
254
- if (isset($this->details[$key])){
255
  return $this->details[$key];
256
  }
257
  return $default;
19
  protected function init($level_id) {
20
  global $wpdb;
21
  $this->owning_level_id = $level_id;
22
+ $query = $wpdb->prepare("SELECT * FROM {$wpdb->prefix}swpm_membership_tbl WHERE "
23
+ . (is_numeric($level_id) ? 'id = %d' : 'md5(id) = %s' ), $level_id);
24
  $result = $wpdb->get_row($query);
25
+
26
  $this->bitmap = isset($result->permissions) ? $result->permissions : 0;
27
  $this->posts = isset($result->post_list) ? (array) unserialize($result->post_list) : array();
28
  $this->pages = isset($result->page_list) ? (array) unserialize($result->page_list) : array();
34
  $this->disable_bookmark = isset($result->disable_bookmark_list) ? (array) unserialize($result->disable_bookmark_list) : array();
35
  $this->details = (array) $result;
36
  }
37
+
38
+ public function apply($ids, $type) {
39
  $post_types = get_post_types(array('public' => true, '_builtin' => false));
40
+ if (in_array($type, $post_types)) {
41
+ $type = 'custom_post';
42
+ }
43
  return $this->update_perms($ids, true, $type);
44
  }
45
+
46
+ public function remove($ids, $type) {
47
  $post_types = get_post_types(array('public' => true, '_builtin' => false));
48
+ if (in_array($type, $post_types)) {
49
+ $type = 'custom_post';
50
+ }
51
  return $this->update_perms($ids, false, $type);
52
  }
53
+
54
  public function get_options() {
55
  return $this->options;
56
  }
81
 
82
  public function is_bookmark_disabled($id) {
83
  $posts = isset($this->disable_bookmark['posts']) ?
84
+ (array) $this->disable_bookmark['posts'] : array();
85
  $pages = isset($this->disable_bookmark['pages']) ?
86
+ (array) $this->disable_bookmark['pages'] : array();
87
  return in_array($id, $pages) || in_array($id, $posts);
88
  }
89
 
202
  private function update_perms($ids, $set, $type) {
203
  $list = null;
204
  $index = '';
205
+ if (empty($ids)) {
206
+ return $this;
207
+ }
208
+ $ids = (array) $ids;
209
  switch ($type) {
210
  case 'page':
211
  $list = $this->pages;
234
  default:
235
  break;
236
  }
237
+
238
  if (!empty($index)) {
239
  if ($set) {
240
  $list = array_merge($list, $ids);
242
  } else {
243
  $list = array_diff($list, $ids);
244
  }
245
+ switch ($type) {
246
+ case 'page':
247
+ $this->pages = $list;
248
+ break;
249
+ case 'post':
250
+ $this->posts = $list;
251
+ break;
252
+ case 'attachment':
253
+ $this->attachments = $list;
254
+ break;
255
+ case 'comment':
256
+ $this->comments = $list;
257
+ break;
258
+ case 'category':
259
+ $this->categories = $list;
260
+ break;
261
+ case 'custom_post':
262
+ $this->custom_posts = $list;
263
+ break;
264
+ default:
265
+ break;
266
+ }
267
  $this->details[$index] = $list;
268
  }
269
  return $this;
287
  }
288
 
289
  public function get($key, $default = '') {
290
+ if (isset($this->details[$key])) {
291
  return $this->details[$key];
292
  }
293
  return $default;
classes/class.bRegistration.php CHANGED
@@ -19,8 +19,7 @@ abstract class BRegistration {
19
  $from_address = $settings->get_value('email-from');
20
  $login_link = $settings->get_value('login-page-url');
21
  $headers = 'From: ' . $from_address . "\r\n";
22
- $query = "SELECT alias FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id = " . $member_info['membership_level'];
23
- $member_info['membership_level_name'] = $wpdb->get_var($query);
24
  $member_info['password'] = $member_info['plain_password'];
25
  $member_info['login_link'] = $login_link;
26
  $values = array_values($member_info);
19
  $from_address = $settings->get_value('email-from');
20
  $login_link = $settings->get_value('login-page-url');
21
  $headers = 'From: ' . $from_address . "\r\n";
22
+ $member_info['membership_level_name'] = BPermission::get_instance($member_info['membership_level'])->get('alias');
 
23
  $member_info['password'] = $member_info['plain_password'];
24
  $member_info['login_link'] = $login_link;
25
  $values = array_values($member_info);
classes/class.bSettings.php CHANGED
@@ -5,7 +5,7 @@ class BSettings {
5
  private static $_this;
6
  private $settings;
7
  public $current_tab;
8
-
9
  private function __construct() {
10
  $this->settings = (array) get_option('swpm-settings');
11
  }
@@ -16,6 +16,8 @@ class BSettings {
16
  $tab = filter_input(INPUT_GET, 'tab');
17
  $tab = empty($tab)?filter_input(INPUT_POST, 'tab'):$tab;
18
  $this->current_tab = empty($tab) ? 1 : $tab;
 
 
19
  add_action('swpm-draw-tab', array(&$this, 'draw_tabs'));
20
  $method = 'tab_' . $this->current_tab;
21
  if (method_exists($this, $method)){
@@ -24,7 +26,13 @@ class BSettings {
24
  }
25
  }
26
  private function tab_1() {
 
27
  register_setting('swpm-settings-tab-1', 'swpm-settings', array(&$this, 'sanitize_tab_1'));
 
 
 
 
 
28
  add_settings_section('swpm-documentation', BUtils::_('Plugin Documentation'),
29
  array(&$this, 'swpm_documentation_callback'), 'simple_wp_membership_settings');
30
  add_settings_section('general-settings', BUtils::_('General Settings'),
@@ -32,7 +40,7 @@ class BSettings {
32
  add_settings_field('enable-free-membership', BUtils::_('Enable Free Membership'),
33
  array(&$this, 'checkbox_callback'), 'simple_wp_membership_settings', 'general-settings',
34
  array('item' => 'enable-free-membership',
35
- 'message'=> BUtils::_('Enable/disable registration for free membership level')));
36
  add_settings_field('free-membership-id', BUtils::_('Free Membership Level ID'),
37
  array(&$this, 'textfield_small_callback'), 'simple_wp_membership_settings', 'general-settings',
38
  array('item' => 'free-membership-id',
@@ -45,7 +53,29 @@ class BSettings {
45
  array(&$this, 'checkbox_callback'), 'simple_wp_membership_settings', 'general-settings',
46
  array('item' => 'hide-adminbar',
47
  'message'=>BUtils::_('WordPress shows an admin toolbar to the logged in users of the site. Check this box if you want to hide that admin toolbar in the fronend of your site.')));
48
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
49
  add_settings_section('pages-settings', BUtils::_('Pages Settings'),
50
  array(&$this, 'pages_settings_callback'), 'simple_wp_membership_settings');
51
  add_settings_field('login-page-url', BUtils::_('Login Page URL'),
@@ -71,10 +101,14 @@ class BSettings {
71
 
72
  add_settings_section('debug-settings', BUtils::_('Test & Debug Settings'),
73
  array(&$this, 'testndebug_settings_callback'), 'simple_wp_membership_settings');
 
 
 
 
74
  add_settings_field('enable-debug', 'Enable Debug',
75
  array(&$this, 'checkbox_callback'), 'simple_wp_membership_settings', 'debug-settings',
76
  array('item' => 'enable-debug',
77
- 'message'=>'Check this option to enable debug logging. View debug log file <a href="'.SIMPLE_WP_MEMBERSHIP_URL.'/log.txt" target="_blank">here</a>.'));
78
  add_settings_field('enable-sandbox-testing', BUtils::_('Enable Sandbox Testing'),
79
  array(&$this, 'checkbox_callback'), 'simple_wp_membership_settings', 'debug-settings',
80
  array('item' => 'enable-sandbox-testing',
@@ -83,9 +117,6 @@ class BSettings {
83
  }
84
 
85
  private function tab_2() {
86
- //register_setting( 'swpm-settings-tab-2', 'swpm-settings' , array(&$this, 'sanitize_tab_2'));
87
- //add_settings_section('paypal-settings', 'PayPal Settings', array(&$this,'pp_payment_settings_callback'), 'simple_wp_membership_settings');
88
- //add_settings_field( 'paypal-email', 'PayPal Email', array(&$this, 'textfield_callback'), 'simple_wp_membership_settings', 'paypal-settings' ,array('item'=>'paypal-email'));
89
  }
90
 
91
  private function tab_3() {
@@ -139,14 +170,43 @@ class BSettings {
139
  array('item' => 'upgrade-complete-mail-body',
140
  'message'=>''));
141
  }
 
142
  private function tab_4(){
143
  }
144
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
145
  public static function get_instance() {
146
  self::$_this = empty(self::$_this) ? new BSettings() : self::$_this;
147
  return self::$_this;
148
  }
149
-
 
 
 
 
 
 
 
 
 
 
 
 
 
150
  public function checkbox_callback($args) {
151
  $item = $args['item'];
152
  $msg = isset($args['message'])?$args['message']: '';
@@ -190,82 +250,79 @@ class BSettings {
190
  public function swpm_documentation_callback() {
191
  ?>
192
  <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;">
193
- <p>Please visit the
194
  <a target="_blank" href="https://simple-membership-plugin.com/">Simple Membership Plugin Site</a>
195
- to read setup and configuration documentation.
196
  </p>
197
  </div>
198
  <?php
199
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
200
 
201
- public function general_settings_callback() {
202
- echo "<p>General Plugin Settings.</p>";
203
  }
204
 
 
 
 
205
  public function testndebug_settings_callback(){
206
- echo "<p>Test and Debug Related Settings.</p>";
207
  }
208
  public function reg_email_settings_callback() {
209
- echo "<p>This email will be sent to your users when they complete the registration and become a member.</p>";
210
  }
211
  public function email_misc_settings_callback(){
212
- echo "<p>Settings in this section apply to all emails.</p>";
213
  }
214
  public function upgrade_email_settings_callback() {
215
- echo "<p>This email will be sent to your users after account upgrade.</p>";
216
  }
217
-
218
  public function reg_prompt_email_settings_callback() {
219
- echo "<p>This email will be sent to prompt user to complete registration.</p>";
220
  }
221
-
222
- public function pages_settings_callback() {
223
- echo '<p>Page Setup and URL Related settings.<p>';
224
  }
225
-
226
  public function sanitize_tab_1($input) {
227
  if (empty($this->settings)){
228
  $this->settings = (array) get_option('swpm-settings');
229
  }
230
  $output = $this->settings;
231
  //general settings block
232
-
233
- if (isset($input['hide-adminbar'])){
234
- $output['hide-adminbar'] = esc_url($input['hide-adminbar']);
235
- }
236
- else{
237
- $output['hide-adminbar'] = "";
238
- }
239
- if (isset($input['enable-free-membership'])){
240
- $output['enable-free-membership'] = esc_url($input['enable-free-membership']);
241
- }
242
- else{
243
- $output['enable-free-membership'] = "";
244
- }
245
- if (isset($input['enable-moretag'])){
246
- $output['enable-moretag'] = esc_url($input['enable-moretag']);
247
- }
248
- else{
249
- $output['enable-moretag'] = "";
250
- }
251
- if (isset($input['enable-debug'])){
252
- $output['enable-debug'] = esc_url($input['enable-debug']);
253
- }
254
- else{
255
- $output['enable-debug'] = "";
256
- }
257
- if (isset($input['enable-sandbox-testing'])){
258
- $output['enable-sandbox-testing'] = esc_url($input['enable-sandbox-testing']);
259
- }
260
- else{
261
- $output['enable-sandbox-testing'] = "";
262
- }
263
  $output['free-membership-id'] = ($input['free-membership-id'] != 1) ? absint($input['free-membership-id']) : '';
264
  $output['login-page-url'] = esc_url($input['login-page-url']);
265
  $output['registration-page-url'] = esc_url($input['registration-page-url']);
266
  $output['profile-page-url'] = esc_url($input['profile-page-url']);
267
  $output['reset-page-url'] = esc_url($input['reset-page-url']);
268
  $output['join-us-page-url'] = esc_url($input['join-us-page-url']);
 
269
  return $output;
270
  }
271
 
@@ -283,21 +340,21 @@ class BSettings {
283
  $output['reg-prompt-complete-mail-subject'] = sanitize_text_field($input['reg-prompt-complete-mail-subject']);
284
  $output['reg-prompt-complete-mail-body'] = wp_kses_data(force_balance_tags($input['reg-prompt-complete-mail-body']));
285
  $output['email-from'] = trim($input['email-from']);
286
- if (isset($input['enable-admin-notification-after-reg'])){
287
- $output['enable-admin-notification-after-reg'] = esc_html($input['enable-admin-notification-after-reg']);
288
- }
289
- else{
290
- $output['enable-admin-notification-after-reg'] = "";
291
- }
292
- if (isset($input['enable-notification-after-manual-user-add'])){
293
- $output['enable-notification-after-manual-user-add'] = esc_html($input['enable-notification-after-manual-user-add']);
294
- }
295
- else{
296
- $output['enable-notification-after-manual-user-add'] = "";
297
  }
 
 
 
298
  return $output;
299
  }
300
-
301
  public function get_value($key, $default = "") {
302
  if (isset($this->settings[$key])){
303
  return $this->settings[$key];
@@ -318,10 +375,9 @@ class BSettings {
318
  $current = $this->current_tab;
319
  ?>
320
  <h3 class="nav-tab-wrapper">
321
- <a class="nav-tab <?php echo ($current == 1) ? 'nav-tab-active' : ''; ?>" href="admin.php?page=simple_wp_membership_settings">General Settings</a>
322
- <a class="nav-tab <?php echo ($current == 2) ? 'nav-tab-active' : ''; ?>" href="admin.php?page=simple_wp_membership_settings&tab=2">Payment Settings</a>
323
- <a class="nav-tab <?php echo ($current == 3) ? 'nav-tab-active' : ''; ?>" href="admin.php?page=simple_wp_membership_settings&tab=3">Email Settings</a>
324
- <a class="nav-tab <?php echo ($current == 4) ? 'nav-tab-active' : ''; ?>" href="admin.php?page=simple_wp_membership_settings&tab=4">Tools</a>
325
  </h3>
326
  <?php
327
  }
@@ -333,7 +389,7 @@ class BSettings {
333
  return '<span style="color:red;">Simple Membership is not configured correctly.'
334
  . 'Please contact <a href="mailto:' . get_option('admin_email'). '">Admin</a>';
335
  }
336
- return BUtils::_('Please'). ' <a href="' . $login . '">' . BUtils::_('Login') . '</a>. '. BUtils::_('Not a Member?').' <a href="' . $joinus . '">'.BUtils::_('Join Us').'</a>';
337
  }
338
 
339
  }
5
  private static $_this;
6
  private $settings;
7
  public $current_tab;
8
+ private $tabs;
9
  private function __construct() {
10
  $this->settings = (array) get_option('swpm-settings');
11
  }
16
  $tab = filter_input(INPUT_GET, 'tab');
17
  $tab = empty($tab)?filter_input(INPUT_POST, 'tab'):$tab;
18
  $this->current_tab = empty($tab) ? 1 : $tab;
19
+ $this->tabs = array(1=> 'General Settings', 2=> 'Payment Settings',
20
+ 3=> 'Email Settings', 4=> 'Tools', 5=>'Advanced Settings', 6=> 'Addons Settings');
21
  add_action('swpm-draw-tab', array(&$this, 'draw_tabs'));
22
  $method = 'tab_' . $this->current_tab;
23
  if (method_exists($this, $method)){
26
  }
27
  }
28
  private function tab_1() {
29
+
30
  register_setting('swpm-settings-tab-1', 'swpm-settings', array(&$this, 'sanitize_tab_1'));
31
+
32
+ //This settings section has no heading
33
+ add_settings_section('swpm-general-post-submission-check', '',
34
+ array(&$this, 'swpm_general_post_submit_check_callback'), 'simple_wp_membership_settings');
35
+
36
  add_settings_section('swpm-documentation', BUtils::_('Plugin Documentation'),
37
  array(&$this, 'swpm_documentation_callback'), 'simple_wp_membership_settings');
38
  add_settings_section('general-settings', BUtils::_('General Settings'),
40
  add_settings_field('enable-free-membership', BUtils::_('Enable Free Membership'),
41
  array(&$this, 'checkbox_callback'), 'simple_wp_membership_settings', 'general-settings',
42
  array('item' => 'enable-free-membership',
43
+ 'message'=> BUtils::_('Enable/disable registration for free membership level. When you enable this option, make sure to specify a free membership level ID in the field below.')));
44
  add_settings_field('free-membership-id', BUtils::_('Free Membership Level ID'),
45
  array(&$this, 'textfield_small_callback'), 'simple_wp_membership_settings', 'general-settings',
46
  array('item' => 'free-membership-id',
53
  array(&$this, 'checkbox_callback'), 'simple_wp_membership_settings', 'general-settings',
54
  array('item' => 'hide-adminbar',
55
  'message'=>BUtils::_('WordPress shows an admin toolbar to the logged in users of the site. Check this box if you want to hide that admin toolbar in the fronend of your site.')));
56
+
57
+ add_settings_field('default-account-status', BUtils::_('Default Account Status'),
58
+ array(&$this, 'selectbox_callback'), 'simple_wp_membership_settings', 'general-settings',
59
+ array('item' => 'default-account-status',
60
+ 'options'=> BUtils::get_account_state_options(),
61
+ 'default'=>'active',
62
+ 'message'=>BUtils::_('Select the default account status for newly registered users. If you want to manually approve the members then you can set the status to "Pending".')));
63
+ add_settings_field('allow-account-deletion', BUtils::_('Allow Account Deletion'),
64
+ array(&$this, 'checkbox_callback'), 'simple_wp_membership_settings', 'general-settings',
65
+ array('item' => 'allow-account-deletion',
66
+ 'options'=> BUtils::get_account_state_options(),
67
+ 'message'=>BUtils::_('Allow users to delete their accounts.')));
68
+ add_settings_field('delete-pending-account', BUtils::_('Auto Delete Pending Account'),
69
+ array(&$this, 'selectbox_callback'), 'simple_wp_membership_settings', 'general-settings',
70
+ array('item' => 'delete-pending-account',
71
+ 'options'=> array(0 => 'Do not delete', 1=>'Older than 1 month', 2=> 'Older than 2 months'),
72
+ 'default'=>'0',
73
+ 'message'=>BUtils::_('Select how long you want to keep "pending" account.')));
74
+ /*add_settings_field('protect-everything', BUtils::_('Protect Everything'),
75
+ array(&$this, 'checkbox_callback'), 'simple_wp_membership_settings', 'general-settings',
76
+ array('item' => 'protect-everything',
77
+ 'message'=>BUtils::_('Check this box if you want to protect all posts/pages by default.')));*/
78
+
79
  add_settings_section('pages-settings', BUtils::_('Pages Settings'),
80
  array(&$this, 'pages_settings_callback'), 'simple_wp_membership_settings');
81
  add_settings_field('login-page-url', BUtils::_('Login Page URL'),
101
 
102
  add_settings_section('debug-settings', BUtils::_('Test & Debug Settings'),
103
  array(&$this, 'testndebug_settings_callback'), 'simple_wp_membership_settings');
104
+
105
+ $debug_field_help_text = BUtils::_('Check this option to enable debug logging.');
106
+ $debug_field_help_text .= '<br />- View debug log file by clicking <a href="'.SIMPLE_WP_MEMBERSHIP_URL.'/log.txt" target="_blank">here</a>.';
107
+ $debug_field_help_text .= '<br />- Reset debug log file by clicking <a href="admin.php?page=simple_wp_membership_settings&swmp_reset_log=1" target="_blank">here</a>.';
108
  add_settings_field('enable-debug', 'Enable Debug',
109
  array(&$this, 'checkbox_callback'), 'simple_wp_membership_settings', 'debug-settings',
110
  array('item' => 'enable-debug',
111
+ 'message'=> $debug_field_help_text));
112
  add_settings_field('enable-sandbox-testing', BUtils::_('Enable Sandbox Testing'),
113
  array(&$this, 'checkbox_callback'), 'simple_wp_membership_settings', 'debug-settings',
114
  array('item' => 'enable-sandbox-testing',
117
  }
118
 
119
  private function tab_2() {
 
 
 
120
  }
121
 
122
  private function tab_3() {
170
  array('item' => 'upgrade-complete-mail-body',
171
  'message'=>''));
172
  }
173
+
174
  private function tab_4(){
175
  }
176
+
177
+ private function tab_5(){
178
+ register_setting('swpm-settings-tab-5', 'swpm-settings', array(&$this, 'sanitize_tab_5'));
179
+
180
+ add_settings_section('advanced-settings', BUtils::_('Advanced Settings'),
181
+ array(&$this, 'advanced_settings_callback'), 'simple_wp_membership_settings');
182
+
183
+ add_settings_field('enable-expired-account-login', BUtils::_('Enable Expired Account Login'),
184
+ array(&$this, 'checkbox_callback'), 'simple_wp_membership_settings', 'advanced-settings',
185
+ array('item' => 'enable-expired-account-login',
186
+ 'message'=>BUtils::_("When enabled, expired members will be able to log into the system but won't be able to view any protected content. This allows them to easily renew their account by making another payment.")));
187
+ }
188
+
189
+ private function tab_6(){
190
+ }
191
+
192
  public static function get_instance() {
193
  self::$_this = empty(self::$_this) ? new BSettings() : self::$_this;
194
  return self::$_this;
195
  }
196
+ public function selectbox_callback($args){
197
+ $item = $args['item'];
198
+ $options = $args['options'];
199
+ $default = $args['default'];
200
+ $msg = isset($args['message'])?$args['message']: '';
201
+ $selected = esc_attr($this->get_value($item), $default);
202
+ echo "<select name='swpm-settings[" . $item . "]' >";
203
+ foreach($options as $key => $value){
204
+ $is_selected = ($key == $selected)? 'selected="selected"': '';
205
+ echo '<option ' . $is_selected . ' value="'. esc_attr($key) . '">' . esc_attr($value) . '</option>';
206
+ }
207
+ echo '</select>';
208
+ echo '<br/><i>'.$msg.'</i>';
209
+ }
210
  public function checkbox_callback($args) {
211
  $item = $args['item'];
212
  $msg = isset($args['message'])?$args['message']: '';
250
  public function swpm_documentation_callback() {
251
  ?>
252
  <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;">
253
+ <p>Visit the
254
  <a target="_blank" href="https://simple-membership-plugin.com/">Simple Membership Plugin Site</a>
255
+ to read setup and configuration documentation. Please <a href="https://wordpress.org/support/view/plugin-reviews/simple-membership?filter=5" target="_blank">give us a rating</a> if you like the plugin.
256
  </p>
257
  </div>
258
  <?php
259
  }
260
+
261
+ public function swpm_general_post_submit_check_callback(){
262
+ //Log file reset handler
263
+ if(isset($_REQUEST['swmp_reset_log'])){
264
+ if(miscUtils::reset_swmp_log_files()){
265
+ echo '<div id="message" class="updated fade"><p>Debug log files have been reset!</p></div>';
266
+ }
267
+ else{
268
+ echo '<div id="message" class="updated fade"><p>Debug log files could not be reset!</p></div>';
269
+ }
270
+ }
271
+
272
+ //Show settings updated message
273
+ if(isset($_REQUEST['settings-updated'])){
274
+ echo '<div id="message" class="updated fade"><p>' . BUtils::_('Settings updated!') . '</p></div>';
275
+ }
276
+ }
277
 
278
+ public function general_settings_callback() {
279
+ BUtils::e('General Plugin Settings.');
280
  }
281
 
282
+ public function pages_settings_callback() {
283
+ BUtils::e('Page Setup and URL Related settings.');
284
+ }
285
  public function testndebug_settings_callback(){
286
+ BUtils::e('Testing and Debug Related Settings.');
287
  }
288
  public function reg_email_settings_callback() {
289
+ BUtils::e('This email will be sent to your users when they complete the registration and become a member.');
290
  }
291
  public function email_misc_settings_callback(){
292
+ BUtils::e('Settings in this section apply to all emails.');
293
  }
294
  public function upgrade_email_settings_callback() {
295
+ BUtils::e('This email will be sent to your users after account upgrade.');
296
  }
 
297
  public function reg_prompt_email_settings_callback() {
298
+ BUtils::e('This email will be sent to prompt user to complete registration.');
299
  }
300
+ public function advanced_settings_callback(){
301
+ BUtils::e('This page allows you to configure some advanced features of the plugin.');
 
302
  }
303
+
304
  public function sanitize_tab_1($input) {
305
  if (empty($this->settings)){
306
  $this->settings = (array) get_option('swpm-settings');
307
  }
308
  $output = $this->settings;
309
  //general settings block
310
+
311
+ $output['hide-adminbar'] = isset($input['hide-adminbar'])? esc_attr($input['hide-adminbar']) : "";
312
+ $output['protect-everything'] = isset($input['protect-everything'])? esc_attr($input['protect-everything']) : "";
313
+ $output['enable-free-membership'] = isset($input['enable-free-membership'])? esc_attr($input['enable-free-membership']) : "";
314
+ $output['enable-moretag'] = isset($input['enable-moretag'])? esc_attr($input['enable-moretag']) : "";
315
+ $output['enable-debug'] = isset($input['enable-debug'])? esc_attr($input['enable-debug']) : "";
316
+ $output['enable-sandbox-testing'] = isset($input['enable-sandbox-testing'])? esc_attr($input['enable-sandbox-testing']) : "";
317
+ $output['allow-account-deletion'] = isset($input['allow-account-deletion'])? esc_attr($input['allow-account-deletion']) : "";
318
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
319
  $output['free-membership-id'] = ($input['free-membership-id'] != 1) ? absint($input['free-membership-id']) : '';
320
  $output['login-page-url'] = esc_url($input['login-page-url']);
321
  $output['registration-page-url'] = esc_url($input['registration-page-url']);
322
  $output['profile-page-url'] = esc_url($input['profile-page-url']);
323
  $output['reset-page-url'] = esc_url($input['reset-page-url']);
324
  $output['join-us-page-url'] = esc_url($input['join-us-page-url']);
325
+ $output['default-account-status'] = esc_attr($input['default-account-status']);
326
  return $output;
327
  }
328
 
340
  $output['reg-prompt-complete-mail-subject'] = sanitize_text_field($input['reg-prompt-complete-mail-subject']);
341
  $output['reg-prompt-complete-mail-body'] = wp_kses_data(force_balance_tags($input['reg-prompt-complete-mail-body']));
342
  $output['email-from'] = trim($input['email-from']);
343
+ $output['enable-admin-notification-after-reg'] = isset($input['enable-admin-notification-after-reg'])? esc_attr($input['enable-admin-notification-after-reg']) : "";
344
+ $output['enable-notification-after-manual-user-add'] = isset($input['enable-notification-after-manual-user-add'])? esc_attr($input['enable-notification-after-manual-user-add']) : "";
345
+
346
+ return $output;
347
+ }
348
+
349
+ public function sanitize_tab_5($input){
350
+ if (empty($this->settings)){
351
+ $this->settings = (array) get_option('swpm-settings');
 
 
352
  }
353
+ $output = $this->settings;
354
+ $output['enable-expired-account-login'] = isset($input['enable-expired-account-login'])? esc_attr($input['enable-expired-account-login']) : "";
355
+
356
  return $output;
357
  }
 
358
  public function get_value($key, $default = "") {
359
  if (isset($this->settings[$key])){
360
  return $this->settings[$key];
375
  $current = $this->current_tab;
376
  ?>
377
  <h3 class="nav-tab-wrapper">
378
+ <?php foreach ($this->tabs as $id=>$label):?>
379
+ <a class="nav-tab <?php echo ($current == $id) ? 'nav-tab-active' : ''; ?>" href="admin.php?page=simple_wp_membership_settings&tab=<?php echo $id?>"><?php echo $label?></a>
380
+ <?php endforeach;?>
 
381
  </h3>
382
  <?php
383
  }
389
  return '<span style="color:red;">Simple Membership is not configured correctly.'
390
  . 'Please contact <a href="mailto:' . get_option('admin_email'). '">Admin</a>';
391
  }
392
+ return BUtils::_('Please'). ' <a class="swpm-login-link" href="' . $login . '">' . BUtils::_('Login') . '</a>. '. BUtils::_('Not a Member?').' <a href="' . $joinus . '">'.BUtils::_('Join Us').'</a>';
393
  }
394
 
395
  }
classes/class.bTransactions.php ADDED
@@ -0,0 +1,55 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /*
4
+ * Provides some helpful functions to deal with the transactions
5
+ */
6
+
7
+ class BTransactions {
8
+
9
+ static function save_txn_record($ipn_data, $items = array()) {
10
+ global $wpdb;
11
+
12
+ $current_date = date("Y-m-d");
13
+ $custom_var = BTransactions::parse_custom_var($ipn_data['custom']);
14
+
15
+ $txn_data = array();
16
+ $txn_data['email'] = $ipn_data['payer_email'];
17
+ $txn_data['first_name'] = $ipn_data['first_name'];
18
+ $txn_data['last_name'] = $ipn_data['last_name'];
19
+ $txn_data['last_name'] = $ipn_data['last_name'];
20
+ $txn_data['ip_address'] = $ipn_data['ip'];
21
+ $txn_data['member_id'] = $ipn_data['swpm_id'];
22
+ $txn_data['membership_level'] = $custom_var['subsc_ref'];
23
+
24
+ $txn_data['txn_date'] = $current_date;
25
+ $txn_data['txn_id'] = $ipn_data['txn_id'];
26
+ $txn_data['subscr_id'] = $ipn_data['subscr_id'];
27
+ $txn_data['reference'] = $custom_var['reference'];
28
+ $txn_data['payment_amount'] = $ipn_data['mc_gross'];
29
+ $txn_data['gateway'] = $ipn_data['gateway'];
30
+ $txn_data['status'] = $ipn_data['status'];
31
+
32
+ $wpdb->insert($wpdb->prefix . "swpm_payments_tbl", $txn_data);
33
+
34
+ }
35
+
36
+ static function parse_custom_var($custom) {
37
+ $delimiter = "&";
38
+ $customvariables = array();
39
+
40
+ $namevaluecombos = explode($delimiter, $custom);
41
+ foreach ($namevaluecombos as $keyval_unparsed) {
42
+ $equalsignposition = strpos($keyval_unparsed, '=');
43
+ if ($equalsignposition === false) {
44
+ $customvariables[$keyval_unparsed] = '';
45
+ continue;
46
+ }
47
+ $key = substr($keyval_unparsed, 0, $equalsignposition);
48
+ $value = substr($keyval_unparsed, $equalsignposition + 1);
49
+ $customvariables[$key] = $value;
50
+ }
51
+
52
+ return $customvariables;
53
+ }
54
+
55
+ }
classes/class.bTransfer.php CHANGED
@@ -15,7 +15,7 @@ class BTransfer {
15
  'membership_level' => '2');
16
  public static $default_level_fields = array(
17
  'alias' => '', 'role' => '',
18
- 'subscription_period' => '', 'subscription_unit' => 'days');
19
  public static $admin_messages = array();
20
  private static $_this;
21
  private $message;
15
  'membership_level' => '2');
16
  public static $default_level_fields = array(
17
  'alias' => '', 'role' => '',
18
+ 'subscription_period' => '', 'subscription_duration_type' => BMembershipLevel::NO_EXPIRY);
19
  public static $admin_messages = array();
20
  private static $_this;
21
  private $message;
classes/class.bUtils.php CHANGED
@@ -1,26 +1,65 @@
1
  <?php
2
 
3
- class BUtils {
 
 
 
 
 
4
 
5
- public static function calculate_subscription_period($subcript_period, $subscript_unit) {
6
- if (($subcript_period == 0) && !empty($subscript_unit)) //will expire after a fixed date.
7
- return date(get_option('date_format'), strtotime($subscript_unit));
8
- switch ($subscript_unit) {
9
- case 'Days':
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
  break;
11
- case 'Weeks':
12
  $subcript_period = $subcript_period * 7;
13
  break;
14
- case 'Months':
15
  $subcript_period = $subcript_period * 30;
16
  break;
17
- case 'Years':
18
  $subcript_period = $subcript_period * 365;
19
  break;
20
  }
21
- if ($subcript_period == 0)// its set to no expiry until cancelled
22
- return 'noexpire';
23
- return $subcript_period . ' ' . $subscript_unit;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
24
  }
25
 
26
  public static function gender_dropdown($selected = 'not specified') {
@@ -28,32 +67,49 @@ class BUtils {
28
  '<option ' . ((strtolower($selected) == 'female') ? 'selected="selected"' : "") . ' value="female">Female</option>' .
29
  '<option ' . ((strtolower($selected) == 'not specified') ? 'selected="selected"' : "") . ' value="not specified">Not Specified</option>';
30
  }
31
- public static function account_state_dropdown($selected = 'active'){
32
- return '<option ' . ((strtolower($selected) == 'active') ? 'selected="selected"' : "") . ' value="active"> ' . BUtils::_('Active') . '</option>'
33
- . '<option ' . ((strtolower($selected) == 'inactive') ? 'selected="selected"' : "") . ' value="inactive"> ' . BUtils::_('Inactive') . '</option>'
34
- . '<option ' . ((strtolower($selected) == 'pending') ? 'selected="selected"' : "") . ' value="pending"> ' . BUtils::_('Pending') . '</option>'
35
- . '<option ' . ((strtolower($selected) == 'expired') ? 'selected="selected"' : "") . ' value="expired"> ' . BUtils::_('Expired') . '</option>';
 
36
  }
37
- public static function subscription_unit_dropdown($selected = 'days') {
38
- return '<option ' . ((strtolower($selected) == 'days') ? 'selected="selected"' : "") . ' value="days">Days</option>' .
39
- '<option ' . ((strtolower($selected) == 'weeks') ? 'selected="selected"' : "") . ' value="weeks">Weeks</option>' .
40
- '<option ' . ((strtolower($selected) == 'months') ? 'selected="selected"' : "") . ' value="months">Months</option>' .
41
- '<option ' . ((strtolower($selected) == 'years') ? 'selected="selected"' : "") . ' value="years">Years</option>';
 
 
 
42
  }
43
- public static function membership_level_dropdown($selected = 0){
 
44
  $options = '';
45
  global $wpdb;
46
  $query = "SELECT alias, id FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id != 1";
47
  $levels = $wpdb->get_results($query);
48
- foreach($levels as $level){
49
- $options .= '<option '.($selected == $level->id ? 'select="selected"':'').' value="'.$level->id.'" >' . $level->alias . '</option>';
50
  }
51
  return $options;
52
  }
53
 
 
 
 
 
 
 
54
  public static function get_user_by_id($swpm_id) {
55
  global $wpdb;
56
- $query = "SELECT user_name FROM {$wpdb->prefix}swpm_members_tbl WHERE member_id = $swpm_id";
 
 
 
 
 
 
57
  return $wpdb->get_var($query);
58
  }
59
 
@@ -65,7 +121,7 @@ class BUtils {
65
  if (empty($member_id)) {
66
  return array();
67
  }
68
- $query = "SELECT * FROM {$wpdb->prefix}swpm_members_tbl WHERE member_id = $member_id ";
69
  $members = $wpdb->get_results($query);
70
  break;
71
  case 'all':
@@ -164,6 +220,31 @@ class BUtils {
164
  return;
165
  }
166
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
167
  public static function create_wp_user($wp_user_data) {
168
  if (self::is_multisite_install()) {//MS install
169
  global $blog_id;
@@ -176,18 +257,21 @@ class BUtils {
176
  add_user_to_blog($blog_id, $wp_user_id, $role);
177
  } else {//Single site install
178
  $wp_user_id = email_exists($wp_user_data['user_email']);
179
- if ($wp_user_id) {return $wp_user_id;}
 
 
180
  $wp_user_id = wp_create_user($wp_user_data['user_login'], $wp_user_data['password'], $wp_user_data['user_email']);
181
  }
182
  $wp_user_data['ID'] = $wp_user_id;
183
  wp_update_user($wp_user_data);
184
  $user_info = get_userdata($wp_user_id);
185
  $user_cap = (isset($user_info->wp_capabilities) && is_array($user_info->wp_capabilities)) ? array_keys($user_info->wp_capabilities) : array();
186
- if (!in_array('administrator', $user_cap)){
187
  BUtils::update_wp_user_Role($wp_user_id, $wp_user_data['role']);
188
  }
189
  return $wp_user_id;
190
  }
 
191
  public static function is_multisite_install() {
192
  if (function_exists('is_multisite') && is_multisite()) {
193
  return true;
@@ -195,45 +279,107 @@ class BUtils {
195
  return false;
196
  }
197
  }
198
- public static function _($msg){
 
199
  return __($msg, 'swpm');
200
  }
201
- public static function e($msg){
 
202
  _e($msg, 'swpm');
203
  }
204
- public static function is_admin(){
 
205
  return current_user_can('manage_options');
206
  }
207
- public static function get_expire_date($start_date, $subscription_duration, $duration_unit){
208
- if (($subscription_duration == 0) && !empty($duration_unit)) { //will expire after a fixed date.
209
- return date(get_option( 'date_format' ), strtotime($duration_unit));
210
- }
211
- switch (strtolower($duration_unit)) {
212
- case 'days':
213
- break;
214
- case 'weeks':
215
- $subscription_duration *= 7;
216
- break;
217
- case 'months':
218
- $subscription_duration *= 30;
219
- break;
220
- case 'years':
221
- $subscription_duration *= 365;
222
- break;
223
  }
224
- if ($subscription_duration == 0) {// its set to no expiry until cancelled
 
225
  return BUtils::_('Never');
226
  }
227
- //Using duration value - lets calculate the expiry
228
- $d = ($subscription_duration == 1) ? ' day' : ' days';
229
- return date(get_option( 'date_format' ) ,
230
- strtotime(" + " . abs($subscription_duration) . $d, strtotime($start_date)));
231
  }
232
- function swpm_username_exists($user_name) {
233
- global $wpdb;
234
- $member_table = $wpdb->prefix. 'swpm_members_tbl';
235
- $query = $wpdb->prepare('SELECT member_id FROM ' . $member_table . 'WHERE user_name=%s', $user_name);
236
 
 
 
 
 
237
  return $wpdb->get_var($query);
238
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
239
  }
1
  <?php
2
 
3
+ /**
4
+ * BUtils
5
+ *
6
+ * @author nur
7
+ */
8
+ abstract class BUtils {
9
 
10
+ public static function is_ajax() {
11
+ return defined('DOING_AJAX') && DOING_AJAX;
12
+ }
13
+
14
+ public static function subscription_type_dropdown($selected) {
15
+ return '<option ' . (($selected == BMembershipLevel::NO_EXPIRY) ? 'selected="selected"' : "") . ' value="' . BMembershipLevel::NO_EXPIRY . '">No Expiry</option>' .
16
+ '<option ' . (($selected == BMembershipLevel::DAYS) ? 'selected="selected"' : "") . ' value="' . BMembershipLevel::DAYS . '">Day(s)</option>' .
17
+ '<option ' . (($selected == BMembershipLevel::WEEKS) ? 'selected="selected"' : "") . ' value="' . BMembershipLevel::WEEKS . '">Week(s)</option>' .
18
+ '<option ' . (($selected == BMembershipLevel::MONTHS) ? 'selected="selected"' : "") . ' value="' . BMembershipLevel::MONTHS . '">Month(s)</option>' .
19
+ '<option ' . (($selected == BMembershipLevel::YEARS) ? 'selected="selected"' : "") . ' value="' . BMembershipLevel::YEARS . '">Year(s)</option>' .
20
+ '<option ' . (($selected == BMembershipLevel::FIXED_DATE) ? 'selected="selected"' : "") . ' value="' . BMembershipLevel::FIXED_DATE . '">Fixed Date</option>';
21
+ }
22
+
23
+ // $subscript_period must be integer.
24
+ public static function calculate_subscription_period_days($subcript_period, $subscription_duration_type) {
25
+ if ($subscription_duration_type == BMembershipLevel::NO_EXPIRY) {
26
+ return 'noexpire';
27
+ }
28
+ if (!is_numeric($subcript_period)) {
29
+ throw new Exception(" subcript_period parameter must be integer in BUtils::calculate_subscription_period_days method");
30
+ }
31
+ switch (strtolower($subscription_duration_type)) {
32
+ case BMembershipLevel::DAYS:
33
  break;
34
+ case BMembershipLevel::WEEKS:
35
  $subcript_period = $subcript_period * 7;
36
  break;
37
+ case BMembershipLevel::MONTHS:
38
  $subcript_period = $subcript_period * 30;
39
  break;
40
+ case BMembershipLevel::YEARS:
41
  $subcript_period = $subcript_period * 365;
42
  break;
43
  }
44
+ return $subcript_period;
45
+ }
46
+
47
+ public static function get_expiration_timestamp($user) {
48
+ $permission = BPermission::get_instance($user->membership_level);
49
+ if (BMembershipLevel::FIXED_DATE == $permission->get('subscription_duration_type')) {
50
+ return strtotime($permission->get('subscription_period'));
51
+ }
52
+ $days = self::calculate_subscription_period_days(
53
+ $permission->get('subscription_period'), $permission->get('subscription_duration_type'));
54
+ if ($days == 'noexpire') {
55
+ return PHP_INT_MAX; // which is equivalent to
56
+ }
57
+ return strtotime($user->subscription_starts . ' ' . $days . ' days');
58
+ }
59
+
60
+ public static function is_subscription_expired($user) {
61
+ $expiration_timestamp = BUtils::get_expiration_timestamp($user);
62
+ return $expiration_timestamp < time();
63
  }
64
 
65
  public static function gender_dropdown($selected = 'not specified') {
67
  '<option ' . ((strtolower($selected) == 'female') ? 'selected="selected"' : "") . ' value="female">Female</option>' .
68
  '<option ' . ((strtolower($selected) == 'not specified') ? 'selected="selected"' : "") . ' value="not specified">Not Specified</option>';
69
  }
70
+
71
+ public static function get_account_state_options() {
72
+ return array('active' => BUtils::_('Active'),
73
+ 'inactive' => BUtils::_('Inactive'),
74
+ 'pending' => BUtils::_('Pending'),
75
+ 'expired' => BUtils::_('Expired'),);
76
  }
77
+
78
+ public static function account_state_dropdown($selected = 'active') {
79
+ $options = self::get_account_state_options();
80
+ $html = '';
81
+ foreach ($options as $key => $value) {
82
+ $html .= '<option ' . ((strtolower($selected) == $key) ? 'selected="selected"' : "") . ' value="' . $key . '"> ' . $value . '</option>';
83
+ }
84
+ return $html;
85
  }
86
+
87
+ public static function membership_level_dropdown($selected = 0) {
88
  $options = '';
89
  global $wpdb;
90
  $query = "SELECT alias, id FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id != 1";
91
  $levels = $wpdb->get_results($query);
92
+ foreach ($levels as $level) {
93
+ $options .= '<option ' . ($selected == $level->id ? 'selected="selected"' : '') . ' value="' . $level->id . '" >' . $level->alias . '</option>';
94
  }
95
  return $options;
96
  }
97
 
98
+ public static function get_all_membership_level_ids() {
99
+ global $wpdb;
100
+ $query = "SELECT id FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id != 1";
101
+ return $wpdb->get_col($query);
102
+ }
103
+
104
  public static function get_user_by_id($swpm_id) {
105
  global $wpdb;
106
+ $query = $wpdb->prepare("SELECT user_name FROM {$wpdb->prefix}swpm_members_tbl WHERE member_id = %d", $swpm_id);
107
+ return $wpdb->get_var($query);
108
+ }
109
+
110
+ public static function get_user_by_user_name($swpm_user_name) {
111
+ global $wpdb;
112
+ $query = $wpdb->prepare("SELECT member_id FROM {$wpdb->prefix}swpm_members_tbl WHERE user_name = %s", $swpm_user_name);
113
  return $wpdb->get_var($query);
114
  }
115
 
121
  if (empty($member_id)) {
122
  return array();
123
  }
124
+ $query = $wpdb->prepare("SELECT * FROM {$wpdb->prefix}swpm_members_tbl WHERE member_id = %d", $member_id);
125
  $members = $wpdb->get_results($query);
126
  break;
127
  case 'all':
220
  return;
221
  }
222
  }
223
+
224
+ public static function update_wp_user($wp_user_name, $swpm_data) {
225
+ $wp_user_info = array();
226
+ if (isset($swpm_data['email'])) {
227
+ $wp_user_info['user_email'] = $swpm_data['email'];
228
+ }
229
+ if (isset($swpm_data['first_name'])) {
230
+ $wp_user_info['first_name'] = $swpm_data['first_name'];
231
+ }
232
+ if (isset($swpm_data['last_name'])) {
233
+ $wp_user_info['last_name'] = $swpm_data['last_name'];
234
+ }
235
+ if (isset($swpm_data['plain_password'])) {
236
+ $wp_user_info['user_pass'] = $swpm_data['plain_password'];
237
+ }
238
+
239
+ $wp_user = get_user_by('login', $wp_user_name);
240
+
241
+ if ($wp_user) {
242
+ $wp_user_info['ID'] = $wp_user->ID;
243
+ return wp_update_user($wp_user_info);
244
+ }
245
+ return false;
246
+ }
247
+
248
  public static function create_wp_user($wp_user_data) {
249
  if (self::is_multisite_install()) {//MS install
250
  global $blog_id;
257
  add_user_to_blog($blog_id, $wp_user_id, $role);
258
  } else {//Single site install
259
  $wp_user_id = email_exists($wp_user_data['user_email']);
260
+ if ($wp_user_id) {
261
+ return $wp_user_id;
262
+ }
263
  $wp_user_id = wp_create_user($wp_user_data['user_login'], $wp_user_data['password'], $wp_user_data['user_email']);
264
  }
265
  $wp_user_data['ID'] = $wp_user_id;
266
  wp_update_user($wp_user_data);
267
  $user_info = get_userdata($wp_user_id);
268
  $user_cap = (isset($user_info->wp_capabilities) && is_array($user_info->wp_capabilities)) ? array_keys($user_info->wp_capabilities) : array();
269
+ if (!in_array('administrator', $user_cap)) {
270
  BUtils::update_wp_user_Role($wp_user_id, $wp_user_data['role']);
271
  }
272
  return $wp_user_id;
273
  }
274
+
275
  public static function is_multisite_install() {
276
  if (function_exists('is_multisite') && is_multisite()) {
277
  return true;
279
  return false;
280
  }
281
  }
282
+
283
+ public static function _($msg) {
284
  return __($msg, 'swpm');
285
  }
286
+
287
+ public static function e($msg) {
288
  _e($msg, 'swpm');
289
  }
290
+
291
+ public static function is_admin() {
292
  return current_user_can('manage_options');
293
  }
294
+
295
+ public static function get_expire_date($start_date, $subscription_duration, $subscription_duration_type) {
296
+ if ($subscription_duration_type == BMembershipLevel::FIXED_DATE) { //will expire after a fixed date.
297
+ return date(get_option('date_format'), strtotime($subscription_duration));
 
 
 
 
 
 
 
 
 
 
 
 
298
  }
299
+ $expires = self::calculate_subscription_period_days($subscription_duration, $subscription_duration_type);
300
+ if ($expires == 'noexpire') {// its set to no expiry until cancelled
301
  return BUtils::_('Never');
302
  }
303
+
304
+ return date(get_option('date_format'), strtotime($start_date . ' ' . $expires . ' days'));
 
 
305
  }
 
 
 
 
306
 
307
+ public static function swpm_username_exists($user_name) {
308
+ global $wpdb;
309
+ $member_table = $wpdb->prefix . 'swpm_members_tbl';
310
+ $query = $wpdb->prepare('SELECT member_id FROM ' . $member_table . ' WHERE user_name=%s', sanitize_user($user_name));
311
  return $wpdb->get_var($query);
312
  }
313
+
314
+ public static function get_free_level() {
315
+ $encrypted = filter_input(INPUT_POST, 'level_identifier');
316
+ global $wpdb;
317
+ if (!empty($encrypted)) {
318
+ return BPermission::get_instance($encrypted)->get('id');
319
+ }
320
+
321
+ $is_free = BSettings::get_instance()->get_value('enable-free-membership');
322
+ $free_level = absint(BSettings::get_instance()->get_value('free-membership-id'));
323
+
324
+ return ($is_free) ? $free_level : null;
325
+ }
326
+
327
+ public static function is_paid_registration() {
328
+ $member_id = filter_input(INPUT_GET, 'member_id', FILTER_SANITIZE_NUMBER_INT);
329
+ $code = filter_input(INPUT_GET, 'code', FILTER_SANITIZE_STRING);
330
+ return !empty($member_id) && !empty($code);
331
+ }
332
+
333
+ public static function get_paid_member_info() {
334
+ $member_id = filter_input(INPUT_GET, 'member_id', FILTER_SANITIZE_NUMBER_INT);
335
+ $code = filter_input(INPUT_GET, 'code', FILTER_SANITIZE_STRING);
336
+ global $wpdb;
337
+ if (!empty($member_id) && !empty($code)) {
338
+ $query = 'SELECT * FROM ' . $wpdb->prefix . 'swpm_members_tbl WHERE member_id= %d AND reg_code=%s';
339
+ $query = $wpdb->prepare($query, $member_id, $code);
340
+ return $wpdb->get_row($query);
341
+ }
342
+ return null;
343
+ }
344
+
345
+ public static function account_delete_confirmation_ui($msg = "") {
346
+ ob_start();
347
+ include(SIMPLE_WP_MEMBERSHIP_PATH . 'views/account_delete_warning.php');
348
+ ob_get_flush();
349
+ wp_die("", "", array('back_link' => true));
350
+ }
351
+
352
+ public static function delete_account_button() {
353
+ $allow_account_deletion = BSettings::get_instance()->get_value('allow-account-deletion');
354
+ if (empty($allow_account_deletion)) {
355
+ return "";
356
+ }
357
+
358
+ return '<a href="/?delete_account=1"><div class="swpm-account-delete-button">' . BUtils::_("Delete Account") . '</div></a>';
359
+ }
360
+
361
+ public static function encrypt_password($plain_password) {
362
+ include_once(ABSPATH . WPINC . '/class-phpass.php');
363
+ $wp_hasher = new PasswordHash(8, TRUE);
364
+ $password_hash = $wp_hasher->HashPassword(trim($plain_password));
365
+ return $password_hash;
366
+ }
367
+
368
+ public static function get_restricted_image_url() {
369
+ return SIMPLE_WP_MEMBERSHIP_URL . '/images/restricted-icon.png';
370
+ }
371
+
372
+ /*
373
+ * Checks if the string exists in the array key value of the provided array. If it doesn't exist, it returns the first key element from the valid values.
374
+ */
375
+
376
+ public static function sanitize_value_by_array($val_to_check, $valid_values) {
377
+ $keys = array_keys($valid_values);
378
+ $keys = array_map('strtolower', $keys);
379
+ if (in_array($val_to_check, $keys)) {
380
+ return $val_to_check;
381
+ }
382
+ return reset($keys); //Return he first element from the valid values
383
+ }
384
+
385
  }
classes/class.miscUtils.php CHANGED
@@ -1,9 +1,8 @@
1
  <?php
2
 
3
- class miscUtils
4
- {
5
- public static function create_mandatory_wp_pages()
6
- {
7
  $settings = BSettings::get_instance();
8
 
9
  //Create join us page
@@ -24,120 +23,145 @@ class miscUtils
24
  <p style="border-bottom:1px solid #ccc;padding-bottom:10px;margin-bottom:10px;"></p>';
25
 
26
  $swpm_join_page = array(
27
- 'post_title' => 'Join Us',
28
- 'post_name' => 'membership-join',
29
- 'post_content' => $swpm_join_page_content,
30
- 'post_parent' => 0,
31
- 'post_status' => 'publish',
32
- 'post_type' => 'page',
33
- 'comment_status' => 'closed',
34
- 'ping_status' => 'closed'
35
  );
36
 
37
  $join_page_obj = get_page_by_path('membership-join');
38
- if(!$join_page_obj) {
39
  $join_page_id = wp_insert_post($swpm_join_page);
40
- }else {
41
  $join_page_id = $join_page_obj->ID;
42
- if ($join_page_obj->post_status == 'trash'){ //For cases where page may be in trash, bring it out of trash
43
  wp_update_post(array('ID' => $join_page_obj->ID, 'post_status' => 'publish'));
44
  }
45
  }
46
  $swpm_join_page_permalink = get_permalink($join_page_id);
47
- $settings->set_value('join-us-page-url',$swpm_join_page_permalink);
48
 
49
  //Create registration page
50
  $swpm_rego_page = array(
51
- 'post_title' => BUtils::_('Registration'),
52
- 'post_name' => 'membership-registration',
53
- 'post_content' => '[swpm_registration_form]',
54
- 'post_parent' => $join_page_id,
55
- 'post_status' => 'publish',
56
- 'post_type' => 'page',
57
- 'comment_status' => 'closed',
58
- 'ping_status' => 'closed'
59
  );
60
  $rego_page_obj = get_page_by_path('membership-registration');
61
- if(!$rego_page_obj) {
62
  $rego_page_id = wp_insert_post($swpm_rego_page);
63
- }else {
64
  $rego_page_id = $rego_page_obj->ID;
65
- if ($rego_page_obj->post_status == 'trash'){ //For cases where page may be in trash, bring it out of trash
66
  wp_update_post(array('ID' => $rego_page_obj->ID, 'post_status' => 'publish'));
67
  }
68
  }
69
  $swpm_rego_page_permalink = get_permalink($rego_page_id);
70
- $settings->set_value('registration-page-url',$swpm_rego_page_permalink);
71
 
72
  //Create login page
73
  $swpm_login_page = array(
74
- 'post_title' => BUtils::_('Member Login'),
75
- 'post_name' => 'membership-login',
76
- 'post_content' => '[swpm_login_form]',
77
- 'post_parent' => 0,
78
- 'post_status' => 'publish',
79
- 'post_type' => 'page',
80
- 'comment_status' => 'closed',
81
- 'ping_status' => 'closed'
82
  );
83
  $login_page_obj = get_page_by_path('membership-login');
84
- if(!$login_page_obj) {
85
  $login_page_id = wp_insert_post($swpm_login_page);
86
- }else {
87
  $login_page_id = $login_page_obj->ID;
88
- if ($login_page_obj->post_status == 'trash'){ //For cases where page may be in trash, bring it out of trash
89
  wp_update_post(array('ID' => $login_page_obj->ID, 'post_status' => 'publish'));
90
  }
91
  }
92
  $swpm_login_page_permalink = get_permalink($login_page_id);
93
- $settings->set_value('login-page-url',$swpm_login_page_permalink);
94
 
95
  //Create profile page
96
  $swpm_profile_page = array(
97
- 'post_title' => BUtils::_('Profile'),
98
- 'post_name' => 'membership-profile',
99
- 'post_content' => '[swpm_profile_form]',
100
- 'post_parent' => $login_page_id,
101
- 'post_status' => 'publish',
102
- 'post_type' => 'page',
103
- 'comment_status' => 'closed',
104
- 'ping_status' => 'closed'
105
  );
106
  $profile_page_obj = get_page_by_path('membership-profile');
107
- if(!$profile_page_obj) {
108
  $profile_page_id = wp_insert_post($swpm_profile_page);
109
- }else {
110
  $profile_page_id = $profile_page_obj->ID;
111
- if ($profile_page_obj->post_status == 'trash'){ //For cases where page may be in trash, bring it out of trash
112
  wp_update_post(array('ID' => $profile_page_obj->ID, 'post_status' => 'publish'));
113
  }
114
  }
115
  $swpm_profile_page_permalink = get_permalink($profile_page_id);
116
- $settings->set_value('profile-page-url',$swpm_profile_page_permalink);
117
 
118
  //Create reset page
119
  $swpm_reset_page = array(
120
- 'post_title' => BUtils::_('Password Reset'),
121
- 'post_name' => 'password-reset',
122
- 'post_content' => '[swpm_reset_form]',
123
- 'post_parent' => $login_page_id,
124
- 'post_status' => 'publish',
125
- 'post_type' => 'page',
126
- 'comment_status' => 'closed',
127
- 'ping_status' => 'closed'
128
  );
129
  $reset_page_obj = get_page_by_path('password-reset');
130
- if(!$profile_page_obj) {
131
  $reset_page_id = wp_insert_post($swpm_reset_page);
132
- }else {
133
  $reset_page_id = $reset_page_obj->ID;
134
- if ($reset_page_obj->post_status == 'trash'){ //For cases where page may be in trash, bring it out of trash
135
  wp_update_post(array('ID' => $reset_page_obj->ID, 'post_status' => 'publish'));
136
  }
137
  }
138
  $swpm_reset_page_permalink = get_permalink($reset_page_id);
139
- $settings->set_value('reset-page-url',$swpm_reset_page_permalink);
 
 
 
 
 
 
 
 
 
140
 
141
- $settings->save();//Save all settings object changes
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
142
  }
 
143
  }
1
  <?php
2
 
3
+ class miscUtils {
4
+
5
+ public static function create_mandatory_wp_pages() {
 
6
  $settings = BSettings::get_instance();
7
 
8
  //Create join us page
23
  <p style="border-bottom:1px solid #ccc;padding-bottom:10px;margin-bottom:10px;"></p>';
24
 
25
  $swpm_join_page = array(
26
+ 'post_title' => 'Join Us',
27
+ 'post_name' => 'membership-join',
28
+ 'post_content' => $swpm_join_page_content,
29
+ 'post_parent' => 0,
30
+ 'post_status' => 'publish',
31
+ 'post_type' => 'page',
32
+ 'comment_status' => 'closed',
33
+ 'ping_status' => 'closed'
34
  );
35
 
36
  $join_page_obj = get_page_by_path('membership-join');
37
+ if (!$join_page_obj) {
38
  $join_page_id = wp_insert_post($swpm_join_page);
39
+ } else {
40
  $join_page_id = $join_page_obj->ID;
41
+ if ($join_page_obj->post_status == 'trash') { //For cases where page may be in trash, bring it out of trash
42
  wp_update_post(array('ID' => $join_page_obj->ID, 'post_status' => 'publish'));
43
  }
44
  }
45
  $swpm_join_page_permalink = get_permalink($join_page_id);
46
+ $settings->set_value('join-us-page-url', $swpm_join_page_permalink);
47
 
48
  //Create registration page
49
  $swpm_rego_page = array(
50
+ 'post_title' => BUtils::_('Registration'),
51
+ 'post_name' => 'membership-registration',
52
+ 'post_content' => '[swpm_registration_form]',
53
+ 'post_parent' => $join_page_id,
54
+ 'post_status' => 'publish',
55
+ 'post_type' => 'page',
56
+ 'comment_status' => 'closed',
57
+ 'ping_status' => 'closed'
58
  );
59
  $rego_page_obj = get_page_by_path('membership-registration');
60
+ if (!$rego_page_obj) {
61
  $rego_page_id = wp_insert_post($swpm_rego_page);
62
+ } else {
63
  $rego_page_id = $rego_page_obj->ID;
64
+ if ($rego_page_obj->post_status == 'trash') { //For cases where page may be in trash, bring it out of trash
65
  wp_update_post(array('ID' => $rego_page_obj->ID, 'post_status' => 'publish'));
66
  }
67
  }
68
  $swpm_rego_page_permalink = get_permalink($rego_page_id);
69
+ $settings->set_value('registration-page-url', $swpm_rego_page_permalink);
70
 
71
  //Create login page
72
  $swpm_login_page = array(
73
+ 'post_title' => BUtils::_('Member Login'),
74
+ 'post_name' => 'membership-login',
75
+ 'post_content' => '[swpm_login_form]',
76
+ 'post_parent' => 0,
77
+ 'post_status' => 'publish',
78
+ 'post_type' => 'page',
79
+ 'comment_status' => 'closed',
80
+ 'ping_status' => 'closed'
81
  );
82
  $login_page_obj = get_page_by_path('membership-login');
83
+ if (!$login_page_obj) {
84
  $login_page_id = wp_insert_post($swpm_login_page);
85
+ } else {
86
  $login_page_id = $login_page_obj->ID;
87
+ if ($login_page_obj->post_status == 'trash') { //For cases where page may be in trash, bring it out of trash
88
  wp_update_post(array('ID' => $login_page_obj->ID, 'post_status' => 'publish'));
89
  }
90
  }
91
  $swpm_login_page_permalink = get_permalink($login_page_id);
92
+ $settings->set_value('login-page-url', $swpm_login_page_permalink);
93
 
94
  //Create profile page
95
  $swpm_profile_page = array(
96
+ 'post_title' => BUtils::_('Profile'),
97
+ 'post_name' => 'membership-profile',
98
+ 'post_content' => '[swpm_profile_form]',
99
+ 'post_parent' => $login_page_id,
100
+ 'post_status' => 'publish',
101
+ 'post_type' => 'page',
102
+ 'comment_status' => 'closed',
103
+ 'ping_status' => 'closed'
104
  );
105
  $profile_page_obj = get_page_by_path('membership-profile');
106
+ if (!$profile_page_obj) {
107
  $profile_page_id = wp_insert_post($swpm_profile_page);
108
+ } else {
109
  $profile_page_id = $profile_page_obj->ID;
110
+ if ($profile_page_obj->post_status == 'trash') { //For cases where page may be in trash, bring it out of trash
111
  wp_update_post(array('ID' => $profile_page_obj->ID, 'post_status' => 'publish'));
112
  }
113
  }
114
  $swpm_profile_page_permalink = get_permalink($profile_page_id);
115
+ $settings->set_value('profile-page-url', $swpm_profile_page_permalink);
116
 
117
  //Create reset page
118
  $swpm_reset_page = array(
119
+ 'post_title' => BUtils::_('Password Reset'),
120
+ 'post_name' => 'password-reset',
121
+ 'post_content' => '[swpm_reset_form]',
122
+ 'post_parent' => $login_page_id,
123
+ 'post_status' => 'publish',
124
+ 'post_type' => 'page',
125
+ 'comment_status' => 'closed',
126
+ 'ping_status' => 'closed'
127
  );
128
  $reset_page_obj = get_page_by_path('password-reset');
129
+ if (!$profile_page_obj) {
130
  $reset_page_id = wp_insert_post($swpm_reset_page);
131
+ } else {
132
  $reset_page_id = $reset_page_obj->ID;
133
+ if ($reset_page_obj->post_status == 'trash') { //For cases where page may be in trash, bring it out of trash
134
  wp_update_post(array('ID' => $reset_page_obj->ID, 'post_status' => 'publish'));
135
  }
136
  }
137
  $swpm_reset_page_permalink = get_permalink($reset_page_id);
138
+ $settings->set_value('reset-page-url', $swpm_reset_page_permalink);
139
+
140
+ $settings->save(); //Save all settings object changes
141
+ }
142
+
143
+ public static function reset_swmp_log_files() {
144
+ $log_reset = true;
145
+ $logfile_list = array(
146
+ SIMPLE_WP_MEMBERSHIP_PATH.'/log.txt',
147
+ );
148
 
149
+ foreach ($logfile_list as $logfile) {
150
+ if (empty($logfile)) {
151
+ continue;
152
+ }
153
+
154
+ $text = '[' . date('m/d/Y g:i A') . '] - SUCCESS : Log file reset';
155
+ $text .= "\n------------------------------------------------------------------\n\n";
156
+ $fp = fopen($logfile, 'w');
157
+ if ($fp != FALSE) {
158
+ @fwrite($fp, $text);
159
+ @fclose($fp);
160
+ } else {
161
+ $log_reset = false;
162
+ }
163
+ }
164
+ return $log_reset;
165
  }
166
+
167
  }
classes/class.simple-wp-membership.php CHANGED
@@ -2,6 +2,7 @@
2
 
3
  include_once('class.bUtils.php');
4
  include_once('class.miscUtils.php');
 
5
  include_once('class.bSettings.php');
6
  include_once('class.bProtection.php');
7
  include_once('class.bPermission.php');
@@ -21,22 +22,23 @@ include_once('class.bAdminRegistration.php');
21
  include_once('class.bMembershipLevel.php');
22
  include_once('class.bMembershipLevelCustom.php');
23
  include_once('class.bMembershipLevelUtils.php');
 
 
 
24
 
25
  class SimpleWpMembership {
26
  public function __construct() {
27
- add_action('admin_menu', array(&$this, 'menu'));
28
- //add_action('admin_init', array(&$this, 'admin_init')); //This call has been moved inside 'init' function
29
-
30
  add_action('init', array(&$this, 'init'));
31
 
32
- add_filter('the_content', array(&$this, 'filter_content'));
33
  add_filter('widget_text', 'do_shortcode');
34
  add_filter('show_admin_bar', array(&$this, 'hide_adminbar'));
35
  add_filter('comment_text', array(&$this, 'filter_comment'));
36
- add_filter('wp_get_attachment_url', array(&$this, 'filter_attachment'));
37
- add_filter('wp_get_attachment_metadata', array(&$this, 'filter_attachment'));
38
  add_filter('attachment_fields_to_save', array(&$this,'save_attachment_extra'), 10, 2);
39
- add_filter( 'the_content_more_link', array(&$this, 'filter_moretag'), 10, 2 );
40
 
41
  add_shortcode("swpm_registration_form", array(&$this, 'registration_form'));
42
  add_shortcode('swpm_profile_form', array(&$this, 'profile_form'));
@@ -51,8 +53,8 @@ class SimpleWpMembership {
51
  add_action('profile_update', array(&$this, 'sync_with_wp_profile'), 10, 2);
52
  add_action('wp_logout', array(&$this, 'wp_logout'));
53
  add_action('wp_authenticate', array(&$this, 'wp_login'), 1, 2);
54
- add_action('swpm_logout', array(&$this, 'swpm_logout'));
55
-
56
  //AJAX hooks
57
  add_action('wp_ajax_swpm_validate_email', 'BAjax::validate_email_ajax');
58
  add_action('wp_ajax_nopriv_swpm_validate_email', 'BAjax::validate_email_ajax');
@@ -61,20 +63,76 @@ class SimpleWpMembership {
61
 
62
  //init is too early for settings api.
63
  add_action('admin_init', array(&$this, 'admin_init_hook'));
64
-
65
- }
 
 
 
 
 
 
 
 
 
 
 
66
  public function save_attachment_extra($post, $attachment) {
67
  $this->save_postdata($post['ID']);
68
  return $post;
69
  }
70
- public function filter_attachment($content){
 
 
 
 
71
  $acl = BAccessControl::get_instance();
72
- global $post;
73
- return $acl->filter_post($post->ID, $content);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
74
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
75
  public function admin_init_hook(){
76
  BSettings::get_instance()->init_config_hooks();
 
 
 
 
77
  }
 
78
  public function hide_adminbar(){
79
  if (!is_user_logged_in()){//Never show admin bar if the user is not even logged in
80
  return false;
@@ -92,9 +150,14 @@ class SimpleWpMembership {
92
  return;
93
  }
94
  }
95
- wp_signon(array('user_login' => $user, 'user_password' => $pass, 'remember' => $rememberme), is_ssl() ? true : false);
 
 
 
96
  do_action('swpm_after_login');
97
- wp_redirect(site_url());
 
 
98
  }
99
 
100
  public function swpm_logout() {
@@ -105,11 +168,11 @@ class SimpleWpMembership {
105
  }
106
 
107
  public function wp_login($username, $password) {
108
- $auth = BAuth::get_instance();
109
- if (($auth->is_logged_in() && ($auth->userData->user_name == $username))) {
110
  return;
111
  }
112
- $auth->login($username, $password, true);
113
  }
114
 
115
  public function wp_logout() {
@@ -122,7 +185,7 @@ class SimpleWpMembership {
122
  public function sync_with_wp_profile($wp_user_id) {
123
  global $wpdb;
124
  $wp_user_data = get_userdata($wp_user_id);
125
- $query = "SELECT * FROM " . $wpdb->prefix . "swpm_members_tbl WHERE " . ' user_name=\'' . $wp_user_data->user_login . '\'';
126
  $profile = $wpdb->get_row($query, ARRAY_A);
127
  $profile = (array) $profile;
128
  if (empty($profile)){
@@ -190,7 +253,10 @@ class SimpleWpMembership {
190
  }
191
  echo $message['message'];
192
  $extra = isset($message['extra']) ? $message['extra'] : array();
193
- if (!empty($extra)) {
 
 
 
194
  echo '<ul>';
195
  foreach ($extra as $key => $value){
196
  echo '<li>' . $value . '</li>';
@@ -315,6 +381,7 @@ class SimpleWpMembership {
315
  }
316
 
317
  public function filter_content($content) {
 
318
  $acl = BAccessControl::get_instance();
319
  global $post;
320
  return $acl->filter_post($post->ID, $content);
@@ -368,16 +435,12 @@ class SimpleWpMembership {
368
  }
369
  if (!is_admin()){ //frontend stuff
370
  BAuth::get_instance();
 
371
  $swpm_logout = filter_input(INPUT_GET, 'swpm-logout');
372
  if (!empty($swpm_logout)) {
373
  BAuth::get_instance()->logout();
374
- wp_redirect(site_url());
375
  }
376
- $widget_options = array('classname' => 'swpm_widget',
377
- 'description' => __("Display SWPM Login."));
378
- wp_register_sidebar_widget('swpm_login_widget',
379
- __('SWPM Login'), 'SimpleWpMembership::login_widget',
380
- $widget_options);
381
  $this->process_password_reset();
382
  $this->register_member();
383
  $this->edit_profile();
@@ -402,23 +465,8 @@ class SimpleWpMembership {
402
  }
403
  }
404
 
405
- public static function login_widget($args) {
406
- extract($args);
407
- $auth = BAuth::get_instance();
408
- $widget_title = "User Login";
409
- echo $before_widget;
410
- echo $before_title . $widget_title . $after_title;
411
- if ($auth->is_logged_in()){
412
- include(SIMPLE_WP_MEMBERSHIP_PATH . 'views/login_widget_logged.php');
413
- }
414
- else{
415
- include(SIMPLE_WP_MEMBERSHIP_PATH . 'views/login_widget.php');
416
- }
417
- echo $after_widget;
418
- }
419
-
420
  private function edit_profile() {
421
- $swpm_editprofile_submit = filter_input(INPUT_POST, 'swpm_editprofile_submit');
422
  if (!empty($swpm_editprofile_submit)) {
423
  BFrontRegistration::get_instance()->edit();
424
  //todo: do a redirect
@@ -429,6 +477,11 @@ class SimpleWpMembership {
429
  $this->common_library();
430
  wp_enqueue_script('password-strength-meter');
431
  wp_enqueue_script('swpm.password-meter', SIMPLE_WP_MEMBERSHIP_URL . '/js/swpm.password-meter.js');
 
 
 
 
 
432
  }
433
 
434
  public function front_library() {
@@ -439,18 +492,19 @@ class SimpleWpMembership {
439
  wp_enqueue_script('jquery');
440
  wp_enqueue_style('swpm.common', SIMPLE_WP_MEMBERSHIP_URL . '/css/swpm.common.css');
441
  wp_enqueue_style('validationEngine.jquery', SIMPLE_WP_MEMBERSHIP_URL . '/css/validationEngine.jquery.css');
442
- wp_enqueue_style('jquery.tools.dateinput', SIMPLE_WP_MEMBERSHIP_URL . '/css/jquery.tools.dateinput.css');
443
- wp_enqueue_script('jquery.tools', SIMPLE_WP_MEMBERSHIP_URL . '/js/jquery.tools18.min.js');
444
  wp_enqueue_script('jquery.validationEngine-en', SIMPLE_WP_MEMBERSHIP_URL . '/js/jquery.validationEngine-en.js');
445
  wp_enqueue_script('jquery.validationEngine', SIMPLE_WP_MEMBERSHIP_URL . '/js/jquery.validationEngine.js');
446
  }
447
 
448
- public function registration_form() {
449
  $succeeded = $this->notices();
450
  if($succeeded){
451
  return;
452
  }
453
- return BFrontRegistration::get_instance()->regigstration_ui();
 
 
 
454
  }
455
 
456
  private function register_member() {
@@ -472,7 +526,11 @@ class SimpleWpMembership {
472
  'manage_options', 'simple_wp_membership_levels', array(&$this, "admin_membership_levels"));
473
  add_submenu_page($menu_parent_slug, __("Settings", 'swpm'), __("Settings", 'swpm'),
474
  'manage_options', 'simple_wp_membership_settings', array(&$this, "admin_settings"));
475
-
 
 
 
 
476
  do_action('swpm_after_main_admin_menu', $menu_parent_slug);
477
 
478
  $this->meta_box();
@@ -492,6 +550,9 @@ class SimpleWpMembership {
492
  case 'manage':
493
  $levels->manage();
494
  break;
 
 
 
495
  case 'delete':
496
  case 'bulk_delete':
497
  $levels->delete();
@@ -523,6 +584,9 @@ class SimpleWpMembership {
523
  public function admin_settings() {
524
  $current_tab = BSettings::get_instance()->current_tab;
525
  switch ($current_tab) {
 
 
 
526
  case 4:
527
  $link_for = filter_input(INPUT_POST, 'swpm_link_for',FILTER_SANITIZE_STRING);
528
  $member_id = filter_input(INPUT_POST, 'member_id',FILTER_SANITIZE_NUMBER_INT);
@@ -538,17 +602,59 @@ class SimpleWpMembership {
538
  break;
539
  }
540
  }
 
 
 
 
 
 
 
 
541
 
 
 
 
 
 
 
 
 
 
 
 
542
  public static function activate() {
 
 
543
  include_once('class.bInstallation.php');
544
- global $wpdb;
545
- if (BUtils::is_multisite_install()) {
546
- BInstallation::do_multisite();
547
- }
548
- BInstallation::installer();
549
- BInstallation::initdb();
550
  }
 
551
  public function deactivate() {
 
 
 
 
 
 
 
 
552
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
553
  }
554
  }
2
 
3
  include_once('class.bUtils.php');
4
  include_once('class.miscUtils.php');
5
+ include_once('class.bMemberUtils.php');
6
  include_once('class.bSettings.php');
7
  include_once('class.bProtection.php');
8
  include_once('class.bPermission.php');
22
  include_once('class.bMembershipLevel.php');
23
  include_once('class.bMembershipLevelCustom.php');
24
  include_once('class.bMembershipLevelUtils.php');
25
+ include_once('class.bPermissionCollection.php');
26
+ include_once('class.bAuthPermissionCollection.php');
27
+ include_once('class.bTransactions.php');
28
 
29
  class SimpleWpMembership {
30
  public function __construct() {
31
+ add_action('admin_menu', array(&$this, 'menu'));
 
 
32
  add_action('init', array(&$this, 'init'));
33
 
34
+ add_filter('the_content', array(&$this, 'filter_content'),11,1);
35
  add_filter('widget_text', 'do_shortcode');
36
  add_filter('show_admin_bar', array(&$this, 'hide_adminbar'));
37
  add_filter('comment_text', array(&$this, 'filter_comment'));
38
+ add_filter('wp_get_attachment_url', array(&$this, 'filter_attachment_url'), 10, 2);
39
+ add_filter('wp_get_attachment_metadata', array(&$this, 'filter_attachment'), 10, 2);
40
  add_filter('attachment_fields_to_save', array(&$this,'save_attachment_extra'), 10, 2);
41
+ add_filter('the_content_more_link', array(&$this, 'filter_moretag'), 10, 2 );
42
 
43
  add_shortcode("swpm_registration_form", array(&$this, 'registration_form'));
44
  add_shortcode('swpm_profile_form', array(&$this, 'profile_form'));
53
  add_action('profile_update', array(&$this, 'sync_with_wp_profile'), 10, 2);
54
  add_action('wp_logout', array(&$this, 'wp_logout'));
55
  add_action('wp_authenticate', array(&$this, 'wp_login'), 1, 2);
56
+ add_action('swpm_logout', array(&$this, 'swpm_logout'));
57
+
58
  //AJAX hooks
59
  add_action('wp_ajax_swpm_validate_email', 'BAjax::validate_email_ajax');
60
  add_action('wp_ajax_nopriv_swpm_validate_email', 'BAjax::validate_email_ajax');
63
 
64
  //init is too early for settings api.
65
  add_action('admin_init', array(&$this, 'admin_init_hook'));
66
+ add_action('plugins_loaded', array(&$this, "plugins_loaded"));
67
+ add_action('password_reset', array(&$this, 'wp_password_reset_hook'), 10, 2);
68
+ }
69
+ function wp_password_reset_hook( $user, $pass )
70
+ {
71
+ $swpm_id = BUtils::get_user_by_user_name($user->user_login);
72
+ if (!empty($swpm_id)){
73
+ $password_hash = BUtils::encrypt_password($pass);
74
+ global $wpdb;
75
+ $wpdb->update($wpdb->prefix . "swpm_members_tbl", array('password' => $password_hash), array('member_id' => $swpm_id));
76
+ }
77
+ }
78
+
79
  public function save_attachment_extra($post, $attachment) {
80
  $this->save_postdata($post['ID']);
81
  return $post;
82
  }
83
+ public function filter_attachment($content, $post_id){
84
+ if(is_admin()){//No need to filter on the admin side
85
+ return $content;
86
+ }
87
+
88
  $acl = BAccessControl::get_instance();
89
+ if (has_post_thumbnail($post_id)){ return $content;}
90
+ if ($acl->can_i_read_post($post_id)) {return $content;}
91
+
92
+
93
+ if (isset($content['file'])){
94
+ $content['file'] = 'restricted-icon.png';
95
+ $content['width'] = '400';
96
+ $content['height'] = '400';
97
+ }
98
+
99
+ if (isset($content['sizes'])){
100
+ if ($content['sizes']['thumbnail']){
101
+ $content['sizes']['thumbnail']['file'] = 'restricted-icon.png';
102
+ $content['sizes']['thumbnail']['mime-type'] = 'image/png';
103
+ }
104
+ if ($content['sizes']['medium']){
105
+ $content['sizes']['medium']['file'] = 'restricted-icon.png';
106
+ $content['sizes']['medium']['mime-type'] = 'image/png';
107
+ }
108
+ if ($content['sizes']['post-thumbnail']){
109
+ $content['sizes']['post-thumbnail']['file'] = 'restricted-icon.png';
110
+ $content['sizes']['post-thumbnail']['mime-type'] = 'image/png';
111
+ }
112
+ }
113
+ return $content;
114
  }
115
+
116
+ public function filter_attachment_url($content, $post_id){
117
+ if(is_admin()){//No need to filter on the admin side
118
+ return $content;
119
+ }
120
+ $acl = BAccessControl::get_instance();
121
+ if (has_post_thumbnail($post_id)){return $content;}
122
+
123
+ if ($acl->can_i_read_post($post_id)){return $content;}
124
+
125
+ return BUtils::get_restricted_image_url();
126
+ }
127
+
128
  public function admin_init_hook(){
129
  BSettings::get_instance()->init_config_hooks();
130
+ $addon_saved = filter_input(INPUT_POST, 'swpm-addon-settings');
131
+ if(!empty($addon_saved)){
132
+ do_action('swpm_addon_settings_save');
133
+ }
134
  }
135
+
136
  public function hide_adminbar(){
137
  if (!is_user_logged_in()){//Never show admin bar if the user is not even logged in
138
  return false;
150
  return;
151
  }
152
  }
153
+ $user = wp_signon(array('user_login' => $user, 'user_password' => $pass, 'remember' => $rememberme), is_ssl());
154
+ if ( is_a( $user, 'WP_User' ) ) {
155
+ wp_set_current_user( $user->ID, $user->user_login );
156
+ }
157
  do_action('swpm_after_login');
158
+ if (!BUtils::is_ajax()) {
159
+ wp_redirect(site_url());
160
+ }
161
  }
162
 
163
  public function swpm_logout() {
168
  }
169
 
170
  public function wp_login($username, $password) {
171
+ $auth = BAuth::get_instance();
172
+ if (($auth->is_logged_in() &&($auth->userData->user_name == $username))) {
173
  return;
174
  }
175
+ if(!empty($username)) {$auth->login($username, $password, true);}
176
  }
177
 
178
  public function wp_logout() {
185
  public function sync_with_wp_profile($wp_user_id) {
186
  global $wpdb;
187
  $wp_user_data = get_userdata($wp_user_id);
188
+ $query = $wpdb->prepare("SELECT * FROM " . $wpdb->prefix . "swpm_members_tbl WHERE " . ' user_name=%s', $wp_user_data->user_login);
189
  $profile = $wpdb->get_row($query, ARRAY_A);
190
  $profile = (array) $profile;
191
  if (empty($profile)){
253
  }
254
  echo $message['message'];
255
  $extra = isset($message['extra']) ? $message['extra'] : array();
256
+ if (is_string($extra)){
257
+ echo $extra;
258
+ }
259
+ else if (is_array($extra)) {
260
  echo '<ul>';
261
  foreach ($extra as $key => $value){
262
  echo '<li>' . $value . '</li>';
381
  }
382
 
383
  public function filter_content($content) {
384
+ if (is_preview()) {return $content;}
385
  $acl = BAccessControl::get_instance();
386
  global $post;
387
  return $acl->filter_post($post->ID, $content);
435
  }
436
  if (!is_admin()){ //frontend stuff
437
  BAuth::get_instance();
438
+ $this->verify_and_delete_account();
439
  $swpm_logout = filter_input(INPUT_GET, 'swpm-logout');
440
  if (!empty($swpm_logout)) {
441
  BAuth::get_instance()->logout();
442
+ wp_redirect(home_url());
443
  }
 
 
 
 
 
444
  $this->process_password_reset();
445
  $this->register_member();
446
  $this->edit_profile();
465
  }
466
  }
467
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
468
  private function edit_profile() {
469
+ $swpm_editprofile_submit = filter_input(INPUT_POST, 'swpm_editprofile_submit');
470
  if (!empty($swpm_editprofile_submit)) {
471
  BFrontRegistration::get_instance()->edit();
472
  //todo: do a redirect
477
  $this->common_library();
478
  wp_enqueue_script('password-strength-meter');
479
  wp_enqueue_script('swpm.password-meter', SIMPLE_WP_MEMBERSHIP_URL . '/js/swpm.password-meter.js');
480
+ wp_enqueue_style('jquery.tools.dateinput', SIMPLE_WP_MEMBERSHIP_URL . '/css/jquery.tools.dateinput.css');
481
+ wp_enqueue_script('jquery.tools', SIMPLE_WP_MEMBERSHIP_URL . '/js/jquery.tools18.min.js');
482
+ $settings = array('statusChangeEmailHead'=> BSettings::get_instance()->get_value('account-change-email-subject'),
483
+ 'statusChangeEmailBody'=> BSettings::get_instance()->get_value('account-change-email-body'));
484
+ wp_localize_script( 'swpm.password-meter', 'SwpmSettings', $settings );
485
  }
486
 
487
  public function front_library() {
492
  wp_enqueue_script('jquery');
493
  wp_enqueue_style('swpm.common', SIMPLE_WP_MEMBERSHIP_URL . '/css/swpm.common.css');
494
  wp_enqueue_style('validationEngine.jquery', SIMPLE_WP_MEMBERSHIP_URL . '/css/validationEngine.jquery.css');
 
 
495
  wp_enqueue_script('jquery.validationEngine-en', SIMPLE_WP_MEMBERSHIP_URL . '/js/jquery.validationEngine-en.js');
496
  wp_enqueue_script('jquery.validationEngine', SIMPLE_WP_MEMBERSHIP_URL . '/js/jquery.validationEngine.js');
497
  }
498
 
499
+ public function registration_form($atts) {
500
  $succeeded = $this->notices();
501
  if($succeeded){
502
  return;
503
  }
504
+ $is_free = BSettings::get_instance()->get_value('enable-free-membership');
505
+ $free_level = absint(BSettings::get_instance()->get_value('free-membership-id'));
506
+ $level = isset($atts['level'])? absint($atts['level']): ($is_free? $free_level: null);
507
+ return BFrontRegistration::get_instance()->regigstration_ui($level);
508
  }
509
 
510
  private function register_member() {
526
  'manage_options', 'simple_wp_membership_levels', array(&$this, "admin_membership_levels"));
527
  add_submenu_page($menu_parent_slug, __("Settings", 'swpm'), __("Settings", 'swpm'),
528
  'manage_options', 'simple_wp_membership_settings', array(&$this, "admin_settings"));
529
+ add_submenu_page($menu_parent_slug, __("Payments", 'swpm'), __("Payments", 'swpm'),
530
+ 'manage_options', 'simple_wp_membership_payments', array(&$this, "payments_menu"));
531
+ add_submenu_page($menu_parent_slug, __("Add-ons", 'swpm'), __("Add-ons", 'swpm'),
532
+ 'manage_options', 'simple_wp_membership_addons', array(&$this, "add_ons_menu"));
533
+
534
  do_action('swpm_after_main_admin_menu', $menu_parent_slug);
535
 
536
  $this->meta_box();
550
  case 'manage':
551
  $levels->manage();
552
  break;
553
+ case 'category_list':
554
+ $levels->manage_categroy();
555
+ break;
556
  case 'delete':
557
  case 'bulk_delete':
558
  $levels->delete();
584
  public function admin_settings() {
585
  $current_tab = BSettings::get_instance()->current_tab;
586
  switch ($current_tab) {
587
+ case 6:
588
+ include(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_addon_settings.php');
589
+ break;
590
  case 4:
591
  $link_for = filter_input(INPUT_POST, 'swpm_link_for',FILTER_SANITIZE_STRING);
592
  $member_id = filter_input(INPUT_POST, 'member_id',FILTER_SANITIZE_NUMBER_INT);
602
  break;
603
  }
604
  }
605
+
606
+ public function payments_menu(){
607
+ include(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_payments_page.php');
608
+ }
609
+
610
+ public function add_ons_menu(){
611
+ include(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_add_ons_page.php');
612
+ }
613
 
614
+ public function plugins_loaded(){
615
+ //Runs when plugins_loaded action gets fired
616
+ if(is_admin()){
617
+ //Check and run DB upgrade operation (if needed)
618
+ if (get_option('swpm_db_version') != SIMPLE_WP_MEMBERSHIP_DB_VER) {
619
+ include_once('class.bInstallation.php');
620
+ BInstallation::run_safe_installer();
621
+ }
622
+ }
623
+ }
624
+
625
  public static function activate() {
626
+ wp_schedule_event(time(), 'daily', 'swpm_account_status_event');
627
+ wp_schedule_event(time(), 'daily', 'swpm_delete_pending_account_event');
628
  include_once('class.bInstallation.php');
629
+ BInstallation::run_safe_installer();
 
 
 
 
 
630
  }
631
+
632
  public function deactivate() {
633
+ wp_clear_scheduled_hook('swpm_account_status_event');
634
+ wp_clear_scheduled_hook('swpm_delete_pending_account_event');
635
+ }
636
+ private function verify_and_delete_account(){
637
+ include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'classes/class.bMembers.php');
638
+ $delete_account = filter_input(INPUT_GET, 'delete_account');
639
+ if (empty($delete_account)) {return; }
640
+ $password = filter_input(INPUT_POST, 'account_delete_confirm_pass',FILTER_UNSAFE_RAW);
641
 
642
+ $auth = BAuth::get_instance();
643
+ if (!$auth->is_logged_in()){return;}
644
+ if (empty($password)){
645
+ BUtils::account_delete_confirmation_ui();
646
+ }
647
+
648
+ $nonce_field = filter_input(INPUT_POST, 'account_delete_confirm_nonce');
649
+ if (empty($nonce_field) || !wp_verify_nonce($nonce_field, 'swpm_account_delete_confirm')){
650
+ BUtils::account_delete_confirmation_ui(BUtils::_("Sorry, Nonce verification failed."));
651
+ }
652
+ if ($auth->match_password($password)){
653
+ $auth->delete();
654
+ wp_redirect(home_url());
655
+ }
656
+ else{
657
+ BUtils::account_delete_confirmation_ui(BUtils::_("Sorry, Password didn't match."));
658
+ }
659
  }
660
  }
classes/common/class-swpm-list-table.php ADDED
@@ -0,0 +1,1138 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Base class for displaying a list of items in an ajaxified HTML table.
4
+ * Use this class to display list table.
5
+ * This will prevent list table from breaking when WordPress changes the implementation of core list table class in the future.
6
+ */
7
+
8
+ class SWPM_List_Table {
9
+
10
+ /**
11
+ * The current list of items
12
+ *
13
+ * @since 3.1.0
14
+ * @var array
15
+ * @access public
16
+ */
17
+ public $items;
18
+
19
+ /**
20
+ * Various information about the current table
21
+ *
22
+ * @since 3.1.0
23
+ * @var array
24
+ * @access protected
25
+ */
26
+ protected $_args;
27
+
28
+ /**
29
+ * Various information needed for displaying the pagination
30
+ *
31
+ * @since 3.1.0
32
+ * @var array
33
+ */
34
+ protected $_pagination_args = array();
35
+
36
+ /**
37
+ * The current screen
38
+ *
39
+ * @since 3.1.0
40
+ * @var object
41
+ * @access protected
42
+ */
43
+ protected $screen;
44
+
45
+ /**
46
+ * Cached bulk actions
47
+ *
48
+ * @since 3.1.0
49
+ * @var array
50
+ * @access private
51
+ */
52
+ private $_actions;
53
+
54
+ /**
55
+ * Cached pagination output
56
+ *
57
+ * @since 3.1.0
58
+ * @var string
59
+ * @access private
60
+ */
61
+ private $_pagination;
62
+
63
+ /**
64
+ * The view switcher modes.
65
+ *
66
+ * @since 4.1.0
67
+ * @var array
68
+ * @access protected
69
+ */
70
+ protected $modes = array();
71
+
72
+ /**
73
+ * Stores the value returned by ->get_column_info()
74
+ *
75
+ * @var array
76
+ */
77
+ protected $_column_headers;
78
+
79
+ protected $compat_fields = array( '_args', '_pagination_args', 'screen', '_actions', '_pagination' );
80
+
81
+ protected $compat_methods = array( 'set_pagination_args', 'get_views', 'get_bulk_actions', 'bulk_actions',
82
+ 'row_actions', 'months_dropdown', 'view_switcher', 'comments_bubble', 'get_items_per_page', 'pagination',
83
+ 'get_sortable_columns', 'get_column_info', 'get_table_classes', 'display_tablenav', 'extra_tablenav',
84
+ 'single_row_columns' );
85
+
86
+ /**
87
+ * Constructor.
88
+ *
89
+ * The child class should call this constructor from its own constructor to override
90
+ * the default $args.
91
+ *
92
+ * @since 3.1.0
93
+ * @access public
94
+ *
95
+ * @param array|string $args {
96
+ * Array or string of arguments.
97
+ *
98
+ * @type string $plural Plural value used for labels and the objects being listed.
99
+ * This affects things such as CSS class-names and nonces used
100
+ * in the list table, e.g. 'posts'. Default empty.
101
+ * @type string $singular Singular label for an object being listed, e.g. 'post'.
102
+ * Default empty
103
+ * @type bool $ajax Whether the list table supports AJAX. This includes loading
104
+ * and sorting data, for example. If true, the class will call
105
+ * the {@see _js_vars()} method in the footer to provide variables
106
+ * to any scripts handling AJAX events. Default false.
107
+ * @type string $screen String containing the hook name used to determine the current
108
+ * screen. If left null, the current screen will be automatically set.
109
+ * Default null.
110
+ * }
111
+ */
112
+ public function __construct( $args = array() ) {
113
+ $args = wp_parse_args( $args, array(
114
+ 'plural' => '',
115
+ 'singular' => '',
116
+ 'ajax' => false,
117
+ 'screen' => null,
118
+ ) );
119
+
120
+ $this->screen = convert_to_screen( $args['screen'] );
121
+
122
+ add_filter( "manage_{$this->screen->id}_columns", array( $this, 'get_columns' ), 0 );
123
+
124
+ if ( !$args['plural'] )
125
+ $args['plural'] = $this->screen->base;
126
+
127
+ $args['plural'] = sanitize_key( $args['plural'] );
128
+ $args['singular'] = sanitize_key( $args['singular'] );
129
+
130
+ $this->_args = $args;
131
+
132
+ if ( $args['ajax'] ) {
133
+ // wp_enqueue_script( 'list-table' );
134
+ add_action( 'admin_footer', array( $this, '_js_vars' ) );
135
+ }
136
+
137
+ if ( empty( $this->modes ) ) {
138
+ $this->modes = array(
139
+ 'list' => __( 'List View' ),
140
+ 'excerpt' => __( 'Excerpt View' )
141
+ );
142
+ }
143
+ }
144
+
145
+ /**
146
+ * Make private properties readable for backwards compatibility.
147
+ *
148
+ * @since 4.0.0
149
+ * @access public
150
+ *
151
+ * @param string $name Property to get.
152
+ * @return mixed Property.
153
+ */
154
+ public function __get( $name ) {
155
+ if ( in_array( $name, $this->compat_fields ) ) {
156
+ return $this->$name;
157
+ }
158
+ }
159
+
160
+ /**
161
+ * Make private properties settable for backwards compatibility.
162
+ *
163
+ * @since 4.0.0
164
+ * @access public
165
+ *
166
+ * @param string $name Property to check if set.
167
+ * @param mixed $value Property value.
168
+ * @return mixed Newly-set property.
169
+ */
170
+ public function __set( $name, $value ) {
171
+ if ( in_array( $name, $this->compat_fields ) ) {
172
+ return $this->$name = $value;
173
+ }
174
+ }
175
+
176
+ /**
177
+ * Make private properties checkable for backwards compatibility.
178
+ *
179
+ * @since 4.0.0
180
+ * @access public
181
+ *
182
+ * @param string $name Property to check if set.
183
+ * @return bool Whether the property is set.
184
+ */
185
+ public function __isset( $name ) {
186
+ if ( in_array( $name, $this->compat_fields ) ) {
187
+ return isset( $this->$name );
188
+ }
189
+ }
190
+
191
+ /**
192
+ * Make private properties un-settable for backwards compatibility.
193
+ *
194
+ * @since 4.0.0
195
+ * @access public
196
+ *
197
+ * @param string $name Property to unset.
198
+ */
199
+ public function __unset( $name ) {
200
+ if ( in_array( $name, $this->compat_fields ) ) {
201
+ unset( $this->$name );
202
+ }
203
+ }
204
+
205
+ /**
206
+ * Make private/protected methods readable for backwards compatibility.
207
+ *
208
+ * @since 4.0.0
209
+ * @access public
210
+ *
211
+ * @param callable $name Method to call.
212
+ * @param array $arguments Arguments to pass when calling.
213
+ * @return mixed|bool Return value of the callback, false otherwise.
214
+ */
215
+ public function __call( $name, $arguments ) {
216
+ if ( in_array( $name, $this->compat_methods ) ) {
217
+ return call_user_func_array( array( $this, $name ), $arguments );
218
+ }
219
+ return false;
220
+ }
221
+
222
+ /**
223
+ * Checks the current user's permissions
224
+ *
225
+ * @since 3.1.0
226
+ * @access public
227
+ * @abstract
228
+ */
229
+ public function ajax_user_can() {
230
+ die( 'function WP_List_Table::ajax_user_can() must be over-ridden in a sub-class.' );
231
+ }
232
+
233
+ /**
234
+ * Prepares the list of items for displaying.
235
+ * @uses WP_List_Table::set_pagination_args()
236
+ *
237
+ * @since 3.1.0
238
+ * @access public
239
+ * @abstract
240
+ */
241
+ public function prepare_items() {
242
+ die( 'function WP_List_Table::prepare_items() must be over-ridden in a sub-class.' );
243
+ }
244
+
245
+ /**
246
+ * An internal method that sets all the necessary pagination arguments
247
+ *
248
+ * @param array $args An associative array with information about the pagination
249
+ * @access protected
250
+ */
251
+ protected function set_pagination_args( $args ) {
252
+ $args = wp_parse_args( $args, array(
253
+ 'total_items' => 0,
254
+ 'total_pages' => 0,
255
+ 'per_page' => 0,
256
+ ) );
257
+
258
+ if ( !$args['total_pages'] && $args['per_page'] > 0 )
259
+ $args['total_pages'] = ceil( $args['total_items'] / $args['per_page'] );
260
+
261
+ // Redirect if page number is invalid and headers are not already sent.
262
+ if ( ! headers_sent() && ( ! defined( 'DOING_AJAX' ) || ! DOING_AJAX ) && $args['total_pages'] > 0 && $this->get_pagenum() > $args['total_pages'] ) {
263
+ wp_redirect( add_query_arg( 'paged', $args['total_pages'] ) );
264
+ exit;
265
+ }
266
+
267
+ $this->_pagination_args = $args;
268
+ }
269
+
270
+ /**
271
+ * Access the pagination args.
272
+ *
273
+ * @since 3.1.0
274
+ * @access public
275
+ *
276
+ * @param string $key Pagination argument to retrieve. Common values include 'total_items',
277
+ * 'total_pages', 'per_page', or 'infinite_scroll'.
278
+ * @return int Number of items that correspond to the given pagination argument.
279
+ */
280
+ public function get_pagination_arg( $key ) {
281
+ if ( 'page' == $key )
282
+ return $this->get_pagenum();
283
+
284
+ if ( isset( $this->_pagination_args[$key] ) )
285
+ return $this->_pagination_args[$key];
286
+ }
287
+
288
+ /**
289
+ * Whether the table has items to display or not
290
+ *
291
+ * @since 3.1.0
292
+ * @access public
293
+ *
294
+ * @return bool
295
+ */
296
+ public function has_items() {
297
+ return !empty( $this->items );
298
+ }
299
+
300
+ /**
301
+ * Message to be displayed when there are no items
302
+ *
303
+ * @since 3.1.0
304
+ * @access public
305
+ */
306
+ public function no_items() {
307
+ _e( 'No items found.' );
308
+ }
309
+
310
+ /**
311
+ * Display the search box.
312
+ *
313
+ * @since 3.1.0
314
+ * @access public
315
+ *
316
+ * @param string $text The search button text
317
+ * @param string $input_id The search input id
318
+ */
319
+ public function search_box( $text, $input_id ) {
320
+ if ( empty( $_REQUEST['s'] ) && !$this->has_items() )
321
+ return;
322
+
323
+ $input_id = $input_id . '-search-input';
324
+
325
+ if ( ! empty( $_REQUEST['orderby'] ) )
326
+ echo '<input type="hidden" name="orderby" value="' . esc_attr( $_REQUEST['orderby'] ) . '" />';
327
+ if ( ! empty( $_REQUEST['order'] ) )
328
+ echo '<input type="hidden" name="order" value="' . esc_attr( $_REQUEST['order'] ) . '" />';
329
+ if ( ! empty( $_REQUEST['post_mime_type'] ) )
330
+ echo '<input type="hidden" name="post_mime_type" value="' . esc_attr( $_REQUEST['post_mime_type'] ) . '" />';
331
+ if ( ! empty( $_REQUEST['detached'] ) )
332
+ echo '<input type="hidden" name="detached" value="' . esc_attr( $_REQUEST['detached'] ) . '" />';
333
+ ?>
334
+ <p class="search-box">
335
+ <label class="screen-reader-text" for="<?php echo $input_id ?>"><?php echo $text; ?>:</label>
336
+ <input type="search" id="<?php echo $input_id ?>" name="s" value="<?php _admin_search_query(); ?>" />
337
+ <?php submit_button( $text, 'button', '', false, array('id' => 'search-submit') ); ?>
338
+ </p>
339
+ <?php
340
+ }
341
+
342
+ /**
343
+ * Get an associative array ( id => link ) with the list
344
+ * of views available on this table.
345
+ *
346
+ * @since 3.1.0
347
+ * @access protected
348
+ *
349
+ * @return array
350
+ */
351
+ protected function get_views() {
352
+ return array();
353
+ }
354
+
355
+ /**
356
+ * Display the list of views available on this table.
357
+ *
358
+ * @since 3.1.0
359
+ * @access public
360
+ */
361
+ public function views() {
362
+ $views = $this->get_views();
363
+ /**
364
+ * Filter the list of available list table views.
365
+ *
366
+ * The dynamic portion of the hook name, `$this->screen->id`, refers
367
+ * to the ID of the current screen, usually a string.
368
+ *
369
+ * @since 3.5.0
370
+ *
371
+ * @param array $views An array of available list table views.
372
+ */
373
+ $views = apply_filters( "views_{$this->screen->id}", $views );
374
+
375
+ if ( empty( $views ) )
376
+ return;
377
+
378
+ echo "<ul class='subsubsub'>\n";
379
+ foreach ( $views as $class => $view ) {
380
+ $views[ $class ] = "\t<li class='$class'>$view";
381
+ }
382
+ echo implode( " |</li>\n", $views ) . "</li>\n";
383
+ echo "</ul>";
384
+ }
385
+
386
+ /**
387
+ * Get an associative array ( option_name => option_title ) with the list
388
+ * of bulk actions available on this table.
389
+ *
390
+ * @since 3.1.0
391
+ * @access protected
392
+ *
393
+ * @return array
394
+ */
395
+ protected function get_bulk_actions() {
396
+ return array();
397
+ }
398
+
399
+ /**
400
+ * Display the bulk actions dropdown.
401
+ *
402
+ * @since 3.1.0
403
+ * @access protected
404
+ *
405
+ * @param string $which The location of the bulk actions: 'top' or 'bottom'.
406
+ * This is designated as optional for backwards-compatibility.
407
+ */
408
+ protected function bulk_actions( $which = '' ) {
409
+ if ( is_null( $this->_actions ) ) {
410
+ $no_new_actions = $this->_actions = $this->get_bulk_actions();
411
+ /**
412
+ * Filter the list table Bulk Actions drop-down.
413
+ *
414
+ * The dynamic portion of the hook name, `$this->screen->id`, refers
415
+ * to the ID of the current screen, usually a string.
416
+ *
417
+ * This filter can currently only be used to remove bulk actions.
418
+ *
419
+ * @since 3.5.0
420
+ *
421
+ * @param array $actions An array of the available bulk actions.
422
+ */
423
+ $this->_actions = apply_filters( "bulk_actions-{$this->screen->id}", $this->_actions );
424
+ $this->_actions = array_intersect_assoc( $this->_actions, $no_new_actions );
425
+ $two = '';
426
+ } else {
427
+ $two = '2';
428
+ }
429
+
430
+ if ( empty( $this->_actions ) )
431
+ return;
432
+
433
+ echo "<label for='bulk-action-selector-" . esc_attr( $which ) . "' class='screen-reader-text'>" . __( 'Select bulk action' ) . "</label>";
434
+ echo "<select name='action$two' id='bulk-action-selector-" . esc_attr( $which ) . "'>\n";
435
+ echo "<option value='-1' selected='selected'>" . __( 'Bulk Actions' ) . "</option>\n";
436
+
437
+ foreach ( $this->_actions as $name => $title ) {
438
+ $class = 'edit' == $name ? ' class="hide-if-no-js"' : '';
439
+
440
+ echo "\t<option value='$name'$class>$title</option>\n";
441
+ }
442
+
443
+ echo "</select>\n";
444
+
445
+ submit_button( __( 'Apply' ), 'action', '', false, array( 'id' => "doaction$two" ) );
446
+ echo "\n";
447
+ }
448
+
449
+ /**
450
+ * Get the current action selected from the bulk actions dropdown.
451
+ *
452
+ * @since 3.1.0
453
+ * @access public
454
+ *
455
+ * @return string|bool The action name or False if no action was selected
456
+ */
457
+ public function current_action() {
458
+ if ( isset( $_REQUEST['filter_action'] ) && ! empty( $_REQUEST['filter_action'] ) )
459
+ return false;
460
+
461
+ if ( isset( $_REQUEST['action'] ) && -1 != $_REQUEST['action'] )
462
+ return $_REQUEST['action'];
463
+
464
+ if ( isset( $_REQUEST['action2'] ) && -1 != $_REQUEST['action2'] )
465
+ return $_REQUEST['action2'];
466
+
467
+ return false;
468
+ }
469
+
470
+ /**
471
+ * Generate row actions div
472
+ *
473
+ * @since 3.1.0
474
+ * @access protected
475
+ *
476
+ * @param array $actions The list of actions
477
+ * @param bool $always_visible Whether the actions should be always visible
478
+ * @return string
479
+ */
480
+ protected function row_actions( $actions, $always_visible = false ) {
481
+ $action_count = count( $actions );
482
+ $i = 0;
483
+
484
+ if ( !$action_count )
485
+ return '';
486
+
487
+ $out = '<div class="' . ( $always_visible ? 'row-actions visible' : 'row-actions' ) . '">';
488
+ foreach ( $actions as $action => $link ) {
489
+ ++$i;
490
+ ( $i == $action_count ) ? $sep = '' : $sep = ' | ';
491
+ $out .= "<span class='$action'>$link$sep</span>";
492
+ }
493
+ $out .= '</div>';
494
+
495
+ return $out;
496
+ }
497
+
498
+ /**
499
+ * Display a monthly dropdown for filtering items
500
+ *
501
+ * @since 3.1.0
502
+ * @access protected
503
+ *
504
+ * @param string $post_type
505
+ */
506
+ protected function months_dropdown( $post_type ) {
507
+ global $wpdb, $wp_locale;
508
+
509
+ /**
510
+ * Filter whether to remove the 'Months' drop-down from the post list table.
511
+ *
512
+ * @since 4.2.0
513
+ *
514
+ * @param bool $disable Whether to disable the drop-down. Default false.
515
+ * @param string $post_type The post type.
516
+ */
517
+ if ( apply_filters( 'disable_months_dropdown', false, $post_type ) ) {
518
+ return;
519
+ }
520
+
521
+ $months = $wpdb->get_results( $wpdb->prepare( "
522
+ SELECT DISTINCT YEAR( post_date ) AS year, MONTH( post_date ) AS month
523
+ FROM $wpdb->posts
524
+ WHERE post_type = %s
525
+ ORDER BY post_date DESC
526
+ ", $post_type ) );
527
+
528
+ /**
529
+ * Filter the 'Months' drop-down results.
530
+ *
531
+ * @since 3.7.0
532
+ *
533
+ * @param object $months The months drop-down query results.
534
+ * @param string $post_type The post type.
535
+ */
536
+ $months = apply_filters( 'months_dropdown_results', $months, $post_type );
537
+
538
+ $month_count = count( $months );
539
+
540
+ if ( !$month_count || ( 1 == $month_count && 0 == $months[0]->month ) )
541
+ return;
542
+
543
+ $m = isset( $_GET['m'] ) ? (int) $_GET['m'] : 0;
544
+ ?>
545
+ <label for="filter-by-date" class="screen-reader-text"><?php _e( 'Filter by date' ); ?></label>
546
+ <select name="m" id="filter-by-date">
547
+ <option<?php selected( $m, 0 ); ?> value="0"><?php _e( 'All dates' ); ?></option>
548
+ <?php
549
+ foreach ( $months as $arc_row ) {
550
+ if ( 0 == $arc_row->year )
551
+ continue;
552
+
553
+ $month = zeroise( $arc_row->month, 2 );
554
+ $year = $arc_row->year;
555
+
556
+ printf( "<option %s value='%s'>%s</option>\n",
557
+ selected( $m, $year . $month, false ),
558
+ esc_attr( $arc_row->year . $month ),
559
+ /* translators: 1: month name, 2: 4-digit year */
560
+ sprintf( __( '%1$s %2$d' ), $wp_locale->get_month( $month ), $year )
561
+ );
562
+ }
563
+ ?>
564
+ </select>
565
+ <?php
566
+ }
567
+
568
+ /**
569
+ * Display a view switcher
570
+ *
571
+ * @since 3.1.0
572
+ * @access protected
573
+ *
574
+ * @param string $current_mode
575
+ */
576
+ protected function view_switcher( $current_mode ) {
577
+ ?>
578
+ <input type="hidden" name="mode" value="<?php echo esc_attr( $current_mode ); ?>" />
579
+ <div class="view-switch">
580
+ <?php
581
+ foreach ( $this->modes as $mode => $title ) {
582
+ $classes = array( 'view-' . $mode );
583
+ if ( $current_mode == $mode )
584
+ $classes[] = 'current';
585
+ printf(
586
+ "<a href='%s' class='%s' id='view-switch-$mode'><span class='screen-reader-text'>%s</span></a>\n",
587
+ esc_url( add_query_arg( 'mode', $mode ) ),
588
+ implode( ' ', $classes ),
589
+ $title
590
+ );
591
+ }
592
+ ?>
593
+ </div>
594
+ <?php
595
+ }
596
+
597
+ /**
598
+ * Display a comment count bubble
599
+ *
600
+ * @since 3.1.0
601
+ * @access protected
602
+ *
603
+ * @param int $post_id The post ID.
604
+ * @param int $pending_comments Number of pending comments.
605
+ */
606
+ protected function comments_bubble( $post_id, $pending_comments ) {
607
+ $pending_phrase = sprintf( __( '%s pending' ), number_format( $pending_comments ) );
608
+
609
+ if ( $pending_comments )
610
+ echo '<strong>';
611
+
612
+ echo "<a href='" . esc_url( add_query_arg( 'p', $post_id, admin_url( 'edit-comments.php' ) ) ) . "' title='" . esc_attr( $pending_phrase ) . "' class='post-com-count'><span class='comment-count'>" . number_format_i18n( get_comments_number() ) . "</span></a>";
613
+
614
+ if ( $pending_comments )
615
+ echo '</strong>';
616
+ }
617
+
618
+ /**
619
+ * Get the current page number
620
+ *
621
+ * @since 3.1.0
622
+ * @access public
623
+ *
624
+ * @return int
625
+ */
626
+ public function get_pagenum() {
627
+ $pagenum = isset( $_REQUEST['paged'] ) ? absint( $_REQUEST['paged'] ) : 0;
628
+
629
+ if( isset( $this->_pagination_args['total_pages'] ) && $pagenum > $this->_pagination_args['total_pages'] )
630
+ $pagenum = $this->_pagination_args['total_pages'];
631
+
632
+ return max( 1, $pagenum );
633
+ }
634
+
635
+ /**
636
+ * Get number of items to display on a single page
637
+ *
638
+ * @since 3.1.0
639
+ * @access protected
640
+ *
641
+ * @param string $option
642
+ * @param int $default
643
+ * @return int
644
+ */
645
+ protected function get_items_per_page( $option, $default = 20 ) {
646
+ $per_page = (int) get_user_option( $option );
647
+ if ( empty( $per_page ) || $per_page < 1 )
648
+ $per_page = $default;
649
+
650
+ /**
651
+ * Filter the number of items to be displayed on each page of the list table.
652
+ *
653
+ * The dynamic hook name, $option, refers to the `per_page` option depending
654
+ * on the type of list table in use. Possible values include: 'edit_comments_per_page',
655
+ * 'sites_network_per_page', 'site_themes_network_per_page', 'themes_network_per_page',
656
+ * 'users_network_per_page', 'edit_post_per_page', 'edit_page_per_page',
657
+ * 'edit_{$post_type}_per_page', etc.
658
+ *
659
+ * @since 2.9.0
660
+ *
661
+ * @param int $per_page Number of items to be displayed. Default 20.
662
+ */
663
+ return (int) apply_filters( $option, $per_page );
664
+ }
665
+
666
+ /**
667
+ * Display the pagination.
668
+ *
669
+ * @since 3.1.0
670
+ * @access protected
671
+ *
672
+ * @param string $which
673
+ */
674
+ protected function pagination( $which ) {
675
+ if ( empty( $this->_pagination_args ) ) {
676
+ return;
677
+ }
678
+
679
+ $total_items = $this->_pagination_args['total_items'];
680
+ $total_pages = $this->_pagination_args['total_pages'];
681
+ $infinite_scroll = false;
682
+ if ( isset( $this->_pagination_args['infinite_scroll'] ) ) {
683
+ $infinite_scroll = $this->_pagination_args['infinite_scroll'];
684
+ }
685
+
686
+ $output = '<span class="displaying-num">' . sprintf( _n( '1 item', '%s items', $total_items ), number_format_i18n( $total_items ) ) . '</span>';
687
+
688
+ $current = $this->get_pagenum();
689
+
690
+ $current_url = set_url_scheme( 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );
691
+
692
+ $current_url = remove_query_arg( array( 'hotkeys_highlight_last', 'hotkeys_highlight_first' ), $current_url );
693
+
694
+ $page_links = array();
695
+
696
+ $disable_first = $disable_last = '';
697
+ if ( $current == 1 ) {
698
+ $disable_first = ' disabled';
699
+ }
700
+ if ( $current == $total_pages ) {
701
+ $disable_last = ' disabled';
702
+ }
703
+ $page_links[] = sprintf( "<a class='%s' title='%s' href='%s'>%s</a>",
704
+ 'first-page' . $disable_first,
705
+ esc_attr__( 'Go to the first page' ),
706
+ esc_url( remove_query_arg( 'paged', $current_url ) ),
707
+ '&laquo;'
708
+ );
709
+
710
+ $page_links[] = sprintf( "<a class='%s' title='%s' href='%s'>%s</a>",
711
+ 'prev-page' . $disable_first,
712
+ esc_attr__( 'Go to the previous page' ),
713
+ esc_url( add_query_arg( 'paged', max( 1, $current-1 ), $current_url ) ),
714
+ '&lsaquo;'
715
+ );
716
+
717
+ if ( 'bottom' == $which ) {
718
+ $html_current_page = $current;
719
+ } else {
720
+ $html_current_page = sprintf( "%s<input class='current-page' id='current-page-selector' title='%s' type='text' name='paged' value='%s' size='%d' />",
721
+ '<label for="current-page-selector" class="screen-reader-text">' . __( 'Select Page' ) . '</label>',
722
+ esc_attr__( 'Current page' ),
723
+ $current,
724
+ strlen( $total_pages )
725
+ );
726
+ }
727
+ $html_total_pages = sprintf( "<span class='total-pages'>%s</span>", number_format_i18n( $total_pages ) );
728
+ $page_links[] = '<span class="paging-input">' . sprintf( _x( '%1$s of %2$s', 'paging' ), $html_current_page, $html_total_pages ) . '</span>';
729
+
730
+ $page_links[] = sprintf( "<a class='%s' title='%s' href='%s'>%s</a>",
731
+ 'next-page' . $disable_last,
732
+ esc_attr__( 'Go to the next page' ),
733
+ esc_url( add_query_arg( 'paged', min( $total_pages, $current+1 ), $current_url ) ),
734
+ '&rsaquo;'
735
+ );
736
+
737
+ $page_links[] = sprintf( "<a class='%s' title='%s' href='%s'>%s</a>",
738
+ 'last-page' . $disable_last,
739
+ esc_attr__( 'Go to the last page' ),
740
+ esc_url( add_query_arg( 'paged', $total_pages, $current_url ) ),
741
+ '&raquo;'
742
+ );
743
+
744
+ $pagination_links_class = 'pagination-links';
745
+ if ( ! empty( $infinite_scroll ) ) {
746
+ $pagination_links_class = ' hide-if-js';
747
+ }
748
+ $output .= "\n<span class='$pagination_links_class'>" . join( "\n", $page_links ) . '</span>';
749
+
750
+ if ( $total_pages ) {
751
+ $page_class = $total_pages < 2 ? ' one-page' : '';
752
+ } else {
753
+ $page_class = ' no-pages';
754
+ }
755
+ $this->_pagination = "<div class='tablenav-pages{$page_class}'>$output</div>";
756
+
757
+ echo $this->_pagination;
758
+ }
759
+
760
+ /**
761
+ * Get a list of columns. The format is:
762
+ * 'internal-name' => 'Title'
763
+ *
764
+ * @since 3.1.0
765
+ * @access public
766
+ * @abstract
767
+ *
768
+ * @return array
769
+ */
770
+ public function get_columns() {
771
+ die( 'function WP_List_Table::get_columns() must be over-ridden in a sub-class.' );
772
+ }
773
+
774
+ /**
775
+ * Get a list of sortable columns. The format is:
776
+ * 'internal-name' => 'orderby'
777
+ * or
778
+ * 'internal-name' => array( 'orderby', true )
779
+ *
780
+ * The second format will make the initial sorting order be descending
781
+ *
782
+ * @since 3.1.0
783
+ * @access protected
784
+ *
785
+ * @return array
786
+ */
787
+ protected function get_sortable_columns() {
788
+ return array();
789
+ }
790
+
791
+ /**
792
+ * Get a list of all, hidden and sortable columns, with filter applied
793
+ *
794
+ * @since 3.1.0
795
+ * @access protected
796
+ *
797
+ * @return array
798
+ */
799
+ protected function get_column_info() {
800
+ if ( isset( $this->_column_headers ) )
801
+ return $this->_column_headers;
802
+
803
+ $columns = get_column_headers( $this->screen );
804
+ $hidden = get_hidden_columns( $this->screen );
805
+
806
+ $sortable_columns = $this->get_sortable_columns();
807
+ /**
808
+ * Filter the list table sortable columns for a specific screen.
809
+ *
810
+ * The dynamic portion of the hook name, `$this->screen->id`, refers
811
+ * to the ID of the current screen, usually a string.
812
+ *
813
+ * @since 3.5.0
814
+ *
815
+ * @param array $sortable_columns An array of sortable columns.
816
+ */
817
+ $_sortable = apply_filters( "manage_{$this->screen->id}_sortable_columns", $sortable_columns );
818
+
819
+ $sortable = array();
820
+ foreach ( $_sortable as $id => $data ) {
821
+ if ( empty( $data ) )
822
+ continue;
823
+
824
+ $data = (array) $data;
825
+ if ( !isset( $data[1] ) )
826
+ $data[1] = false;
827
+
828
+ $sortable[$id] = $data;
829
+ }
830
+
831
+ $this->_column_headers = array( $columns, $hidden, $sortable );
832
+
833
+ return $this->_column_headers;
834
+ }
835
+
836
+ /**
837
+ * Return number of visible columns
838
+ *
839
+ * @since 3.1.0
840
+ * @access public
841
+ *
842
+ * @return int
843
+ */
844
+ public function get_column_count() {
845
+ list ( $columns, $hidden ) = $this->get_column_info();
846
+ $hidden = array_intersect( array_keys( $columns ), array_filter( $hidden ) );
847
+ return count( $columns ) - count( $hidden );
848
+ }
849
+
850
+ /**
851
+ * Print column headers, accounting for hidden and sortable columns.
852
+ *
853
+ * @since 3.1.0
854
+ * @access public
855
+ *
856
+ * @param bool $with_id Whether to set the id attribute or not
857
+ */
858
+ public function print_column_headers( $with_id = true ) {
859
+ list( $columns, $hidden, $sortable ) = $this->get_column_info();
860
+
861
+ $current_url = set_url_scheme( 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );
862
+ $current_url = remove_query_arg( 'paged', $current_url );
863
+
864
+ if ( isset( $_GET['orderby'] ) )
865
+ $current_orderby = $_GET['orderby'];
866
+ else
867
+ $current_orderby = '';
868
+
869
+ if ( isset( $_GET['order'] ) && 'desc' == $_GET['order'] )
870
+ $current_order = 'desc';
871
+ else
872
+ $current_order = 'asc';
873
+
874
+ if ( ! empty( $columns['cb'] ) ) {
875
+ static $cb_counter = 1;
876
+ $columns['cb'] = '<label class="screen-reader-text" for="cb-select-all-' . $cb_counter . '">' . __( 'Select All' ) . '</label>'
877
+ . '<input id="cb-select-all-' . $cb_counter . '" type="checkbox" />';
878
+ $cb_counter++;
879
+ }
880
+
881
+ foreach ( $columns as $column_key => $column_display_name ) {
882
+ $class = array( 'manage-column', "column-$column_key" );
883
+
884
+ $style = '';
885
+ if ( in_array( $column_key, $hidden ) )
886
+ $style = 'display:none;';
887
+
888
+ $style = ' style="' . $style . '"';
889
+
890
+ if ( 'cb' == $column_key )
891
+ $class[] = 'check-column';
892
+ elseif ( in_array( $column_key, array( 'posts', 'comments', 'links' ) ) )
893
+ $class[] = 'num';
894
+
895
+ if ( isset( $sortable[$column_key] ) ) {
896
+ list( $orderby, $desc_first ) = $sortable[$column_key];
897
+
898
+ if ( $current_orderby == $orderby ) {
899
+ $order = 'asc' == $current_order ? 'desc' : 'asc';
900
+ $class[] = 'sorted';
901
+ $class[] = $current_order;
902
+ } else {
903
+ $order = $desc_first ? 'desc' : 'asc';
904
+ $class[] = 'sortable';
905
+ $class[] = $desc_first ? 'asc' : 'desc';
906
+ }
907
+
908
+ $column_display_name = '<a href="' . esc_url( add_query_arg( compact( 'orderby', 'order' ), $current_url ) ) . '"><span>' . $column_display_name . '</span><span class="sorting-indicator"></span></a>';
909
+ }
910
+
911
+ $id = $with_id ? "id='$column_key'" : '';
912
+
913
+ if ( !empty( $class ) )
914
+ $class = "class='" . join( ' ', $class ) . "'";
915
+
916
+ echo "<th scope='col' $id $class $style>$column_display_name</th>";
917
+ }
918
+ }
919
+
920
+ /**
921
+ * Display the table
922
+ *
923
+ * @since 3.1.0
924
+ * @access public
925
+ */
926
+ public function display() {
927
+ $singular = $this->_args['singular'];
928
+
929
+ $this->display_tablenav( 'top' );
930
+
931
+ ?>
932
+ <table class="wp-list-table <?php echo implode( ' ', $this->get_table_classes() ); ?>">
933
+ <thead>
934
+ <tr>
935
+ <?php $this->print_column_headers(); ?>
936
+ </tr>
937
+ </thead>
938
+
939
+ <tbody id="the-list"<?php
940
+ if ( $singular ) {
941
+ echo " data-wp-lists='list:$singular'";
942
+ } ?>>
943
+ <?php $this->display_rows_or_placeholder(); ?>
944
+ </tbody>
945
+
946
+ <tfoot>
947
+ <tr>
948
+ <?php $this->print_column_headers( false ); ?>
949
+ </tr>
950
+ </tfoot>
951
+
952
+ </table>
953
+ <?php
954
+ $this->display_tablenav( 'bottom' );
955
+ }
956
+
957
+ /**
958
+ * Get a list of CSS classes for the list table table tag.
959
+ *
960
+ * @since 3.1.0
961
+ * @access protected
962
+ *
963
+ * @return array List of CSS classes for the table tag.
964
+ */
965
+ protected function get_table_classes() {
966
+ return array( 'widefat', 'fixed', 'striped', $this->_args['plural'] );
967
+ }
968
+
969
+ /**
970
+ * Generate the table navigation above or below the table
971
+ *
972
+ * @since 3.1.0
973
+ * @access protected
974
+ * @param string $which
975
+ */
976
+ protected function display_tablenav( $which ) {
977
+ if ( 'top' == $which )
978
+ wp_nonce_field( 'bulk-' . $this->_args['plural'] );
979
+ ?>
980
+ <div class="tablenav <?php echo esc_attr( $which ); ?>">
981
+
982
+ <div class="alignleft actions bulkactions">
983
+ <?php $this->bulk_actions( $which ); ?>
984
+ </div>
985
+ <?php
986
+ $this->extra_tablenav( $which );
987
+ $this->pagination( $which );
988
+ ?>
989
+
990
+ <br class="clear" />
991
+ </div>
992
+ <?php
993
+ }
994
+
995
+ /**
996
+ * Extra controls to be displayed between bulk actions and pagination
997
+ *
998
+ * @since 3.1.0
999
+ * @access protected
1000
+ *
1001
+ * @param string $which
1002
+ */
1003
+ protected function extra_tablenav( $which ) {}
1004
+
1005
+ /**
1006
+ * Generate the tbody element for the list table.
1007
+ *
1008
+ * @since 3.1.0
1009
+ * @access public
1010
+ */
1011
+ public function display_rows_or_placeholder() {
1012
+ if ( $this->has_items() ) {
1013
+ $this->display_rows();
1014
+ } else {
1015
+ echo '<tr class="no-items"><td class="colspanchange" colspan="' . $this->get_column_count() . '">';
1016
+ $this->no_items();
1017
+ echo '</td></tr>';
1018
+ }
1019
+ }
1020
+
1021
+ /**
1022
+ * Generate the table rows
1023
+ *
1024
+ * @since 3.1.0
1025
+ * @access public
1026
+ */
1027
+ public function display_rows() {
1028
+ foreach ( $this->items as $item )
1029
+ $this->single_row( $item );
1030
+ }
1031
+
1032
+ /**
1033
+ * Generates content for a single row of the table
1034
+ *
1035
+ * @since 3.1.0
1036
+ * @access public
1037
+ *
1038
+ * @param object $item The current item
1039
+ */
1040
+ public function single_row( $item ) {
1041
+ echo '<tr>';
1042
+ $this->single_row_columns( $item );
1043
+ echo '</tr>';
1044
+ }
1045
+
1046
+ protected function column_default( $item, $column_name ) {}
1047
+
1048
+ protected function column_cb( $item ) {}
1049
+
1050
+ /**
1051
+ * Generates the columns for a single row of the table
1052
+ *
1053
+ * @since 3.1.0
1054
+ * @access protected
1055
+ *
1056
+ * @param object $item The current item
1057
+ */
1058
+ protected function single_row_columns( $item ) {
1059
+ list( $columns, $hidden ) = $this->get_column_info();
1060
+
1061
+ foreach ( $columns as $column_name => $column_display_name ) {
1062
+ $class = "class='$column_name column-$column_name'";
1063
+
1064
+ $style = '';
1065
+ if ( in_array( $column_name, $hidden ) )
1066
+ $style = ' style="display:none;"';
1067
+
1068
+ $attributes = "$class$style";
1069
+
1070
+ if ( 'cb' == $column_name ) {
1071
+ echo '<th scope="row" class="check-column">';
1072
+ echo $this->column_cb( $item );
1073
+ echo '</th>';
1074
+ }
1075
+ elseif ( method_exists( $this, 'column_' . $column_name ) ) {
1076
+ echo "<td $attributes>";
1077
+ echo call_user_func( array( $this, 'column_' . $column_name ), $item );
1078
+ echo "</td>";
1079
+ }
1080
+ else {
1081
+ echo "<td $attributes>";
1082
+ echo $this->column_default( $item, $column_name );
1083
+ echo "</td>";
1084
+ }
1085
+ }
1086
+ }
1087
+
1088
+ /**
1089
+ * Handle an incoming ajax request (called from admin-ajax.php)
1090
+ *
1091
+ * @since 3.1.0
1092
+ * @access public
1093
+ */
1094
+ public function ajax_response() {
1095
+ $this->prepare_items();
1096
+
1097
+ ob_start();
1098
+ if ( ! empty( $_REQUEST['no_placeholder'] ) ) {
1099
+ $this->display_rows();
1100
+ } else {
1101
+ $this->display_rows_or_placeholder();
1102
+ }
1103
+
1104
+ $rows = ob_get_clean();
1105
+
1106
+ $response = array( 'rows' => $rows );
1107
+
1108
+ if ( isset( $this->_pagination_args['total_items'] ) ) {
1109
+ $response['total_items_i18n'] = sprintf(
1110
+ _n( '1 item', '%s items', $this->_pagination_args['total_items'] ),
1111
+ number_format_i18n( $this->_pagination_args['total_items'] )
1112
+ );
1113
+ }
1114
+ if ( isset( $this->_pagination_args['total_pages'] ) ) {
1115
+ $response['total_pages'] = $this->_pagination_args['total_pages'];
1116
+ $response['total_pages_i18n'] = number_format_i18n( $this->_pagination_args['total_pages'] );
1117
+ }
1118
+
1119
+ die( wp_json_encode( $response ) );
1120
+ }
1121
+
1122
+ /**
1123
+ * Send required variables to JavaScript land
1124
+ *
1125
+ * @access public
1126
+ */
1127
+ public function _js_vars() {
1128
+ $args = array(
1129
+ 'class' => get_class( $this ),
1130
+ 'screen' => array(
1131
+ 'id' => $this->screen->id,
1132
+ 'base' => $this->screen->base,
1133
+ )
1134
+ );
1135
+
1136
+ printf( "<script type='text/javascript'>list_args = %s;</script>\n", wp_json_encode( $args ) );
1137
+ }
1138
+ }
classes/index.html ADDED
File without changes
css/index.html ADDED
File without changes
css/swpm.addons.listing.css ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .swpm_addon_item_canvas{
2
+ background-color:#fff;
3
+ font-family:sans-serif,arial;
4
+ font-size:12px;
5
+ border:1px solid #ccc;
6
+ display:block;
7
+ float:left;
8
+ margin:3px 12px 12px 0;
9
+ padding:10px 0px 10px 10px;
10
+ position:relative;
11
+ width:222px;
12
+ height:340px;
13
+ }
14
+ .swpm_addon_item_canvas:hover{border-color:#999;}
15
+ .swpm_addon_item_thumb img {height: 150px; width: 200px; padding: 5px; border: 1px solid #ccc;}
16
+ .swpm_addon_item_thumb a img {border: 1px solid #ccc;}
17
+ .swpm_addon_item_body{line-height:22px;height:170px;overflow:hidden;}
18
+ .swpm_addon_item_name{font-size:16px;font-weight:bold;text-align: center;margin:10px 10px 10px 0px;}
19
+ .swpm_addon_item_description{margin:10px 10px 5px 0px;text-align:justify;overflow:hidden;height:70px;}
20
+ .swpm_addon_clear{clear:both;}
21
+ .swpm_addon_item_details_link{
22
+ text-align: center;
23
+ }
24
+ .swpm_addon_item_details_link a{
25
+ border: 3px solid #2d3140;
26
+ color: #2d3140;
27
+ display: inline-block;
28
+ padding: 5px 15px;
29
+ text-decoration: none !important;
30
+ }
31
+ .swpm_addon_item_details_link a:hover{
32
+ background-color: #2d3140;
33
+ color: #FFF;
34
+ }
css/swpm.common.css CHANGED
@@ -1,40 +1,101 @@
1
  /* General CSS */
2
  .swpm-margin-10{
3
- margin: 10px;
4
  }
5
  .swpm-margin-top-10{
6
- margin-top: 10px;
7
  }
8
  .swpm-margin-bottom-10{
9
- margin-bottom: 10px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
  }
11
 
12
  /* Login form CSS */
13
  .swpm-login-widget-form input,.swpm-login-widget-form checkbox{
14
- width: auto;
15
  }
16
- .swpm-login-widget-form table{
17
- border: none;
18
  }
19
- .swpm-login-widget-form tr{
20
- border: none;
21
  }
22
- .swpm-login-widget-form td{
23
- border: none;
 
 
 
24
  }
25
 
26
  /* Password reset form CSS */
27
  .swpm-password-reset-widget-form table{
28
- border: none;
29
  }
30
  swpm-password-reset-widget-form tr{
31
- border: none;
32
  }
33
  .swpm-password-reset-widget-form td{
34
- border: none;
35
  }
36
 
37
  /* Registration form CSS */
38
  .swpm-registration-widget-form td{
39
- min-width: 100px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
40
  }
 
 
 
1
  /* General CSS */
2
  .swpm-margin-10{
3
+ margin: 10px;
4
  }
5
  .swpm-margin-top-10{
6
+ margin-top: 10px;
7
  }
8
  .swpm-margin-bottom-10{
9
+ margin-bottom: 10px;
10
+ }
11
+
12
+ .swpm-yellow-box{
13
+ margin: 10px 0 15px;
14
+ padding: 10px;
15
+ background-color: #FFFFE0;
16
+ border-color: #E6DB55;
17
+ border-radius: 3px 3px 3px 3px;
18
+ border-style: solid;
19
+ border-width: 1px;
20
+ }
21
+
22
+ .swpm-grey-box{
23
+ margin: 10px 0 15px;
24
+ padding: 10px;
25
+ background-color: #DDDDDD;
26
+ border-color: #CCCCCC;
27
+ border-radius: 3px 3px 3px 3px;
28
+ border-style: solid;
29
+ border-width: 1px;
30
+ }
31
+ .swpm-green-box {
32
+ margin: 10px 0 15px;
33
+ padding: 10px;
34
+ background-color: #CCF4D6;
35
+ border-color: #059B53;
36
+ color: #043B14;
37
+ border-radius: 3px 3px 3px 3px;
38
+ border-style: solid;
39
+ border-width: 1px;
40
+ }
41
+
42
+ .swpm-red-box {
43
+ margin: 10px 0 15px;
44
+ padding: 10px;
45
+ background-color: #FFEBE8;
46
+ border-color: #CC0000;
47
+ color: #333333;
48
+ border-radius: 3px 3px 3px 3px;
49
+ border-style: solid;
50
+ border-width: 1px;
51
  }
52
 
53
  /* Login form CSS */
54
  .swpm-login-widget-form input,.swpm-login-widget-form checkbox{
55
+ width: auto;
56
  }
57
+ .swpm-username-input, .swpm-password-input{
58
+ margin-bottom: 10px;
59
  }
60
+ .swpm-login-submit{
61
+ margin-bottom: 10px;
62
  }
63
+ .swpm-login-widget-action-msg{
64
+ font-weight: bold;
65
+ }
66
+ .swpm-logged-label{
67
+ font-weight: bold;
68
  }
69
 
70
  /* Password reset form CSS */
71
  .swpm-password-reset-widget-form table{
72
+ border: none;
73
  }
74
  swpm-password-reset-widget-form tr{
75
+ border: none;
76
  }
77
  .swpm-password-reset-widget-form td{
78
+ border: none;
79
  }
80
 
81
  /* Registration form CSS */
82
  .swpm-registration-widget-form td{
83
+ min-width: 100px;
84
+ }
85
+
86
+ .swpm-restricted{
87
+ font-weight: bold;
88
+ color:red;
89
+ }
90
+ .swpm-select-box-left{
91
+ margin: 0;
92
+ padding-bottom: 5px;
93
+ }
94
+
95
+ /* Edit profile form CSS */
96
+ .swpm-account-delete-button{
97
+ text-align: center;
98
  }
99
+ .swpm-account-delete-button a{
100
+ color: red !important;
101
+ }
images/addons/form-shortcode-generator.png ADDED
Binary file
images/addons/mailchimp-integration.png ADDED
Binary file
images/addons/swpm-custom-messages.png ADDED
Binary file
images/addons/swpm-form-builder.png ADDED
Binary file
images/addons/swpm-login-redirection.png ADDED
Binary file
images/addons/swpm-older-posts-protection.png ADDED
Binary file
images/addons/wp-user-import.png ADDED
Binary file
images/index.html ADDED
File without changes
images/restricted-icon.png ADDED
Binary file
index.html ADDED
File without changes
ipn/index.html ADDED
File without changes
ipn/swpm_handle_pp_ipn.php CHANGED
@@ -26,17 +26,36 @@ class swpm_paypal_ipn_handler {
26
  $error_msg = "";
27
 
28
  // Read the IPN and validate
 
 
 
29
  $payment_status = $this->ipn_data['payment_status'];
 
 
30
  if (!empty($payment_status))
31
  {
32
- if ($payment_status != "Completed" && $payment_status != "Processed" && $payment_status != "Refunded")
 
 
 
 
 
 
 
 
33
  {
34
- $error_msg .= 'Funds have not been cleared yet. Product(s) will be delivered when the funds clear!';
35
  $this->debug_log($error_msg,false);
36
  return false;
37
  }
38
  }
39
 
 
 
 
 
 
 
40
  $custom = $this->ipn_data['custom'];
41
  $delimiter = "&";
42
  $customvariables = array();
@@ -54,17 +73,20 @@ class swpm_paypal_ipn_handler {
54
  $value = substr($keyval_unparsed, $equalsignposition + 1);
55
  $customvariables[$key] = $value;
56
  }
57
-
58
- $transaction_type = $this->ipn_data['txn_type'];
59
- $txn_id = $this->ipn_data['txn_id'];
60
- $gross_total = $this->ipn_data['mc_gross'];
61
  if ($gross_total < 0)
62
  {
63
  // This is a refund or reversal
64
- swpm_handle_subsc_cancel_stand_alone($this->ipn_data,true);
65
  $this->debug_log('This is a refund notification. Refund amount: '.$gross_total,true);
 
66
  return true;
67
  }
 
 
 
 
 
68
 
69
  if (($transaction_type == "subscr_signup"))
70
  {
@@ -109,11 +131,6 @@ class swpm_paypal_ipn_handler {
109
  array_push($cart_items, $current_item);
110
  }
111
 
112
- $product_id_array = Array();
113
- $product_name_array = Array();
114
- $product_price_array = Array();
115
- $attachments_array = Array();
116
- $download_link_array = Array();
117
  $counter = 0;
118
  foreach ($cart_items as $current_cart_item)
119
  {
@@ -155,13 +172,22 @@ class swpm_paypal_ipn_handler {
155
  }
156
  else
157
  {
158
- $this->debug_log('Membership level ID is missing in the payment notification! Cannot process this notification',false);
159
  }
160
  //== End of Membership payment handling ==
161
  $counter++;
162
  }
163
 
164
- // Do Post payment operation and cleanup
 
 
 
 
 
 
 
 
 
165
  if (function_exists('wp_aff_platform_install'))
166
  {
167
  $this->debug_log('WP Affiliate Platform is installed, checking if custom field has affiliate data...',true);
26
  $error_msg = "";
27
 
28
  // Read the IPN and validate
29
+ $gross_total = $this->ipn_data['mc_gross'];
30
+ $transaction_type = $this->ipn_data['txn_type'];
31
+ $txn_id = $this->ipn_data['txn_id'];
32
  $payment_status = $this->ipn_data['payment_status'];
33
+
34
+ //Check payment status
35
  if (!empty($payment_status))
36
  {
37
+ if ($payment_status == "Denied") {
38
+ $this->debug_log("Payment status for this transaction is DENIED. You denied the transaction... most likely a cancellation of an eCheque. Nothing to do here.", false);
39
+ return false;
40
+ }
41
+ if ($payment_status == "Canceled_Reversal") {
42
+ $this->debug_log("This is a dispute closed notification in your favour. The plugin will not do anyting.", false);
43
+ return true;
44
+ }
45
+ if ($payment_status != "Completed" && $payment_status != "Processed" && $payment_status != "Refunded" && $payment_status != "Reversed")
46
  {
47
+ $error_msg .= 'Funds have not been cleared yet. Transaction will be processed when the funds clear!';
48
  $this->debug_log($error_msg,false);
49
  return false;
50
  }
51
  }
52
 
53
+ //Check txn type
54
+ if ($transaction_type == "new_case") {
55
+ $this->debug_log('This is a dispute case. Nothing to do here.', true);
56
+ return true;
57
+ }
58
+
59
  $custom = $this->ipn_data['custom'];
60
  $delimiter = "&";
61
  $customvariables = array();
73
  $value = substr($keyval_unparsed, $equalsignposition + 1);
74
  $customvariables[$key] = $value;
75
  }
76
+
77
+ //Handle refunds
 
 
78
  if ($gross_total < 0)
79
  {
80
  // This is a refund or reversal
 
81
  $this->debug_log('This is a refund notification. Refund amount: '.$gross_total,true);
82
+ swpm_handle_subsc_cancel_stand_alone($this->ipn_data,true);
83
  return true;
84
  }
85
+ if (isset($this->ipn_data['reason_code']) && $this->ipn_data['reason_code'] == 'refund'){
86
+ $this->debug_log('This is a refund notification. Refund amount: '.$gross_total,true);
87
+ swpm_handle_subsc_cancel_stand_alone($this->ipn_data,true);
88
+ return true;
89
+ }
90
 
91
  if (($transaction_type == "subscr_signup"))
92
  {
131
  array_push($cart_items, $current_item);
132
  }
133
 
 
 
 
 
 
134
  $counter = 0;
135
  foreach ($cart_items as $current_cart_item)
136
  {
172
  }
173
  else
174
  {
175
+ $this->debug_log('Membership level ID is missing in the payment notification! Cannot process this notification.',false);
176
  }
177
  //== End of Membership payment handling ==
178
  $counter++;
179
  }
180
 
181
+ /*** Do Post payment operation and cleanup ***/
182
+ //Save the transaction data
183
+ $this->debug_log('Saving transaction data to the database table.', true);
184
+ $this->ipn_data['gateway'] = 'paypal';
185
+ $this->ipn_data['status'] = $this->ipn_data['payment_status'];
186
+ BTransactions::save_txn_record($this->ipn_data, $cart_items);
187
+ $this->debug_log('Transaction data saved.', true);
188
+
189
+
190
+ //WP Affiliate Plugin integration
191
  if (function_exists('wp_aff_platform_install'))
192
  {
193
  $this->debug_log('WP Affiliate Platform is installed, checking if custom field has affiliate data...',true);
ipn/swpm_handle_subsc_ipn.php CHANGED
@@ -6,16 +6,17 @@ function swpm_handle_subsc_signup_stand_alone($ipn_data,$subsc_ref,$unique_ref,$
6
  $settings = BSettings::get_instance();
7
  $members_table_name = $wpdb->prefix . "swpm_members_tbl";
8
  $membership_level_table = $wpdb->prefix . "swpm_membership_tbl";
 
9
 
10
  if(empty($swpm_id))
11
  {
12
  //Lets try to find an existing user profile for this payment
13
  $email = $ipn_data['payer_email'];
14
- $query_db = $wpdb->get_row("SELECT * FROM $members_table_name WHERE email = '$email'", OBJECT);
15
  if(!$query_db){//try to retrieve the member details based on the unique_ref
16
  swpm_debug_log_subsc("Could not find any record using the given email address (".$email."). Attempting to query database using the unique reference: ".$unique_ref,true);
17
  if(!empty($unique_ref)){
18
- $query_db = $wpdb->get_row("SELECT * FROM $members_table_name WHERE subscr_id = '$unique_ref'", OBJECT);
19
  $swpm_id = $query_db->member_id;
20
  }
21
  else{
@@ -33,14 +34,13 @@ function swpm_handle_subsc_signup_stand_alone($ipn_data,$subsc_ref,$unique_ref,$
33
  {
34
  //This is payment from an existing member/user. Update the existing member account
35
  swpm_debug_log_subsc("Modifying the existing membership profile... Member ID: ".$swpm_id,true);
36
- // upgrade the member account
37
- $account_state = 'active';
38
- $membership_level = $subsc_ref;
39
  $subscription_starts = (date ("Y-m-d"));
40
  $subscr_id = $unique_ref;
41
-
42
- $resultset = "";
43
- $resultset = $wpdb->get_row("SELECT * FROM $members_table_name where member_id='$swpm_id'", OBJECT);
44
  if(!$resultset){
45
  swpm_debug_log_subsc("ERROR! Could not find a member account record for the given Member ID: ".$swpm_id,false);
46
  return;
@@ -48,7 +48,7 @@ function swpm_handle_subsc_signup_stand_alone($ipn_data,$subsc_ref,$unique_ref,$
48
  $old_membership_level = $resultset->membership_level;
49
 
50
  swpm_debug_log_subsc("Not using secondary membership level feature... upgrading the current membership level.",true);
51
- $updatedb = "UPDATE $members_table_name SET account_state='$account_state',membership_level='$membership_level',subscription_starts='$subscription_starts',subscr_id='$subscr_id' WHERE member_id='$swpm_id'";
52
  $results = $wpdb->query($updatedb);
53
  do_action('swpm_membership_changed', array('member_id'=>$swpm_id, 'from_level'=>$old_membership_level, 'to_level'=>$membership_level));
54
 
@@ -72,34 +72,36 @@ function swpm_handle_subsc_signup_stand_alone($ipn_data,$subsc_ref,$unique_ref,$
72
  }// End of existing user account upgrade
73
  else
74
  {
 
75
  // create new member account
76
- $user_name ='';
77
- $password = '';
78
-
79
- $first_name = $ipn_data['first_name'];
80
- $last_name = $ipn_data['last_name'];
81
- $email = $ipn_data['payer_email'];
82
- $membership_level = $subsc_ref;
83
- $subscr_id = $unique_ref;
84
- $gender = 'not specified';
85
-
86
- swpm_debug_log_subsc("Membership level ID: ".$membership_level,true);
87
-
88
- $address_street = $ipn_data['address_street'];
89
- $address_city = $ipn_data['address_city'];
90
- $address_state = $ipn_data['address_state'];
91
- $address_zipcode = $ipn_data['address_zip'];
92
- $country = $ipn_data['address_country'];
93
-
94
- $date = (date ("Y-m-d"));
95
- $account_state = 'active';
96
  $reg_code = uniqid();//rand(10, 1000);
97
  $md5_code = md5($reg_code);
 
 
 
98
 
99
- $updatedb = "INSERT INTO $members_table_name (user_name,first_name,last_name,password,member_since,membership_level,account_state,last_accessed,last_accessed_from_ip,email,address_street,address_city,address_state,address_zipcode,country,gender,referrer,extra_info,reg_code,subscription_starts,txn_id,subscr_id) VALUES ('$user_name','$first_name','$last_name','$password', '$date','$membership_level','$account_state','$date','IP','$email','$address_street','$address_city','$address_state','$address_zipcode','$country','$gender','','','$md5_code','$date','','$subscr_id')";
100
- $results = $wpdb->query($updatedb);
101
-
102
- $results = $wpdb->get_row("SELECT * FROM $members_table_name where subscr_id='$subscr_id' and reg_code='$md5_code'", OBJECT);
103
  $id = $results->member_id; //Alternatively use $wpdb->insert_id;
104
  if(empty($id)){
105
  swpm_debug_log_subsc("Error! Failed to insert a new member record. This request will fail.",false);
@@ -124,7 +126,7 @@ function swpm_handle_subsc_signup_stand_alone($ipn_data,$subsc_ref,$unique_ref,$
124
  $from_address = $settings->get_value('email-from');
125
 
126
  $tags = array("{first_name}","{last_name}","{reg_link}");
127
- $vals = array($first_name,$last_name,$reg_url);
128
  $email_body = str_replace($tags,$vals,$body);
129
  $headers = 'From: '.$from_address . "\r\n";
130
  }
@@ -138,25 +140,31 @@ function swpm_handle_subsc_cancel_stand_alone($ipn_data,$refund=false)
138
  if($refund)
139
  {
140
  $subscr_id = $ipn_data['parent_txn_id'];
141
- swpm_debug_log_subsc("Refund notification check - check if a member account needs to be deactivated... subscr ID: ".$subscr_id,true);
142
  }
143
  else
144
  {
145
  $subscr_id = $ipn_data['subscr_id'];
146
  }
147
 
 
 
 
 
 
148
  global $wpdb;
149
  $members_table_name = $wpdb->prefix . "swpm_members_tbl";
150
 
151
- swpm_debug_log_subsc("Retrieving member account from the database...",true);
152
- $resultset = $wpdb->get_row("SELECT * FROM $members_table_name where subscr_id='$subscr_id'", OBJECT);
153
  if($resultset)
154
  {
155
  //Deactivate this account as it is a refund or cancellation
 
156
  $account_state = 'inactive';
157
- $updatedb = "UPDATE $members_table_name SET account_state='$account_state' WHERE subscr_id='$subscr_id'";
158
  $resultset = $wpdb->query($updatedb);
159
- swpm_debug_log_subsc("Subscription cancellation received! Member account deactivated.",true);
160
  }
161
  else
162
  {
@@ -172,32 +180,27 @@ function swpm_update_member_subscription_start_date_if_applicable($ipn_data)
172
  $membership_level_table = $wpdb->prefix . "swpm_membership_tbl";
173
  $email = $ipn_data['payer_email'];
174
  $subscr_id = $ipn_data['subscr_id'];
 
175
  swpm_debug_log_subsc("Updating subscription start date if applicable for this subscription payment. Subscriber ID: ".$subscr_id." Email: ".$email,true);
176
 
177
  //We can also query using the email address
178
- $query_db = $wpdb->get_row("SELECT * FROM $members_table_name WHERE subscr_id = '$subscr_id'", OBJECT);
179
  if($query_db){
180
  $swpm_id = $query_db->member_id;
181
  $current_primary_level = $query_db->membership_level;
182
  swpm_debug_log_subsc("Found a record in the member table. The Member ID of the account to check is: ".$swpm_id." Membership Level: ".$current_primary_level,true);
183
 
184
- $level_query = $wpdb->get_row("SELECT * FROM $membership_level_table where id='$current_primary_level'", OBJECT);
185
- if(!empty($level_query->subscription_period) && !empty($level_query->subscription_unit)){//Duration value is used
186
- $account_state = "active";
187
- $subscription_starts = (date ("Y-m-d"));
188
 
189
- $updatedb = "UPDATE $members_table_name SET account_state='$account_state',subscription_starts='$subscription_starts' WHERE member_id='$swpm_id'";
190
- $resultset = $wpdb->query($updatedb);
191
- swpm_debug_log_subsc("Updated the member profile with current date as the subscription start date.",true);
192
- }else{
193
- swpm_debug_log_subsc("This membership level is not using a duration/interval value as the subscription duration.",true);
194
- }
195
  }else{
196
  swpm_debug_log_subsc("Did not find a record in the members table for subscriber ID: ".$subscr_id,true);
197
  }
198
  }
199
 
200
- function swpm_debug_log_subsc($message,$success,$end=false)
201
  {
202
  $settings = BSettings::get_instance();
203
  $debug_enabled = $settings->get_value('enable-debug');
6
  $settings = BSettings::get_instance();
7
  $members_table_name = $wpdb->prefix . "swpm_members_tbl";
8
  $membership_level_table = $wpdb->prefix . "swpm_membership_tbl";
9
+ $membership_level = $subsc_ref;
10
 
11
  if(empty($swpm_id))
12
  {
13
  //Lets try to find an existing user profile for this payment
14
  $email = $ipn_data['payer_email'];
15
+ $query_db = $wpdb->get_row($wpdb->prepare("SELECT * FROM $members_table_name WHERE email = %s", $email), OBJECT);
16
  if(!$query_db){//try to retrieve the member details based on the unique_ref
17
  swpm_debug_log_subsc("Could not find any record using the given email address (".$email."). Attempting to query database using the unique reference: ".$unique_ref,true);
18
  if(!empty($unique_ref)){
19
+ $query_db = $wpdb->get_row($wpdb->prepare("SELECT * FROM $members_table_name WHERE subscr_id = %s", $unique_ref), OBJECT);
20
  $swpm_id = $query_db->member_id;
21
  }
22
  else{
34
  {
35
  //This is payment from an existing member/user. Update the existing member account
36
  swpm_debug_log_subsc("Modifying the existing membership profile... Member ID: ".$swpm_id,true);
37
+
38
+ //Upgrade the member account
39
+ $account_state = 'active';//This is renewal or upgrade of a previously active account. So the status should be set to active
40
  $subscription_starts = (date ("Y-m-d"));
41
  $subscr_id = $unique_ref;
42
+
43
+ $resultset = $wpdb->get_row($wpdb->prepare("SELECT * FROM $members_table_name where member_id=%d", $swpm_id), OBJECT);
 
44
  if(!$resultset){
45
  swpm_debug_log_subsc("ERROR! Could not find a member account record for the given Member ID: ".$swpm_id,false);
46
  return;
48
  $old_membership_level = $resultset->membership_level;
49
 
50
  swpm_debug_log_subsc("Not using secondary membership level feature... upgrading the current membership level.",true);
51
+ $updatedb = $wpdb->prepare("UPDATE $members_table_name SET account_state=%s, membership_level=%d,subscription_starts=%s,subscr_id=%s WHERE member_id=%d", $account_state, $membership_level, $subscription_starts, $subscr_id, $swpm_id);
52
  $results = $wpdb->query($updatedb);
53
  do_action('swpm_membership_changed', array('member_id'=>$swpm_id, 'from_level'=>$old_membership_level, 'to_level'=>$membership_level));
54
 
72
  }// End of existing user account upgrade
73
  else
74
  {
75
+ $default_account_status = $settings->get_value('default-account-status', 'active');
76
  // create new member account
77
+ $data = array();
78
+ $data['user_name'] ='';
79
+ $data['password'] = '';
80
+
81
+ $data['first_name'] = $ipn_data['first_name'];
82
+ $data['last_name'] = $ipn_data['last_name'];
83
+ $data['email'] = $ipn_data['payer_email'];
84
+ $data['membership_level'] = $membership_level;
85
+ $data['subscr_id'] = $unique_ref;
86
+ $data['gender'] = 'not specified';
87
+
88
+ swpm_debug_log_subsc("Creating new member account. Membership level ID: ".$membership_level,true);
89
+
90
+ $data['address_street'] = $ipn_data['address_street'];
91
+ $data['address_city'] = $ipn_data['address_city'];
92
+ $data['address_state'] = $ipn_data['address_state'];
93
+ $data['address_zipcode'] = $ipn_data['address_zip'];
94
+ $data['country'] = $ipn_data['address_country'];
95
+ $data['member_since'] = $data['subscription_starts'] = $data['last_accessed'] = date ("Y-m-d");
96
+ $data['account_state'] = $default_account_status;
97
  $reg_code = uniqid();//rand(10, 1000);
98
  $md5_code = md5($reg_code);
99
+ $data['reg_code'] = $md5_code;
100
+ $data['referrer'] = $data['extra_info'] = $data['txn_id'] = '';
101
+ $data['subscr_id']= $subscr_id;
102
 
103
+ $wpdb->insert($members_table_name, $data);//Create the member record
104
+ $results = $wpdb->get_row($wpdb->prepare("SELECT * FROM $members_table_name where subscr_id=%s and reg_code=%s",$subscr_id, $md5_code), OBJECT);
 
 
105
  $id = $results->member_id; //Alternatively use $wpdb->insert_id;
106
  if(empty($id)){
107
  swpm_debug_log_subsc("Error! Failed to insert a new member record. This request will fail.",false);
126
  $from_address = $settings->get_value('email-from');
127
 
128
  $tags = array("{first_name}","{last_name}","{reg_link}");
129
+ $vals = array($data['first_name'],$data['last_name'],$reg_url);
130
  $email_body = str_replace($tags,$vals,$body);
131
  $headers = 'From: '.$from_address . "\r\n";
132
  }
140
  if($refund)
141
  {
142
  $subscr_id = $ipn_data['parent_txn_id'];
143
+ swpm_debug_log_subsc("Refund notification check - check if a member account needs to be deactivated... parent_txn_id: ".$ipn_data['parent_txn_id'],true);
144
  }
145
  else
146
  {
147
  $subscr_id = $ipn_data['subscr_id'];
148
  }
149
 
150
+ if(empty($subscr_id)){
151
+ swpm_debug_log_subsc("No subscr_id associated with this transaction. Nothing to do here.",true);
152
+ return;
153
+ }
154
+
155
  global $wpdb;
156
  $members_table_name = $wpdb->prefix . "swpm_members_tbl";
157
 
158
+ swpm_debug_log_subsc("Retrieving member account from the database. Subscr_id: ".$subscr_id, true);
159
+ $resultset = $wpdb->get_row($wpdb->prepare("SELECT * FROM $members_table_name where subscr_id=%s", $subscr_id), OBJECT);
160
  if($resultset)
161
  {
162
  //Deactivate this account as it is a refund or cancellation
163
+ $member_id = $resultset->member_id;
164
  $account_state = 'inactive';
165
+ $updatedb = $wpdb->prepare("UPDATE $members_table_name SET account_state=%s WHERE member_id=%s", $account_state, $member_id);
166
  $resultset = $wpdb->query($updatedb);
167
+ swpm_debug_log_subsc("Subscription cancellation received! Member account deactivated. Member ID: ".$member_id, true);
168
  }
169
  else
170
  {
180
  $membership_level_table = $wpdb->prefix . "swpm_membership_tbl";
181
  $email = $ipn_data['payer_email'];
182
  $subscr_id = $ipn_data['subscr_id'];
183
+ $account_state = BSettings::get_instance()->get_value('default-account-status', 'active');
184
  swpm_debug_log_subsc("Updating subscription start date if applicable for this subscription payment. Subscriber ID: ".$subscr_id." Email: ".$email,true);
185
 
186
  //We can also query using the email address
187
+ $query_db = $wpdb->get_row($wpdb->prepare("SELECT * FROM $members_table_name WHERE subscr_id = %s", $subscr_id), OBJECT);
188
  if($query_db){
189
  $swpm_id = $query_db->member_id;
190
  $current_primary_level = $query_db->membership_level;
191
  swpm_debug_log_subsc("Found a record in the member table. The Member ID of the account to check is: ".$swpm_id." Membership Level: ".$current_primary_level,true);
192
 
193
+ $subscription_starts = (date ("Y-m-d"));
 
 
 
194
 
195
+ $updatedb = $wpdb->prepare("UPDATE $members_table_name SET account_state=%s,subscription_starts=%s WHERE member_id=%d", $account_state, $subscription_starts, $swpm_id);
196
+ $resultset = $wpdb->query($updatedb);
197
+ swpm_debug_log_subsc("Updated the member profile with current date as the subscription start date.",true);
 
 
 
198
  }else{
199
  swpm_debug_log_subsc("Did not find a record in the members table for subscriber ID: ".$subscr_id,true);
200
  }
201
  }
202
 
203
+ function swpm_debug_log_subsc($message,$success,$end=false)
204
  {
205
  $settings = BSettings::get_instance();
206
  $debug_enabled = $settings->get_value('enable-debug');
js/index.html ADDED
File without changes
js/jquery.validationEngine-en.js CHANGED
@@ -139,7 +139,10 @@
139
  "regex": /^[0-9a-zA-Z_]+$/,
140
  "alertText": "* Only number, character and underscore allowed"
141
  },
142
-
 
 
 
143
  // --- CUSTOM RULES -- Those are specific to the demos, they can be removed or changed to your likings
144
  "ajaxUserCall": {
145
  "url": "ajaxurl",
139
  "regex": /^[0-9a-zA-Z_]+$/,
140
  "alertText": "* Only number, character and underscore allowed"
141
  },
142
+ "noapostrophe": {
143
+ "regex": /^[^\']+$/,
144
+ "alertText": "* Apostrophe character is not allowed."
145
+ },
146
  // --- CUSTOM RULES -- Those are specific to the demos, they can be removed or changed to your likings
147
  "ajaxUserCall": {
148
  "url": "ajaxurl",
js/swpm.password-meter.js CHANGED
@@ -1,38 +1,41 @@
1
  (function($){
 
 
 
 
 
 
 
 
 
 
 
 
 
2
 
3
- function check_pass_strength() {
4
- var pass1 = $('#pass1').val(), user = $('#user_name').val(), pass2 = $('#pass2').val(), strength;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5
 
6
- $('#pass-strength-result').removeClass('short bad good strong');
7
- if ( ! pass1 ) {
8
- $('#pass-strength-result').html( pwsL10n.empty );
9
- return;
10
- }
11
-
12
- strength = passwordStrength(pass1, user, pass2);
13
-
14
- switch ( strength ) {
15
- case 2:
16
- $('#pass-strength-result').addClass('bad').html( pwsL10n['bad'] );
17
- break;
18
- case 3:
19
- $('#pass-strength-result').addClass('good').html( pwsL10n['good'] );
20
- break;
21
- case 4:
22
- $('#pass-strength-result').addClass('strong').html( pwsL10n['strong'] );
23
- break;
24
- case 5:
25
- $('#pass-strength-result').addClass('short').html( pwsL10n['mismatch'] );
26
- break;
27
- default:
28
- $('#pass-strength-result').addClass('short').html( pwsL10n['short'] );
29
- }
30
- }
31
-
32
- $(document).ready( function() {
33
- $('#pass1').val('').keyup( check_pass_strength );
34
- $('#pass2').val('').keyup( check_pass_strength );
35
- $('#pass-strength-result').show();
36
- });
37
 
38
  })(jQuery);
1
  (function($){
2
+ function check_pass_strength() {
3
+ var type = $('#swpm-profile-page').attr('type'), pass1 = $('#pass1').val(), pass2 = $('#pass2').val(), strength;
4
+ if (type === 'edit' && pass1.length === 0 && pass2.length === 0){
5
+ $('#pass1').closest('tr').removeClass('form-required');
6
+ }
7
+ else{
8
+ $('#pass1').closest('tr').addClass('form-required');
9
+ }
10
+ $('#pass-strength-result').removeClass('short bad good strong');
11
+ if ( ! pass1 ) {
12
+ $('#pass-strength-result').html( pwsL10n.empty );
13
+ return;
14
+ }
15
 
16
+ strength = wp.passwordStrength.meter( pass1, wp.passwordStrength.userInputBlacklist(), pass2 );
17
+ switch ( strength ) {
18
+ case 2:
19
+ $('#pass-strength-result').addClass('bad').html( pwsL10n['bad'] );
20
+ break;
21
+ case 3:
22
+ $('#pass-strength-result').addClass('good').html( pwsL10n['good'] );
23
+ break;
24
+ case 4:
25
+ $('#pass-strength-result').addClass('strong').html( pwsL10n['strong'] );
26
+ break;
27
+ case 5:
28
+ $('#pass-strength-result').addClass('short').html( pwsL10n['mismatch'] );
29
+ break;
30
+ default:
31
+ $('#pass-strength-result').addClass('short').html( pwsL10n['short'] );
32
+ }
33
+ }
34
 
35
+ $(document).ready( function() {
36
+ $('#pass1').val('').keyup( check_pass_strength );
37
+ $('#pass2').val('').keyup( check_pass_strength );
38
+ $('#pass-strength-result').show();
39
+ });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
40
 
41
  })(jQuery);
languages/swpm-da_DA.mo ADDED
Binary file
languages/swpm-da_DA.po ADDED
@@ -0,0 +1,934 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: Simple Membership\n"
4
+ "POT-Creation-Date: 2015-01-27 14:50+1000\n"
5
+ "PO-Revision-Date: 2015-02-07 20:18+0100\n"
6
+ "Last-Translator: \n"
7
+ "Language-Team: \n"
8
+ "MIME-Version: 1.0\n"
9
+ "Content-Type: text/plain; charset=UTF-8\n"
10
+ "Content-Transfer-Encoding: 8bit\n"
11
+ "X-Generator: Poedit 1.7.4\n"
12
+ "X-Poedit-KeywordsList: __;_e\n"
13
+ "X-Poedit-Basepath: .\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "Language: da_DK\n"
16
+ "X-Poedit-SearchPath-0: .\n"
17
+
18
+ #: simple-membership/classes/class.bAccessControl.php:21
19
+ #: simple-membership/classes/class.bAccessControl.php:28
20
+ #: simple-membership/classes/class.bAccessControl.php:48
21
+ msgid "You need to login to view this content. "
22
+ msgstr "Du skal logge ind for at se dette indhold."
23
+
24
+ #: simple-membership/classes/class.bAccessControl.php:35
25
+ #: simple-membership/classes/class.bAccessControl.php:39
26
+ #: simple-membership/classes/class.bAccessControl.php:54
27
+ msgid "You are not allowed to view this content"
28
+ msgstr "Du har ikke tilladelse til at se dette indhold."
29
+
30
+ #: simple-membership/classes/class.bAccessControl.php:72
31
+ msgid "You do no have permission to view rest of the content"
32
+ msgstr "Du har ikke tilladelse til at se resten af indholdet."
33
+
34
+ #: simple-membership/classes/class.bAccessControl.php:76
35
+ #: simple-membership/classes/class.bAccessControl.php:94
36
+ msgid "You need to login to view the rest of the content. "
37
+ msgstr "Du skal logge ind for at se resten af indholdet."
38
+
39
+ #: simple-membership/classes/class.bAdminRegistration.php:49
40
+ msgid "Registration Successful."
41
+ msgstr "Du er nu registreret."
42
+
43
+ #: simple-membership/classes/class.bAdminRegistration.php:54
44
+ #: simple-membership/classes/class.bAdminRegistration.php:89
45
+ #: simple-membership/classes/class.bMembershipLevel.php:42
46
+ #: simple-membership/classes/class.bMembershipLevel.php:60
47
+ msgid "Please correct the following:"
48
+ msgstr "Korriger venligst følgende:"
49
+
50
+ #: simple-membership/classes/class.bAjax.php:17
51
+ #: simple-membership/classes/class.bAjax.php:28
52
+ msgid "Aready taken"
53
+ msgstr "Anvendes allerede af en anden."
54
+
55
+ #: simple-membership/classes/class.bAjax.php:29
56
+ msgid "Available"
57
+ msgstr "Ledig"
58
+
59
+ #: simple-membership/classes/class.bAuth.php:46
60
+ #: simple-membership/classes/class.bFrontRegistration.php:173
61
+ msgid "User Not Found."
62
+ msgstr "Bruger ikke fundet."
63
+
64
+ #: simple-membership/classes/class.bAuth.php:53
65
+ msgid "Password Empty or Invalid."
66
+ msgstr "Kodeord er tomt eller ugyldigt."
67
+
68
+ #: simple-membership/classes/class.bAuth.php:76
69
+ msgid "Account is inactive."
70
+ msgstr "Kontoen er inaktiv."
71
+
72
+ #: simple-membership/classes/class.bAuth.php:93
73
+ msgid "Account has expired."
74
+ msgstr "Kontoen er udløbet."
75
+
76
+ #: simple-membership/classes/class.bAuth.php:100
77
+ msgid "You are logged in as:"
78
+ msgstr "Du er logget ind som:"
79
+
80
+ #: simple-membership/classes/class.bAuth.php:139
81
+ msgid "Logged Out Successfully."
82
+ msgstr "Du er nu logget ud."
83
+
84
+ #: simple-membership/classes/class.bAuth.php:186
85
+ msgid "Session Expired."
86
+ msgstr "Session udløbet."
87
+
88
+ #: simple-membership/classes/class.bAuth.php:194
89
+ msgid "Invalid User Name"
90
+ msgstr "Ugyldigt brugernavn"
91
+
92
+ #: simple-membership/classes/class.bAuth.php:202
93
+ msgid "Sorry! Something went wrong"
94
+ msgstr "Beklager. Noget gik galt."
95
+
96
+ #: simple-membership/classes/class.bCategoryList.php:15
97
+ #: simple-membership/classes/class.bMembers.php:21
98
+ #: simple-membership/classes/class.bMembershipLevels.php:8
99
+ #: simple-membership/classes/class.bMembershipLevels.php:17
100
+ #: simple-membership/views/add.php:30
101
+ #: simple-membership/views/admin_member_form_common_part.php:2
102
+ #: simple-membership/views/edit.php:52
103
+ msgid "Membership Level"
104
+ msgstr "Medlemskatergori"
105
+
106
+ #: simple-membership/classes/class.bCategoryList.php:16
107
+ #: simple-membership/classes/class.bMembershipLevels.php:9
108
+ #: simple-membership/classes/class.simple-wp-membership.php:464
109
+ msgid "Membership Levels"
110
+ msgstr "Medlemskategorier"
111
+
112
+ #: simple-membership/classes/class.bCategoryList.php:29
113
+ #: simple-membership/classes/class.bMembers.php:16
114
+ #: simple-membership/classes/class.bMembershipLevels.php:16
115
+ msgid "ID"
116
+ msgstr "ID"
117
+
118
+ #: simple-membership/classes/class.bCategoryList.php:30
119
+ msgid "Name"
120
+ msgstr "Navn"
121
+
122
+ #: simple-membership/classes/class.bCategoryList.php:31
123
+ msgid "Description"
124
+ msgstr "Beskrivelse"
125
+
126
+ #: simple-membership/classes/class.bCategoryList.php:32
127
+ msgid "Count"
128
+ msgstr "Antal"
129
+
130
+ #: simple-membership/classes/class.bCategoryList.php:63
131
+ msgid "Updated! "
132
+ msgstr "Opdateret."
133
+
134
+ #: simple-membership/classes/class.bForm.php:26
135
+ msgid ""
136
+ "Wordpress account exists with given user name. But given email doesn't match."
137
+ msgstr "Wordpress kontoen er oprettet, men email adressen matcher ikke."
138
+
139
+ #: simple-membership/classes/class.bForm.php:31
140
+ msgid ""
141
+ "Wordpress account exists with given email. But given user name doesn't match."
142
+ msgstr "Email adressen matcher en Wordpress konto, men ikke denne."
143
+
144
+ #: simple-membership/classes/class.bForm.php:40
145
+ msgid "User name is required"
146
+ msgstr "Brugernavn er påkrævet"
147
+
148
+ #: simple-membership/classes/class.bForm.php:44
149
+ msgid "User name contains invalid character"
150
+ msgstr "Brugernavn indeholder ugyldige karakterer."
151
+
152
+ #: simple-membership/classes/class.bForm.php:52
153
+ msgid "User name already exists."
154
+ msgstr "Brugernavnet eksisterer allerede."
155
+
156
+ #: simple-membership/classes/class.bForm.php:75
157
+ msgid "Password is required"
158
+ msgstr "Kodeord er påkrævet."
159
+
160
+ #: simple-membership/classes/class.bForm.php:82
161
+ msgid "Password mismatch"
162
+ msgstr "Kodeordene matcher ikke."
163
+
164
+ #: simple-membership/classes/class.bForm.php:98
165
+ msgid "Email is required"
166
+ msgstr "Email er påkrævet."
167
+
168
+ #: simple-membership/classes/class.bForm.php:102
169
+ msgid "Email is invalid"
170
+ msgstr "Ugyldig email."
171
+
172
+ #: simple-membership/classes/class.bForm.php:118
173
+ msgid "Email is already used."
174
+ msgstr "Email er allerede i brug."
175
+
176
+ #: simple-membership/classes/class.bForm.php:184
177
+ msgid "Member since field is invalid"
178
+ msgstr "Medlem siden feltet er ugyldigt."
179
+
180
+ #: simple-membership/classes/class.bForm.php:195
181
+ msgid "Access starts field is invalid"
182
+ msgstr "Adgangsfeltet er ugyldigt."
183
+
184
+ #: simple-membership/classes/class.bForm.php:205
185
+ msgid "Gender field is invalid"
186
+ msgstr "Kønsfeltet er ugyldigt."
187
+
188
+ #: simple-membership/classes/class.bForm.php:216
189
+ msgid "Account state field is invalid"
190
+ msgstr "Kontostatus feltet er ugyldigt."
191
+
192
+ #: simple-membership/classes/class.bForm.php:223
193
+ msgid "Invalid membership level"
194
+ msgstr "Ugyldigt medlemskategori."
195
+
196
+ #: simple-membership/classes/class.bFrontRegistration.php:61
197
+ msgid "Registration Successful. "
198
+ msgstr "Registrering fuldendt."
199
+
200
+ #: simple-membership/classes/class.bFrontRegistration.php:61
201
+ #: simple-membership/classes/class.bSettings.php:367
202
+ msgid "Please"
203
+ msgstr "Venligst"
204
+
205
+ #: simple-membership/classes/class.bFrontRegistration.php:61
206
+ #: simple-membership/classes/class.bSettings.php:367
207
+ #: simple-membership/views/login.php:21
208
+ msgid "Login"
209
+ msgstr "Login"
210
+
211
+ #: simple-membership/classes/class.bFrontRegistration.php:72
212
+ #: simple-membership/classes/class.bFrontRegistration.php:152
213
+ msgid "Please correct the following"
214
+ msgstr "Ret venligst følgende:"
215
+
216
+ #: simple-membership/classes/class.bFrontRegistration.php:106
217
+ msgid "Membership Level Couldn't be found."
218
+ msgstr "Medlemskategorien findes ikke."
219
+
220
+ #: simple-membership/classes/class.bFrontRegistration.php:162
221
+ msgid "Email Address Not Valid."
222
+ msgstr "Email adressen er ugyldig."
223
+
224
+ #: simple-membership/classes/class.bFrontRegistration.php:193
225
+ msgid "New password has been sent to your email address."
226
+ msgstr "Et nyt kodeord er blevet sendt til din email adresse."
227
+
228
+ #: simple-membership/classes/class.bLevelForm.php:47
229
+ msgid "Date format is not valid."
230
+ msgstr "Datoformatet er ugyldigt."
231
+
232
+ #: simple-membership/classes/class.bLevelForm.php:54
233
+ msgid "Access duration must be > 0."
234
+ msgstr "Tidsbegrænsningen skal være større end 0."
235
+
236
+ #: simple-membership/classes/class.bMembers.php:7
237
+ msgid "Member"
238
+ msgstr "Medlem"
239
+
240
+ #: simple-membership/classes/class.bMembers.php:8
241
+ #: simple-membership/classes/class.simple-wp-membership.php:462
242
+ msgid "Members"
243
+ msgstr "Medlemmer"
244
+
245
+ #: simple-membership/classes/class.bMembers.php:17
246
+ #: simple-membership/views/add.php:6 simple-membership/views/edit.php:4
247
+ msgid "User Name"
248
+ msgstr "Brugernavn"
249
+
250
+ #: simple-membership/classes/class.bMembers.php:18
251
+ #: simple-membership/views/add.php:22
252
+ #: simple-membership/views/admin_member_form_common_part.php:15
253
+ #: simple-membership/views/edit.php:20
254
+ msgid "First Name"
255
+ msgstr "Fornavn"
256
+
257
+ #: simple-membership/classes/class.bMembers.php:19
258
+ #: simple-membership/views/add.php:26
259
+ #: simple-membership/views/admin_member_form_common_part.php:19
260
+ #: simple-membership/views/edit.php:24
261
+ msgid "Last Name"
262
+ msgstr "Efternavn"
263
+
264
+ #: simple-membership/classes/class.bMembers.php:20
265
+ #: simple-membership/views/add.php:10 simple-membership/views/edit.php:8
266
+ msgid "Email"
267
+ msgstr "Email"
268
+
269
+ #: simple-membership/classes/class.bMembers.php:22
270
+ #: simple-membership/views/admin_member_form_common_part.php:11
271
+ msgid "Access Starts"
272
+ msgstr "Adgang starter"
273
+
274
+ #: simple-membership/classes/class.bMembers.php:23
275
+ msgid "Account State"
276
+ msgstr "Konto status"
277
+
278
+ #: simple-membership/classes/class.bMembers.php:35
279
+ #: simple-membership/classes/class.bMembershipLevels.php:29
280
+ msgid "Delete"
281
+ msgstr "Slet"
282
+
283
+ #: simple-membership/classes/class.bMembers.php:101
284
+ msgid "No Member found."
285
+ msgstr "Ingen medlemmer fundet."
286
+
287
+ #: simple-membership/classes/class.bMembershipLevel.php:37
288
+ msgid "Membership Level Creation Successful."
289
+ msgstr "Oprettelsen af medlem er fuldendt."
290
+
291
+ #: simple-membership/classes/class.bMembershipLevel.php:56
292
+ msgid "Updated Successfully."
293
+ msgstr "Opdatering er fuldendt."
294
+
295
+ #: simple-membership/classes/class.bMembershipLevels.php:18
296
+ msgid "Role"
297
+ msgstr "Rolle"
298
+
299
+ #: simple-membership/classes/class.bMembershipLevels.php:19
300
+ msgid "Access Valid For/Until"
301
+ msgstr "Adgang gyldig i / indtil"
302
+
303
+ #: simple-membership/classes/class.bSettings.php:30
304
+ msgid "Plugin Documentation"
305
+ msgstr "Plugin dokumentation"
306
+
307
+ #: simple-membership/classes/class.bSettings.php:32
308
+ msgid "General Settings"
309
+ msgstr "Generel opsætning"
310
+
311
+ #: simple-membership/classes/class.bSettings.php:34
312
+ msgid "Enable Free Membership"
313
+ msgstr "Tillad gratis medlemskab."
314
+
315
+ #: simple-membership/classes/class.bSettings.php:37
316
+ msgid "Enable/disable registration for free membership level"
317
+ msgstr "Tillad / stop registrering af gratismedlemskaber."
318
+
319
+ #: simple-membership/classes/class.bSettings.php:38
320
+ msgid "Free Membership Level ID"
321
+ msgstr "Gratis medlemskab niveau"
322
+
323
+ #: simple-membership/classes/class.bSettings.php:41
324
+ msgid "Assign free membership level ID"
325
+ msgstr "Tildel gratis medlemskab niveau"
326
+
327
+ #: simple-membership/classes/class.bSettings.php:42
328
+ msgid "Enable More Tag Protection"
329
+ msgstr "Tillad beskyttelse af flere tags."
330
+
331
+ #: simple-membership/classes/class.bSettings.php:45
332
+ msgid ""
333
+ "Enables or disables \"more\" tag protection in the posts and pages. Anything "
334
+ "after the More tag is protected. Anything before the more tag is teaser "
335
+ "content."
336
+ msgstr ""
337
+ "Tillad eller stop \"more\" tag beskyttelse in indlæg og sider. Alt efter "
338
+ "'mere' tag vil være beskyttet. Alt før 'mere' tag kan ses."
339
+
340
+ #: simple-membership/classes/class.bSettings.php:46
341
+ msgid "Hide Adminbar"
342
+ msgstr "Skjul administrationsværktøjslinie"
343
+
344
+ #: simple-membership/classes/class.bSettings.php:49
345
+ msgid ""
346
+ "WordPress shows an admin toolbar to the logged in users of the site. Check "
347
+ "this box if you want to hide that admin toolbar in the fronend of your site."
348
+ msgstr ""
349
+ "WordPress viser en administrationsværktøjslinie til brugere der er logget på "
350
+ "på denne side. Marker hvis du ønsker at skjule administrationsværktøjslinien."
351
+
352
+ #: simple-membership/classes/class.bSettings.php:51
353
+ msgid "Default Account Status"
354
+ msgstr "Normalt konto status"
355
+
356
+ #: simple-membership/classes/class.bSettings.php:56
357
+ msgid ""
358
+ "Select the default account status for newly registered users. If you want to "
359
+ "manually approve the members then you can set the status to \"Pending\"."
360
+ msgstr ""
361
+ "Vælg den normale konto status for nyregistrerede brugere. Hvis du ønsker at "
362
+ "godkende medlemmerne manuelt, kan du sætte status som \"Afventer\"."
363
+
364
+ #: simple-membership/classes/class.bSettings.php:62
365
+ msgid "Pages Settings"
366
+ msgstr "Sideopsætning"
367
+
368
+ #: simple-membership/classes/class.bSettings.php:64
369
+ msgid "Login Page URL"
370
+ msgstr "Login side URL"
371
+
372
+ #: simple-membership/classes/class.bSettings.php:68
373
+ msgid "Registration Page URL"
374
+ msgstr "Registreringsside URL"
375
+
376
+ #: simple-membership/classes/class.bSettings.php:72
377
+ msgid "Join Us Page URL"
378
+ msgstr "Bliv medlem side URL"
379
+
380
+ #: simple-membership/classes/class.bSettings.php:76
381
+ msgid "Edit Profile Page URL"
382
+ msgstr "Skift profilside URL"
383
+
384
+ #: simple-membership/classes/class.bSettings.php:80
385
+ msgid "Password Reset Page URL"
386
+ msgstr "Kodeord reset side URL"
387
+
388
+ #: simple-membership/classes/class.bSettings.php:85
389
+ msgid "Test & Debug Settings"
390
+ msgstr "Test & fejlrettelser indstillinger"
391
+
392
+ #: simple-membership/classes/class.bSettings.php:91
393
+ msgid "Enable Sandbox Testing"
394
+ msgstr "Tillad sandbox test"
395
+
396
+ #: simple-membership/classes/class.bSettings.php:94
397
+ msgid "Enable this option if you want to do sandbox payment testing."
398
+ msgstr "Tillad denne hvis du vil teste i sandbox."
399
+
400
+ #: simple-membership/classes/class.bSettings.php:104
401
+ msgid "Email Misc. Settings"
402
+ msgstr "Diverse email indstillinger"
403
+
404
+ #: simple-membership/classes/class.bSettings.php:106
405
+ msgid "From Email Address"
406
+ msgstr "Afsender email adresse"
407
+
408
+ #: simple-membership/classes/class.bSettings.php:111
409
+ msgid "Email Settings (Prompt to Complete Registration )"
410
+ msgstr "Email indstillinger (spørg for at færdiggøre registrering)"
411
+
412
+ #: simple-membership/classes/class.bSettings.php:113
413
+ #: simple-membership/classes/class.bSettings.php:124
414
+ #: simple-membership/classes/class.bSettings.php:143
415
+ msgid "Email Subject"
416
+ msgstr "Email emne"
417
+
418
+ #: simple-membership/classes/class.bSettings.php:117
419
+ #: simple-membership/classes/class.bSettings.php:128
420
+ #: simple-membership/classes/class.bSettings.php:147
421
+ msgid "Email Body"
422
+ msgstr "Email tekst"
423
+
424
+ #: simple-membership/classes/class.bSettings.php:122
425
+ msgid "Email Settings (Registration Complete)"
426
+ msgstr "Email indstillinger (fuldendt registrering)"
427
+
428
+ #: simple-membership/classes/class.bSettings.php:132
429
+ msgid "Send Notification To Admin"
430
+ msgstr "Send besked til administrator"
431
+
432
+ #: simple-membership/classes/class.bSettings.php:136
433
+ msgid "Send Email to Member When Added via Admin Dashboard"
434
+ msgstr "Send email til medlem som tilføjes via administrationskontrolpanelet."
435
+
436
+ #: simple-membership/classes/class.bSettings.php:141
437
+ msgid " Email Settings (Account Upgrade Notification)"
438
+ msgstr "Email indstillinger (besked om kontoopgradering)"
439
+
440
+ #: simple-membership/classes/class.bSettings.php:367
441
+ msgid "Not a Member?"
442
+ msgstr "Ikke medlem?"
443
+
444
+ #: simple-membership/classes/class.bSettings.php:367
445
+ #: simple-membership/views/login.php:27
446
+ msgid "Join Us"
447
+ msgstr "Meld dig ind"
448
+
449
+ #: simple-membership/classes/class.bUtils.php:63
450
+ msgid "Active"
451
+ msgstr "Aktiv"
452
+
453
+ #: simple-membership/classes/class.bUtils.php:64
454
+ msgid "Inactive"
455
+ msgstr "Inaktiv"
456
+
457
+ #: simple-membership/classes/class.bUtils.php:65
458
+ msgid "Pending"
459
+ msgstr "Afventer"
460
+
461
+ #: simple-membership/classes/class.bUtils.php:66
462
+ msgid "Expired"
463
+ msgstr "Udløbet"
464
+
465
+ #: simple-membership/classes/class.bUtils.php:251
466
+ msgid "Never"
467
+ msgstr "Aldrig"
468
+
469
+ #: simple-membership/classes/class.miscUtils.php:51
470
+ msgid "Registration"
471
+ msgstr "Registrering"
472
+
473
+ #: simple-membership/classes/class.miscUtils.php:74
474
+ msgid "Member Login"
475
+ msgstr "Medlemslogin"
476
+
477
+ #: simple-membership/classes/class.miscUtils.php:97
478
+ msgid "Profile"
479
+ msgstr "Profil"
480
+
481
+ #: simple-membership/classes/class.miscUtils.php:120
482
+ msgid "Password Reset"
483
+ msgstr "Kodeord reset"
484
+
485
+ #: simple-membership/classes/class.simple-wp-membership.php:184
486
+ msgid "You are not logged in."
487
+ msgstr "Du er ikke logget ind."
488
+
489
+ #: simple-membership/classes/class.simple-wp-membership.php:215
490
+ msgid "Simple WP Membership Protection"
491
+ msgstr "Simple WP Membership beskyttelse"
492
+
493
+ #: simple-membership/classes/class.simple-wp-membership.php:228
494
+ msgid "Simple Membership Protection options"
495
+ msgstr "Simple Membership Protection valgmuligheder"
496
+
497
+ #: simple-membership/classes/class.simple-wp-membership.php:244
498
+ msgid "Do you want to protect this content?"
499
+ msgstr "Vil du beskytte dette indhold?"
500
+
501
+ #: simple-membership/classes/class.simple-wp-membership.php:249
502
+ msgid "Select the membership level that can access this content:"
503
+ msgstr "Vælg medlemskategori der kan tilgå dette indhold:"
504
+
505
+ #: simple-membership/classes/class.simple-wp-membership.php:459
506
+ msgid "WP Membership"
507
+ msgstr "WP medlemskab"
508
+
509
+ #: simple-membership/classes/class.simple-wp-membership.php:466
510
+ msgid "Settings"
511
+ msgstr "Indstillinger"
512
+
513
+ #: simple-membership/classes/class.simple-wp-membership.php:468
514
+ msgid "Add-ons"
515
+ msgstr "Plugin"
516
+
517
+ #: simple-membership/views/add.php:14 simple-membership/views/admin_add.php:19
518
+ #: simple-membership/views/admin_edit.php:17
519
+ #: simple-membership/views/edit.php:12 simple-membership/views/login.php:11
520
+ msgid "Password"
521
+ msgstr "Kodeord"
522
+
523
+ #: simple-membership/views/add.php:18 simple-membership/views/edit.php:16
524
+ msgid "Repeat Password"
525
+ msgstr "Gentag kodeord"
526
+
527
+ #: simple-membership/views/add.php:37
528
+ msgid "Register"
529
+ msgstr "Registrer"
530
+
531
+ #: simple-membership/views/admin_add.php:6
532
+ msgid "Add Member"
533
+ msgstr "Tilmeld medlem"
534
+
535
+ #: simple-membership/views/admin_add.php:7
536
+ msgid "Create a brand new user and add it to this site."
537
+ msgstr "Tilmeld helt ny bruger til denne hjemmeside."
538
+
539
+ #: simple-membership/views/admin_add.php:11
540
+ msgid "User name"
541
+ msgstr "Brugernavn"
542
+
543
+ #: simple-membership/views/admin_add.php:11
544
+ #: simple-membership/views/admin_add.php:15
545
+ #: simple-membership/views/admin_add_level.php:11
546
+ #: simple-membership/views/admin_add_level.php:15
547
+ #: simple-membership/views/admin_add_level.php:19
548
+ #: simple-membership/views/admin_edit.php:9
549
+ #: simple-membership/views/admin_edit.php:13
550
+ #: simple-membership/views/admin_edit_level.php:10
551
+ #: simple-membership/views/admin_edit_level.php:14
552
+ #: simple-membership/views/admin_edit_level.php:18
553
+ msgid "(required)"
554
+ msgstr "(påkrævet)"
555
+
556
+ #: simple-membership/views/admin_add.php:15
557
+ #: simple-membership/views/admin_edit.php:13
558
+ msgid "E-mail"
559
+ msgstr "Email"
560
+
561
+ #: simple-membership/views/admin_add.php:19
562
+ msgid "(twice, required)"
563
+ msgstr "(to gange, påkrævet)"
564
+
565
+ #: simple-membership/views/admin_add.php:24
566
+ #: simple-membership/views/admin_edit.php:21
567
+ msgid "Strength indicator"
568
+ msgstr "Styrkeindikator"
569
+
570
+ #: simple-membership/views/admin_add.php:25
571
+ #: simple-membership/views/admin_edit.php:22
572
+ msgid ""
573
+ "Hint: The password should be at least seven characters long. To make it "
574
+ "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
575
+ "$ % ^ &amp; )."
576
+ msgstr ""
577
+ "Råd: Kodeordet skal være mindst syv karakterer langt. For at gøre det "
578
+ "stærkere, brug store og små bogstaver, tal og symboler som ! \" ? $ % ^ "
579
+ "&amp; )."
580
+
581
+ #: simple-membership/views/admin_add.php:29
582
+ #: simple-membership/views/admin_edit.php:26
583
+ #: simple-membership/views/loggedin.php:7
584
+ msgid "Account Status"
585
+ msgstr "Kontostatus"
586
+
587
+ #: simple-membership/views/admin_add.php:36
588
+ msgid "Add New Member "
589
+ msgstr "Tilmeld nyt medlem"
590
+
591
+ #: simple-membership/views/admin_addon_settings.php:2
592
+ #: simple-membership/views/admin_payment_settings.php:2
593
+ #: simple-membership/views/admin_settings.php:2
594
+ #: simple-membership/views/admin_tools_settings.php:2
595
+ msgid "Simple WP Membership::Settings"
596
+ msgstr "Simple WP Membership indstillinger"
597
+
598
+ #: simple-membership/views/admin_addon_settings.php:7
599
+ msgid ""
600
+ "Some of the simple membership plugin's addon settings and options will be "
601
+ "displayed here (if you have them)"
602
+ msgstr ""
603
+ "Nogle af de Simple Membership plugin indstillinger vil blive vist her (hvis "
604
+ "du har dem)."
605
+
606
+ #: simple-membership/views/admin_add_level.php:6
607
+ msgid "Create new membership level."
608
+ msgstr "Opret ny medlemskategori."
609
+
610
+ #: simple-membership/views/admin_add_level.php:11
611
+ #: simple-membership/views/admin_edit_level.php:10
612
+ msgid "Membership Level Name"
613
+ msgstr "Medlemskategori navn"
614
+
615
+ #: simple-membership/views/admin_add_level.php:15
616
+ #: simple-membership/views/admin_edit_level.php:14
617
+ msgid "Default WordPress Role"
618
+ msgstr "Standard WordPress rolle"
619
+
620
+ #: simple-membership/views/admin_add_level.php:19
621
+ #: simple-membership/views/admin_edit_level.php:18
622
+ msgid "Access Duration"
623
+ msgstr "Adgangsvarighed"
624
+
625
+ #: simple-membership/views/admin_add_level.php:22
626
+ msgid "No Expiry (Access for this level will not expire until cancelled"
627
+ msgstr ""
628
+ "Intet udløb (adgang til denne medlemskategori vil ikke udløbe med mindre den "
629
+ "slettes)."
630
+
631
+ #: simple-membership/views/admin_add_level.php:23
632
+ #: simple-membership/views/admin_add_level.php:25
633
+ #: simple-membership/views/admin_add_level.php:27
634
+ #: simple-membership/views/admin_add_level.php:29
635
+ #: simple-membership/views/admin_edit_level.php:22
636
+ #: simple-membership/views/admin_edit_level.php:25
637
+ #: simple-membership/views/admin_edit_level.php:28
638
+ #: simple-membership/views/admin_edit_level.php:31
639
+ msgid "Expire After"
640
+ msgstr "Udløber efter"
641
+
642
+ #: simple-membership/views/admin_add_level.php:24
643
+ #: simple-membership/views/admin_edit_level.php:23
644
+ msgid "Days (Access expires after given number of days)"
645
+ msgstr "Dage (adgang udløber efter et givent antal dage)"
646
+
647
+ #: simple-membership/views/admin_add_level.php:26
648
+ msgid "Weeks (Access expires after given number of weeks"
649
+ msgstr "Uger (adgang udløber efter et givent antal uger)"
650
+
651
+ #: simple-membership/views/admin_add_level.php:28
652
+ #: simple-membership/views/admin_edit_level.php:29
653
+ msgid "Months (Access expires after given number of months)"
654
+ msgstr "Måneder (adgang udløber efter et givent antal måneder)"
655
+
656
+ #: simple-membership/views/admin_add_level.php:30
657
+ #: simple-membership/views/admin_edit_level.php:32
658
+ msgid "Years (Access expires after given number of years)"
659
+ msgstr "År (adgang udløber efter et givent antal år)"
660
+
661
+ #: simple-membership/views/admin_add_level.php:31
662
+ #: simple-membership/views/admin_edit_level.php:34
663
+ msgid "Fixed Date Expiry"
664
+ msgstr "Fast udløbsdato"
665
+
666
+ #: simple-membership/views/admin_add_level.php:32
667
+ #: simple-membership/views/admin_edit_level.php:35
668
+ msgid "(Access expires on a fixed date)"
669
+ msgstr "(Adgang udløber på en bestemt dato)"
670
+
671
+ #: simple-membership/views/admin_add_level.php:36
672
+ msgid "Access to older posts."
673
+ msgstr "Adgang til ældre indlæg."
674
+
675
+ #: simple-membership/views/admin_add_level.php:39
676
+ msgid "Only allow access to posts published after the user's join date."
677
+ msgstr "Tillad kun adgang til indlæg udgivet efter brugerens indmeldelsesdato."
678
+
679
+ #: simple-membership/views/admin_add_level.php:45
680
+ msgid "Add New Membership Level "
681
+ msgstr "Opret ny medlemskategori."
682
+
683
+ #: simple-membership/views/admin_add_ons_page.php:6
684
+ msgid "Simple WP Membership::Add-ons"
685
+ msgstr "Simple WP Membership :: Plugin"
686
+
687
+ #: simple-membership/views/admin_category_list.php:2
688
+ msgid "Simple WP Membership::Categories"
689
+ msgstr "Simple WP Membership :: Kategorier"
690
+
691
+ #: simple-membership/views/admin_category_list.php:7
692
+ msgid ""
693
+ "First of all, globally protect the category on your site by selecting "
694
+ "\"General Protection\" from the drop-down box below and then select the "
695
+ "categories that should be protected from non-logged in users."
696
+ msgstr ""
697
+ "Vælg ført global beskyttelse af kategorien på din internetside ved at vælge "
698
+ "\"General Protection\" fra dropdown boksen nedenfor, og vælg så de "
699
+ "kategorier som skal beskyttes mod brugere, der ikke er logget ind."
700
+
701
+ #: simple-membership/views/admin_category_list.php:10
702
+ msgid ""
703
+ "Next, select an existing membership level from the drop-down box below and "
704
+ "then select the categories you want to grant access to (for that particular "
705
+ "membership level)."
706
+ msgstr ""
707
+ "Vælg derefter en eksistererende medlemskategori fra dropdown boksen "
708
+ "herunder, og vælg så de kategorier du ønsker at give medlemskategorien "
709
+ "adgang til."
710
+
711
+ #: simple-membership/views/admin_edit.php:5
712
+ msgid "Edit Member"
713
+ msgstr "Ret medlem"
714
+
715
+ #: simple-membership/views/admin_edit.php:6
716
+ msgid "Edit existing member details."
717
+ msgstr "Ret eksisterende medlemsindstillinger."
718
+
719
+ #: simple-membership/views/admin_edit.php:9
720
+ #: simple-membership/views/login.php:5
721
+ msgid "Username"
722
+ msgstr "Brugernavn"
723
+
724
+ #: simple-membership/views/admin_edit.php:17
725
+ msgid "(twice, leave empty to retain old password)"
726
+ msgstr "(to gange, efterlad tomt for at bevare nuværende kodeord)"
727
+
728
+ #: simple-membership/views/admin_edit.php:33
729
+ msgid "Notify User"
730
+ msgstr "Send besked til bruger"
731
+
732
+ #: simple-membership/views/admin_edit.php:40
733
+ msgid "Edit User "
734
+ msgstr "Ret bruger"
735
+
736
+ #: simple-membership/views/admin_edit_level.php:5
737
+ msgid "Edit membership level"
738
+ msgstr "Ret medlemskategori"
739
+
740
+ #: simple-membership/views/admin_edit_level.php:6
741
+ msgid "Edit membership level."
742
+ msgstr "Ret medlemskategori."
743
+
744
+ #: simple-membership/views/admin_edit_level.php:21
745
+ msgid "No Expiry (Access for this level will not expire until cancelled)"
746
+ msgstr ""
747
+ "Intet udløb (adgang til denne kategori udløber ikke med mindre kategorien "
748
+ "slettes)."
749
+
750
+ #: simple-membership/views/admin_edit_level.php:26
751
+ msgid "Weeks (Access expires after given number of weeks)"
752
+ msgstr "Uger (adgang udløber efter et givent antal uger)"
753
+
754
+ #: simple-membership/views/admin_edit_level.php:40
755
+ msgid "Protect Older Posts (optional)"
756
+ msgstr "Beskyt ældre indlæg (valgfrit)"
757
+
758
+ #: simple-membership/views/admin_edit_level.php:43
759
+ msgid ""
760
+ "Only allow access to protected posts published after the members's join date."
761
+ msgstr ""
762
+ "Beskyt kun adgang til beskyttede indlæg udgivet efter medlemmets "
763
+ "indmeldelsesdato."
764
+
765
+ #: simple-membership/views/admin_edit_level.php:51
766
+ msgid "Edit Membership Level "
767
+ msgstr "Ret medlemskategori"
768
+
769
+ #: simple-membership/views/admin_members.php:2
770
+ msgid "Simple WP Membership::Members"
771
+ msgstr "Simple WP Membership :: Medlemmer"
772
+
773
+ #: simple-membership/views/admin_members.php:3
774
+ #: simple-membership/views/admin_members.php:19
775
+ #: simple-membership/views/admin_membership_levels.php:20
776
+ msgid "Add New"
777
+ msgstr "Opret ny"
778
+
779
+ #: simple-membership/views/admin_members.php:9
780
+ #: simple-membership/views/admin_membership_levels.php:10
781
+ msgid "search"
782
+ msgstr "søg"
783
+
784
+ #: simple-membership/views/admin_membership_levels.php:2
785
+ msgid "Simple WP Membership::Membership Levels"
786
+ msgstr "Simple WP Membership :: Medlemskategori"
787
+
788
+ #: simple-membership/views/admin_membership_level_menu.php:2
789
+ msgid "Membership level"
790
+ msgstr "Medlemskategori"
791
+
792
+ #: simple-membership/views/admin_membership_level_menu.php:3
793
+ msgid "Manage Content Production"
794
+ msgstr "Håndter indholdsproduktion"
795
+
796
+ #: simple-membership/views/admin_membership_level_menu.php:4
797
+ msgid "Category Protection"
798
+ msgstr "Kategoribeskyttelse"
799
+
800
+ #: simple-membership/views/admin_membership_manage.php:17
801
+ msgid "Example Content Protection Settings"
802
+ msgstr "Eksempel på indstillinger af indholdsbeskyttelse"
803
+
804
+ #: simple-membership/views/admin_member_form_common_part.php:23
805
+ msgid "Gender"
806
+ msgstr "Køn"
807
+
808
+ #: simple-membership/views/admin_member_form_common_part.php:30
809
+ #: simple-membership/views/edit.php:28
810
+ msgid "Phone"
811
+ msgstr "Telefon"
812
+
813
+ #: simple-membership/views/admin_member_form_common_part.php:34
814
+ #: simple-membership/views/edit.php:32
815
+ msgid "Street"
816
+ msgstr "Gade"
817
+
818
+ #: simple-membership/views/admin_member_form_common_part.php:38
819
+ #: simple-membership/views/edit.php:36
820
+ msgid "City"
821
+ msgstr "By"
822
+
823
+ #: simple-membership/views/admin_member_form_common_part.php:42
824
+ #: simple-membership/views/edit.php:40
825
+ msgid "State"
826
+ msgstr "Stat"
827
+
828
+ #: simple-membership/views/admin_member_form_common_part.php:46
829
+ #: simple-membership/views/edit.php:44
830
+ msgid "Zipcode"
831
+ msgstr "Postnummer"
832
+
833
+ #: simple-membership/views/admin_member_form_common_part.php:50
834
+ #: simple-membership/views/edit.php:48
835
+ msgid "Country"
836
+ msgstr "Land"
837
+
838
+ #: simple-membership/views/admin_member_form_common_part.php:54
839
+ msgid "Company"
840
+ msgstr "Virksomhed"
841
+
842
+ #: simple-membership/views/admin_member_form_common_part.php:58
843
+ msgid "Member Since"
844
+ msgstr "Medlem siden"
845
+
846
+ #: simple-membership/views/admin_payment_settings.php:33
847
+ msgid "PayPal Integration Settings"
848
+ msgstr "PayPal integrationsindstillinger"
849
+
850
+ #: simple-membership/views/admin_payment_settings.php:36
851
+ msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
852
+ msgstr "Generer \"avancerede muligheder\" kode til din PayPal knap"
853
+
854
+ #: simple-membership/views/admin_payment_settings.php:39
855
+ msgid "Enter the Membership Level ID"
856
+ msgstr "Indtast medlemskategori ID"
857
+
858
+ #: simple-membership/views/admin_payment_settings.php:41
859
+ msgid "Generate Code"
860
+ msgstr "Generer kode"
861
+
862
+ #: simple-membership/views/admin_tools_settings.php:9
863
+ msgid "Generate a Registration Completion link"
864
+ msgstr "Generer et registrering komplet link"
865
+
866
+ #: simple-membership/views/admin_tools_settings.php:12
867
+ msgid ""
868
+ "You can manually generate a registration completion link here and give it to "
869
+ "your customer if they have missed the email that was automatically sent out "
870
+ "to them after the payment."
871
+ msgstr ""
872
+ "Du kan generere et registrering komplet link manuelt her og give det til dit "
873
+ "medlem, hvis medlemmet ikke har emailen, som blev sendt automatisk "
874
+ "umiddelbart efter betaling."
875
+
876
+ #: simple-membership/views/admin_tools_settings.php:17
877
+ msgid "Generate Registration Completion Link"
878
+ msgstr "Generer registrering komplet link"
879
+
880
+ #: simple-membership/views/admin_tools_settings.php:20
881
+ msgid "OR"
882
+ msgstr "ELLER"
883
+
884
+ #: simple-membership/views/admin_tools_settings.php:21
885
+ msgid "For All Pending Registrations"
886
+ msgstr "For alle afventende registreringer"
887
+
888
+ #: simple-membership/views/admin_tools_settings.php:24
889
+ msgid "Registration Completion Links Will Appear Below:"
890
+ msgstr "Registrering komplet links vil fremgå herunder:"
891
+
892
+ #: simple-membership/views/admin_tools_settings.php:31
893
+ msgid "Send Registration Reminder Email too"
894
+ msgstr "Send også email med registreringspåmindelse"
895
+
896
+ #: simple-membership/views/admin_tools_settings.php:34
897
+ msgid "Submit"
898
+ msgstr "Send"
899
+
900
+ #: simple-membership/views/edit.php:58
901
+ msgid "Update"
902
+ msgstr "Opdater"
903
+
904
+ #: simple-membership/views/forgot_password.php:5
905
+ msgid "Email Address"
906
+ msgstr "Email adresse"
907
+
908
+ #: simple-membership/views/forgot_password.php:12
909
+ msgid "Reset Password"
910
+ msgstr "Opdater kodeord"
911
+
912
+ #: simple-membership/views/loggedin.php:3
913
+ msgid "Logged in as"
914
+ msgstr "Logged ind som"
915
+
916
+ #: simple-membership/views/loggedin.php:11
917
+ msgid "Membership"
918
+ msgstr "Medlemskab"
919
+
920
+ #: simple-membership/views/loggedin.php:15
921
+ msgid "Account Expiry"
922
+ msgstr "Kontoudløb"
923
+
924
+ #: simple-membership/views/loggedin.php:19
925
+ msgid "Logout"
926
+ msgstr "Log ud"
927
+
928
+ #: simple-membership/views/login.php:18
929
+ msgid "Remember Me"
930
+ msgstr "Påmind mig"
931
+
932
+ #: simple-membership/views/login.php:24
933
+ msgid "Forgot Password"
934
+ msgstr "Glemt kodeord"
languages/swpm-de_DE.mo ADDED
Binary file
languages/swpm-de_DE.po ADDED
@@ -0,0 +1,710 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: simple membership plugin depal\n"
4
+ "POT-Creation-Date: 2014-08-28 19:28+1000\n"
5
+ "PO-Revision-Date: 2014-10-10 09:44+0100\n"
6
+ "Last-Translator: \n"
7
+ "Language-Team: \n"
8
+ "MIME-Version: 1.0\n"
9
+ "Content-Type: text/plain; charset=UTF-8\n"
10
+ "Content-Transfer-Encoding: 8bit\n"
11
+ "X-Generator: Poedit 1.6.9\n"
12
+ "X-Poedit-KeywordsList: __;_e\n"
13
+ "X-Poedit-Basepath: .\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "Language: en_US\n"
16
+ "X-Poedit-SearchPath-0: .\n"
17
+
18
+ #: classes/class.bAccessControl.php:23 classes/class.bAccessControl.php:40
19
+ msgid "You are not allowed to view this content"
20
+ msgstr "Sie haben keine Berechtigung diesen Inhalt zu sehen."
21
+
22
+ #: classes/class.bAccessControl.php:26 classes/class.bAccessControl.php:43
23
+ msgid "You need to login to view this content. "
24
+ msgstr "Sie müssen Sich einloggen um den Inhalt lesen zu können."
25
+
26
+ #: classes/class.bAdminRegistration.php:48
27
+ #: classes/class.bFrontRegistration.php:64
28
+ msgid "Registration Successful."
29
+ msgstr "Registrierung erfolgreich"
30
+
31
+ #: classes/class.bAdminRegistration.php:53
32
+ #: classes/class.bAdminRegistration.php:73
33
+ #: classes/class.bMembershipLevel.php:36 classes/class.bMembershipLevel.php:54
34
+ msgid "Please correct the following:"
35
+ msgstr "Bitte korrigieren Sie folgendes:"
36
+
37
+ #: classes/class.bAjax.php:16 classes/class.bAjax.php:28
38
+ msgid "Aready taken"
39
+ msgstr "bereits verwendet"
40
+
41
+ #: classes/class.bAjax.php:29
42
+ msgid "Available"
43
+ msgstr "verfügbar"
44
+
45
+ #: classes/class.bAuth.php:48 classes/class.bFrontRegistration.php:179
46
+ msgid "User Not Found."
47
+ msgstr "Benutzer unbekannt"
48
+
49
+ #: classes/class.bAuth.php:55
50
+ msgid "Password Empty or Invalid."
51
+ msgstr "kein oder ungültiges Passwort"
52
+
53
+ #: classes/class.bAuth.php:79
54
+ msgid "Account is inactive."
55
+ msgstr "Account in inaktiv"
56
+
57
+ #: classes/class.bAuth.php:89
58
+ msgid "You are logged in as:"
59
+ msgstr "eingeloggt als:"
60
+
61
+ #: classes/class.bAuth.php:128
62
+ msgid "Logged Out Successfully."
63
+ msgstr "Sie haben Sich erfolgreich ausgeloggt"
64
+
65
+ #: classes/class.bAuth.php:170
66
+ msgid "Session Expired."
67
+ msgstr "Sitzung abgelaufen"
68
+
69
+ #: classes/class.bAuth.php:179
70
+ msgid "Invalid User Name"
71
+ msgstr "Ungültiger Benutzername"
72
+
73
+ #: classes/class.bAuth.php:187
74
+ msgid "Bad Cookie Hash"
75
+ msgstr "Bad Cookie Hash"
76
+
77
+ #: classes/class.bForm.php:26
78
+ msgid ""
79
+ "Wordpress account exists with given user name. But given email doesn't match."
80
+ msgstr ""
81
+ "Es existiert bereits ein Account mit den angegebenen Benutzernamen. Die E-"
82
+ "Mail Adresse passt nicht zum Benutznamen"
83
+
84
+ #: classes/class.bForm.php:31
85
+ msgid ""
86
+ "Wordpress account exists with given email. But given user name doesn't match."
87
+ msgstr ""
88
+ "Es existiert bereits ein Account mit der angegebenen E-Mail Adresse. Der "
89
+ "Benutzername passt nicht zur E-Mail Adresse"
90
+
91
+ #: classes/class.bForm.php:40
92
+ msgid "User name is required"
93
+ msgstr "Benutzername erforderlich"
94
+
95
+ #: classes/class.bForm.php:49
96
+ msgid "User name already exists."
97
+ msgstr "Benutzername wird bereits verwendet"
98
+
99
+ #: classes/class.bForm.php:72
100
+ msgid "Password is required"
101
+ msgstr "Passwort erforderlich"
102
+
103
+ #: classes/class.bForm.php:79
104
+ msgid "Password mismatch"
105
+ msgstr "Passwörter stimmen nicht überein"
106
+
107
+ #: classes/class.bForm.php:95
108
+ msgid "Email is required"
109
+ msgstr "E-Mail Adresse erforderlich"
110
+
111
+ #: classes/class.bForm.php:99
112
+ msgid "Email is invalid"
113
+ msgstr "ungültige E-Mail Adresse"
114
+
115
+ #: classes/class.bForm.php:112
116
+ msgid "Email is already used."
117
+ msgstr "E-Mail Adresse wird bereits verwendet"
118
+
119
+ #: classes/class.bForm.php:178
120
+ msgid "Member since field is invalid"
121
+ msgstr "\"Mitglied seit\" Feld ist inkorrekt"
122
+
123
+ #: classes/class.bForm.php:189
124
+ msgid "Subscription starts field is invalid"
125
+ msgstr "\"Mitgliedschaft beginnt am\" Feld ist inkorrekt"
126
+
127
+ #: classes/class.bForm.php:199
128
+ msgid "Gender field is invalid"
129
+ msgstr "Feld \"Geschlecht\" ist inkorrekt"
130
+
131
+ #: classes/class.bForm.php:210
132
+ msgid "Account state field is invalid"
133
+ msgstr "Accountstatus Feld ist ungültig"
134
+
135
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
136
+ msgid "Please"
137
+ msgstr "Bitte"
138
+
139
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
140
+ #: views/login.php:21
141
+ msgid "Login"
142
+ msgstr "Login"
143
+
144
+ #: classes/class.bFrontRegistration.php:79
145
+ #: classes/class.bFrontRegistration.php:158
146
+ msgid "Please correct the following"
147
+ msgstr "Bitte korrigieren Sie folgendes"
148
+
149
+ #: classes/class.bFrontRegistration.php:92
150
+ msgid "Membership Level Couldn't be found."
151
+ msgstr "Mitgliedschaftslevel konnte nicht gefunden werden"
152
+
153
+ #: classes/class.bFrontRegistration.php:168
154
+ msgid "Email Address Not Valid."
155
+ msgstr "Ungültige E-Mail Adresse"
156
+
157
+ #: classes/class.bFrontRegistration.php:199
158
+ msgid "New password has been sent to your email address."
159
+ msgstr "Ein neues Passwort wurde an Ihre E-Mail Adresse versandt"
160
+
161
+ #: classes/class.bLevelForm.php:31
162
+ msgid "Subscriptoin duration must be > 0."
163
+ msgstr "Mitgliedschaft muss länger als 0 sein"
164
+
165
+ #: classes/class.bMembers.php:7
166
+ msgid "Member"
167
+ msgstr "Mitglied"
168
+
169
+ #: classes/class.bMembers.php:8 classes/class.simple-wp-membership.php:467
170
+ msgid "Members"
171
+ msgstr "Mitglieder"
172
+
173
+ #: classes/class.bMembers.php:16 classes/class.bMembershipLevels.php:16
174
+ msgid "ID"
175
+ msgstr "ID"
176
+
177
+ #: classes/class.bMembers.php:17 views/add.php:5 views/edit.php:4
178
+ #: views/login.php:5
179
+ msgid "User Name"
180
+ msgstr "Benutzername"
181
+
182
+ #: classes/class.bMembers.php:18 views/add.php:21
183
+ #: views/admin_member_form_common_part.php:2 views/edit.php:20
184
+ msgid "First Name"
185
+ msgstr "Vorname"
186
+
187
+ #: classes/class.bMembers.php:19 views/add.php:25
188
+ #: views/admin_member_form_common_part.php:6 views/edit.php:24
189
+ msgid "Last Name"
190
+ msgstr "Nachname"
191
+
192
+ #: classes/class.bMembers.php:20 views/add.php:9 views/edit.php:8
193
+ msgid "Email"
194
+ msgstr "E-Mail Adresse"
195
+
196
+ #: classes/class.bMembers.php:21 classes/class.bMembershipLevels.php:8
197
+ #: classes/class.bMembershipLevels.php:17 views/add.php:64
198
+ #: views/admin_member_form_common_part.php:55 views/edit.php:52
199
+ msgid "Membership Level"
200
+ msgstr "Mitgliedschaft"
201
+
202
+ #: classes/class.bMembers.php:22 views/admin_member_form_common_part.php:78
203
+ msgid "Subscription Starts"
204
+ msgstr "Mitgliedschaft beginnt"
205
+
206
+ #: classes/class.bMembers.php:23
207
+ msgid "Account State"
208
+ msgstr "Account Status"
209
+
210
+ #: classes/class.bMembers.php:35 classes/class.bMembershipLevels.php:29
211
+ msgid "Delete"
212
+ msgstr "Löschen"
213
+
214
+ #: classes/class.bMembers.php:100
215
+ msgid "No Member found."
216
+ msgstr "Kein Benutzer gefunden."
217
+
218
+ #: classes/class.bMembershipLevel.php:31
219
+ msgid "Membership Level Creation Successful."
220
+ msgstr "Mitgliedschaftslevel erfolgreich hergestellt"
221
+
222
+ #: classes/class.bMembershipLevel.php:50
223
+ msgid "Updated Successfully."
224
+ msgstr "Update erfolgreich"
225
+
226
+ #: classes/class.bMembershipLevels.php:9
227
+ #: classes/class.simple-wp-membership.php:469
228
+ msgid "Membership Levels"
229
+ msgstr "Migliedschaftslevels"
230
+
231
+ #: classes/class.bMembershipLevels.php:18
232
+ msgid "Role"
233
+ msgstr "Rolle"
234
+
235
+ #: classes/class.bMembershipLevels.php:19
236
+ msgid "Subscription Valid For"
237
+ msgstr "Mitgliedschaft gültig für"
238
+
239
+ #: classes/class.bSettings.php:28
240
+ msgid "Plugin Documentation"
241
+ msgstr "Plugin Dokumentation"
242
+
243
+ #: classes/class.bSettings.php:30
244
+ msgid "General Settings"
245
+ msgstr "Allgemeine Einstellungen"
246
+
247
+ #: classes/class.bSettings.php:32
248
+ msgid "Enable Free Membership"
249
+ msgstr "Kostenlose Mitgliedschaft freischalten"
250
+
251
+ #: classes/class.bSettings.php:35
252
+ msgid "Enable/disable registration for free membership level"
253
+ msgstr "Registrieren für kostenlose Mitgliedschaft aktivieren/deaktivieren"
254
+
255
+ #: classes/class.bSettings.php:36
256
+ msgid "Free Membership Level ID"
257
+ msgstr "Kostenlose Mitgliedschaft "
258
+
259
+ #: classes/class.bSettings.php:39
260
+ msgid "Assign free membership level ID"
261
+ msgstr "Kostenlose Mitgliedschafts-ID zuweisen"
262
+
263
+ #: classes/class.bSettings.php:40
264
+ msgid "Hide Adminbar"
265
+ msgstr "Adminbar verstecken"
266
+
267
+ #: classes/class.bSettings.php:43
268
+ msgid ""
269
+ "WordPress shows an admin toolbar to the logged in users of the site. Check "
270
+ "this box if you want to hide that admin toolbar in the fronend of your site."
271
+ msgstr ""
272
+ "Füe eingeloggte User ist in WordPress die Admin Toolbar standardmäßig "
273
+ "sichtbar. Setzen Sie ein Häkchen um die Admin Toolbar auszublenden"
274
+
275
+ #: classes/class.bSettings.php:45
276
+ msgid "Pages Settings"
277
+ msgstr "Seiteneinstellungen"
278
+
279
+ #: classes/class.bSettings.php:47
280
+ msgid "Login Page URL"
281
+ msgstr "Login Seite URL"
282
+
283
+ #: classes/class.bSettings.php:51
284
+ msgid "Registration Page URL"
285
+ msgstr "Registrierungsseite URL"
286
+
287
+ #: classes/class.bSettings.php:55
288
+ msgid "Join Us Page URL"
289
+ msgstr "Mit"
290
+
291
+ #: classes/class.bSettings.php:59
292
+ msgid "Edit Profile Page URL"
293
+ msgstr "Profilseite URL"
294
+
295
+ #: classes/class.bSettings.php:63
296
+ msgid "Password Reset Page URL"
297
+ msgstr "Passwort zurücksetzen URL"
298
+
299
+ #: classes/class.bSettings.php:68
300
+ msgid "Test & Debug Settings"
301
+ msgstr "Test & Debug Einstellungen"
302
+
303
+ #: classes/class.bSettings.php:74
304
+ msgid "Enable Sandbox Testing"
305
+ msgstr "Sandkasten Tests aktivieren"
306
+
307
+ #: classes/class.bSettings.php:77
308
+ msgid "Enable this option if you want to do sandbox payment testing."
309
+ msgstr "Aktivieren Sie diese Option um die Sandkasten-Bezahlmethode zu testen"
310
+
311
+ #: classes/class.bSettings.php:90
312
+ msgid "Email Misc. Settings"
313
+ msgstr "Diverse E-Mail Einstellungen"
314
+
315
+ #: classes/class.bSettings.php:92
316
+ msgid "From Email Address"
317
+ msgstr "\"von\" E-Mail Adresse"
318
+
319
+ #: classes/class.bSettings.php:97
320
+ msgid "Email Settings (Prompt to Complete Registration )"
321
+ msgstr "E-Mail Einstellungen (vor vollständiger Registrierung)"
322
+
323
+ #: classes/class.bSettings.php:99 classes/class.bSettings.php:110
324
+ #: classes/class.bSettings.php:129
325
+ msgid "Email Subject"
326
+ msgstr "E-Mail Betreff"
327
+
328
+ #: classes/class.bSettings.php:103 classes/class.bSettings.php:114
329
+ #: classes/class.bSettings.php:133
330
+ msgid "Email Body"
331
+ msgstr "E-Mail Text"
332
+
333
+ #: classes/class.bSettings.php:108
334
+ msgid "Email Settings (Registration Complete)"
335
+ msgstr "E-Mail Einstellungen (Registrierung abgeschlossen)"
336
+
337
+ #: classes/class.bSettings.php:118
338
+ msgid "Send Notification To Admin"
339
+ msgstr "Administrator benachrichtigen"
340
+
341
+ #: classes/class.bSettings.php:122
342
+ msgid "Send Email to Member When Added via Admin Dashboard"
343
+ msgstr ""
344
+ "Mitglied mit E-Mail benachrichtigen wenn er vom Administrator hinzugefügt "
345
+ "wird"
346
+
347
+ #: classes/class.bSettings.php:127
348
+ msgid " Email Settings (Account Upgrade Notification)"
349
+ msgstr "E-Mail Einstellungen (Account Upgrade Benachrichtigung)"
350
+
351
+ #: classes/class.bSettings.php:326
352
+ msgid "Not a Member?"
353
+ msgstr "Kein Zugang?"
354
+
355
+ #: classes/class.bSettings.php:326 views/login.php:30
356
+ msgid "Join Us"
357
+ msgstr "Mitgliedschaftsseite URL"
358
+
359
+ #: classes/class.bUtils.php:32 views/admin_member_form_common_part.php:66
360
+ msgid "Active"
361
+ msgstr "Aktiv"
362
+
363
+ #: classes/class.bUtils.php:33 views/admin_member_form_common_part.php:67
364
+ msgid "Inactive"
365
+ msgstr "Inaktiv"
366
+
367
+ #: classes/class.bUtils.php:34 views/admin_member_form_common_part.php:68
368
+ msgid "Pending"
369
+ msgstr "ausstehend"
370
+
371
+ #: classes/class.bUtils.php:35 views/admin_member_form_common_part.php:69
372
+ msgid "Expired"
373
+ msgstr "abgelaufen"
374
+
375
+ #: classes/class.bUtils.php:225
376
+ msgid "Never"
377
+ msgstr "nie"
378
+
379
+ #: classes/class.miscUtils.php:51
380
+ msgid "Registration"
381
+ msgstr "Registrierung"
382
+
383
+ #: classes/class.miscUtils.php:74
384
+ msgid "Member Login"
385
+ msgstr "Mitglieder Login"
386
+
387
+ #: classes/class.miscUtils.php:97
388
+ msgid "Profile"
389
+ msgstr "Profil"
390
+
391
+ #: classes/class.miscUtils.php:120
392
+ msgid "Password Reset"
393
+ msgstr "Passwort zurücksetzen"
394
+
395
+ #: classes/class.simple-wp-membership.php:178
396
+ msgid "You are not logged in."
397
+ msgstr "Sie sind nicht eingeloggt"
398
+
399
+ #: classes/class.simple-wp-membership.php:209
400
+ msgid "Simple WP Membership Protection"
401
+ msgstr "Einfacher WP Mitgliedschaftsschutz"
402
+
403
+ #: classes/class.simple-wp-membership.php:222
404
+ msgid "Simple Membership Protection options"
405
+ msgstr "Schutz-Einstellungen für Simple Membership"
406
+
407
+ #: classes/class.simple-wp-membership.php:238
408
+ msgid "Do you want to protect this content?"
409
+ msgstr "Möchten Sie diesen Inhalt schützen?"
410
+
411
+ #: classes/class.simple-wp-membership.php:243
412
+ msgid "Select the membership level that can access this content:"
413
+ msgstr "Migliedschaftslevel auswählen mit Zugang zu diesem Inhalt:"
414
+
415
+ #: classes/class.simple-wp-membership.php:375
416
+ msgid "Display SWPM Login."
417
+ msgstr "Zeige SWPM Login"
418
+
419
+ #: classes/class.simple-wp-membership.php:377
420
+ msgid "SWPM Login"
421
+ msgstr "SWPM Login"
422
+
423
+ #: classes/class.simple-wp-membership.php:464
424
+ msgid "WP Membership"
425
+ msgstr "WP Mitgliedschaft"
426
+
427
+ #: classes/class.simple-wp-membership.php:471
428
+ msgid "Settings"
429
+ msgstr "Einstellungen"
430
+
431
+ #: views/add.php:13 views/admin_member_form_common_part.php:45
432
+ #: views/edit.php:12 views/login.php:11
433
+ msgid "Password"
434
+ msgstr "Passwort"
435
+
436
+ #: views/add.php:17 views/edit.php:16
437
+ msgid "Repeat Password"
438
+ msgstr "Passwort wiederholen"
439
+
440
+ #: views/add.php:29 views/admin_member_form_common_part.php:10
441
+ msgid "Gender"
442
+ msgstr "Geschlecht"
443
+
444
+ #: views/add.php:36 views/admin_member_form_common_part.php:17
445
+ #: views/edit.php:28
446
+ msgid "Phone"
447
+ msgstr "Telefon"
448
+
449
+ #: views/add.php:40 views/admin_member_form_common_part.php:21
450
+ #: views/edit.php:32
451
+ msgid "Street"
452
+ msgstr "Straße"
453
+
454
+ #: views/add.php:44 views/admin_member_form_common_part.php:25
455
+ #: views/edit.php:36
456
+ msgid "City"
457
+ msgstr "Stadt"
458
+
459
+ #: views/add.php:48 views/admin_member_form_common_part.php:29
460
+ #: views/edit.php:40
461
+ msgid "State"
462
+ msgstr "Bundesland"
463
+
464
+ #: views/add.php:52 views/admin_member_form_common_part.php:33
465
+ #: views/edit.php:44
466
+ msgid "Zipcode"
467
+ msgstr "PLZ"
468
+
469
+ #: views/add.php:56 views/admin_member_form_common_part.php:37
470
+ #: views/edit.php:48
471
+ msgid "Country"
472
+ msgstr "Land"
473
+
474
+ #: views/add.php:60 views/admin_member_form_common_part.php:41
475
+ msgid "Company"
476
+ msgstr "Firma"
477
+
478
+ #: views/add.php:71
479
+ msgid "Register"
480
+ msgstr "Registrieren"
481
+
482
+ #: views/admin_add.php:6
483
+ msgid "Add Member"
484
+ msgstr "Mitglied hinzufügen"
485
+
486
+ #: views/admin_add.php:7
487
+ msgid "Create a brand new user and add it to this site."
488
+ msgstr "Einen neuen Benutzer erstellen und ihn zu dieser Seite hinzufügen"
489
+
490
+ #: views/admin_add.php:11
491
+ msgid "User name"
492
+ msgstr "Benutzername"
493
+
494
+ #: views/admin_add.php:11 views/admin_add.php:15 views/admin_add_level.php:11
495
+ #: views/admin_add_level.php:15 views/admin_add_level.php:19
496
+ #: views/admin_edit.php:9 views/admin_edit.php:13
497
+ #: views/admin_edit_level.php:10 views/admin_edit_level.php:14
498
+ #: views/admin_edit_level.php:18
499
+ msgid "(required)"
500
+ msgstr "(Pflichtfeld)"
501
+
502
+ #: views/admin_add.php:15 views/admin_edit.php:13
503
+ msgid "E-mail"
504
+ msgstr "E-Mail"
505
+
506
+ #: views/admin_add.php:19
507
+ msgid "Add New Member "
508
+ msgstr "Einen neuen Mitglied hinzufügen"
509
+
510
+ #: views/admin_add_level.php:6
511
+ msgid "Create new membership level."
512
+ msgstr "Neues Mitgliedschaftslevel erstellen"
513
+
514
+ #: views/admin_add_level.php:11 views/admin_edit_level.php:10
515
+ msgid "Membership Level Name"
516
+ msgstr "Name des Mitgliedschaftslevels"
517
+
518
+ #: views/admin_add_level.php:15 views/admin_edit_level.php:14
519
+ msgid "Default WordPress Role"
520
+ msgstr "Standard WordPress Rolle"
521
+
522
+ #: views/admin_add_level.php:19 views/admin_edit_level.php:18
523
+ msgid "Subscription Duration"
524
+ msgstr "Dauer der Mitgliedschaft"
525
+
526
+ #: views/admin_add_level.php:26 views/admin_edit_level.php:27
527
+ msgid "No Expiry"
528
+ msgstr "Kein Ablauf"
529
+
530
+ #: views/admin_add_level.php:55
531
+ msgid "Add New Membership Level "
532
+ msgstr "Neues Mitgliedschaftslevel hinzufügen"
533
+
534
+ #: views/admin_edit.php:5
535
+ msgid "Edit Member"
536
+ msgstr "Mitglied ändern"
537
+
538
+ #: views/admin_edit.php:6
539
+ msgid "Edit existing member details."
540
+ msgstr "Benutzer Details ändern"
541
+
542
+ #: views/admin_edit.php:9
543
+ msgid "Username"
544
+ msgstr "Benutzername"
545
+
546
+ #: views/admin_edit.php:18
547
+ msgid "Edit User "
548
+ msgstr "Benutzer ändern"
549
+
550
+ #: views/admin_edit_level.php:5
551
+ msgid "Edit membership level"
552
+ msgstr "Mitgliedschaftslevel ändern"
553
+
554
+ #: views/admin_edit_level.php:6
555
+ msgid "Edit membership level."
556
+ msgstr "Mitgliedschaftslevel ändern."
557
+
558
+ #: views/admin_edit_level.php:54
559
+ msgid "Edit Membership Level "
560
+ msgstr "Mitgliedschaftslevel ändern"
561
+
562
+ #: views/admin_members.php:2
563
+ msgid "Simple WP Membership::Members"
564
+ msgstr "Simple WP Membership::Members"
565
+
566
+ #: views/admin_members.php:3 views/admin_members.php:19
567
+ #: views/admin_membership_levels.php:21
568
+ msgid "Add New"
569
+ msgstr "Neu"
570
+
571
+ #: views/admin_members.php:9 views/admin_membership_levels.php:11
572
+ msgid "search"
573
+ msgstr "suchen"
574
+
575
+ #: views/admin_membership_levels.php:3
576
+ msgid "Simple WP Membership::Membership Levels"
577
+ msgstr "Simple WP Membership::Mitgliedschaftslevels"
578
+
579
+ #: views/admin_membership_level_menu.php:2
580
+ msgid "Membership level"
581
+ msgstr "Mitgliedschaftslevel"
582
+
583
+ #: views/admin_membership_level_menu.php:3
584
+ msgid "Manage Content Production"
585
+ msgstr "Content Herstellung steuern"
586
+
587
+ #: views/admin_membership_manage.php:17
588
+ msgid "Example Content Protection Settings"
589
+ msgstr "Beispiel Inhaltsschutz Einstellungen"
590
+
591
+ #: views/admin_member_form_common_part.php:45
592
+ msgid "(twice, required)"
593
+ msgstr "(zweimal, erforderlich)"
594
+
595
+ #: views/admin_member_form_common_part.php:50
596
+ msgid "Strength indicator"
597
+ msgstr "Stärke"
598
+
599
+ #: views/admin_member_form_common_part.php:51
600
+ msgid ""
601
+ "Hint: The password should be at least seven characters long. To make it "
602
+ "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
603
+ "$ % ^ &amp; )."
604
+ msgstr ""
605
+ "Hinweis: Das Passwort muss mindestens 7 Zeichen lang sein. Abwechselnde Groß-"
606
+ "und Kleinschreibung, Nummern und Symbole erhöhen die Sicherheit"
607
+
608
+ #: views/admin_member_form_common_part.php:64 views/loggedin.php:7
609
+ #: views/login_widget_logged.php:6
610
+ msgid "Account Status"
611
+ msgstr "Account Status"
612
+
613
+ #: views/admin_member_form_common_part.php:74
614
+ msgid "Member Since"
615
+ msgstr "Mitglied seit"
616
+
617
+ #: views/admin_payment_settings.php:2 views/admin_settings.php:2
618
+ #: views/admin_tools_settings.php:2
619
+ msgid "Simple WP Membership::Settings"
620
+ msgstr "Simple WP Membership Einstellungen"
621
+
622
+ #: views/admin_payment_settings.php:33
623
+ msgid "PayPal Integration Settings"
624
+ msgstr "Paypal Integrationseinstellungen"
625
+
626
+ #: views/admin_payment_settings.php:36
627
+ msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
628
+ msgstr ""
629
+ "Generiere den \"fortgeschrittene Variablen\" Code für den Paypal Button"
630
+
631
+ #: views/admin_payment_settings.php:39
632
+ msgid "Enter the Membership Level ID"
633
+ msgstr "Mitgliedschaftslevel ID eingeben"
634
+
635
+ #: views/admin_payment_settings.php:41
636
+ msgid "Generate Code"
637
+ msgstr "Code generieren"
638
+
639
+ #: views/admin_tools_settings.php:9
640
+ msgid "Generate a Registration Completion link"
641
+ msgstr "Einen \"Registrierung abgeschlossen\" Link generieren"
642
+
643
+ #: views/admin_tools_settings.php:12
644
+ msgid ""
645
+ "You can manually generate a registration completion link here and give it to "
646
+ "your customer if they have missed the email that was automatically sent out "
647
+ "to them after the payment."
648
+ msgstr ""
649
+ "Sie können hier manuell einen \"Registrierung abgeschlossen\" Link "
650
+ "generieren falls Ihr Kunde die automatische E-Mail verlegt hat."
651
+
652
+ #: views/admin_tools_settings.php:17
653
+ msgid "Generate Registration Completion Link"
654
+ msgstr "\"Registrierung Abgeschlossen\" Link generieren"
655
+
656
+ #: views/admin_tools_settings.php:20
657
+ msgid "OR"
658
+ msgstr "ODER"
659
+
660
+ #: views/admin_tools_settings.php:21
661
+ msgid "For All Pending Registrations"
662
+ msgstr "Für alle ausstehenden Registrierungen"
663
+
664
+ #: views/admin_tools_settings.php:24
665
+ msgid "Registration Completion Links Will Appear Below:"
666
+ msgstr "Registrierung Abgeschlossen Links werden auftauen unter:"
667
+
668
+ #: views/admin_tools_settings.php:31
669
+ msgid "Send Registration Reminder Email too"
670
+ msgstr "Registrierungserinnerung per E-Mail verschicken"
671
+
672
+ #: views/admin_tools_settings.php:34
673
+ msgid "Submit"
674
+ msgstr "abschicken"
675
+
676
+ #: views/edit.php:58
677
+ msgid "Update"
678
+ msgstr "Aktualisieren"
679
+
680
+ #: views/forgot_password.php:5
681
+ msgid "Email Address"
682
+ msgstr "E-Mail Adresse"
683
+
684
+ #: views/forgot_password.php:12
685
+ msgid "Reset Password"
686
+ msgstr "Passwort zurücksetzen"
687
+
688
+ #: views/loggedin.php:3 views/login_widget_logged.php:3
689
+ msgid "Logged in as"
690
+ msgstr "Eingeloggt als"
691
+
692
+ #: views/loggedin.php:11 views/login_widget_logged.php:9
693
+ msgid "Membership"
694
+ msgstr "Mitgliedschaft"
695
+
696
+ #: views/loggedin.php:15 views/login_widget_logged.php:12
697
+ msgid "Account Expiry"
698
+ msgstr "Account verfällt am"
699
+
700
+ #: views/loggedin.php:19 views/login_widget_logged.php:16
701
+ msgid "Logout"
702
+ msgstr "ausloggen"
703
+
704
+ #: views/login.php:17
705
+ msgid "Remember Me"
706
+ msgstr "Anmeldedaten speichern"
707
+
708
+ #: views/login.php:26
709
+ msgid "Forgot Password"
710
+ msgstr "Passwort vergessen"
languages/swpm-es_ES.mo CHANGED
Binary file
languages/swpm-es_ES.po CHANGED
@@ -1,714 +1,971 @@
1
- msgid ""
2
- msgstr ""
3
- "Project-Id-Version: simple membership\n"
4
- "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2014-08-28 19:28+1000\n"
6
- "PO-Revision-Date: Mon Sep 01 2014 05:09:52 GMT+0200 (CEST)\n"
7
- "Last-Translator: TTM-ES <admin@ttm-es.es>\n"
8
- "Language-Team: \n"
9
- "Language: Spanish\n"
10
- "Plural-Forms: nplurals=2; plural=n != 1\n"
11
- "MIME-Version: 1.0\n"
12
- "Content-Type: text/plain; charset=UTF-8\n"
13
- "Content-Transfer-Encoding: 8bit\n"
14
- "X-Poedit-SourceCharset: UTF-8\n"
15
- "X-Generator: Loco - https://localise.biz/\n"
16
- "X-Poedit-KeywordsList: _:1;gettext:1;dgettext:2;ngettext:1,2;dngettext:2,3;"
17
- "__:1;_e:1;_c:1;_n:1,2;_n_noop:1,2;_nc:1,2;__ngettext:1,2;__ngettext_noop:1,2;"
18
- "_x:1,2c;_ex:1,2c;_nx:1,2,4c;_nx_noop:1,2,3c;_n_js:1,2;_nx_js:1,2,3c;"
19
- "esc_attr__:1;esc_html__:1;esc_attr_e:1;esc_html_e:1;esc_attr_x:1,2c;"
20
- "esc_html_x:1,2c;comments_number_link:2,3;t:1;st:1;trans:1;transChoice:1,2\n"
21
- "X-Poedit-Basepath: .\n"
22
- "X-Poedit-SearchPath-0: .\n"
23
- "X-Loco-Target-Locale: es_ES"
24
-
25
- #: classes/class.bAuth.php:187
26
- msgid "Bad Cookie Hash"
27
- msgstr "Bad Cookie Hash"
28
-
29
- #: classes/class.simple-wp-membership.php:375
30
- msgid "Display SWPM Login."
31
- msgstr "Display SWPM login."
32
-
33
- #: classes/class.simple-wp-membership.php:377
34
- msgid "SWPM Login"
35
- msgstr "SWPM login"
36
-
37
- #: classes/class.simple-wp-membership.php:464
38
- msgid "WP Membership"
39
- msgstr "WP Membership"
40
-
41
- #: classes/class.bSettings.php:47
42
- msgid "Login Page URL"
43
- msgstr "URL Página de Inicio de sesión"
44
-
45
- #: classes/class.bSettings.php:51
46
- msgid "Registration Page URL"
47
- msgstr "URL Página de registro"
48
-
49
- #: classes/class.bSettings.php:55
50
- msgid "Join Us Page URL"
51
- msgstr "URL Página de \"Unete a nosotros\""
52
-
53
- #: classes/class.bSettings.php:59
54
- msgid "Edit Profile Page URL"
55
- msgstr "URL Página de Editar Perfil"
56
-
57
- #: classes/class.bSettings.php:63
58
- msgid "Password Reset Page URL"
59
- msgstr "URL Página de Restablecer contraseña"
60
-
61
- #: classes/class.bSettings.php:68
62
- msgid "Test & Debug Settings"
63
- msgstr "Ajustes de Test & Debug"
64
-
65
- #: classes/class.bSettings.php:74
66
- msgid "Enable Sandbox Testing"
67
- msgstr "Permitir Test Sandbox"
68
-
69
- #: classes/class.bSettings.php:77
70
- msgid "Enable this option if you want to do sandbox payment testing."
71
- msgstr "Permitir esta opción si quiere testear pagos Sandbox"
72
-
73
- #: classes/class.bSettings.php:90
74
- msgid "Email Misc. Settings"
75
- msgstr "Ajustes Email Misc."
76
-
77
- #: classes/class.bSettings.php:92
78
- msgid "From Email Address"
79
- msgstr "De la cuenta de correo (email)"
80
-
81
- #: classes/class.bSettings.php:97
82
- msgid "Email Settings (Prompt to Complete Registration )"
83
- msgstr "Ajustes de Mail (solicitud para completar el registro)"
84
-
85
- #: classes/class.bSettings.php:99 classes/class.bSettings.php:110
86
- #: classes/class.bSettings.php:129
87
- msgid "Email Subject"
88
- msgstr "Asunto del mensaje"
89
-
90
- #: classes/class.bSettings.php:103 classes/class.bSettings.php:114
91
- #: classes/class.bSettings.php:133
92
- msgid "Email Body"
93
- msgstr "Cuerpo del mensaje"
94
-
95
- #: classes/class.bSettings.php:108
96
- msgid "Email Settings (Registration Complete)"
97
- msgstr "Ajustes Mail (Registro Completado)"
98
-
99
- #: classes/class.bSettings.php:118
100
- msgid "Send Notification To Admin"
101
- msgstr "Enviar notificación al Administrador"
102
-
103
- #: classes/class.bSettings.php:122
104
- msgid "Send Email to Member When Added via Admin Dashboard"
105
- msgstr "Enviar mail al miembro cuando ha sido añadido por el administrador"
106
-
107
- #: classes/class.bSettings.php:127
108
- msgid " Email Settings (Account Upgrade Notification)"
109
- msgstr "Ajustes Mail (Notificación de actualización de la cuenta)"
110
-
111
- #: classes/class.bSettings.php:326
112
- msgid "Not a Member?"
113
- msgstr "No estas registrado?"
114
-
115
- #: classes/class.bSettings.php:326 views/login.php:30
116
- msgid "Join Us"
117
- msgstr "Unete a nosotros"
118
-
119
- #: classes/class.bUtils.php:32 views/admin_member_form_common_part.php:66
120
- msgid "Active"
121
- msgstr "Activa"
122
-
123
- #: classes/class.bUtils.php:33 views/admin_member_form_common_part.php:67
124
- msgid "Inactive"
125
- msgstr "Inactiva"
126
-
127
- #: classes/class.bUtils.php:34 views/admin_member_form_common_part.php:68
128
- msgid "Pending"
129
- msgstr "Pendiente"
130
-
131
- #: classes/class.bUtils.php:35 views/admin_member_form_common_part.php:69
132
- msgid "Expired"
133
- msgstr "Caducada"
134
-
135
- #: classes/class.bUtils.php:225
136
- msgid "Never"
137
- msgstr "Nunca"
138
-
139
- #: classes/class.miscUtils.php:51
140
- msgid "Registration"
141
- msgstr "Registro"
142
-
143
- #: classes/class.miscUtils.php:74
144
- msgid "Member Login"
145
- msgstr "Iniciar sesión"
146
-
147
- #: classes/class.miscUtils.php:97
148
- msgid "Profile"
149
- msgstr "Perfil de usuario"
150
-
151
- #: classes/class.miscUtils.php:120
152
- msgid "Password Reset"
153
- msgstr "Restablecer la contraseña"
154
-
155
- #: classes/class.simple-wp-membership.php:178
156
- msgid "You are not logged in."
157
- msgstr "Usted no ha iniciado sesión."
158
-
159
- #: classes/class.simple-wp-membership.php:209
160
- msgid "Simple WP Membership Protection"
161
- msgstr "Simple WP Protección de miembros"
162
-
163
- #: classes/class.simple-wp-membership.php:222
164
- msgid "Simple Membership Protection options"
165
- msgstr "Opciones de Protección de miembros"
166
-
167
- #: classes/class.simple-wp-membership.php:238
168
- msgid "Do you want to protect this content?"
169
- msgstr "Quieres proteger este contenido?"
170
-
171
- #: classes/class.simple-wp-membership.php:243
172
- msgid "Select the membership level that can access this content:"
173
- msgstr "Selecciona los tipos de usuarios que pueden acceder a este contenido:"
174
-
175
- #: classes/class.simple-wp-membership.php:471
176
- msgid "Settings"
177
- msgstr "Ajustes"
178
-
179
- #: views/add.php:13 views/admin_member_form_common_part.php:45
180
- #: views/edit.php:12 views/login.php:11
181
- msgid "Password"
182
- msgstr "Contraseña"
183
-
184
- #: views/add.php:17 views/edit.php:16
185
- msgid "Repeat Password"
186
- msgstr "Repetir contraseña"
187
-
188
- #: views/add.php:29 views/admin_member_form_common_part.php:10
189
- msgid "Gender"
190
- msgstr "Sexo"
191
-
192
- #: views/add.php:36 views/admin_member_form_common_part.php:17
193
- #: views/edit.php:28
194
- msgid "Phone"
195
- msgstr "Teléfono"
196
-
197
- #: views/add.php:40 views/admin_member_form_common_part.php:21
198
- #: views/edit.php:32
199
- msgid "Street"
200
- msgstr "Calle"
201
-
202
- #: views/add.php:44 views/admin_member_form_common_part.php:25
203
- #: views/edit.php:36
204
- msgid "City"
205
- msgstr "Ciudad"
206
-
207
- #: views/add.php:48 views/admin_member_form_common_part.php:29
208
- #: views/edit.php:40
209
- msgid "State"
210
- msgstr "Provincia"
211
-
212
- #: views/add.php:52 views/admin_member_form_common_part.php:33
213
- #: views/edit.php:44
214
- msgid "Zipcode"
215
- msgstr "Código Postal"
216
-
217
- #: views/add.php:56 views/admin_member_form_common_part.php:37
218
- #: views/edit.php:48
219
- msgid "Country"
220
- msgstr "País"
221
-
222
- #: views/add.php:60 views/admin_member_form_common_part.php:41
223
- msgid "Company"
224
- msgstr "Empresa o Institución"
225
-
226
- #: views/add.php:71
227
- msgid "Register"
228
- msgstr "Registrarse"
229
-
230
- #: views/admin_add.php:6
231
- msgid "Add Member"
232
- msgstr "Añadir Miembro"
233
-
234
- #: views/admin_add.php:7
235
- msgid "Create a brand new user and add it to this site."
236
- msgstr "Crear un nuevo usuario y agregarlo a este site."
237
-
238
- #: views/admin_add.php:11
239
- msgid "User name"
240
- msgstr "Nombre de usuario"
241
-
242
- #: views/admin_add.php:11 views/admin_add.php:15 views/admin_add_level.php:11
243
- #: views/admin_add_level.php:15 views/admin_add_level.php:19
244
- #: views/admin_edit.php:9 views/admin_edit.php:13
245
- #: views/admin_edit_level.php:10 views/admin_edit_level.php:14
246
- #: views/admin_edit_level.php:18
247
- msgid "(required)"
248
- msgstr "(obligatorio)"
249
-
250
- #: views/admin_add.php:15 views/admin_edit.php:13
251
- msgid "E-mail"
252
- msgstr "Email"
253
-
254
- #: views/admin_add.php:19
255
- msgid "Add New Member "
256
- msgstr "Añadir nuevo miembro"
257
-
258
- #: views/admin_add_level.php:6
259
- msgid "Create new membership level."
260
- msgstr "Crear nueva categoría de usuario"
261
-
262
- #: views/admin_add_level.php:11 views/admin_edit_level.php:10
263
- msgid "Membership Level Name"
264
- msgstr "Nombre de la categoría de usuario"
265
-
266
- #: views/admin_add_level.php:15 views/admin_edit_level.php:14
267
- msgid "Default WordPress Role"
268
- msgstr "Rol en Wordpress por defecto"
269
-
270
- #: views/admin_add_level.php:19 views/admin_edit_level.php:18
271
- msgid "Subscription Duration"
272
- msgstr "Duración de la subscripción"
273
-
274
- #: views/admin_add_level.php:26 views/admin_edit_level.php:27
275
- msgid "No Expiry"
276
- msgstr "No caduca"
277
-
278
- #: views/admin_add_level.php:55
279
- msgid "Add New Membership Level "
280
- msgstr "Añadir nueva categoriza de usuario"
281
-
282
- #: views/admin_edit.php:5
283
- msgid "Edit Member"
284
- msgstr "Editar usuario"
285
-
286
- #: views/admin_edit.php:6
287
- msgid "Edit existing member details."
288
- msgstr "Editar detalles de usuario existente"
289
-
290
- #: views/admin_edit.php:9
291
- msgid "Username"
292
- msgstr "Nombre de usuario"
293
-
294
- #: views/admin_edit.php:18
295
- msgid "Edit User "
296
- msgstr "Editar usuario"
297
-
298
- #: views/admin_edit_level.php:5
299
- msgid "Edit membership level"
300
- msgstr "Editar categoría de usuario"
301
-
302
- #: views/admin_edit_level.php:6
303
- msgid "Edit membership level."
304
- msgstr "Editar categoría de usuario"
305
-
306
- #: views/admin_edit_level.php:54
307
- msgid "Edit Membership Level "
308
- msgstr "Editar categoría de usuario"
309
-
310
- #: views/admin_members.php:2
311
- msgid "Simple WP Membership::Members"
312
- msgstr "Simple WP Membership::Usuarios"
313
-
314
- #: views/admin_members.php:3 views/admin_members.php:19
315
- #: views/admin_membership_levels.php:21
316
- msgid "Add New"
317
- msgstr "Añadir nuevo"
318
-
319
- #: views/admin_members.php:9 views/admin_membership_levels.php:11
320
- msgid "search"
321
- msgstr "Buscar"
322
-
323
- #: views/admin_membership_levels.php:3
324
- msgid "Simple WP Membership::Membership Levels"
325
- msgstr "Simple WP Membership::Categorías de usuario"
326
-
327
- #: views/admin_membership_level_menu.php:2
328
- msgid "Membership level"
329
- msgstr "Categoría de usuario"
330
-
331
- #: views/admin_membership_level_menu.php:3
332
- msgid "Manage Content Production"
333
- msgstr "Gestionar la producción de contenido"
334
-
335
- #: views/admin_membership_manage.php:17
336
- msgid "Example Content Protection Settings"
337
- msgstr "Ejemplo de Ajustes de contenido protegido"
338
-
339
- #: views/admin_member_form_common_part.php:45
340
- msgid "(twice, required)"
341
- msgstr "(escríbalo dos veces, Obligatorio)"
342
-
343
- #: views/admin_member_form_common_part.php:50
344
- msgid "Strength indicator"
345
- msgstr "Indicador de seguridad"
346
-
347
- #: views/admin_member_form_common_part.php:51
348
- msgid ""
349
- "Hint: The password should be at least seven characters long. To make it "
350
- "stronger, use upper and lower case letters, numbers and symbols like ! \" ? $ "
351
- "% ^ &amp; )."
352
- msgstr ""
353
- "Sugerencia: La contraseña debe tener al menos siete caracteres. Para hacerlo "
354
- "más seguro, utilizar letras mayúsculas y minúsculas, números y símbolos como!"
355
- " ? \"$% ^ & amp; )."
356
-
357
- #: views/admin_member_form_common_part.php:64 views/loggedin.php:7
358
- #: views/login_widget_logged.php:6
359
- msgid "Account Status"
360
- msgstr "Estado de la cuenta"
361
-
362
- #: views/admin_member_form_common_part.php:74
363
- msgid "Member Since"
364
- msgstr "Miembro desde"
365
-
366
- #: views/admin_payment_settings.php:2 views/admin_settings.php:2
367
- #: views/admin_tools_settings.php:2
368
- msgid "Simple WP Membership::Settings"
369
- msgstr "Simple WP Membership::Ajustes"
370
-
371
- #: views/admin_payment_settings.php:33
372
- msgid "PayPal Integration Settings"
373
- msgstr "Ajustes de integración con Paypal"
374
-
375
- #: views/admin_payment_settings.php:36
376
- msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
377
- msgstr "Generar código de \"variables avanzadas\" para su botón de Paypal"
378
-
379
- #: views/admin_payment_settings.php:39
380
- msgid "Enter the Membership Level ID"
381
- msgstr "Introduzca el ID de la categoría de usuario"
382
-
383
- #: views/admin_payment_settings.php:41
384
- msgid "Generate Code"
385
- msgstr "General el código"
386
-
387
- #: views/admin_tools_settings.php:9
388
- msgid "Generate a Registration Completion link"
389
- msgstr "Generar link para completar registro"
390
-
391
- #: views/admin_tools_settings.php:12
392
- msgid ""
393
- "You can manually generate a registration completion link here and give it to "
394
- "your customer if they have missed the email that was automatically sent out "
395
- "to them after the payment."
396
- msgstr ""
397
- "Puede generar manualmente un link para completar el registro aquí y enviarlo "
398
- "al usuario si ha perdido el correo electrónico que se envía automáticamente "
399
- "a ellos después del pago."
400
-
401
- #: views/admin_tools_settings.php:17
402
- msgid "Generate Registration Completion Link"
403
- msgstr "Generar link para completar registro"
404
-
405
- #: views/admin_tools_settings.php:20
406
- msgid "OR"
407
- msgstr "o"
408
-
409
- #: views/admin_tools_settings.php:21
410
- msgid "For All Pending Registrations"
411
- msgstr "Para todos los registros pendientes"
412
-
413
- #: views/admin_tools_settings.php:24
414
- msgid "Registration Completion Links Will Appear Below:"
415
- msgstr "Los enlaces para completar el registro aparecerán bajo:"
416
-
417
- #: views/admin_tools_settings.php:31
418
- msgid "Send Registration Reminder Email too"
419
- msgstr "Enviar también recordatorio del mail de registro"
420
-
421
- #: views/admin_tools_settings.php:34
422
- msgid "Submit"
423
- msgstr "Enviar"
424
-
425
- #: views/edit.php:58
426
- msgid "Update"
427
- msgstr "Actualizar"
428
-
429
- #: views/forgot_password.php:5
430
- msgid "Email Address"
431
- msgstr "Email"
432
-
433
- #: views/forgot_password.php:12
434
- msgid "Reset Password"
435
- msgstr "Restablecer Contraseña"
436
-
437
- #: views/loggedin.php:3 views/login_widget_logged.php:3
438
- msgid "Logged in as"
439
- msgstr "Sesión iniciada como"
440
-
441
- #: views/loggedin.php:11 views/login_widget_logged.php:9
442
- msgid "Membership"
443
- msgstr "Membresía"
444
-
445
- #: views/loggedin.php:15 views/login_widget_logged.php:12
446
- msgid "Account Expiry"
447
- msgstr "Valido hasta"
448
-
449
- #: views/loggedin.php:19 views/login_widget_logged.php:16
450
- msgid "Logout"
451
- msgstr "Cerrar sesión"
452
-
453
- #: views/login.php:17
454
- msgid "Remember Me"
455
- msgstr "Recordarme"
456
-
457
- #: views/login.php:26
458
- msgid "Forgot Password"
459
- msgstr "Contraseña Perdida?"
460
-
461
- #: classes/class.bAccessControl.php:23 classes/class.bAccessControl.php:40
462
- msgid "You are not allowed to view this content"
463
- msgstr "Usted no tiene permiso para ver este contenido"
464
-
465
- #: classes/class.bAccessControl.php:26 classes/class.bAccessControl.php:43
466
- msgid "You need to login to view this content. "
467
- msgstr "Necesita iniciar sesión (lograrse) para ver este contenido"
468
-
469
- #: classes/class.bAdminRegistration.php:48
470
- #: classes/class.bFrontRegistration.php:64
471
- msgid "Registration Successful."
472
- msgstr "Registro completado"
473
-
474
- #: classes/class.bAdminRegistration.php:53
475
- #: classes/class.bAdminRegistration.php:73
476
- #: classes/class.bMembershipLevel.php:36 classes/class.bMembershipLevel.php:54
477
- msgid "Please correct the following:"
478
- msgstr "Por favor, corrija lo siguiente:"
479
-
480
- #: classes/class.bAjax.php:16 classes/class.bAjax.php:28
481
- msgid "Aready taken"
482
- msgstr "No disponible"
483
-
484
- #: classes/class.bAjax.php:29
485
- msgid "Available"
486
- msgstr "Disponible"
487
-
488
- #: classes/class.bAuth.php:48 classes/class.bFrontRegistration.php:179
489
- msgid "User Not Found."
490
- msgstr "Usuario no encontrado."
491
-
492
- #: classes/class.bAuth.php:55
493
- msgid "Password Empty or Invalid."
494
- msgstr "Contraseña vacía o no válida."
495
-
496
- #: classes/class.bAuth.php:79
497
- msgid "Account is inactive."
498
- msgstr "Esta cuenta está inactiva."
499
-
500
- #: classes/class.bAuth.php:89
501
- msgid "You are logged in as:"
502
- msgstr "Sesión iniciada como:"
503
-
504
- #: classes/class.bAuth.php:128
505
- msgid "Logged Out Successfully."
506
- msgstr "Se ha cerrado la sesión correctamente."
507
-
508
- #: classes/class.bAuth.php:170
509
- msgid "Session Expired."
510
- msgstr "Sesión finalizada."
511
-
512
- #: classes/class.bAuth.php:179
513
- msgid "Invalid User Name"
514
- msgstr "Nombre de usuario no válido"
515
-
516
- #: classes/class.bForm.php:26
517
- msgid "Wordpress account exists with given user name. But given email doesn't match."
518
- msgstr ""
519
- "Existe una cuenta con el nombre de usuario dado, pero el correo electrónico "
520
- "proporcionada no coincide."
521
-
522
- #: classes/class.bForm.php:31
523
- msgid "Wordpress account exists with given email. But given user name doesn't match."
524
- msgstr ""
525
- "Existe una cuenta con el mail proporcionado, pero el nombre usuario "
526
- "proporcionado no coincide."
527
-
528
- #: classes/class.bForm.php:40
529
- msgid "User name is required"
530
- msgstr "Debe de escribir un nombre de usuario."
531
-
532
- #: classes/class.bForm.php:49
533
- msgid "User name already exists."
534
- msgstr "El nombre de usuario ya está en uso."
535
-
536
- #: classes/class.bForm.php:72
537
- msgid "Password is required"
538
- msgstr "Debe escribir una contraseña."
539
-
540
- #: classes/class.bForm.php:79
541
- msgid "Password mismatch"
542
- msgstr "Contraseña incorrecta"
543
-
544
- #: classes/class.bForm.php:95
545
- msgid "Email is required"
546
- msgstr "Debe de proporcionar un email o correo electrónico"
547
-
548
- #: classes/class.bForm.php:99
549
- msgid "Email is invalid"
550
- msgstr "El correo electrónico proporcionado no es válido"
551
-
552
- #: classes/class.bForm.php:112
553
- msgid "Email is already used."
554
- msgstr "El mail o correo electrónico proporcionado ya está en uso."
555
-
556
- #: classes/class.bForm.php:178
557
- msgid "Member since field is invalid"
558
- msgstr "La fecha introducida en \"Miembro desde\" no es válida (dd/mm/aaaa)"
559
-
560
- #: classes/class.bForm.php:189
561
- msgid "Subscription starts field is invalid"
562
- msgstr "La fecha introducida en \"Subscripción desde\" no es válida (dd/mm/aaaa)\n"
563
-
564
- #: classes/class.bForm.php:199
565
- msgid "Gender field is invalid"
566
- msgstr "El valor introducido en el campo \"Genero\" no es válido"
567
-
568
- #: classes/class.bForm.php:210
569
- msgid "Account state field is invalid"
570
- msgstr "El valor introducido en el campo \"Estado de la cuenta\" no es válido"
571
-
572
- #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
573
- msgid "Please"
574
- msgstr "Por favor"
575
-
576
- #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
577
- #: views/login.php:21
578
- msgid "Login"
579
- msgstr "Iniciar sesión"
580
-
581
- #: classes/class.bFrontRegistration.php:79
582
- #: classes/class.bFrontRegistration.php:158
583
- msgid "Please correct the following"
584
- msgstr "Por favor, corrija lo siguiente"
585
-
586
- #: classes/class.bFrontRegistration.php:92
587
- msgid "Membership Level Couldn't be found."
588
- msgstr "El nivel de Membresía no ha sido encontrado."
589
-
590
- #: classes/class.bFrontRegistration.php:168
591
- msgid "Email Address Not Valid."
592
- msgstr "El email o correo electrónico proporcionado no es válido."
593
-
594
- #: classes/class.bFrontRegistration.php:199
595
- msgid "New password has been sent to your email address."
596
- msgstr "La nueva contraseña ha sido enviada a su email o correo electrónico."
597
-
598
- #: classes/class.bLevelForm.php:31
599
- msgid "Subscriptoin duration must be > 0."
600
- msgstr "El tiempo de subscripción ha de ser mayor que 0."
601
-
602
- #: classes/class.bMembers.php:7
603
- msgid "Member"
604
- msgstr "Miembro"
605
-
606
- #: classes/class.bMembers.php:8 classes/class.simple-wp-membership.php:467
607
- msgid "Members"
608
- msgstr "Miembros"
609
-
610
- #: classes/class.bMembers.php:16 classes/class.bMembershipLevels.php:16
611
- msgid "ID"
612
- msgstr "ID"
613
-
614
- #: classes/class.bMembers.php:17 views/add.php:5 views/edit.php:4
615
- #: views/login.php:5
616
- msgid "User Name"
617
- msgstr "Nombre de usuario"
618
-
619
- #: classes/class.bMembers.php:18 views/add.php:21
620
- #: views/admin_member_form_common_part.php:2 views/edit.php:20
621
- msgid "First Name"
622
- msgstr "Nombre"
623
-
624
- #: classes/class.bMembers.php:19 views/add.php:25
625
- #: views/admin_member_form_common_part.php:6 views/edit.php:24
626
- msgid "Last Name"
627
- msgstr "Apellidos"
628
-
629
- #: classes/class.bMembers.php:20 views/add.php:9 views/edit.php:8
630
- msgid "Email"
631
- msgstr "Email"
632
-
633
- #: classes/class.bMembers.php:21 classes/class.bMembershipLevels.php:8
634
- #: classes/class.bMembershipLevels.php:17 views/add.php:64
635
- #: views/admin_member_form_common_part.php:55 views/edit.php:52
636
- msgid "Membership Level"
637
- msgstr "Tipo de Miembro"
638
-
639
- #: classes/class.bMembers.php:22 views/admin_member_form_common_part.php:78
640
- msgid "Subscription Starts"
641
- msgstr "Inició de subscripción"
642
-
643
- #: classes/class.bMembers.php:23
644
- msgid "Account State"
645
- msgstr "Estado de la cuenta"
646
-
647
- #: classes/class.bMembers.php:35 classes/class.bMembershipLevels.php:29
648
- msgid "Delete"
649
- msgstr "Eliminar"
650
-
651
- #: classes/class.bMembers.php:100
652
- msgid "No Member found."
653
- msgstr "No se han encontrado miembros."
654
-
655
- #: classes/class.bMembershipLevel.php:31
656
- msgid "Membership Level Creation Successful."
657
- msgstr "Tipo de miembros creado con éxito."
658
-
659
- #: classes/class.bMembershipLevel.php:50
660
- msgid "Updated Successfully."
661
- msgstr "Actualizado con éxito."
662
-
663
- #: classes/class.bMembershipLevels.php:9
664
- #: classes/class.simple-wp-membership.php:469
665
- msgid "Membership Levels"
666
- msgstr "Tipos de miembros."
667
-
668
- #: classes/class.bMembershipLevels.php:18
669
- msgid "Role"
670
- msgstr "Rol"
671
-
672
- #: classes/class.bMembershipLevels.php:19
673
- msgid "Subscription Valid For"
674
- msgstr "Subscripción valida por"
675
-
676
- #: classes/class.bSettings.php:28
677
- msgid "Plugin Documentation"
678
- msgstr "Información del Plugin"
679
-
680
- #: classes/class.bSettings.php:30
681
- msgid "General Settings"
682
- msgstr "Ajustes Generales"
683
-
684
- #: classes/class.bSettings.php:32
685
- msgid "Enable Free Membership"
686
- msgstr "Permitir Miembros Gratuitos"
687
-
688
- #: classes/class.bSettings.php:35
689
- msgid "Enable/disable registration for free membership level"
690
- msgstr "Permitir/Denegar registro para el nivel de miembros gratuitos"
691
-
692
- #: classes/class.bSettings.php:36
693
- msgid "Free Membership Level ID"
694
- msgstr "ID Categoría de miembros gratuitos"
695
-
696
- #: classes/class.bSettings.php:39
697
- msgid "Assign free membership level ID"
698
- msgstr "Asignar nivel ID a los miembros gratuitos"
699
-
700
- #: classes/class.bSettings.php:40
701
- msgid "Hide Adminbar"
702
- msgstr "Esconder Barra superior de inicio de sesión"
703
-
704
- #: classes/class.bSettings.php:43
705
- msgid ""
706
- "WordPress shows an admin toolbar to the logged in users of the site. Check "
707
- "this box if you want to hide that admin toolbar in the fronend of your site."
708
- msgstr ""
709
- "WordPress muestra la barra de herramientas para iniciado sesión. Marcar esta "
710
- "casilla si desea ocultar esta barra."
711
-
712
- #: classes/class.bSettings.php:45
713
- msgid "Pages Settings"
714
- msgstr "Ajustes de las páguinas"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: Simple Membership\n"
4
+ "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2015-01-27 14:50+1000\n"
6
+ "PO-Revision-Date: 2015-02-02 16:38-0400\n"
7
+ "Last-Translator: e-rgonomy.com <info@e-rgonomy.com>\n"
8
+ "Language-Team: e-rgonomy.com <info@e-rgonomy.com>\n"
9
+ "Language: es\n"
10
+ "MIME-Version: 1.0\n"
11
+ "Content-Type: text/plain; charset=UTF-8\n"
12
+ "Content-Transfer-Encoding: 8bit\n"
13
+ "Plural-Forms: nplurals=2; plural=n != 1;\n"
14
+ "X-Poedit-SourceCharset: UTF-8\n"
15
+ "X-Generator: Poedit 1.7.4\n"
16
+ "X-Poedit-KeywordsList: _:1;gettext:1;dgettext:2;ngettext:1,2;dngettext:2,3;"
17
+ "__:1;_e:1;_c:1;_n:1,2;_n_noop:1,2;_nc:1,2;__ngettext:1,2;__ngettext_noop:1,2;"
18
+ "_x:1,2c;_ex:1,2c;_nx:1,2,4c;_nx_noop:1,2,3c;_n_js:1,2;_nx_js:1,2,3c;"
19
+ "esc_attr__:1;esc_html__:1;esc_attr_e:1;esc_html_e:1;esc_attr_x:1,2c;"
20
+ "esc_html_x:1,2c;comments_number_link:2,3;t:1;st:1;trans:1;transChoice:1,2\n"
21
+ "X-Poedit-Basepath: .\n"
22
+ "X-Loco-Target-Locale: es_ES\n"
23
+ "X-Poedit-SearchPath-0: .\n"
24
+
25
+ #: simple-membership/classes/class.bAccessControl.php:21
26
+ #: simple-membership/classes/class.bAccessControl.php:28
27
+ #: simple-membership/classes/class.bAccessControl.php:48
28
+ msgid "You need to login to view this content. "
29
+ msgstr "Necesita identificarse para ver este contenido"
30
+
31
+ #: simple-membership/classes/class.bAccessControl.php:35
32
+ #: simple-membership/classes/class.bAccessControl.php:39
33
+ #: simple-membership/classes/class.bAccessControl.php:54
34
+ msgid "You are not allowed to view this content"
35
+ msgstr "Usted no tiene permiso para ver este contenido"
36
+
37
+ #: simple-membership/classes/class.bAccessControl.php:72
38
+ msgid "You do no have permission to view rest of the content"
39
+ msgstr "No dispone de los permisos para ver el resto del contenido."
40
+
41
+ #: simple-membership/classes/class.bAccessControl.php:76
42
+ #: simple-membership/classes/class.bAccessControl.php:94
43
+ msgid "You need to login to view the rest of the content. "
44
+ msgstr "Necesita identificarse antes de ver el resto del contenido."
45
+
46
+ #: simple-membership/classes/class.bAdminRegistration.php:49
47
+ msgid "Registration Successful."
48
+ msgstr "Registro completado"
49
+
50
+ #: simple-membership/classes/class.bAdminRegistration.php:54
51
+ #: simple-membership/classes/class.bAdminRegistration.php:89
52
+ #: simple-membership/classes/class.bMembershipLevel.php:42
53
+ #: simple-membership/classes/class.bMembershipLevel.php:60
54
+ msgid "Please correct the following:"
55
+ msgstr "Por favor, corrija lo siguiente:"
56
+
57
+ #: simple-membership/classes/class.bAjax.php:17
58
+ #: simple-membership/classes/class.bAjax.php:28
59
+ msgid "Aready taken"
60
+ msgstr "No disponible"
61
+
62
+ #: simple-membership/classes/class.bAjax.php:29
63
+ msgid "Available"
64
+ msgstr "Disponible"
65
+
66
+ #: simple-membership/classes/class.bAuth.php:46
67
+ #: simple-membership/classes/class.bFrontRegistration.php:173
68
+ msgid "User Not Found."
69
+ msgstr "Usuario no encontrado."
70
+
71
+ #: simple-membership/classes/class.bAuth.php:53
72
+ msgid "Password Empty or Invalid."
73
+ msgstr "Contraseña vacía o no válida."
74
+
75
+ #: simple-membership/classes/class.bAuth.php:76
76
+ msgid "Account is inactive."
77
+ msgstr "Esta cuenta está inactiva."
78
+
79
+ #: simple-membership/classes/class.bAuth.php:93
80
+ msgid "Account has expired."
81
+ msgstr "Su cuenta ha expirado."
82
+
83
+ #: simple-membership/classes/class.bAuth.php:100
84
+ msgid "You are logged in as:"
85
+ msgstr "Identificado como:"
86
+
87
+ #: simple-membership/classes/class.bAuth.php:139
88
+ msgid "Logged Out Successfully."
89
+ msgstr "Se ha cerrado la sesión correctamente."
90
+
91
+ #: simple-membership/classes/class.bAuth.php:186
92
+ msgid "Session Expired."
93
+ msgstr "Sesión finalizada."
94
+
95
+ #: simple-membership/classes/class.bAuth.php:194
96
+ msgid "Invalid User Name"
97
+ msgstr "Nombre de usuario no válido"
98
+
99
+ #: simple-membership/classes/class.bAuth.php:202
100
+ msgid "Sorry! Something went wrong"
101
+ msgstr "Algo va mal."
102
+
103
+ #: simple-membership/classes/class.bCategoryList.php:15
104
+ #: simple-membership/classes/class.bMembers.php:21
105
+ #: simple-membership/classes/class.bMembershipLevels.php:8
106
+ #: simple-membership/classes/class.bMembershipLevels.php:17
107
+ #: simple-membership/views/add.php:30
108
+ #: simple-membership/views/admin_member_form_common_part.php:2
109
+ #: simple-membership/views/edit.php:52
110
+ msgid "Membership Level"
111
+ msgstr "Nivel de membresía"
112
+
113
+ #: simple-membership/classes/class.bCategoryList.php:16
114
+ #: simple-membership/classes/class.bMembershipLevels.php:9
115
+ #: simple-membership/classes/class.simple-wp-membership.php:464
116
+ msgid "Membership Levels"
117
+ msgstr "Niveles de membresía."
118
+
119
+ #: simple-membership/classes/class.bCategoryList.php:29
120
+ #: simple-membership/classes/class.bMembers.php:16
121
+ #: simple-membership/classes/class.bMembershipLevels.php:16
122
+ msgid "ID"
123
+ msgstr "ID"
124
+
125
+ #: simple-membership/classes/class.bCategoryList.php:30
126
+ msgid "Name"
127
+ msgstr "Nombre"
128
+
129
+ #: simple-membership/classes/class.bCategoryList.php:31
130
+ msgid "Description"
131
+ msgstr "Descripción"
132
+
133
+ #: simple-membership/classes/class.bCategoryList.php:32
134
+ msgid "Count"
135
+ msgstr "Contador"
136
+
137
+ #: simple-membership/classes/class.bCategoryList.php:63
138
+ msgid "Updated! "
139
+ msgstr "¡Actualizado!"
140
+
141
+ #: simple-membership/classes/class.bForm.php:26
142
+ msgid ""
143
+ "Wordpress account exists with given user name. But given email doesn't match."
144
+ msgstr ""
145
+ "Ya existe una cuenta con este nombre de usuario, pero el correo electrónico "
146
+ "proporcionado no coincide."
147
+
148
+ #: simple-membership/classes/class.bForm.php:31
149
+ msgid ""
150
+ "Wordpress account exists with given email. But given user name doesn't match."
151
+ msgstr ""
152
+ "Existe una cuenta con el mail proporcionado, pero el nombre usuario no "
153
+ "coincide."
154
+
155
+ #: simple-membership/classes/class.bForm.php:40
156
+ msgid "User name is required"
157
+ msgstr "Debe de escribir un nombre de usuario."
158
+
159
+ #: simple-membership/classes/class.bForm.php:44
160
+ msgid "User name contains invalid character"
161
+ msgstr "El nombre de usuario contiene carácteres no válidos"
162
+
163
+ #: simple-membership/classes/class.bForm.php:52
164
+ msgid "User name already exists."
165
+ msgstr "El nombre de usuario ya está en uso."
166
+
167
+ #: simple-membership/classes/class.bForm.php:75
168
+ msgid "Password is required"
169
+ msgstr "Debe escribir una contraseña."
170
+
171
+ #: simple-membership/classes/class.bForm.php:82
172
+ msgid "Password mismatch"
173
+ msgstr "Contraseña incorrecta"
174
+
175
+ #: simple-membership/classes/class.bForm.php:98
176
+ msgid "Email is required"
177
+ msgstr "Debe de proporcionar un email o correo electrónico"
178
+
179
+ #: simple-membership/classes/class.bForm.php:102
180
+ msgid "Email is invalid"
181
+ msgstr "El correo electrónico proporcionado no es válido"
182
+
183
+ #: simple-membership/classes/class.bForm.php:118
184
+ msgid "Email is already used."
185
+ msgstr "El mail o correo electrónico proporcionado ya está en uso."
186
+
187
+ #: simple-membership/classes/class.bForm.php:184
188
+ msgid "Member since field is invalid"
189
+ msgstr "La fecha introducida en \"Miembro desde\" no es válida (dd/mm/aaaa)"
190
+
191
+ #: simple-membership/classes/class.bForm.php:195
192
+ msgid "Access starts field is invalid"
193
+ msgstr "La fecha de comienzo no es válida"
194
+
195
+ #: simple-membership/classes/class.bForm.php:205
196
+ msgid "Gender field is invalid"
197
+ msgstr "El valor introducido en el campo \"Genero\" no es válido"
198
+
199
+ #: simple-membership/classes/class.bForm.php:216
200
+ msgid "Account state field is invalid"
201
+ msgstr "El valor introducido en el campo \"Estado de la cuenta\" no es válido"
202
+
203
+ #: simple-membership/classes/class.bForm.php:223
204
+ msgid "Invalid membership level"
205
+ msgstr "Nivel de membresía no válido."
206
+
207
+ #: simple-membership/classes/class.bFrontRegistration.php:61
208
+ msgid "Registration Successful. "
209
+ msgstr "Registro correcto."
210
+
211
+ #: simple-membership/classes/class.bFrontRegistration.php:61
212
+ #: simple-membership/classes/class.bSettings.php:367
213
+ msgid "Please"
214
+ msgstr "Por favor"
215
+
216
+ #: simple-membership/classes/class.bFrontRegistration.php:61
217
+ #: simple-membership/classes/class.bSettings.php:367
218
+ #: simple-membership/views/login.php:21
219
+ msgid "Login"
220
+ msgstr "Identificarse"
221
+
222
+ #: simple-membership/classes/class.bFrontRegistration.php:72
223
+ #: simple-membership/classes/class.bFrontRegistration.php:152
224
+ msgid "Please correct the following"
225
+ msgstr "Por favor, corrija lo siguiente"
226
+
227
+ #: simple-membership/classes/class.bFrontRegistration.php:106
228
+ msgid "Membership Level Couldn't be found."
229
+ msgstr "El nivel de membresía no ha sido encontrado."
230
+
231
+ #: simple-membership/classes/class.bFrontRegistration.php:162
232
+ msgid "Email Address Not Valid."
233
+ msgstr "El email o correo electrónico proporcionado no es válido."
234
+
235
+ #: simple-membership/classes/class.bFrontRegistration.php:193
236
+ msgid "New password has been sent to your email address."
237
+ msgstr "La nueva contraseña ha sido enviada a su email o correo electrónico."
238
+
239
+ #: simple-membership/classes/class.bLevelForm.php:47
240
+ msgid "Date format is not valid."
241
+ msgstr "El formato de fecha no es válido."
242
+
243
+ #: simple-membership/classes/class.bLevelForm.php:54
244
+ msgid "Access duration must be > 0."
245
+ msgstr "La duración del acceso debe ser mayor a 0."
246
+
247
+ #: simple-membership/classes/class.bMembers.php:7
248
+ msgid "Member"
249
+ msgstr "Miembro"
250
+
251
+ #: simple-membership/classes/class.bMembers.php:8
252
+ #: simple-membership/classes/class.simple-wp-membership.php:462
253
+ msgid "Members"
254
+ msgstr "Miembros"
255
+
256
+ #: simple-membership/classes/class.bMembers.php:17
257
+ #: simple-membership/views/add.php:6 simple-membership/views/edit.php:4
258
+ msgid "User Name"
259
+ msgstr "Nombre de usuario"
260
+
261
+ #: simple-membership/classes/class.bMembers.php:18
262
+ #: simple-membership/views/add.php:22
263
+ #: simple-membership/views/admin_member_form_common_part.php:15
264
+ #: simple-membership/views/edit.php:20
265
+ msgid "First Name"
266
+ msgstr "Nombre"
267
+
268
+ #: simple-membership/classes/class.bMembers.php:19
269
+ #: simple-membership/views/add.php:26
270
+ #: simple-membership/views/admin_member_form_common_part.php:19
271
+ #: simple-membership/views/edit.php:24
272
+ msgid "Last Name"
273
+ msgstr "Apellidos"
274
+
275
+ #: simple-membership/classes/class.bMembers.php:20
276
+ #: simple-membership/views/add.php:10 simple-membership/views/edit.php:8
277
+ msgid "Email"
278
+ msgstr "Email"
279
+
280
+ #: simple-membership/classes/class.bMembers.php:22
281
+ #: simple-membership/views/admin_member_form_common_part.php:11
282
+ msgid "Access Starts"
283
+ msgstr "El acceso comienza"
284
+
285
+ #: simple-membership/classes/class.bMembers.php:23
286
+ msgid "Account State"
287
+ msgstr "Estado de la cuenta"
288
+
289
+ #: simple-membership/classes/class.bMembers.php:35
290
+ #: simple-membership/classes/class.bMembershipLevels.php:29
291
+ msgid "Delete"
292
+ msgstr "Eliminar"
293
+
294
+ #: simple-membership/classes/class.bMembers.php:101
295
+ msgid "No Member found."
296
+ msgstr "No se han encontrado miembros."
297
+
298
+ #: simple-membership/classes/class.bMembershipLevel.php:37
299
+ msgid "Membership Level Creation Successful."
300
+ msgstr "Tipo de miembros creado con éxito."
301
+
302
+ #: simple-membership/classes/class.bMembershipLevel.php:56
303
+ msgid "Updated Successfully."
304
+ msgstr "Actualizado con éxito."
305
+
306
+ #: simple-membership/classes/class.bMembershipLevels.php:18
307
+ msgid "Role"
308
+ msgstr "Rol"
309
+
310
+ #: simple-membership/classes/class.bMembershipLevels.php:19
311
+ msgid "Access Valid For/Until"
312
+ msgstr "Acceso válido para/hasta"
313
+
314
+ #: simple-membership/classes/class.bSettings.php:30
315
+ msgid "Plugin Documentation"
316
+ msgstr "Documentación del Plugin"
317
+
318
+ #: simple-membership/classes/class.bSettings.php:32
319
+ msgid "General Settings"
320
+ msgstr "Ajustes Generales"
321
+
322
+ #: simple-membership/classes/class.bSettings.php:34
323
+ msgid "Enable Free Membership"
324
+ msgstr "Habilitar nivel gratuito"
325
+
326
+ #: simple-membership/classes/class.bSettings.php:37
327
+ msgid "Enable/disable registration for free membership level"
328
+ msgstr "Permitir/Denegar registro para el nivel de miembros gratuitos"
329
+
330
+ #: simple-membership/classes/class.bSettings.php:38
331
+ msgid "Free Membership Level ID"
332
+ msgstr "ID Categoría de miembros gratuitos"
333
+
334
+ #: simple-membership/classes/class.bSettings.php:41
335
+ msgid "Assign free membership level ID"
336
+ msgstr "Asignar nivel ID a los miembros gratuitos"
337
+
338
+ #: simple-membership/classes/class.bSettings.php:42
339
+ msgid "Enable More Tag Protection"
340
+ msgstr "Activar más protección de etiquetas"
341
+
342
+ #: simple-membership/classes/class.bSettings.php:45
343
+ msgid ""
344
+ "Enables or disables \"more\" tag protection in the posts and pages. Anything "
345
+ "after the More tag is protected. Anything before the more tag is teaser "
346
+ "content."
347
+ msgstr ""
348
+ "Activar o desactivar más protección en las entradas y páginas. Todo lo que "
349
+ "se incluya bajo el tag \"MÁS\" es restringido, el resto es accesible a todos."
350
+
351
+ #: simple-membership/classes/class.bSettings.php:46
352
+ msgid "Hide Adminbar"
353
+ msgstr "Esconder Barra superior de inicio de sesión"
354
+
355
+ #: simple-membership/classes/class.bSettings.php:49
356
+ msgid ""
357
+ "WordPress shows an admin toolbar to the logged in users of the site. Check "
358
+ "this box if you want to hide that admin toolbar in the fronend of your site."
359
+ msgstr ""
360
+ "WordPress muestra la barra de herramientas para iniciado sesión. Marcar esta "
361
+ "casilla si desea ocultar esta barra."
362
+
363
+ #: simple-membership/classes/class.bSettings.php:51
364
+ msgid "Default Account Status"
365
+ msgstr "Estado de lal cuenta por defecto"
366
+
367
+ #: simple-membership/classes/class.bSettings.php:56
368
+ msgid ""
369
+ "Select the default account status for newly registered users. If you want to "
370
+ "manually approve the members then you can set the status to \"Pending\"."
371
+ msgstr ""
372
+ "Seleccionar una cuenta por defecto para nuevos registros. Si desea aprobar "
373
+ "manualmente los miembros, establezca el estado a \"Pendiente\"."
374
+
375
+ #: simple-membership/classes/class.bSettings.php:62
376
+ msgid "Pages Settings"
377
+ msgstr "Ajustes de las páguinas"
378
+
379
+ #: simple-membership/classes/class.bSettings.php:64
380
+ msgid "Login Page URL"
381
+ msgstr "URL Página de Inicio de sesión"
382
+
383
+ #: simple-membership/classes/class.bSettings.php:68
384
+ msgid "Registration Page URL"
385
+ msgstr "URL Página de registro"
386
+
387
+ #: simple-membership/classes/class.bSettings.php:72
388
+ msgid "Join Us Page URL"
389
+ msgstr "URL Página de \"Unete a nosotros\""
390
+
391
+ #: simple-membership/classes/class.bSettings.php:76
392
+ msgid "Edit Profile Page URL"
393
+ msgstr "URL Página de Editar Perfil"
394
+
395
+ #: simple-membership/classes/class.bSettings.php:80
396
+ msgid "Password Reset Page URL"
397
+ msgstr "URL Página de Restablecer contraseña"
398
+
399
+ #: simple-membership/classes/class.bSettings.php:85
400
+ msgid "Test & Debug Settings"
401
+ msgstr "Ajustes de Test & Debug"
402
+
403
+ #: simple-membership/classes/class.bSettings.php:91
404
+ msgid "Enable Sandbox Testing"
405
+ msgstr "Permitir Test Sandbox"
406
+
407
+ #: simple-membership/classes/class.bSettings.php:94
408
+ msgid "Enable this option if you want to do sandbox payment testing."
409
+ msgstr "Permitir esta opción si quiere testear pagos Sandbox"
410
+
411
+ #: simple-membership/classes/class.bSettings.php:104
412
+ msgid "Email Misc. Settings"
413
+ msgstr "Ajustes Email Misc."
414
+
415
+ #: simple-membership/classes/class.bSettings.php:106
416
+ msgid "From Email Address"
417
+ msgstr "Correo electrónico del remitente"
418
+
419
+ #: simple-membership/classes/class.bSettings.php:111
420
+ msgid "Email Settings (Prompt to Complete Registration )"
421
+ msgstr "Ajustes de Mail (solicitud para completar el registro)"
422
+
423
+ #: simple-membership/classes/class.bSettings.php:113
424
+ #: simple-membership/classes/class.bSettings.php:124
425
+ #: simple-membership/classes/class.bSettings.php:143
426
+ msgid "Email Subject"
427
+ msgstr "Asunto del mensaje"
428
+
429
+ #: simple-membership/classes/class.bSettings.php:117
430
+ #: simple-membership/classes/class.bSettings.php:128
431
+ #: simple-membership/classes/class.bSettings.php:147
432
+ msgid "Email Body"
433
+ msgstr "Cuerpo del mensaje"
434
+
435
+ #: simple-membership/classes/class.bSettings.php:122
436
+ msgid "Email Settings (Registration Complete)"
437
+ msgstr "Ajustes Mail (Registro Completado)"
438
+
439
+ #: simple-membership/classes/class.bSettings.php:132
440
+ msgid "Send Notification To Admin"
441
+ msgstr "Enviar notificación al Administrador"
442
+
443
+ #: simple-membership/classes/class.bSettings.php:136
444
+ msgid "Send Email to Member When Added via Admin Dashboard"
445
+ msgstr "Enviar mail al miembro cuando ha sido añadido por el administrador"
446
+
447
+ #: simple-membership/classes/class.bSettings.php:141
448
+ msgid " Email Settings (Account Upgrade Notification)"
449
+ msgstr "Ajustes Mail (Notificación de actualización de la cuenta)"
450
+
451
+ #: simple-membership/classes/class.bSettings.php:367
452
+ msgid "Not a Member?"
453
+ msgstr "¿No estas registrado?"
454
+
455
+ #: simple-membership/classes/class.bSettings.php:367
456
+ #: simple-membership/views/login.php:27
457
+ msgid "Join Us"
458
+ msgstr "Únete a nosotros"
459
+
460
+ #: simple-membership/classes/class.bUtils.php:63
461
+ msgid "Active"
462
+ msgstr "Activo"
463
+
464
+ #: simple-membership/classes/class.bUtils.php:64
465
+ msgid "Inactive"
466
+ msgstr "Inactivo"
467
+
468
+ #: simple-membership/classes/class.bUtils.php:65
469
+ msgid "Pending"
470
+ msgstr "Pendiente"
471
+
472
+ #: simple-membership/classes/class.bUtils.php:66
473
+ msgid "Expired"
474
+ msgstr "Caducado"
475
+
476
+ #: simple-membership/classes/class.bUtils.php:251
477
+ msgid "Never"
478
+ msgstr "Nunca"
479
+
480
+ #: simple-membership/classes/class.miscUtils.php:51
481
+ msgid "Registration"
482
+ msgstr "Registro"
483
+
484
+ #: simple-membership/classes/class.miscUtils.php:74
485
+ msgid "Member Login"
486
+ msgstr "Iniciar sesión"
487
+
488
+ #: simple-membership/classes/class.miscUtils.php:97
489
+ msgid "Profile"
490
+ msgstr "Perfil de usuario"
491
+
492
+ #: simple-membership/classes/class.miscUtils.php:120
493
+ msgid "Password Reset"
494
+ msgstr "Restablecer la contraseña"
495
+
496
+ #: simple-membership/classes/class.simple-wp-membership.php:184
497
+ msgid "You are not logged in."
498
+ msgstr "Usted no ha iniciado sesión."
499
+
500
+ #: simple-membership/classes/class.simple-wp-membership.php:215
501
+ msgid "Simple WP Membership Protection"
502
+ msgstr "Protección de Simple WP Membership"
503
+
504
+ #: simple-membership/classes/class.simple-wp-membership.php:228
505
+ msgid "Simple Membership Protection options"
506
+ msgstr "Opciones de protección de Simple Membership"
507
+
508
+ #: simple-membership/classes/class.simple-wp-membership.php:244
509
+ msgid "Do you want to protect this content?"
510
+ msgstr "Quieres proteger este contenido?"
511
+
512
+ #: simple-membership/classes/class.simple-wp-membership.php:249
513
+ msgid "Select the membership level that can access this content:"
514
+ msgstr "Selecciona los tipos de usuarios que pueden acceder a este contenido:"
515
+
516
+ #: simple-membership/classes/class.simple-wp-membership.php:459
517
+ msgid "WP Membership"
518
+ msgstr "WP Membership"
519
+
520
+ #: simple-membership/classes/class.simple-wp-membership.php:466
521
+ msgid "Settings"
522
+ msgstr "Ajustes"
523
+
524
+ #: simple-membership/classes/class.simple-wp-membership.php:468
525
+ msgid "Add-ons"
526
+ msgstr "Extensiones"
527
+
528
+ #: simple-membership/views/add.php:14 simple-membership/views/admin_add.php:19
529
+ #: simple-membership/views/admin_edit.php:17
530
+ #: simple-membership/views/edit.php:12 simple-membership/views/login.php:11
531
+ msgid "Password"
532
+ msgstr "Contraseña"
533
+
534
+ #: simple-membership/views/add.php:18 simple-membership/views/edit.php:16
535
+ msgid "Repeat Password"
536
+ msgstr "Repetir contraseña"
537
+
538
+ #: simple-membership/views/add.php:37
539
+ msgid "Register"
540
+ msgstr "Registrarse"
541
+
542
+ #: simple-membership/views/admin_add.php:6
543
+ msgid "Add Member"
544
+ msgstr "Añadir Miembro"
545
+
546
+ #: simple-membership/views/admin_add.php:7
547
+ msgid "Create a brand new user and add it to this site."
548
+ msgstr "Crear un nuevo usuario y agregarlo a esta web."
549
+
550
+ #: simple-membership/views/admin_add.php:11
551
+ msgid "User name"
552
+ msgstr "Nombre de usuario"
553
+
554
+ #: simple-membership/views/admin_add.php:11
555
+ #: simple-membership/views/admin_add.php:15
556
+ #: simple-membership/views/admin_add_level.php:11
557
+ #: simple-membership/views/admin_add_level.php:15
558
+ #: simple-membership/views/admin_add_level.php:19
559
+ #: simple-membership/views/admin_edit.php:9
560
+ #: simple-membership/views/admin_edit.php:13
561
+ #: simple-membership/views/admin_edit_level.php:10
562
+ #: simple-membership/views/admin_edit_level.php:14
563
+ #: simple-membership/views/admin_edit_level.php:18
564
+ msgid "(required)"
565
+ msgstr "(obligatorio)"
566
+
567
+ #: simple-membership/views/admin_add.php:15
568
+ #: simple-membership/views/admin_edit.php:13
569
+ msgid "E-mail"
570
+ msgstr "Email"
571
+
572
+ #: simple-membership/views/admin_add.php:19
573
+ msgid "(twice, required)"
574
+ msgstr "(escríbalo dos veces, Obligatorio)"
575
+
576
+ #: simple-membership/views/admin_add.php:24
577
+ #: simple-membership/views/admin_edit.php:21
578
+ msgid "Strength indicator"
579
+ msgstr "Indicador de seguridad"
580
+
581
+ #: simple-membership/views/admin_add.php:25
582
+ #: simple-membership/views/admin_edit.php:22
583
+ msgid ""
584
+ "Hint: The password should be at least seven characters long. To make it "
585
+ "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
586
+ "$ % ^ &amp; )."
587
+ msgstr ""
588
+ "Sugerencia: La contraseña debe tener al menos siete caracteres. Para hacerlo "
589
+ "más seguro, utilizar letras mayúsculas y minúsculas, números y símbolos "
590
+ "como! ? \"$% ^ & amp; )."
591
+
592
+ #: simple-membership/views/admin_add.php:29
593
+ #: simple-membership/views/admin_edit.php:26
594
+ #: simple-membership/views/loggedin.php:7
595
+ msgid "Account Status"
596
+ msgstr "Estado de la cuenta"
597
+
598
+ #: simple-membership/views/admin_add.php:36
599
+ msgid "Add New Member "
600
+ msgstr "Añadir nuevo miembro"
601
+
602
+ #: simple-membership/views/admin_addon_settings.php:2
603
+ #: simple-membership/views/admin_payment_settings.php:2
604
+ #: simple-membership/views/admin_settings.php:2
605
+ #: simple-membership/views/admin_tools_settings.php:2
606
+ msgid "Simple WP Membership::Settings"
607
+ msgstr "Simple WP Membership::Ajustes"
608
+
609
+ #: simple-membership/views/admin_addon_settings.php:7
610
+ msgid ""
611
+ "Some of the simple membership plugin's addon settings and options will be "
612
+ "displayed here (if you have them)"
613
+ msgstr ""
614
+ "Algunas de las extensiones de este plugin y sus opciones se muestran aquí "
615
+ "(si estuvieran instalados)"
616
+
617
+ #: simple-membership/views/admin_add_level.php:6
618
+ msgid "Create new membership level."
619
+ msgstr "Crear nueva categoría de usuario"
620
+
621
+ #: simple-membership/views/admin_add_level.php:11
622
+ #: simple-membership/views/admin_edit_level.php:10
623
+ msgid "Membership Level Name"
624
+ msgstr "Nombre de la categoría de usuario"
625
+
626
+ #: simple-membership/views/admin_add_level.php:15
627
+ #: simple-membership/views/admin_edit_level.php:14
628
+ msgid "Default WordPress Role"
629
+ msgstr "Rol en Wordpress por defecto"
630
+
631
+ #: simple-membership/views/admin_add_level.php:19
632
+ #: simple-membership/views/admin_edit_level.php:18
633
+ msgid "Access Duration"
634
+ msgstr "Duración del acceso"
635
+
636
+ #: simple-membership/views/admin_add_level.php:22
637
+ msgid "No Expiry (Access for this level will not expire until cancelled"
638
+ msgstr "Sin expiración (el acceso a este nivel no expirará hasta que se anule)"
639
+
640
+ #: simple-membership/views/admin_add_level.php:23
641
+ #: simple-membership/views/admin_add_level.php:25
642
+ #: simple-membership/views/admin_add_level.php:27
643
+ #: simple-membership/views/admin_add_level.php:29
644
+ #: simple-membership/views/admin_edit_level.php:22
645
+ #: simple-membership/views/admin_edit_level.php:25
646
+ #: simple-membership/views/admin_edit_level.php:28
647
+ #: simple-membership/views/admin_edit_level.php:31
648
+ msgid "Expire After"
649
+ msgstr "Expira después"
650
+
651
+ #: simple-membership/views/admin_add_level.php:24
652
+ #: simple-membership/views/admin_edit_level.php:23
653
+ msgid "Days (Access expires after given number of days)"
654
+ msgstr "Días (el acceso expirará después del número establecido de días)"
655
+
656
+ #: simple-membership/views/admin_add_level.php:26
657
+ msgid "Weeks (Access expires after given number of weeks"
658
+ msgstr "Semanas (el acceso expirará después del número establecido de semanas)"
659
+
660
+ #: simple-membership/views/admin_add_level.php:28
661
+ #: simple-membership/views/admin_edit_level.php:29
662
+ msgid "Months (Access expires after given number of months)"
663
+ msgstr "Meses (el acceso expirará después del número establecido de meses)"
664
+
665
+ #: simple-membership/views/admin_add_level.php:30
666
+ #: simple-membership/views/admin_edit_level.php:32
667
+ msgid "Years (Access expires after given number of years)"
668
+ msgstr "Años (el acceso expirará después del número establecido de años)"
669
+
670
+ #: simple-membership/views/admin_add_level.php:31
671
+ #: simple-membership/views/admin_edit_level.php:34
672
+ msgid "Fixed Date Expiry"
673
+ msgstr "Fecha de expiración"
674
+
675
+ #: simple-membership/views/admin_add_level.php:32
676
+ #: simple-membership/views/admin_edit_level.php:35
677
+ msgid "(Access expires on a fixed date)"
678
+ msgstr "(El acceso expira a una fecha establecida)"
679
+
680
+ #: simple-membership/views/admin_add_level.php:36
681
+ msgid "Access to older posts."
682
+ msgstr "Acceso a entradas antiguas."
683
+
684
+ #: simple-membership/views/admin_add_level.php:39
685
+ msgid "Only allow access to posts published after the user's join date."
686
+ msgstr ""
687
+ "Solo permite acceso a las entradas publicadas después de la fecha de alta "
688
+ "del miembro."
689
+
690
+ #: simple-membership/views/admin_add_level.php:45
691
+ msgid "Add New Membership Level "
692
+ msgstr "Añadir nueva categoriza de usuario"
693
+
694
+ #: simple-membership/views/admin_add_ons_page.php:6
695
+ msgid "Simple WP Membership::Add-ons"
696
+ msgstr "Simple WP Membership::Extensiones"
697
+
698
+ #: simple-membership/views/admin_category_list.php:2
699
+ msgid "Simple WP Membership::Categories"
700
+ msgstr "Simple WP Membership::Categorías"
701
+
702
+ #: simple-membership/views/admin_category_list.php:7
703
+ msgid ""
704
+ "First of all, globally protect the category on your site by selecting "
705
+ "\"General Protection\" from the drop-down box below and then select the "
706
+ "categories that should be protected from non-logged in users."
707
+ msgstr ""
708
+ "Primero, proteja las categorías en su wen seleccionando \"General Protection"
709
+ "\" desde la siguiente casilla desplegable y marque las categorías que desea "
710
+ "proteger de los usuarios no registrados."
711
+
712
+ #: simple-membership/views/admin_category_list.php:10
713
+ msgid ""
714
+ "Next, select an existing membership level from the drop-down box below and "
715
+ "then select the categories you want to grant access to (for that particular "
716
+ "membership level)."
717
+ msgstr ""
718
+ "Segundo, seleccione un nivel de membresía existente de la casilla "
719
+ "desplegable y seleccione las categorías a las cuales permitir acceso (para "
720
+ "ese nivel en concreto)."
721
+
722
+ #: simple-membership/views/admin_edit.php:5
723
+ msgid "Edit Member"
724
+ msgstr "Editar usuario"
725
+
726
+ #: simple-membership/views/admin_edit.php:6
727
+ msgid "Edit existing member details."
728
+ msgstr "Editar detalles de usuario existente"
729
+
730
+ #: simple-membership/views/admin_edit.php:9
731
+ #: simple-membership/views/login.php:5
732
+ msgid "Username"
733
+ msgstr "Nombre de usuario"
734
+
735
+ #: simple-membership/views/admin_edit.php:17
736
+ msgid "(twice, leave empty to retain old password)"
737
+ msgstr "(dos veces, dejar en blanco pra conservar la actual contraseña)"
738
+
739
+ #: simple-membership/views/admin_edit.php:33
740
+ msgid "Notify User"
741
+ msgstr "Notificar usuario"
742
+
743
+ #: simple-membership/views/admin_edit.php:40
744
+ msgid "Edit User "
745
+ msgstr "Editar usuario"
746
+
747
+ #: simple-membership/views/admin_edit_level.php:5
748
+ msgid "Edit membership level"
749
+ msgstr "Editar categoría de usuario"
750
+
751
+ #: simple-membership/views/admin_edit_level.php:6
752
+ msgid "Edit membership level."
753
+ msgstr "Editar categoría de usuario"
754
+
755
+ #: simple-membership/views/admin_edit_level.php:21
756
+ msgid "No Expiry (Access for this level will not expire until cancelled)"
757
+ msgstr "Sin expiración (el acceso a este nivel no expirará hasta que se anule)"
758
+
759
+ #: simple-membership/views/admin_edit_level.php:26
760
+ msgid "Weeks (Access expires after given number of weeks)"
761
+ msgstr "Semanas (el acceso expirará después del número establecido de semanas)"
762
+
763
+ #: simple-membership/views/admin_edit_level.php:40
764
+ msgid "Protect Older Posts (optional)"
765
+ msgstr "Protejer entradas antiguas (opcional)"
766
+
767
+ #: simple-membership/views/admin_edit_level.php:43
768
+ msgid ""
769
+ "Only allow access to protected posts published after the members's join date."
770
+ msgstr ""
771
+ "Solo permite acceso a entradas protegidas a partir de la fecha de alta del "
772
+ "miembro."
773
+
774
+ #: simple-membership/views/admin_edit_level.php:51
775
+ msgid "Edit Membership Level "
776
+ msgstr "Editar categoría de usuario"
777
+
778
+ #: simple-membership/views/admin_members.php:2
779
+ msgid "Simple WP Membership::Members"
780
+ msgstr "Simple WP Membership::Usuarios"
781
+
782
+ #: simple-membership/views/admin_members.php:3
783
+ #: simple-membership/views/admin_members.php:19
784
+ #: simple-membership/views/admin_membership_levels.php:20
785
+ msgid "Add New"
786
+ msgstr "Añadir nuevo"
787
+
788
+ #: simple-membership/views/admin_members.php:9
789
+ #: simple-membership/views/admin_membership_levels.php:10
790
+ msgid "search"
791
+ msgstr "Buscar"
792
+
793
+ #: simple-membership/views/admin_membership_levels.php:2
794
+ msgid "Simple WP Membership::Membership Levels"
795
+ msgstr "Simple WP Membership::Categorías de usuario"
796
+
797
+ #: simple-membership/views/admin_membership_level_menu.php:2
798
+ msgid "Membership level"
799
+ msgstr "Categoría de usuario"
800
+
801
+ #: simple-membership/views/admin_membership_level_menu.php:3
802
+ msgid "Manage Content Production"
803
+ msgstr "Gestionar la producción de contenido"
804
+
805
+ #: simple-membership/views/admin_membership_level_menu.php:4
806
+ msgid "Category Protection"
807
+ msgstr "Protección de categoría"
808
+
809
+ #: simple-membership/views/admin_membership_manage.php:17
810
+ msgid "Example Content Protection Settings"
811
+ msgstr "Ejemplo de Ajustes de contenido protegido"
812
+
813
+ #: simple-membership/views/admin_member_form_common_part.php:23
814
+ msgid "Gender"
815
+ msgstr "Sexo"
816
+
817
+ #: simple-membership/views/admin_member_form_common_part.php:30
818
+ #: simple-membership/views/edit.php:28
819
+ msgid "Phone"
820
+ msgstr "Teléfono"
821
+
822
+ #: simple-membership/views/admin_member_form_common_part.php:34
823
+ #: simple-membership/views/edit.php:32
824
+ msgid "Street"
825
+ msgstr "Calle"
826
+
827
+ #: simple-membership/views/admin_member_form_common_part.php:38
828
+ #: simple-membership/views/edit.php:36
829
+ msgid "City"
830
+ msgstr "Ciudad"
831
+
832
+ #: simple-membership/views/admin_member_form_common_part.php:42
833
+ #: simple-membership/views/edit.php:40
834
+ msgid "State"
835
+ msgstr "Provincia"
836
+
837
+ #: simple-membership/views/admin_member_form_common_part.php:46
838
+ #: simple-membership/views/edit.php:44
839
+ msgid "Zipcode"
840
+ msgstr "Código Postal"
841
+
842
+ #: simple-membership/views/admin_member_form_common_part.php:50
843
+ #: simple-membership/views/edit.php:48
844
+ msgid "Country"
845
+ msgstr "País"
846
+
847
+ #: simple-membership/views/admin_member_form_common_part.php:54
848
+ msgid "Company"
849
+ msgstr "Empresa o Institución"
850
+
851
+ #: simple-membership/views/admin_member_form_common_part.php:58
852
+ msgid "Member Since"
853
+ msgstr "Miembro desde"
854
+
855
+ #: simple-membership/views/admin_payment_settings.php:33
856
+ msgid "PayPal Integration Settings"
857
+ msgstr "Ajustes de integración con Paypal"
858
+
859
+ #: simple-membership/views/admin_payment_settings.php:36
860
+ msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
861
+ msgstr "Generar código de \"variables avanzadas\" para su botón de Paypal"
862
+
863
+ #: simple-membership/views/admin_payment_settings.php:39
864
+ msgid "Enter the Membership Level ID"
865
+ msgstr "Introduzca el ID de la categoría de usuario"
866
+
867
+ #: simple-membership/views/admin_payment_settings.php:41
868
+ msgid "Generate Code"
869
+ msgstr "General el código"
870
+
871
+ #: simple-membership/views/admin_tools_settings.php:9
872
+ msgid "Generate a Registration Completion link"
873
+ msgstr "Generar link para completar registro"
874
+
875
+ #: simple-membership/views/admin_tools_settings.php:12
876
+ msgid ""
877
+ "You can manually generate a registration completion link here and give it to "
878
+ "your customer if they have missed the email that was automatically sent out "
879
+ "to them after the payment."
880
+ msgstr ""
881
+ "Puede generar manualmente un link para completar el registro aquí y enviarlo "
882
+ "al usuario si ha perdido el correo electrónico que se envía automáticamente "
883
+ "a ellos después del pago."
884
+
885
+ #: simple-membership/views/admin_tools_settings.php:17
886
+ msgid "Generate Registration Completion Link"
887
+ msgstr "Generar link para completar registro"
888
+
889
+ #: simple-membership/views/admin_tools_settings.php:20
890
+ msgid "OR"
891
+ msgstr "o"
892
+
893
+ #: simple-membership/views/admin_tools_settings.php:21
894
+ msgid "For All Pending Registrations"
895
+ msgstr "Para todos los registros pendientes"
896
+
897
+ #: simple-membership/views/admin_tools_settings.php:24
898
+ msgid "Registration Completion Links Will Appear Below:"
899
+ msgstr "Los enlaces para completar el registro aparecerán bajo:"
900
+
901
+ #: simple-membership/views/admin_tools_settings.php:31
902
+ msgid "Send Registration Reminder Email too"
903
+ msgstr "Enviar también recordatorio del mail de registro"
904
+
905
+ #: simple-membership/views/admin_tools_settings.php:34
906
+ msgid "Submit"
907
+ msgstr "Enviar"
908
+
909
+ #: simple-membership/views/edit.php:58
910
+ msgid "Update"
911
+ msgstr "Actualizar"
912
+
913
+ #: simple-membership/views/forgot_password.php:5
914
+ msgid "Email Address"
915
+ msgstr "Email"
916
+
917
+ #: simple-membership/views/forgot_password.php:12
918
+ msgid "Reset Password"
919
+ msgstr "Restablecer Contraseña"
920
+
921
+ #: simple-membership/views/loggedin.php:3
922
+ msgid "Logged in as"
923
+ msgstr "Sesión iniciada como"
924
+
925
+ #: simple-membership/views/loggedin.php:11
926
+ msgid "Membership"
927
+ msgstr "Membresía"
928
+
929
+ #: simple-membership/views/loggedin.php:15
930
+ msgid "Account Expiry"
931
+ msgstr "Valido hasta"
932
+
933
+ #: simple-membership/views/loggedin.php:19
934
+ msgid "Logout"
935
+ msgstr "Cerrar sesión"
936
+
937
+ #: simple-membership/views/login.php:18
938
+ msgid "Remember Me"
939
+ msgstr "Recordarme"
940
+
941
+ #: simple-membership/views/login.php:24
942
+ msgid "Forgot Password"
943
+ msgstr "Contraseña Perdida?"
944
+
945
+ #~ msgid "Bad Cookie Hash"
946
+ #~ msgstr "Bad Cookie Hash"
947
+
948
+ #~ msgid "Display SWPM Login."
949
+ #~ msgstr "Display SWPM login."
950
+
951
+ #~ msgid "SWPM Login"
952
+ #~ msgstr "SWPM login"
953
+
954
+ #~ msgid "Subscription Duration"
955
+ #~ msgstr "Duración de la subscripción"
956
+
957
+ #~ msgid "No Expiry"
958
+ #~ msgstr "No caduca"
959
+
960
+ #~ msgid "Subscription starts field is invalid"
961
+ #~ msgstr ""
962
+ #~ "La fecha introducida en \"Subscripción desde\" no es válida (dd/mm/aaaa)\n"
963
+
964
+ #~ msgid "Subscriptoin duration must be > 0."
965
+ #~ msgstr "El tiempo de subscripción ha de ser mayor que 0."
966
+
967
+ #~ msgid "Subscription Starts"
968
+ #~ msgstr "Inició de subscripción"
969
+
970
+ #~ msgid "Subscription Valid For"
971
+ #~ msgstr "Subscripción valida por"
languages/swpm-lt_LT.mo ADDED
Binary file
languages/swpm-lt_LT.po ADDED
@@ -0,0 +1,519 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: Simple WordPress Membership\n"
4
+ "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2014-07-30 17:30+0800\n"
6
+ "PO-Revision-Date: Wed Apr 29 2015 08:34:54 GMT+0100 (GMT Daylight Time)\n"
7
+ "Last-Translator: Elurija <e.eimaite@gmail.com>\n"
8
+ "Language-Team: \n"
9
+ "Language: Lithuanian\n"
10
+ "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10 >= 2 "
11
+ "&&(n%100<10||n%100 >= 20)? 1 : 2)\n"
12
+ "MIME-Version: 1.0\n"
13
+ "Content-Type: text/plain; charset=UTF-8\n"
14
+ "Content-Transfer-Encoding: 8bit\n"
15
+ "X-Poedit-SourceCharset: UTF-8\n"
16
+ "X-Generator: Loco - https://localise.biz/\n"
17
+ "X-Poedit-Basepath: .\n"
18
+ "X-Poedit-KeywordsList: _:1;gettext:1;dgettext:2;ngettext:1,2;dngettext:2,3;"
19
+ "__:1;_e:1;_c:1;_n:1,2;_n_noop:1,2;_nc:1,2;__ngettext:1,2;__ngettext_noop:1,2;"
20
+ "_x:1,2c;_ex:1,2c;_nx:1,2,4c;_nx_noop:1,2,3c;_n_js:1,2;_nx_js:1,2,3c;"
21
+ "esc_attr__:1;esc_html__:1;esc_attr_e:1;esc_html_e:1;esc_attr_x:1,2c;"
22
+ "esc_html_x:1,2c;comments_number_link:2,3;t:1;st:1;trans:1;transChoice:1,2\n"
23
+ "X-Poedit-SearchPath-0: .\n"
24
+ "X-Loco-Target-Locale: lt_LT"
25
+
26
+ msgid " Email Settings (Account Upgrade Notification)"
27
+ msgstr "El. pašto nustatymai"
28
+
29
+ msgid "(required)"
30
+ msgstr "(būtina)"
31
+
32
+ msgid "(twice, required)"
33
+ msgstr "(du kartus, būtina)"
34
+
35
+ msgid "Account State"
36
+ msgstr "Paskyros būsena"
37
+
38
+ msgid "Account Status"
39
+ msgstr "Paskyros statusas"
40
+
41
+ msgid "Account is inactive."
42
+ msgstr "Paskyra neaktyvi"
43
+
44
+ msgid "Account state field is invalid"
45
+ msgstr "Paskyros būsena neteisinga"
46
+
47
+ msgid "Active"
48
+ msgstr "Aktyvi (-us)"
49
+
50
+ msgid "Add Member"
51
+ msgstr "Pridėti narį"
52
+
53
+ msgid "Add New"
54
+ msgstr "Pridėjti naują"
55
+
56
+ msgid "Add New Member "
57
+ msgstr "Pridėti naują narį"
58
+
59
+ msgid "Add New Membership Level "
60
+ msgstr "Pridėti naują narystės lygį"
61
+
62
+ msgid "Aready taken"
63
+ msgstr "Jau naudojamas kito nario"
64
+
65
+ msgid "Assign free membership level ID"
66
+ msgstr "Pridėkite nemomamos narystės ID"
67
+
68
+ msgid "Available"
69
+ msgstr "Laisvas"
70
+
71
+ msgid "Bad Cookie Hash"
72
+ msgstr "Blogas sausainiuko hash"
73
+
74
+ msgid "City"
75
+ msgstr "Miestas"
76
+
77
+ msgid "Company"
78
+ msgstr "Įmonė"
79
+
80
+ msgid "Country"
81
+ msgstr "Šalos"
82
+
83
+ msgid "Create a brand new user and add it to this site."
84
+ msgstr "Sukurkite naują vartotoją ir pridėkite jį prie svetainės"
85
+
86
+ msgid "Create new membership level."
87
+ msgstr "Sukurkite naują narystės lygį"
88
+
89
+ msgid "Default WordPress Role"
90
+ msgstr "Numatyta Wordpress rolė"
91
+
92
+ msgid "Delete"
93
+ msgstr "Trinti"
94
+
95
+ msgid "Display SWPM Login."
96
+ msgstr "Rodyti SWPM prisijungimą"
97
+
98
+ msgid "Do you want to protect this content?"
99
+ msgstr "Ar norite apsaugoti šią informaciją?"
100
+
101
+ msgid "E-mail"
102
+ msgstr "El. paštas"
103
+
104
+ msgid "Edit Member"
105
+ msgstr "Redaguokite narį"
106
+
107
+ msgid "Edit Membership Level "
108
+ msgstr "Redaguokite narystės lygį"
109
+
110
+ msgid "Edit Profile Page URL"
111
+ msgstr "Profilio redagavimo puslapio URL"
112
+
113
+ msgid "Edit User "
114
+ msgstr "Redaguoti vartotoją"
115
+
116
+ msgid "Edit existing member details."
117
+ msgstr "Redaguoti nario duomenis"
118
+
119
+ msgid "Edit membership level"
120
+ msgstr "Redaguoti narystės lygį\n"
121
+
122
+ msgid "Edit membership level."
123
+ msgstr "Redaguoti narystės lygį"
124
+
125
+ msgid "Email"
126
+ msgstr "El. paštas"
127
+
128
+ msgid "Email Address"
129
+ msgstr "El. paštas"
130
+
131
+ msgid "Email Address Not Valid."
132
+ msgstr "El. paštas neteisingas"
133
+
134
+ msgid "Email Body"
135
+ msgstr "El. paštas tekstas"
136
+
137
+ msgid "Email Misc. Settings"
138
+ msgstr "El. paštas kiti nustatymai"
139
+
140
+ msgid "Email Settings (Prompt to Complete Registration )"
141
+ msgstr "El. pašto nustatymai (skatina užbaigti registraciją)"
142
+
143
+ msgid "Email Settings (Registration Complete)"
144
+ msgstr "El. pašto nustatymai (registracija pavyko)"
145
+
146
+ msgid "Email Subject"
147
+ msgstr "El. pašto tema"
148
+
149
+ msgid "Email is already used."
150
+ msgstr "El. paštas jau naudojamas"
151
+
152
+ msgid "Email is invalid"
153
+ msgstr "El. pašto neteisingas"
154
+
155
+ msgid "Email is required"
156
+ msgstr "El. paštas - būtina"
157
+
158
+ msgid "Enable Free Membership"
159
+ msgstr "Aktyvuoti nemokamą narystę"
160
+
161
+ msgid "Enable Sandbox Testing"
162
+ msgstr "Aktyvuoti testavimą"
163
+
164
+ msgid "Enable this option if you want to do sandbox payment testing."
165
+ msgstr "Aktyvuokite, jei norite testuoti mokėjimus."
166
+
167
+ msgid "Enable/disable registration for free membership level"
168
+ msgstr "Aktyvuokite / Išjunkite registraciją nemokamai narystei"
169
+
170
+ msgid "Enter the Membership Level ID"
171
+ msgstr "Įveskite narystės lygio ID"
172
+
173
+ msgid "Example Content Protection Settings"
174
+ msgstr "Pavyzdyniai turinio apsaugojimo nustatymai"
175
+
176
+ msgid "Expired"
177
+ msgstr "Nebegalioja"
178
+
179
+ msgid "First Name"
180
+ msgstr "Vardas"
181
+
182
+ msgid "For All Pending Registrations"
183
+ msgstr "Visos nepatvirtintoms registracijoms"
184
+
185
+ msgid "Forgot Password"
186
+ msgstr "Pamiršau slaptažodį"
187
+
188
+ msgid "Free Membership Level ID"
189
+ msgstr "Nemokamos narystės lygio ID"
190
+
191
+ msgid "From Email Address"
192
+ msgstr "Nuo el. pašto adresas"
193
+
194
+ msgid "Gender"
195
+ msgstr "Lytis"
196
+
197
+ msgid "Gender field is invalid"
198
+ msgstr "Lyties laukelio užpildytas neteisingai"
199
+
200
+ msgid "General Settings"
201
+ msgstr "Pagrindiniai nustatymai"
202
+
203
+ msgid "Generate Code"
204
+ msgstr "Generuoti kodą"
205
+
206
+ msgid "Generate Registration Completion Link"
207
+ msgstr "Generuoti registracijos baigimo nuorodą"
208
+
209
+ msgid "Generate a Registration Completion link"
210
+ msgstr "Generuoti registracijos baigimo nuorodą"
211
+
212
+ msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
213
+ msgstr ""
214
+ "Generuoti \n"
215
+ "\"Advanced Variables\" \n"
216
+ "kodą Paypal mygtukui"
217
+
218
+ msgid "Hide Adminbar"
219
+ msgstr "Slėpti Adminbar"
220
+
221
+ msgid ""
222
+ "Hint: The password should be at least seven characters long. To make it "
223
+ "stronger, use upper and lower case letters, numbers and symbols like ! \" ? $ "
224
+ "% ^ &amp; )."
225
+ msgstr ""
226
+ "! Slaptažodis turėtų būti bent iš 7 ženklų. Naudokite didžiąsias ir mažasias "
227
+ "raides, skaičius bei simbolius tokius kaip \n"
228
+ " ! \" ? $ % ^ &amp; "
229
+
230
+ msgid "ID"
231
+ msgstr "ID"
232
+
233
+ msgid "Inactive"
234
+ msgstr "Neaktyvus"
235
+
236
+ msgid "Invalid User Name"
237
+ msgstr "Vartotojo vardas neteisingas"
238
+
239
+ msgid "Join Us"
240
+ msgstr "Prisijunkite"
241
+
242
+ msgid "Join Us Page URL"
243
+ msgstr "Prisijungimo URL"
244
+
245
+ msgid "Last Name"
246
+ msgstr "Pavardė"
247
+
248
+ msgctxt "Level"
249
+ msgid "Add New"
250
+ msgstr "Pridėti naują (lygį)"
251
+
252
+ msgid "Logged Out Successfully."
253
+ msgstr "Sėkmingai atsijungėte"
254
+
255
+ msgid "Logged in as"
256
+ msgstr "Prisjungęs kaip"
257
+
258
+ msgid "Login"
259
+ msgstr "Prisijungti"
260
+
261
+ msgid "Login Page URL"
262
+ msgstr "Prisijungimo URL"
263
+
264
+ msgid "Logout"
265
+ msgstr "Atsijungti"
266
+
267
+ msgid "Manage Content Production"
268
+ msgstr "Valdykite turinio produkciją"
269
+
270
+ msgid "Member"
271
+ msgstr "Narys"
272
+
273
+ msgid "Member Login"
274
+ msgstr "Narių prisijungimas"
275
+
276
+ msgid "Member Since"
277
+ msgstr "Narys nuo"
278
+
279
+ msgid "Member since field is invalid"
280
+ msgstr "Narys nuo laukelis neteisingas"
281
+
282
+ msgid "Members"
283
+ msgstr "Nariai"
284
+
285
+ msgid "Membership"
286
+ msgstr "Narystė"
287
+
288
+ msgid "Membership Level"
289
+ msgstr "Narystės lygis"
290
+
291
+ msgid "Membership Level Couldn't be found."
292
+ msgstr "Narystės lygis nerastas"
293
+
294
+ msgid "Membership Level Creation Successful."
295
+ msgstr "Narystės lygis sėkmingai sukurtas."
296
+
297
+ msgid "Membership Level Name"
298
+ msgstr "Narystės lygio pavadinimas"
299
+
300
+ msgid "Membership Levels"
301
+ msgstr "Narystės lygiai."
302
+
303
+ msgid "Membership level"
304
+ msgstr "Narystės lygis"
305
+
306
+ msgid "New password has been sent to your email address."
307
+ msgstr "Naujas slaptaždis išsiųstas į Jūsų el. paštą."
308
+
309
+ msgid "No Expiry"
310
+ msgstr "Nėra galiojimo"
311
+
312
+ msgid "No Member found."
313
+ msgstr "Toks narys nerastas"
314
+
315
+ msgid "OR"
316
+ msgstr "arba"
317
+
318
+ msgid "Pages Settings"
319
+ msgstr "Puslapio nustatymai"
320
+
321
+ msgid "Password"
322
+ msgstr "Slaptažodis"
323
+
324
+ msgid "Password Empty or Invalid."
325
+ msgstr "Slaptažodžio laukelis tuščias arba neteisingas"
326
+
327
+ msgid "Password Reset"
328
+ msgstr "Keisti slaptažodį"
329
+
330
+ msgid "Password Reset Page URL"
331
+ msgstr "Slaptažodžio keitimo nuoroda"
332
+
333
+ msgid "Password is required"
334
+ msgstr "Slaptažodis būtinas"
335
+
336
+ msgid "Password mismatch"
337
+ msgstr "Slaptažodžiai skirtingi"
338
+
339
+ msgid "PayPal Integration Settings"
340
+ msgstr "Paypal integravimo nustatymai"
341
+
342
+ msgid "Pending"
343
+ msgstr "Nepatvirtinta"
344
+
345
+ msgid "Phone"
346
+ msgstr "Tel numeris"
347
+
348
+ msgid "Phone number is invalid"
349
+ msgstr "Neteisingas tel numeris"
350
+
351
+ msgid "Please"
352
+ msgstr "Prašome"
353
+
354
+ msgid "Please correct the following"
355
+ msgstr "Ištaisykite "
356
+
357
+ msgid "Please correct the following:"
358
+ msgstr "Ištaisykite "
359
+
360
+ msgid "Plugin Documentation"
361
+ msgstr "Įskiepio dokumentai"
362
+
363
+ msgid "Profile"
364
+ msgstr "Profilis"
365
+
366
+ msgid "Register"
367
+ msgstr "Registruokitės"
368
+
369
+ msgid "Registration"
370
+ msgstr "Registracija"
371
+
372
+ msgid "Registration Completion Links Will Appear Below:"
373
+ msgstr "Registracijos baigimo nuoroda atsiras žemiau:"
374
+
375
+ msgid "Registration Page URL"
376
+ msgstr "Regsitracijos puslapio URL"
377
+
378
+ msgid "Registration Successful."
379
+ msgstr "Registracija sėkminga"
380
+
381
+ msgid "Remember Me"
382
+ msgstr "Prisiminti mane"
383
+
384
+ msgid "Repeat Password"
385
+ msgstr "Pakartoti slaptažodį"
386
+
387
+ msgid "Reset Password"
388
+ msgstr "Atkurti slaptaždį"
389
+
390
+ msgid "Role"
391
+ msgstr "Rolė"
392
+
393
+ msgid "SWPM Login"
394
+ msgstr "SWPM prisijungimas"
395
+
396
+ msgid "Select the membership level that can access this content:"
397
+ msgstr "Pasirinkite narystės lygį, kuris turės prieigą prie šio turinio:"
398
+
399
+ msgid "Send Email to Member When Added via Admin Dashboard"
400
+ msgstr ""
401
+ "Siųskite el. laiška nariui, kai jis yra pridedamas per administracijos "
402
+ "valdymo pultą"
403
+
404
+ msgid "Send Notification To Admin"
405
+ msgstr "Siųsti pranešimą administratoriui"
406
+
407
+ msgid "Send Registration Reminder Email too"
408
+ msgstr "Siųsti registracijos priminimą"
409
+
410
+ msgid "Session Expired."
411
+ msgstr "Sesija baigėsi"
412
+
413
+ msgid "Settings"
414
+ msgstr "Nustatymai"
415
+
416
+ msgid "Simple Membership Protection options"
417
+ msgstr "Simple Membership Protection nustatymai"
418
+
419
+ msgid "Simple WP Membership Protection"
420
+ msgstr "SWPM apsauga"
421
+
422
+ msgid "Simple WP Membership::Members"
423
+ msgstr "SWPM:Nariai"
424
+
425
+ msgid "Simple WP Membership::Membership Levels"
426
+ msgstr "SWPM:Narystės lygiai"
427
+
428
+ msgid "Simple WP Membership::Settings"
429
+ msgstr "SWPM:Nustatymai"
430
+
431
+ msgid "State"
432
+ msgstr "Savivaldybė"
433
+
434
+ msgid "Street"
435
+ msgstr "Gatvė"
436
+
437
+ msgid "Strength indicator"
438
+ msgstr "Sudėtingumo indikatorius"
439
+
440
+ msgid "Submit"
441
+ msgstr "Pateikti"
442
+
443
+ msgid "Subscription Duration"
444
+ msgstr "Prenumeratos trukmė"
445
+
446
+ msgid "Subscription Starts"
447
+ msgstr "Prenumerata prasideda"
448
+
449
+ msgid "Subscription Valid For"
450
+ msgstr "Prenumerata galioja"
451
+
452
+ msgid "Subscription starts field is invalid"
453
+ msgstr "Prenumeratos pradžios laukelis neteisingas"
454
+
455
+ msgid "Subscriptoin duration must be > 0."
456
+ msgstr "Prenumeratos trukmė turi būti daugiau > 0."
457
+
458
+ msgid "Test & Debug Settings"
459
+ msgstr "Testavimo ir Debug nustatymai"
460
+
461
+ msgid "Update"
462
+ msgstr "Atnaujinti"
463
+
464
+ msgid "Updated Successfully."
465
+ msgstr "Sėkmingai atnaujinta."
466
+
467
+ msgid "User Name"
468
+ msgstr "Vartotojo vardas"
469
+
470
+ msgid "User Not Found."
471
+ msgstr "Nėra tokio vartotojo."
472
+
473
+ msgid "User name"
474
+ msgstr "Vartotojo vardas"
475
+
476
+ msgid "User name already exists."
477
+ msgstr "Toks vartotojo vardas jau yra"
478
+
479
+ msgid "User name is required"
480
+ msgstr "Vartotojo vardas yra privalomas"
481
+
482
+ msgid "Username"
483
+ msgstr "Vartotojo vardas"
484
+
485
+ msgid "WP Membership"
486
+ msgstr "WP Narystė"
487
+
488
+ msgid ""
489
+ "WordPress shows an admin toolbar to the logged in users of the site. Check "
490
+ "this box if you want to hide that admin toolbar in the fronend of your site."
491
+ msgstr ""
492
+ "WordPress rodo administracijos panelę prisijungusiems nariams. Uždėkite "
493
+ "varnelę, jei nenorite, kad ji būtų rodoma."
494
+
495
+ msgid "Wordpress account exists with given email. But given user name doesn't match."
496
+ msgstr "Paskyra su tokiu el. paštu egzistuoja, tačiau nesutampa vartotojo vardai."
497
+
498
+ msgid "Wordpress account exists with given user name. But given email doesn't match."
499
+ msgstr ""
500
+ "Toks vartotojo vardas jau yra užregistruotas. Tačiau nesutampa el. pašto "
501
+ "adresai."
502
+
503
+ msgid "You are logged in as:"
504
+ msgstr "Esate prisijungęs kaip:"
505
+
506
+ msgid ""
507
+ "You can manually generate a registration completion link here and give it to "
508
+ "your customer if they have missed the email that was automatically sent out "
509
+ "to them after the payment."
510
+ msgstr ""
511
+ "Čia galite rankiniu būdu generuoti registracijos užbaigimo nuorodą ir duoti "
512
+ "ją pirkėjams, jei jie negavo/ištrynė el. laišką, kuris buvo siųstas po "
513
+ "apmokėjimo, su registracijos nuoroda."
514
+
515
+ msgid "Zipcode"
516
+ msgstr "Pašto kodas"
517
+
518
+ msgid "search"
519
+ msgstr "ieškoti"
languages/swpm-mk_MK.mo ADDED
Binary file
languages/swpm-mk_MK.po ADDED
@@ -0,0 +1,713 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: simple membership\n"
4
+ "POT-Creation-Date: 2014-08-28 19:28+1000\n"
5
+ "PO-Revision-Date: 2014-11-26 16:05+0100\n"
6
+ "Last-Translator: Ivo Ivanov <ivo@arslamina.com>\n"
7
+ "Language-Team: \n"
8
+ "MIME-Version: 1.0\n"
9
+ "Content-Type: text/plain; charset=UTF-8\n"
10
+ "Content-Transfer-Encoding: 8bit\n"
11
+ "X-Generator: Poedit 1.6.9\n"
12
+ "X-Poedit-KeywordsList: __;_e\n"
13
+ "X-Poedit-Basepath: .\n"
14
+ "Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n"
15
+ "Language: mk_MK\n"
16
+ "X-Poedit-SearchPath-0: .\n"
17
+
18
+ #: classes/class.bAccessControl.php:23 classes/class.bAccessControl.php:40
19
+ msgid "You are not allowed to view this content"
20
+ msgstr "Не е дозволено да ја видите содржината"
21
+
22
+ #: classes/class.bAccessControl.php:26 classes/class.bAccessControl.php:43
23
+ msgid "You need to login to view this content. "
24
+ msgstr "Потребно е да се најавите за да ја видите содржината."
25
+
26
+ #: classes/class.bAdminRegistration.php:48
27
+ #: classes/class.bFrontRegistration.php:64
28
+ msgid "Registration Successful."
29
+ msgstr "Регистрацијата е успешна."
30
+
31
+ #: classes/class.bAdminRegistration.php:53
32
+ #: classes/class.bAdminRegistration.php:73
33
+ #: classes/class.bMembershipLevel.php:36 classes/class.bMembershipLevel.php:54
34
+ msgid "Please correct the following:"
35
+ msgstr "Ве молам поправете го следново:"
36
+
37
+ #: classes/class.bAjax.php:16 classes/class.bAjax.php:28
38
+ msgid "Aready taken"
39
+ msgstr "Веќе постои"
40
+
41
+ #: classes/class.bAjax.php:29
42
+ msgid "Available"
43
+ msgstr "Достапни"
44
+
45
+ #: classes/class.bAuth.php:48 classes/class.bFrontRegistration.php:179
46
+ msgid "User Not Found."
47
+ msgstr "Корисникот не е најден."
48
+
49
+ #: classes/class.bAuth.php:55
50
+ msgid "Password Empty or Invalid."
51
+ msgstr "Лозинката е празна или неважечка"
52
+
53
+ #: classes/class.bAuth.php:79
54
+ msgid "Account is inactive."
55
+ msgstr "Сметката не е активна."
56
+
57
+ #: classes/class.bAuth.php:89
58
+ msgid "You are logged in as:"
59
+ msgstr "Најавени сте како:"
60
+
61
+ #: classes/class.bAuth.php:128
62
+ msgid "Logged Out Successfully."
63
+ msgstr "Успешно се одјавивте."
64
+
65
+ #: classes/class.bAuth.php:170
66
+ msgid "Session Expired."
67
+ msgstr "Сесијата е истечена."
68
+
69
+ #: classes/class.bAuth.php:179
70
+ msgid "Invalid User Name"
71
+ msgstr "Непостоечко корисничко име"
72
+
73
+ #: classes/class.bAuth.php:187
74
+ msgid "Bad Cookie Hash"
75
+ msgstr "Лош Хаш на колачето"
76
+
77
+ #: classes/class.bForm.php:26
78
+ msgid ""
79
+ "Wordpress account exists with given user name. But given email doesn't match."
80
+ msgstr ""
81
+ "Веќе постои Wordpress сметка со даденото корисничко име. Но дадената email "
82
+ "адреса не се совпаѓа."
83
+
84
+ #: classes/class.bForm.php:31
85
+ msgid ""
86
+ "Wordpress account exists with given email. But given user name doesn't match."
87
+ msgstr ""
88
+ "Веќе постои Wordpress сметка со дадената email адреса. Но даденото кориснико "
89
+ "име не се совпаѓа."
90
+
91
+ #: classes/class.bForm.php:40
92
+ msgid "User name is required"
93
+ msgstr "Корисничкото име е потребно"
94
+
95
+ #: classes/class.bForm.php:49
96
+ msgid "User name already exists."
97
+ msgstr "Корисничкото име веќе постои"
98
+
99
+ #: classes/class.bForm.php:72
100
+ msgid "Password is required"
101
+ msgstr "Потребна е лозинката"
102
+
103
+ #: classes/class.bForm.php:79
104
+ msgid "Password mismatch"
105
+ msgstr "Лозинката не одговара"
106
+
107
+ #: classes/class.bForm.php:95
108
+ msgid "Email is required"
109
+ msgstr "Потребна е email адреса"
110
+
111
+ #: classes/class.bForm.php:99
112
+ msgid "Email is invalid"
113
+ msgstr "Email адресата не се совпаѓа"
114
+
115
+ #: classes/class.bForm.php:112
116
+ msgid "Email is already used."
117
+ msgstr "Email адресата веќе се користи."
118
+
119
+ #: classes/class.bForm.php:178
120
+ msgid "Member since field is invalid"
121
+ msgstr "Член од - полето е невалидно"
122
+
123
+ #: classes/class.bForm.php:189
124
+ msgid "Subscription starts field is invalid"
125
+ msgstr "Полето за старт на претплатата е невалидно"
126
+
127
+ #: classes/class.bForm.php:199
128
+ msgid "Gender field is invalid"
129
+ msgstr "Полето за пол е невалидно"
130
+
131
+ #: classes/class.bForm.php:210
132
+ msgid "Account state field is invalid"
133
+ msgstr "Статусот на сметката е невалиден"
134
+
135
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
136
+ msgid "Please"
137
+ msgstr "Ве молиме"
138
+
139
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
140
+ #: views/login.php:21
141
+ msgid "Login"
142
+ msgstr "Најави се"
143
+
144
+ #: classes/class.bFrontRegistration.php:79
145
+ #: classes/class.bFrontRegistration.php:158
146
+ msgid "Please correct the following"
147
+ msgstr "Ве молиме извршете поправка на следново"
148
+
149
+ #: classes/class.bFrontRegistration.php:92
150
+ msgid "Membership Level Couldn't be found."
151
+ msgstr "Корисничкото ниво не е пронајдено."
152
+
153
+ #: classes/class.bFrontRegistration.php:168
154
+ msgid "Email Address Not Valid."
155
+ msgstr "Email адресата е невалидна"
156
+
157
+ #: classes/class.bFrontRegistration.php:199
158
+ msgid "New password has been sent to your email address."
159
+ msgstr "Нова лозинка е пратена на Вашата email адреса."
160
+
161
+ #: classes/class.bLevelForm.php:31
162
+ msgid "Subscriptoin duration must be > 0."
163
+ msgstr "Времетраењето на претплатата мора да биде > 0. "
164
+
165
+ #: classes/class.bMembers.php:7
166
+ msgid "Member"
167
+ msgstr "Член"
168
+
169
+ #: classes/class.bMembers.php:8 classes/class.simple-wp-membership.php:467
170
+ msgid "Members"
171
+ msgstr "Членови"
172
+
173
+ #: classes/class.bMembers.php:16 classes/class.bMembershipLevels.php:16
174
+ msgid "ID"
175
+ msgstr "ID"
176
+
177
+ #: classes/class.bMembers.php:17 views/add.php:5 views/edit.php:4
178
+ #: views/login.php:5
179
+ msgid "User Name"
180
+ msgstr "Корисничко име"
181
+
182
+ #: classes/class.bMembers.php:18 views/add.php:21
183
+ #: views/admin_member_form_common_part.php:2 views/edit.php:20
184
+ msgid "First Name"
185
+ msgstr "Име"
186
+
187
+ #: classes/class.bMembers.php:19 views/add.php:25
188
+ #: views/admin_member_form_common_part.php:6 views/edit.php:24
189
+ msgid "Last Name"
190
+ msgstr "Презиме"
191
+
192
+ #: classes/class.bMembers.php:20 views/add.php:9 views/edit.php:8
193
+ msgid "Email"
194
+ msgstr "Email"
195
+
196
+ #: classes/class.bMembers.php:21 classes/class.bMembershipLevels.php:8
197
+ #: classes/class.bMembershipLevels.php:17 views/add.php:64
198
+ #: views/admin_member_form_common_part.php:55 views/edit.php:52
199
+ msgid "Membership Level"
200
+ msgstr "Ниво на членство"
201
+
202
+ #: classes/class.bMembers.php:22 views/admin_member_form_common_part.php:78
203
+ msgid "Subscription Starts"
204
+ msgstr "Претплатата почнува"
205
+
206
+ #: classes/class.bMembers.php:23
207
+ msgid "Account State"
208
+ msgstr "Состојба на сметката"
209
+
210
+ #: classes/class.bMembers.php:35 classes/class.bMembershipLevels.php:29
211
+ msgid "Delete"
212
+ msgstr "Избриши"
213
+
214
+ #: classes/class.bMembers.php:100
215
+ msgid "No Member found."
216
+ msgstr "Членот не е пронајден."
217
+
218
+ #: classes/class.bMembershipLevel.php:31
219
+ msgid "Membership Level Creation Successful."
220
+ msgstr "Создавањето на корисничкото ниво е успешно."
221
+
222
+ #: classes/class.bMembershipLevel.php:50
223
+ msgid "Updated Successfully."
224
+ msgstr "Ажурирањето е успешно."
225
+
226
+ #: classes/class.bMembershipLevels.php:9
227
+ #: classes/class.simple-wp-membership.php:469
228
+ msgid "Membership Levels"
229
+ msgstr "Нивоа на членство"
230
+
231
+ #: classes/class.bMembershipLevels.php:18
232
+ msgid "Role"
233
+ msgstr "Улога"
234
+
235
+ #: classes/class.bMembershipLevels.php:19
236
+ msgid "Subscription Valid For"
237
+ msgstr "Преплатата е важечка до"
238
+
239
+ #: classes/class.bSettings.php:28
240
+ msgid "Plugin Documentation"
241
+ msgstr "Документација за приклучоците"
242
+
243
+ #: classes/class.bSettings.php:30
244
+ msgid "General Settings"
245
+ msgstr "Општи поставки"
246
+
247
+ #: classes/class.bSettings.php:32
248
+ msgid "Enable Free Membership"
249
+ msgstr "Вклучи го Бесплатното Членство"
250
+
251
+ #: classes/class.bSettings.php:35
252
+ msgid "Enable/disable registration for free membership level"
253
+ msgstr "Вклучи/исклучи ја регистрацијата за приклучокот за бесплатно членство"
254
+
255
+ #: classes/class.bSettings.php:36
256
+ msgid "Free Membership Level ID"
257
+ msgstr "ИД на ниво за Бесплатно Членство"
258
+
259
+ #: classes/class.bSettings.php:39
260
+ msgid "Assign free membership level ID"
261
+ msgstr "Доделете ID на нивото за слободно членство"
262
+
263
+ #: classes/class.bSettings.php:40
264
+ msgid "Hide Adminbar"
265
+ msgstr "Скријте го Администраторскиот алатник"
266
+
267
+ #: classes/class.bSettings.php:43
268
+ msgid ""
269
+ "WordPress shows an admin toolbar to the logged in users of the site. Check "
270
+ "this box if you want to hide that admin toolbar in the fronend of your site."
271
+ msgstr ""
272
+ "WordPress прикажува администраторски алатник на најавените корисници на "
273
+ "страницата. Селектирајте ја оваа рамка ако закате да го скриете "
274
+ "администраторскиот алатник на интерфејсот на вашата страница."
275
+
276
+ #: classes/class.bSettings.php:45
277
+ msgid "Pages Settings"
278
+ msgstr "Подесувања на Страниците"
279
+
280
+ #: classes/class.bSettings.php:47
281
+ msgid "Login Page URL"
282
+ msgstr "URL за Страницата за Најавување"
283
+
284
+ #: classes/class.bSettings.php:51
285
+ msgid "Registration Page URL"
286
+ msgstr "URL за Страницата за Регистрација"
287
+
288
+ #: classes/class.bSettings.php:55
289
+ msgid "Join Us Page URL"
290
+ msgstr "URL за Приклучи се страницата"
291
+
292
+ #: classes/class.bSettings.php:59
293
+ msgid "Edit Profile Page URL"
294
+ msgstr "URL за Страницата за Уредување на Профилот"
295
+
296
+ #: classes/class.bSettings.php:63
297
+ msgid "Password Reset Page URL"
298
+ msgstr "URL за Страницата за Ресетирање на Лозинката"
299
+
300
+ #: classes/class.bSettings.php:68
301
+ msgid "Test & Debug Settings"
302
+ msgstr "Подесувања за тестирање на Sandbox"
303
+
304
+ #: classes/class.bSettings.php:74
305
+ msgid "Enable Sandbox Testing"
306
+ msgstr "Овозможи Sandbox Тестирање"
307
+
308
+ #: classes/class.bSettings.php:77
309
+ msgid "Enable this option if you want to do sandbox payment testing."
310
+ msgstr ""
311
+ "Селектирајте ја оваа опција ако сакате да ја тестирате sandbox опцијата за "
312
+ "плаќање"
313
+
314
+ #: classes/class.bSettings.php:90
315
+ msgid "Email Misc. Settings"
316
+ msgstr "Email Разновидни Подесувања"
317
+
318
+ #: classes/class.bSettings.php:92
319
+ msgid "From Email Address"
320
+ msgstr "Од Email Адреса"
321
+
322
+ #: classes/class.bSettings.php:97
323
+ msgid "Email Settings (Prompt to Complete Registration )"
324
+ msgstr "Email Поставувања (Известување за Комплетирање на Регистрацијата)"
325
+
326
+ #: classes/class.bSettings.php:99 classes/class.bSettings.php:110
327
+ #: classes/class.bSettings.php:129
328
+ msgid "Email Subject"
329
+ msgstr "Тема на Email"
330
+
331
+ #: classes/class.bSettings.php:103 classes/class.bSettings.php:114
332
+ #: classes/class.bSettings.php:133
333
+ msgid "Email Body"
334
+ msgstr "Тело на Email"
335
+
336
+ #: classes/class.bSettings.php:108
337
+ msgid "Email Settings (Registration Complete)"
338
+ msgstr "Email Подесувања (Регистрацијата е Комплетирана)"
339
+
340
+ #: classes/class.bSettings.php:118
341
+ msgid "Send Notification To Admin"
342
+ msgstr "Прати Известување До Администраторот"
343
+
344
+ #: classes/class.bSettings.php:122
345
+ msgid "Send Email to Member When Added via Admin Dashboard"
346
+ msgstr ""
347
+ "Прати Email порака на Членот кој е додаден преку Администраторската табла"
348
+
349
+ #: classes/class.bSettings.php:127
350
+ msgid " Email Settings (Account Upgrade Notification)"
351
+ msgstr "Email Подесувања (Известување за Надградба на Сметката)"
352
+
353
+ #: classes/class.bSettings.php:326
354
+ msgid "Not a Member?"
355
+ msgstr "Не сте член?"
356
+
357
+ #: classes/class.bSettings.php:326 views/login.php:30
358
+ msgid "Join Us"
359
+ msgstr "Придружете ни се"
360
+
361
+ #: classes/class.bUtils.php:32 views/admin_member_form_common_part.php:66
362
+ msgid "Active"
363
+ msgstr "Активен"
364
+
365
+ #: classes/class.bUtils.php:33 views/admin_member_form_common_part.php:67
366
+ msgid "Inactive"
367
+ msgstr "Неактивен"
368
+
369
+ #: classes/class.bUtils.php:34 views/admin_member_form_common_part.php:68
370
+ msgid "Pending"
371
+ msgstr "Во тек"
372
+
373
+ #: classes/class.bUtils.php:35 views/admin_member_form_common_part.php:69
374
+ msgid "Expired"
375
+ msgstr "Истечена"
376
+
377
+ #: classes/class.bUtils.php:225
378
+ msgid "Never"
379
+ msgstr "Никогаш"
380
+
381
+ #: classes/class.miscUtils.php:51
382
+ msgid "Registration"
383
+ msgstr "Регистрација"
384
+
385
+ #: classes/class.miscUtils.php:74
386
+ msgid "Member Login"
387
+ msgstr "Најавување на членовите"
388
+
389
+ #: classes/class.miscUtils.php:97
390
+ msgid "Profile"
391
+ msgstr "Профил"
392
+
393
+ #: classes/class.miscUtils.php:120
394
+ msgid "Password Reset"
395
+ msgstr "Ресетирање на лозинката"
396
+
397
+ #: classes/class.simple-wp-membership.php:178
398
+ msgid "You are not logged in."
399
+ msgstr "Не сте најавени."
400
+
401
+ #: classes/class.simple-wp-membership.php:209
402
+ msgid "Simple WP Membership Protection"
403
+ msgstr "Едноставна WP Заштита за Членството"
404
+
405
+ #: classes/class.simple-wp-membership.php:222
406
+ msgid "Simple Membership Protection options"
407
+ msgstr "Подесувања за Заштитата за Слободно Членство"
408
+
409
+ #: classes/class.simple-wp-membership.php:238
410
+ msgid "Do you want to protect this content?"
411
+ msgstr "Дали сакате да ја заштитите оваа содржина?"
412
+
413
+ #: classes/class.simple-wp-membership.php:243
414
+ msgid "Select the membership level that can access this content:"
415
+ msgstr "Изберете го нивото на членство што има пристап до оваа содржина"
416
+
417
+ #: classes/class.simple-wp-membership.php:375
418
+ msgid "Display SWPM Login."
419
+ msgstr "Прикажи го SWPM најавувањето."
420
+
421
+ #: classes/class.simple-wp-membership.php:377
422
+ msgid "SWPM Login"
423
+ msgstr "SWPM Најавување"
424
+
425
+ #: classes/class.simple-wp-membership.php:464
426
+ msgid "WP Membership"
427
+ msgstr "WP Членство"
428
+
429
+ #: classes/class.simple-wp-membership.php:471
430
+ msgid "Settings"
431
+ msgstr "Подесувања"
432
+
433
+ #: views/add.php:13 views/admin_member_form_common_part.php:45
434
+ #: views/edit.php:12 views/login.php:11
435
+ msgid "Password"
436
+ msgstr "Лозинка"
437
+
438
+ #: views/add.php:17 views/edit.php:16
439
+ msgid "Repeat Password"
440
+ msgstr "Повторете ја лозинката"
441
+
442
+ #: views/add.php:29 views/admin_member_form_common_part.php:10
443
+ msgid "Gender"
444
+ msgstr "Пол"
445
+
446
+ #: views/add.php:36 views/admin_member_form_common_part.php:17
447
+ #: views/edit.php:28
448
+ msgid "Phone"
449
+ msgstr "Телефон"
450
+
451
+ #: views/add.php:40 views/admin_member_form_common_part.php:21
452
+ #: views/edit.php:32
453
+ msgid "Street"
454
+ msgstr "Улица"
455
+
456
+ #: views/add.php:44 views/admin_member_form_common_part.php:25
457
+ #: views/edit.php:36
458
+ msgid "City"
459
+ msgstr "Град"
460
+
461
+ #: views/add.php:48 views/admin_member_form_common_part.php:29
462
+ #: views/edit.php:40
463
+ msgid "State"
464
+ msgstr "Држава"
465
+
466
+ #: views/add.php:52 views/admin_member_form_common_part.php:33
467
+ #: views/edit.php:44
468
+ msgid "Zipcode"
469
+ msgstr "Поштенски код"
470
+
471
+ #: views/add.php:56 views/admin_member_form_common_part.php:37
472
+ #: views/edit.php:48
473
+ msgid "Country"
474
+ msgstr "Држава"
475
+
476
+ #: views/add.php:60 views/admin_member_form_common_part.php:41
477
+ msgid "Company"
478
+ msgstr "Компанија"
479
+
480
+ #: views/add.php:71
481
+ msgid "Register"
482
+ msgstr "Регистрирај"
483
+
484
+ #: views/admin_add.php:6
485
+ msgid "Add Member"
486
+ msgstr "Додади Член"
487
+
488
+ #: views/admin_add.php:7
489
+ msgid "Create a brand new user and add it to this site."
490
+ msgstr "Креирај сосема нов корисник и додади го на оваа страница."
491
+
492
+ #: views/admin_add.php:11
493
+ msgid "User name"
494
+ msgstr "Корисничко име"
495
+
496
+ #: views/admin_add.php:11 views/admin_add.php:15 views/admin_add_level.php:11
497
+ #: views/admin_add_level.php:15 views/admin_add_level.php:19
498
+ #: views/admin_edit.php:9 views/admin_edit.php:13
499
+ #: views/admin_edit_level.php:10 views/admin_edit_level.php:14
500
+ #: views/admin_edit_level.php:18
501
+ msgid "(required)"
502
+ msgstr "(потребно)"
503
+
504
+ #: views/admin_add.php:15 views/admin_edit.php:13
505
+ msgid "E-mail"
506
+ msgstr "E-mail адреса"
507
+
508
+ #: views/admin_add.php:19
509
+ msgid "Add New Member "
510
+ msgstr "Додади Нов Член"
511
+
512
+ #: views/admin_add_level.php:6
513
+ msgid "Create new membership level."
514
+ msgstr "Креирај Ново Ниво на Членство."
515
+
516
+ #: views/admin_add_level.php:11 views/admin_edit_level.php:10
517
+ msgid "Membership Level Name"
518
+ msgstr "Има на Нивото на Членство"
519
+
520
+ #: views/admin_add_level.php:15 views/admin_edit_level.php:14
521
+ msgid "Default WordPress Role"
522
+ msgstr "Стандрадна WordPress Улога"
523
+
524
+ #: views/admin_add_level.php:19 views/admin_edit_level.php:18
525
+ msgid "Subscription Duration"
526
+ msgstr "Времетраење на Претплатата"
527
+
528
+ #: views/admin_add_level.php:26 views/admin_edit_level.php:27
529
+ msgid "No Expiry"
530
+ msgstr "Не Завршува."
531
+
532
+ #: views/admin_add_level.php:55
533
+ msgid "Add New Membership Level "
534
+ msgstr "Додади Ново Ниво на Членство."
535
+
536
+ #: views/admin_edit.php:5
537
+ msgid "Edit Member"
538
+ msgstr "Уреди го Членот"
539
+
540
+ #: views/admin_edit.php:6
541
+ msgid "Edit existing member details."
542
+ msgstr "Уреди ги детаљите за постоечки член"
543
+
544
+ #: views/admin_edit.php:9
545
+ msgid "Username"
546
+ msgstr "Корисничко Име"
547
+
548
+ #: views/admin_edit.php:18
549
+ msgid "Edit User "
550
+ msgstr "Уреди го Корисникот"
551
+
552
+ #: views/admin_edit_level.php:5
553
+ msgid "Edit membership level"
554
+ msgstr "Уреди го Нивото на Членство"
555
+
556
+ #: views/admin_edit_level.php:6
557
+ msgid "Edit membership level."
558
+ msgstr "Уреди го Нивото на Членство."
559
+
560
+ #: views/admin_edit_level.php:54
561
+ msgid "Edit Membership Level "
562
+ msgstr "Уреди го Нивото на Членство"
563
+
564
+ #: views/admin_members.php:2
565
+ msgid "Simple WP Membership::Members"
566
+ msgstr "Едноставно WP Членство::Членови"
567
+
568
+ #: views/admin_members.php:3 views/admin_members.php:19
569
+ #: views/admin_membership_levels.php:21
570
+ msgid "Add New"
571
+ msgstr "Додади нов"
572
+
573
+ #: views/admin_members.php:9 views/admin_membership_levels.php:11
574
+ msgid "search"
575
+ msgstr "барај"
576
+
577
+ #: views/admin_membership_levels.php:3
578
+ msgid "Simple WP Membership::Membership Levels"
579
+ msgstr "Едноставно WP Членство::Нивоа на Членство"
580
+
581
+ #: views/admin_membership_level_menu.php:2
582
+ msgid "Membership level"
583
+ msgstr "Ниво на Членство"
584
+
585
+ #: views/admin_membership_level_menu.php:3
586
+ msgid "Manage Content Production"
587
+ msgstr "Управувај со Производството на Содржина"
588
+
589
+ #: views/admin_membership_manage.php:17
590
+ msgid "Example Content Protection Settings"
591
+ msgstr "Пример за Параметри за Заштита на Содржината"
592
+
593
+ #: views/admin_member_form_common_part.php:45
594
+ msgid "(twice, required)"
595
+ msgstr "(двапати, потребно)"
596
+
597
+ #: views/admin_member_form_common_part.php:50
598
+ msgid "Strength indicator"
599
+ msgstr "Индикатор на Јачина"
600
+
601
+ #: views/admin_member_form_common_part.php:51
602
+ msgid ""
603
+ "Hint: The password should be at least seven characters long. To make it "
604
+ "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
605
+ "$ % ^ &amp; )."
606
+ msgstr ""
607
+ "Совет: Лозинката треба да биде најмалку седум карактери долга. За да ја "
608
+ "направите појака, користете големи и мали букви, броеви и симболи како ! "
609
+ "\" ? $ % ^ &amp; )."
610
+
611
+ #: views/admin_member_form_common_part.php:64 views/loggedin.php:7
612
+ #: views/login_widget_logged.php:6
613
+ msgid "Account Status"
614
+ msgstr "Статус на Сметката"
615
+
616
+ #: views/admin_member_form_common_part.php:74
617
+ msgid "Member Since"
618
+ msgstr "Член Од"
619
+
620
+ #: views/admin_payment_settings.php:2 views/admin_settings.php:2
621
+ #: views/admin_tools_settings.php:2
622
+ msgid "Simple WP Membership::Settings"
623
+ msgstr "Едноставно WP Членство::Подесувања"
624
+
625
+ #: views/admin_payment_settings.php:33
626
+ msgid "PayPal Integration Settings"
627
+ msgstr "Подесувања за Интеграција со PayPal"
628
+
629
+ #: views/admin_payment_settings.php:36
630
+ msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
631
+ msgstr "Генерирај го \"Напредни Променливи\" Кодот за твоето PayPal копче"
632
+
633
+ #: views/admin_payment_settings.php:39
634
+ msgid "Enter the Membership Level ID"
635
+ msgstr "Внеси го ID за Нивото на Членство"
636
+
637
+ #: views/admin_payment_settings.php:41
638
+ msgid "Generate Code"
639
+ msgstr "Генерирај Код"
640
+
641
+ #: views/admin_tools_settings.php:9
642
+ msgid "Generate a Registration Completion link"
643
+ msgstr "Генерирај линк за Комплетирање на регистрацијата"
644
+
645
+ #: views/admin_tools_settings.php:12
646
+ msgid ""
647
+ "You can manually generate a registration completion link here and give it to "
648
+ "your customer if they have missed the email that was automatically sent out "
649
+ "to them after the payment."
650
+ msgstr ""
651
+ "Ти можеш рачно да генерираш линк за комплетирање на регистрацијата и да го "
652
+ "дадеш на твоите корисници ако тие го пропуштиле emailот што им бил пратен "
653
+ "веднаш по плаќањето."
654
+
655
+ #: views/admin_tools_settings.php:17
656
+ msgid "Generate Registration Completion Link"
657
+ msgstr "Генерирај линк за комплетирање на регистрацијата"
658
+
659
+ #: views/admin_tools_settings.php:20
660
+ msgid "OR"
661
+ msgstr "ИЛИ"
662
+
663
+ #: views/admin_tools_settings.php:21
664
+ msgid "For All Pending Registrations"
665
+ msgstr "За Сите Регистрации што се во тек"
666
+
667
+ #: views/admin_tools_settings.php:24
668
+ msgid "Registration Completion Links Will Appear Below:"
669
+ msgstr "Линковите за Комплетирање на Регистрацијата ќе се појават подолу"
670
+
671
+ #: views/admin_tools_settings.php:31
672
+ msgid "Send Registration Reminder Email too"
673
+ msgstr "Прати Email Потсетник за Регистрација исто така"
674
+
675
+ #: views/admin_tools_settings.php:34
676
+ msgid "Submit"
677
+ msgstr "Внеси"
678
+
679
+ #: views/edit.php:58
680
+ msgid "Update"
681
+ msgstr "Надгради"
682
+
683
+ #: views/forgot_password.php:5
684
+ msgid "Email Address"
685
+ msgstr "Email адреса"
686
+
687
+ #: views/forgot_password.php:12
688
+ msgid "Reset Password"
689
+ msgstr "Ресетирај ја Лозинката"
690
+
691
+ #: views/loggedin.php:3 views/login_widget_logged.php:3
692
+ msgid "Logged in as"
693
+ msgstr "Најавени сте како"
694
+
695
+ #: views/loggedin.php:11 views/login_widget_logged.php:9
696
+ msgid "Membership"
697
+ msgstr "Членство"
698
+
699
+ #: views/loggedin.php:15 views/login_widget_logged.php:12
700
+ msgid "Account Expiry"
701
+ msgstr "Сметката Истекува"
702
+
703
+ #: views/loggedin.php:19 views/login_widget_logged.php:16
704
+ msgid "Logout"
705
+ msgstr "Одјави се"
706
+
707
+ #: views/login.php:17
708
+ msgid "Remember Me"
709
+ msgstr "Запомни Ме"
710
+
711
+ #: views/login.php:26
712
+ msgid "Forgot Password"
713
+ msgstr "Ја заборавивте лозинката"
languages/swpm-nl_NL.mo ADDED
Binary file
languages/swpm-nl_NL.po ADDED
@@ -0,0 +1,709 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: simple membership\n"
4
+ "POT-Creation-Date: 2014-08-28 19:28+1000\n"
5
+ "PO-Revision-Date: 2015-01-13 22:29+0100\n"
6
+ "Last-Translator: \n"
7
+ "Language-Team: Henk Rostohar <h.g.rostohar@gmail.com>\n"
8
+ "MIME-Version: 1.0\n"
9
+ "Content-Type: text/plain; charset=UTF-8\n"
10
+ "Content-Transfer-Encoding: 8bit\n"
11
+ "X-Generator: Poedit 1.7.3\n"
12
+ "X-Poedit-KeywordsList: __;_e\n"
13
+ "X-Poedit-Basepath: .\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "Language: nl_NL\n"
16
+ "X-Poedit-SearchPath-0: .\n"
17
+
18
+ #: classes/class.bAccessControl.php:23 classes/class.bAccessControl.php:40
19
+ msgid "You are not allowed to view this content"
20
+ msgstr "U bent niet gemachtigd deze inhoud te bekijken."
21
+
22
+ #: classes/class.bAccessControl.php:26 classes/class.bAccessControl.php:43
23
+ msgid "You need to login to view this content. "
24
+ msgstr "U moet inloggen om deze inhoud te kunnen bekijken."
25
+
26
+ #: classes/class.bAdminRegistration.php:48
27
+ #: classes/class.bFrontRegistration.php:64
28
+ msgid "Registration Successful."
29
+ msgstr "Registratie is gelukt."
30
+
31
+ #: classes/class.bAdminRegistration.php:53
32
+ #: classes/class.bAdminRegistration.php:73
33
+ #: classes/class.bMembershipLevel.php:36 classes/class.bMembershipLevel.php:54
34
+ msgid "Please correct the following:"
35
+ msgstr "Corrigeer het volgende:"
36
+
37
+ #: classes/class.bAjax.php:16 classes/class.bAjax.php:28
38
+ msgid "Aready taken"
39
+ msgstr "Reeds uitgevoerd"
40
+
41
+ #: classes/class.bAjax.php:29
42
+ msgid "Available"
43
+ msgstr "Beschikbaar"
44
+
45
+ #: classes/class.bAuth.php:48 classes/class.bFrontRegistration.php:179
46
+ msgid "User Not Found."
47
+ msgstr "Gebruiker onbekend."
48
+
49
+ #: classes/class.bAuth.php:55
50
+ msgid "Password Empty or Invalid."
51
+ msgstr "Password is niet ingevuld of ongeldig."
52
+
53
+ #: classes/class.bAuth.php:79
54
+ msgid "Account is inactive."
55
+ msgstr "Dit account is niet actief."
56
+
57
+ #: classes/class.bAuth.php:89
58
+ msgid "You are logged in as:"
59
+ msgstr "U bent ingelogd als:"
60
+
61
+ #: classes/class.bAuth.php:128
62
+ msgid "Logged Out Successfully."
63
+ msgstr "U bent met succes uitgelogd."
64
+
65
+ #: classes/class.bAuth.php:170
66
+ msgid "Session Expired."
67
+ msgstr "Uw sessie is verlopen."
68
+
69
+ #: classes/class.bAuth.php:179
70
+ msgid "Invalid User Name"
71
+ msgstr "Ongeldige gebruikersnaam"
72
+
73
+ #: classes/class.bAuth.php:187
74
+ msgid "Bad Cookie Hash"
75
+ msgstr "Verkeerde Cookie hash"
76
+
77
+ #: classes/class.bForm.php:26
78
+ msgid ""
79
+ "Wordpress account exists with given user name. But given email doesn't match."
80
+ msgstr ""
81
+ "Het Wordpress account met deze gebruikersnaam bestaat. Maar het email adres "
82
+ "klopt niet. "
83
+
84
+ #: classes/class.bForm.php:31
85
+ msgid ""
86
+ "Wordpress account exists with given email. But given user name doesn't match."
87
+ msgstr ""
88
+ "Dit Wordpress account met dit email adres bestaat maar de gebruikersnaam "
89
+ "klopt niet."
90
+
91
+ #: classes/class.bForm.php:40
92
+ msgid "User name is required"
93
+ msgstr "De gebruikersnaam is vereist."
94
+
95
+ #: classes/class.bForm.php:49
96
+ msgid "User name already exists."
97
+ msgstr "Deze gebruikersnaam bestaat reeds."
98
+
99
+ #: classes/class.bForm.php:72
100
+ msgid "Password is required"
101
+ msgstr "Password is vereist"
102
+
103
+ #: classes/class.bForm.php:79
104
+ msgid "Password mismatch"
105
+ msgstr "Password klopt niet"
106
+
107
+ #: classes/class.bForm.php:95
108
+ msgid "Email is required"
109
+ msgstr "Email adres is vereist"
110
+
111
+ #: classes/class.bForm.php:99
112
+ msgid "Email is invalid"
113
+ msgstr "Email adres is niet geldig"
114
+
115
+ #: classes/class.bForm.php:112
116
+ msgid "Email is already used."
117
+ msgstr "Email adres is al in gebruik."
118
+
119
+ #: classes/class.bForm.php:178
120
+ msgid "Member since field is invalid"
121
+ msgstr "Lid sinds veld is ongeldig"
122
+
123
+ #: classes/class.bForm.php:189
124
+ msgid "Subscription starts field is invalid"
125
+ msgstr "Inschrijving start veld is ongeldig"
126
+
127
+ #: classes/class.bForm.php:199
128
+ msgid "Gender field is invalid"
129
+ msgstr "Geslacht veld is ongeldig"
130
+
131
+ #: classes/class.bForm.php:210
132
+ msgid "Account state field is invalid"
133
+ msgstr "Account status veld is ongeldig"
134
+
135
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
136
+ msgid "Please"
137
+ msgstr "Alstublieft"
138
+
139
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
140
+ #: views/login.php:21
141
+ msgid "Login"
142
+ msgstr "Login"
143
+
144
+ #: classes/class.bFrontRegistration.php:79
145
+ #: classes/class.bFrontRegistration.php:158
146
+ msgid "Please correct the following"
147
+ msgstr "Corrigeer het volgende"
148
+
149
+ #: classes/class.bFrontRegistration.php:92
150
+ msgid "Membership Level Couldn't be found."
151
+ msgstr "Lidmaatschap niveau kon niet worden gevonden."
152
+
153
+ #: classes/class.bFrontRegistration.php:168
154
+ msgid "Email Address Not Valid."
155
+ msgstr "Email adres is ongeldig."
156
+
157
+ #: classes/class.bFrontRegistration.php:199
158
+ msgid "New password has been sent to your email address."
159
+ msgstr "Een nieuw password is naar uw email adres verzonden."
160
+
161
+ #: classes/class.bLevelForm.php:31
162
+ msgid "Subscriptoin duration must be > 0."
163
+ msgstr "Duur van lidmaatschap moet groter zijn dan 0."
164
+
165
+ #: classes/class.bMembers.php:7
166
+ msgid "Member"
167
+ msgstr "Lid"
168
+
169
+ #: classes/class.bMembers.php:8 classes/class.simple-wp-membership.php:467
170
+ msgid "Members"
171
+ msgstr "Leden"
172
+
173
+ #: classes/class.bMembers.php:16 classes/class.bMembershipLevels.php:16
174
+ msgid "ID"
175
+ msgstr "ID"
176
+
177
+ #: classes/class.bMembers.php:17 views/add.php:5 views/edit.php:4
178
+ #: views/login.php:5
179
+ msgid "User Name"
180
+ msgstr "Gebruikersnaam"
181
+
182
+ #: classes/class.bMembers.php:18 views/add.php:21
183
+ #: views/admin_member_form_common_part.php:2 views/edit.php:20
184
+ msgid "First Name"
185
+ msgstr "Voornaam"
186
+
187
+ #: classes/class.bMembers.php:19 views/add.php:25
188
+ #: views/admin_member_form_common_part.php:6 views/edit.php:24
189
+ msgid "Last Name"
190
+ msgstr "Achternaam"
191
+
192
+ #: classes/class.bMembers.php:20 views/add.php:9 views/edit.php:8
193
+ msgid "Email"
194
+ msgstr "Email adres"
195
+
196
+ #: classes/class.bMembers.php:21 classes/class.bMembershipLevels.php:8
197
+ #: classes/class.bMembershipLevels.php:17 views/add.php:64
198
+ #: views/admin_member_form_common_part.php:55 views/edit.php:52
199
+ msgid "Membership Level"
200
+ msgstr "Lidmaatschap niveau"
201
+
202
+ #: classes/class.bMembers.php:22 views/admin_member_form_common_part.php:78
203
+ msgid "Subscription Starts"
204
+ msgstr "Inschrijving start"
205
+
206
+ #: classes/class.bMembers.php:23
207
+ msgid "Account State"
208
+ msgstr "Account status"
209
+
210
+ #: classes/class.bMembers.php:35 classes/class.bMembershipLevels.php:29
211
+ msgid "Delete"
212
+ msgstr "Verwijder"
213
+
214
+ #: classes/class.bMembers.php:100
215
+ msgid "No Member found."
216
+ msgstr "Geen lid gevonden"
217
+
218
+ #: classes/class.bMembershipLevel.php:31
219
+ msgid "Membership Level Creation Successful."
220
+ msgstr "Lidmaatschap niveau met succes aangemaakt."
221
+
222
+ #: classes/class.bMembershipLevel.php:50
223
+ msgid "Updated Successfully."
224
+ msgstr "Succesvolle Update"
225
+
226
+ #: classes/class.bMembershipLevels.php:9
227
+ #: classes/class.simple-wp-membership.php:469
228
+ msgid "Membership Levels"
229
+ msgstr "Lidmaatschap niveaus"
230
+
231
+ #: classes/class.bMembershipLevels.php:18
232
+ msgid "Role"
233
+ msgstr "Rol"
234
+
235
+ #: classes/class.bMembershipLevels.php:19
236
+ msgid "Subscription Valid For"
237
+ msgstr "Inschrijving geldig voor"
238
+
239
+ #: classes/class.bSettings.php:28
240
+ msgid "Plugin Documentation"
241
+ msgstr "Plugin Documentatie"
242
+
243
+ #: classes/class.bSettings.php:30
244
+ msgid "General Settings"
245
+ msgstr "Algemene instellingen"
246
+
247
+ #: classes/class.bSettings.php:32
248
+ msgid "Enable Free Membership"
249
+ msgstr "Inschakelen gratis Lidmaatschap"
250
+
251
+ #: classes/class.bSettings.php:35
252
+ msgid "Enable/disable registration for free membership level"
253
+ msgstr "Inschakelen/uitschakelen van registratie voor gratis Lidmaatschap"
254
+
255
+ #: classes/class.bSettings.php:36
256
+ msgid "Free Membership Level ID"
257
+ msgstr "Gratis Lidmaatschap Niveau ID"
258
+
259
+ #: classes/class.bSettings.php:39
260
+ msgid "Assign free membership level ID"
261
+ msgstr "Toewijzen gratis Lidmaatschap Niveau ID"
262
+
263
+ #: classes/class.bSettings.php:40
264
+ msgid "Hide Adminbar"
265
+ msgstr "Verberg de adminbalk"
266
+
267
+ #: classes/class.bSettings.php:43
268
+ msgid ""
269
+ "WordPress shows an admin toolbar to the logged in users of the site. Check "
270
+ "this box if you want to hide that admin toolbar in the fronend of your site."
271
+ msgstr ""
272
+ "Wordpress toont aan de ingelogde gebruikers een adminbalk. Vink dit hokje "
273
+ "aan als je de adminbalk in het frontend van je website wilt verbergen."
274
+
275
+ #: classes/class.bSettings.php:45
276
+ msgid "Pages Settings"
277
+ msgstr "Pagina instellingen"
278
+
279
+ #: classes/class.bSettings.php:47
280
+ msgid "Login Page URL"
281
+ msgstr "Login pagina URL"
282
+
283
+ #: classes/class.bSettings.php:51
284
+ msgid "Registration Page URL"
285
+ msgstr "Registratie pagina URL"
286
+
287
+ #: classes/class.bSettings.php:55
288
+ msgid "Join Us Page URL"
289
+ msgstr "Join Us pagina URL"
290
+
291
+ #: classes/class.bSettings.php:59
292
+ msgid "Edit Profile Page URL"
293
+ msgstr "Wijzig Profiel pagina URL"
294
+
295
+ #: classes/class.bSettings.php:63
296
+ msgid "Password Reset Page URL"
297
+ msgstr "Password Reset pagina URL"
298
+
299
+ #: classes/class.bSettings.php:68
300
+ msgid "Test & Debug Settings"
301
+ msgstr "Test & Debug instellingen"
302
+
303
+ #: classes/class.bSettings.php:74
304
+ msgid "Enable Sandbox Testing"
305
+ msgstr "Sandbox Testen inschakelen"
306
+
307
+ #: classes/class.bSettings.php:77
308
+ msgid "Enable this option if you want to do sandbox payment testing."
309
+ msgstr "Schakel deze optie in als je sandbox testbetalingen wilt uitvoeren."
310
+
311
+ #: classes/class.bSettings.php:90
312
+ msgid "Email Misc. Settings"
313
+ msgstr "Diverse email instellingen"
314
+
315
+ #: classes/class.bSettings.php:92
316
+ msgid "From Email Address"
317
+ msgstr "Van Email Adres"
318
+
319
+ #: classes/class.bSettings.php:97
320
+ msgid "Email Settings (Prompt to Complete Registration )"
321
+ msgstr "Email instellingen (Invullen om de registratie te voltooien)"
322
+
323
+ #: classes/class.bSettings.php:99 classes/class.bSettings.php:110
324
+ #: classes/class.bSettings.php:129
325
+ msgid "Email Subject"
326
+ msgstr "Email onderwerp"
327
+
328
+ #: classes/class.bSettings.php:103 classes/class.bSettings.php:114
329
+ #: classes/class.bSettings.php:133
330
+ msgid "Email Body"
331
+ msgstr "Email Body"
332
+
333
+ #: classes/class.bSettings.php:108
334
+ msgid "Email Settings (Registration Complete)"
335
+ msgstr "Email instellingen (Registratie voltooid)"
336
+
337
+ #: classes/class.bSettings.php:118
338
+ msgid "Send Notification To Admin"
339
+ msgstr "Stuur een bericht naar de beheerder"
340
+
341
+ #: classes/class.bSettings.php:122
342
+ msgid "Send Email to Member When Added via Admin Dashboard"
343
+ msgstr "Stuur een email naar het aangemelde lid via het beheerders dashboard"
344
+
345
+ #: classes/class.bSettings.php:127
346
+ msgid " Email Settings (Account Upgrade Notification)"
347
+ msgstr "Email instellingen (Bericht van Account Upgrade)"
348
+
349
+ #: classes/class.bSettings.php:326
350
+ msgid "Not a Member?"
351
+ msgstr "Geen lid?"
352
+
353
+ #: classes/class.bSettings.php:326 views/login.php:30
354
+ msgid "Join Us"
355
+ msgstr "Join Us"
356
+
357
+ #: classes/class.bUtils.php:32 views/admin_member_form_common_part.php:66
358
+ msgid "Active"
359
+ msgstr "Actief"
360
+
361
+ #: classes/class.bUtils.php:33 views/admin_member_form_common_part.php:67
362
+ msgid "Inactive"
363
+ msgstr "Niet actief"
364
+
365
+ #: classes/class.bUtils.php:34 views/admin_member_form_common_part.php:68
366
+ msgid "Pending"
367
+ msgstr "In afwachting"
368
+
369
+ #: classes/class.bUtils.php:35 views/admin_member_form_common_part.php:69
370
+ msgid "Expired"
371
+ msgstr "Verlopen"
372
+
373
+ #: classes/class.bUtils.php:225
374
+ msgid "Never"
375
+ msgstr "Nooit"
376
+
377
+ #: classes/class.miscUtils.php:51
378
+ msgid "Registration"
379
+ msgstr "Registratie"
380
+
381
+ #: classes/class.miscUtils.php:74
382
+ msgid "Member Login"
383
+ msgstr "Leden login"
384
+
385
+ #: classes/class.miscUtils.php:97
386
+ msgid "Profile"
387
+ msgstr "Profiel"
388
+
389
+ #: classes/class.miscUtils.php:120
390
+ msgid "Password Reset"
391
+ msgstr "Password resetten"
392
+
393
+ #: classes/class.simple-wp-membership.php:178
394
+ msgid "You are not logged in."
395
+ msgstr "U bent niet ingelogd."
396
+
397
+ #: classes/class.simple-wp-membership.php:209
398
+ msgid "Simple WP Membership Protection"
399
+ msgstr "Simple WP Membership afscherming"
400
+
401
+ #: classes/class.simple-wp-membership.php:222
402
+ msgid "Simple Membership Protection options"
403
+ msgstr "Simple Membership Afscherm opties"
404
+
405
+ #: classes/class.simple-wp-membership.php:238
406
+ msgid "Do you want to protect this content?"
407
+ msgstr "Wil je deze inhoud verbergen?"
408
+
409
+ #: classes/class.simple-wp-membership.php:243
410
+ msgid "Select the membership level that can access this content:"
411
+ msgstr "Selecteer de Lidmaatschap niveaus die toegang hebben tot deze inhoud:"
412
+
413
+ #: classes/class.simple-wp-membership.php:375
414
+ msgid "Display SWPM Login."
415
+ msgstr "Toon SWPM login"
416
+
417
+ #: classes/class.simple-wp-membership.php:377
418
+ msgid "SWPM Login"
419
+ msgstr "SWPM Login"
420
+
421
+ #: classes/class.simple-wp-membership.php:464
422
+ msgid "WP Membership"
423
+ msgstr "WP Lidmaatschap"
424
+
425
+ #: classes/class.simple-wp-membership.php:471
426
+ msgid "Settings"
427
+ msgstr "Instellingen"
428
+
429
+ #: views/add.php:13 views/admin_member_form_common_part.php:45
430
+ #: views/edit.php:12 views/login.php:11
431
+ msgid "Password"
432
+ msgstr "Password"
433
+
434
+ #: views/add.php:17 views/edit.php:16
435
+ msgid "Repeat Password"
436
+ msgstr "Herhaal password"
437
+
438
+ #: views/add.php:29 views/admin_member_form_common_part.php:10
439
+ msgid "Gender"
440
+ msgstr "Geslacht"
441
+
442
+ #: views/add.php:36 views/admin_member_form_common_part.php:17
443
+ #: views/edit.php:28
444
+ msgid "Phone"
445
+ msgstr "Telefoon"
446
+
447
+ #: views/add.php:40 views/admin_member_form_common_part.php:21
448
+ #: views/edit.php:32
449
+ msgid "Street"
450
+ msgstr "Straat"
451
+
452
+ #: views/add.php:44 views/admin_member_form_common_part.php:25
453
+ #: views/edit.php:36
454
+ msgid "City"
455
+ msgstr "Plaats"
456
+
457
+ #: views/add.php:48 views/admin_member_form_common_part.php:29
458
+ #: views/edit.php:40
459
+ msgid "State"
460
+ msgstr "Provincie"
461
+
462
+ #: views/add.php:52 views/admin_member_form_common_part.php:33
463
+ #: views/edit.php:44
464
+ msgid "Zipcode"
465
+ msgstr "Postcode"
466
+
467
+ #: views/add.php:56 views/admin_member_form_common_part.php:37
468
+ #: views/edit.php:48
469
+ msgid "Country"
470
+ msgstr "Land"
471
+
472
+ #: views/add.php:60 views/admin_member_form_common_part.php:41
473
+ msgid "Company"
474
+ msgstr "Bedrijf"
475
+
476
+ #: views/add.php:71
477
+ msgid "Register"
478
+ msgstr "Registreer"
479
+
480
+ #: views/admin_add.php:6
481
+ msgid "Add Member"
482
+ msgstr "Voeg een lid toe"
483
+
484
+ #: views/admin_add.php:7
485
+ msgid "Create a brand new user and add it to this site."
486
+ msgstr "Maak een nieuwe gebruiker en voeg deze toe aan deze webste."
487
+
488
+ #: views/admin_add.php:11
489
+ msgid "User name"
490
+ msgstr "Gebruikersnaam"
491
+
492
+ #: views/admin_add.php:11 views/admin_add.php:15 views/admin_add_level.php:11
493
+ #: views/admin_add_level.php:15 views/admin_add_level.php:19
494
+ #: views/admin_edit.php:9 views/admin_edit.php:13
495
+ #: views/admin_edit_level.php:10 views/admin_edit_level.php:14
496
+ #: views/admin_edit_level.php:18
497
+ msgid "(required)"
498
+ msgstr "(vereist)"
499
+
500
+ #: views/admin_add.php:15 views/admin_edit.php:13
501
+ msgid "E-mail"
502
+ msgstr "E-mail"
503
+
504
+ #: views/admin_add.php:19
505
+ msgid "Add New Member "
506
+ msgstr "Voeg een nieuw lid toe"
507
+
508
+ #: views/admin_add_level.php:6
509
+ msgid "Create new membership level."
510
+ msgstr "Maak een nieuw Lidmaatschap niveau"
511
+
512
+ #: views/admin_add_level.php:11 views/admin_edit_level.php:10
513
+ msgid "Membership Level Name"
514
+ msgstr "Lidmaatschap Niveau Naam"
515
+
516
+ #: views/admin_add_level.php:15 views/admin_edit_level.php:14
517
+ msgid "Default WordPress Role"
518
+ msgstr "Default WordPress Role"
519
+
520
+ #: views/admin_add_level.php:19 views/admin_edit_level.php:18
521
+ msgid "Subscription Duration"
522
+ msgstr "Inschrijftermijn"
523
+
524
+ #: views/admin_add_level.php:26 views/admin_edit_level.php:27
525
+ msgid "No Expiry"
526
+ msgstr "Verloopt niet"
527
+
528
+ #: views/admin_add_level.php:55
529
+ msgid "Add New Membership Level "
530
+ msgstr "Voeg een nieuw lidmaatschap niveau toe"
531
+
532
+ #: views/admin_edit.php:5
533
+ msgid "Edit Member"
534
+ msgstr "Wijzig lid"
535
+
536
+ #: views/admin_edit.php:6
537
+ msgid "Edit existing member details."
538
+ msgstr "Wijzig gegevens bestaand lid."
539
+
540
+ #: views/admin_edit.php:9
541
+ msgid "Username"
542
+ msgstr "Gebruikersnaam"
543
+
544
+ #: views/admin_edit.php:18
545
+ msgid "Edit User "
546
+ msgstr "Wijzig gebruiker"
547
+
548
+ #: views/admin_edit_level.php:5
549
+ msgid "Edit membership level"
550
+ msgstr "Wijzig lidmaatschap niveau"
551
+
552
+ #: views/admin_edit_level.php:6
553
+ msgid "Edit membership level."
554
+ msgstr "Wijzig lidmaatschap niveau."
555
+
556
+ #: views/admin_edit_level.php:54
557
+ msgid "Edit Membership Level "
558
+ msgstr "Wijzig lidmaatschap niveau"
559
+
560
+ #: views/admin_members.php:2
561
+ msgid "Simple WP Membership::Members"
562
+ msgstr "Simple WP Membership::Leden"
563
+
564
+ #: views/admin_members.php:3 views/admin_members.php:19
565
+ #: views/admin_membership_levels.php:21
566
+ msgid "Add New"
567
+ msgstr "Voeg nieuw toe"
568
+
569
+ #: views/admin_members.php:9 views/admin_membership_levels.php:11
570
+ msgid "search"
571
+ msgstr "zoeken"
572
+
573
+ #: views/admin_membership_levels.php:3
574
+ msgid "Simple WP Membership::Membership Levels"
575
+ msgstr "Simple WP Membership::Lidmaatschap niveaus"
576
+
577
+ #: views/admin_membership_level_menu.php:2
578
+ msgid "Membership level"
579
+ msgstr "Lidmaatschap niveau"
580
+
581
+ #: views/admin_membership_level_menu.php:3
582
+ msgid "Manage Content Production"
583
+ msgstr "Beheer de inhouds productie"
584
+
585
+ #: views/admin_membership_manage.php:17
586
+ msgid "Example Content Protection Settings"
587
+ msgstr "Voorbeeld inhoud afscherm instellingen"
588
+
589
+ #: views/admin_member_form_common_part.php:45
590
+ msgid "(twice, required)"
591
+ msgstr "(tweemaal, vereist)"
592
+
593
+ #: views/admin_member_form_common_part.php:50
594
+ msgid "Strength indicator"
595
+ msgstr "Sterkte indicator"
596
+
597
+ #: views/admin_member_form_common_part.php:51
598
+ msgid ""
599
+ "Hint: The password should be at least seven characters long. To make it "
600
+ "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
601
+ "$ % ^ &amp; )."
602
+ msgstr ""
603
+ "Hint: Het password moet minstens zeven karakters bevatten. Om het sterker te "
604
+ "maken gebruikt u hoofdletters en kleine letters, nummers en symbolen "
605
+ "zoals ! ? / $ % ^ & ; ) \""
606
+
607
+ #: views/admin_member_form_common_part.php:64 views/loggedin.php:7
608
+ #: views/login_widget_logged.php:6
609
+ msgid "Account Status"
610
+ msgstr "Account Status"
611
+
612
+ #: views/admin_member_form_common_part.php:74
613
+ msgid "Member Since"
614
+ msgstr "Lid sinds"
615
+
616
+ #: views/admin_payment_settings.php:2 views/admin_settings.php:2
617
+ #: views/admin_tools_settings.php:2
618
+ msgid "Simple WP Membership::Settings"
619
+ msgstr "Simple WP Membership::Instellingen"
620
+
621
+ #: views/admin_payment_settings.php:33
622
+ msgid "PayPal Integration Settings"
623
+ msgstr "PayPal Integratie Instellingen"
624
+
625
+ #: views/admin_payment_settings.php:36
626
+ msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
627
+ msgstr "Genereer de \"Geavanceerde Variabelen\" Code voor je PayPal knop"
628
+
629
+ #: views/admin_payment_settings.php:39
630
+ msgid "Enter the Membership Level ID"
631
+ msgstr "Voer het Lidmaatschap niveau ID in"
632
+
633
+ #: views/admin_payment_settings.php:41
634
+ msgid "Generate Code"
635
+ msgstr "Genereer de code"
636
+
637
+ #: views/admin_tools_settings.php:9
638
+ msgid "Generate a Registration Completion link"
639
+ msgstr "Genereer een Registratie Voltooid link"
640
+
641
+ #: views/admin_tools_settings.php:12
642
+ msgid ""
643
+ "You can manually generate a registration completion link here and give it to "
644
+ "your customer if they have missed the email that was automatically sent out "
645
+ "to them after the payment."
646
+ msgstr ""
647
+ "Je kunt hier zelf een Registratie Compleet link genereren en aan je klant "
648
+ "geven als zij de automatische email die hen was toegezonden na betaling "
649
+ "hebben gemist."
650
+
651
+ #: views/admin_tools_settings.php:17
652
+ msgid "Generate Registration Completion Link"
653
+ msgstr "Genereer Registratie Voltooid link"
654
+
655
+ #: views/admin_tools_settings.php:20
656
+ msgid "OR"
657
+ msgstr "OF"
658
+
659
+ #: views/admin_tools_settings.php:21
660
+ msgid "For All Pending Registrations"
661
+ msgstr "Voor alle wachtende registraties"
662
+
663
+ #: views/admin_tools_settings.php:24
664
+ msgid "Registration Completion Links Will Appear Below:"
665
+ msgstr "De Registratie Voltooid link zal hieronder verschijnen:"
666
+
667
+ #: views/admin_tools_settings.php:31
668
+ msgid "Send Registration Reminder Email too"
669
+ msgstr "Stuur ook een Registratie herinnering "
670
+
671
+ #: views/admin_tools_settings.php:34
672
+ msgid "Submit"
673
+ msgstr "Verstuur"
674
+
675
+ #: views/edit.php:58
676
+ msgid "Update"
677
+ msgstr "Update"
678
+
679
+ #: views/forgot_password.php:5
680
+ msgid "Email Address"
681
+ msgstr "Email Adres"
682
+
683
+ #: views/forgot_password.php:12
684
+ msgid "Reset Password"
685
+ msgstr "Reset Password"
686
+
687
+ #: views/loggedin.php:3 views/login_widget_logged.php:3
688
+ msgid "Logged in as"
689
+ msgstr "Ingelogd als"
690
+
691
+ #: views/loggedin.php:11 views/login_widget_logged.php:9
692
+ msgid "Membership"
693
+ msgstr "Lidmaatschap"
694
+
695
+ #: views/loggedin.php:15 views/login_widget_logged.php:12
696
+ msgid "Account Expiry"
697
+ msgstr "Account verloopt"
698
+
699
+ #: views/loggedin.php:19 views/login_widget_logged.php:16
700
+ msgid "Logout"
701
+ msgstr "Logout"
702
+
703
+ #: views/login.php:17
704
+ msgid "Remember Me"
705
+ msgstr "Herinner mij"
706
+
707
+ #: views/login.php:26
708
+ msgid "Forgot Password"
709
+ msgstr "Password vergeten"
languages/swpm-pl_PL.mo ADDED
Binary file
languages/swpm-pl_PL.po ADDED
@@ -0,0 +1,708 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: simple membership\n"
4
+ "POT-Creation-Date: 2014-08-28 19:28+1000\n"
5
+ "PO-Revision-Date: 2014-12-09 14:05+0100\n"
6
+ "Last-Translator: Przemysław Maj <maytki@o2.pl>\n"
7
+ "Language-Team: \n"
8
+ "MIME-Version: 1.0\n"
9
+ "Content-Type: text/plain; charset=UTF-8\n"
10
+ "Content-Transfer-Encoding: 8bit\n"
11
+ "X-Generator: Poedit 1.7.1\n"
12
+ "X-Poedit-KeywordsList: __;_e\n"
13
+ "X-Poedit-Basepath: .\n"
14
+ "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
15
+ "|| n%100>=20) ? 1 : 2);\n"
16
+ "Language: pl\n"
17
+ "X-Poedit-SearchPath-0: .\n"
18
+
19
+ #: classes/class.bAccessControl.php:23 classes/class.bAccessControl.php:40
20
+ msgid "You are not allowed to view this content"
21
+ msgstr "Nie masz uprawnień, aby zobaczyć treść posta."
22
+
23
+ #: classes/class.bAccessControl.php:26 classes/class.bAccessControl.php:43
24
+ msgid "You need to login to view this content. "
25
+ msgstr "Musisz się zalogować aby zobaczyć treść posta."
26
+
27
+ #: classes/class.bAdminRegistration.php:48
28
+ #: classes/class.bFrontRegistration.php:64
29
+ msgid "Registration Successful."
30
+ msgstr "Instalacja zakończona powodzeniem"
31
+
32
+ #: classes/class.bAdminRegistration.php:53
33
+ #: classes/class.bAdminRegistration.php:73
34
+ #: classes/class.bMembershipLevel.php:36 classes/class.bMembershipLevel.php:54
35
+ msgid "Please correct the following:"
36
+ msgstr "Popraw następujące:"
37
+
38
+ #: classes/class.bAjax.php:16 classes/class.bAjax.php:28
39
+ msgid "Aready taken"
40
+ msgstr "Zajęte"
41
+
42
+ #: classes/class.bAjax.php:29
43
+ msgid "Available"
44
+ msgstr "Dostępny"
45
+
46
+ #: classes/class.bAuth.php:48 classes/class.bFrontRegistration.php:179
47
+ msgid "User Not Found."
48
+ msgstr "Nie znaleziono użytkownika"
49
+
50
+ #: classes/class.bAuth.php:55
51
+ msgid "Password Empty or Invalid."
52
+ msgstr "Zle wpisane hasło"
53
+
54
+ #: classes/class.bAuth.php:79
55
+ msgid "Account is inactive."
56
+ msgstr "Konto jest nieaktywne."
57
+
58
+ #: classes/class.bAuth.php:89
59
+ msgid "You are logged in as:"
60
+ msgstr "Jesteś zalogowany jako:"
61
+
62
+ #: classes/class.bAuth.php:128
63
+ msgid "Logged Out Successfully."
64
+ msgstr "Wylogowano poprawnie"
65
+
66
+ #: classes/class.bAuth.php:170
67
+ msgid "Session Expired."
68
+ msgstr "Sesja wygasła"
69
+
70
+ #: classes/class.bAuth.php:179
71
+ msgid "Invalid User Name"
72
+ msgstr "Zła nazwa użytkownika"
73
+
74
+ #: classes/class.bAuth.php:187
75
+ msgid "Bad Cookie Hash"
76
+ msgstr "Złe ciasteczko :/"
77
+
78
+ #: classes/class.bForm.php:26
79
+ msgid ""
80
+ "Wordpress account exists with given user name. But given email doesn't match."
81
+ msgstr "Użytkownik o takiej nazwie istnieje, ale ma inny adres email"
82
+
83
+ #: classes/class.bForm.php:31
84
+ msgid ""
85
+ "Wordpress account exists with given email. But given user name doesn't match."
86
+ msgstr ""
87
+ "Użytkownik o takim adresie email istnieje, ale ma inną nazwę użytkownika"
88
+
89
+ #: classes/class.bForm.php:40
90
+ msgid "User name is required"
91
+ msgstr "Nazwa użytkownika wymagana"
92
+
93
+ #: classes/class.bForm.php:49
94
+ msgid "User name already exists."
95
+ msgstr "Podaj inną nazwę użytkownika (ta jest zajęta)"
96
+
97
+ #: classes/class.bForm.php:72
98
+ msgid "Password is required"
99
+ msgstr "Wymagane hasło"
100
+
101
+ #: classes/class.bForm.php:79
102
+ msgid "Password mismatch"
103
+ msgstr "Podano różne hasła!"
104
+
105
+ #: classes/class.bForm.php:95
106
+ msgid "Email is required"
107
+ msgstr "Wymagany email"
108
+
109
+ #: classes/class.bForm.php:99
110
+ msgid "Email is invalid"
111
+ msgstr "Błędny email"
112
+
113
+ #: classes/class.bForm.php:112
114
+ msgid "Email is already used."
115
+ msgstr "Taki adres email jest już użyty"
116
+
117
+ #: classes/class.bForm.php:178
118
+ msgid "Member since field is invalid"
119
+ msgstr "Pole \"użytkownik\" jest nieprawidłowe"
120
+
121
+ #: classes/class.bForm.php:189
122
+ msgid "Subscription starts field is invalid"
123
+ msgstr "Pole \"subskrybcja od\" jest nierawidłowe"
124
+
125
+ #: classes/class.bForm.php:199
126
+ msgid "Gender field is invalid"
127
+ msgstr "Pole \"płeć\" jest nieprawidłowa"
128
+
129
+ #: classes/class.bForm.php:210
130
+ msgid "Account state field is invalid"
131
+ msgstr "Pole \"Account State\" jest nieprawidłowe"
132
+
133
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
134
+ msgid "Please"
135
+ msgstr "Proszę"
136
+
137
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
138
+ #: views/login.php:21
139
+ msgid "Login"
140
+ msgstr "Login"
141
+
142
+ #: classes/class.bFrontRegistration.php:79
143
+ #: classes/class.bFrontRegistration.php:158
144
+ msgid "Please correct the following"
145
+ msgstr "Proszę poprawić następujące"
146
+
147
+ #: classes/class.bFrontRegistration.php:92
148
+ msgid "Membership Level Couldn't be found."
149
+ msgstr "Pozim członkowstwa nie znaleziony"
150
+
151
+ #: classes/class.bFrontRegistration.php:168
152
+ msgid "Email Address Not Valid."
153
+ msgstr "Adres email jest nieważny"
154
+
155
+ #: classes/class.bFrontRegistration.php:199
156
+ msgid "New password has been sent to your email address."
157
+ msgstr "Nowe hasło zostało wysłane na podany adres email"
158
+
159
+ #: classes/class.bLevelForm.php:31
160
+ msgid "Subscriptoin duration must be > 0."
161
+ msgstr "Czas trwania subskrybcji musi być większy od 0"
162
+
163
+ #: classes/class.bMembers.php:7
164
+ msgid "Member"
165
+ msgstr "Członek"
166
+
167
+ #: classes/class.bMembers.php:8 classes/class.simple-wp-membership.php:467
168
+ msgid "Members"
169
+ msgstr "Członkowie"
170
+
171
+ #: classes/class.bMembers.php:16 classes/class.bMembershipLevels.php:16
172
+ msgid "ID"
173
+ msgstr "ID"
174
+
175
+ #: classes/class.bMembers.php:17 views/add.php:5 views/edit.php:4
176
+ #: views/login.php:5
177
+ msgid "User Name"
178
+ msgstr "Nazwa użytkownika"
179
+
180
+ #: classes/class.bMembers.php:18 views/add.php:21
181
+ #: views/admin_member_form_common_part.php:2 views/edit.php:20
182
+ msgid "First Name"
183
+ msgstr "Imię"
184
+
185
+ #: classes/class.bMembers.php:19 views/add.php:25
186
+ #: views/admin_member_form_common_part.php:6 views/edit.php:24
187
+ msgid "Last Name"
188
+ msgstr "Nazwisko"
189
+
190
+ #: classes/class.bMembers.php:20 views/add.php:9 views/edit.php:8
191
+ msgid "Email"
192
+ msgstr "email"
193
+
194
+ #: classes/class.bMembers.php:21 classes/class.bMembershipLevels.php:8
195
+ #: classes/class.bMembershipLevels.php:17 views/add.php:64
196
+ #: views/admin_member_form_common_part.php:55 views/edit.php:52
197
+ msgid "Membership Level"
198
+ msgstr "Poziom dostępu"
199
+
200
+ #: classes/class.bMembers.php:22 views/admin_member_form_common_part.php:78
201
+ msgid "Subscription Starts"
202
+ msgstr "Subskrybcja od"
203
+
204
+ #: classes/class.bMembers.php:23
205
+ msgid "Account State"
206
+ msgstr "Account State"
207
+
208
+ #: classes/class.bMembers.php:35 classes/class.bMembershipLevels.php:29
209
+ msgid "Delete"
210
+ msgstr "Skasuj"
211
+
212
+ #: classes/class.bMembers.php:100
213
+ msgid "No Member found."
214
+ msgstr "Niue ma takiego użytkownika"
215
+
216
+ #: classes/class.bMembershipLevel.php:31
217
+ msgid "Membership Level Creation Successful."
218
+ msgstr "Dodano nowy poziom członkowstwa"
219
+
220
+ #: classes/class.bMembershipLevel.php:50
221
+ msgid "Updated Successfully."
222
+ msgstr "Aktualizacja pomyślna"
223
+
224
+ #: classes/class.bMembershipLevels.php:9
225
+ #: classes/class.simple-wp-membership.php:469
226
+ msgid "Membership Levels"
227
+ msgstr "Poziom członkowstwa"
228
+
229
+ #: classes/class.bMembershipLevels.php:18
230
+ msgid "Role"
231
+ msgstr "Uprawnienia"
232
+
233
+ #: classes/class.bMembershipLevels.php:19
234
+ msgid "Subscription Valid For"
235
+ msgstr "Subskrybcja ważna przez"
236
+
237
+ #: classes/class.bSettings.php:28
238
+ msgid "Plugin Documentation"
239
+ msgstr "Plugin Documentation"
240
+
241
+ #: classes/class.bSettings.php:30
242
+ msgid "General Settings"
243
+ msgstr "Główne ustawienia"
244
+
245
+ #: classes/class.bSettings.php:32
246
+ msgid "Enable Free Membership"
247
+ msgstr "Pozwól na darmowe członkostwo"
248
+
249
+ #: classes/class.bSettings.php:35
250
+ msgid "Enable/disable registration for free membership level"
251
+ msgstr "Włącz / wyłącz rejestrację dla darmowyego członkowstwa"
252
+
253
+ #: classes/class.bSettings.php:36
254
+ msgid "Free Membership Level ID"
255
+ msgstr "Level ID darmowego członkowstwa"
256
+
257
+ #: classes/class.bSettings.php:39
258
+ msgid "Assign free membership level ID"
259
+ msgstr "Przyciel Level ID do darmowego członkowstwa"
260
+
261
+ #: classes/class.bSettings.php:40
262
+ msgid "Hide Adminbar"
263
+ msgstr "Showaj Adminibar"
264
+
265
+ #: classes/class.bSettings.php:43
266
+ msgid ""
267
+ "WordPress shows an admin toolbar to the logged in users of the site. Check "
268
+ "this box if you want to hide that admin toolbar in the fronend of your site."
269
+ msgstr ""
270
+ "WordPress pokazuje pasek narzędzi administratora dla zalogowanych "
271
+ "użytkowników witryny . Zaznacz to pole, jeśli chcesz ukryć ten pasek na "
272
+ "swojej stronie"
273
+
274
+ #: classes/class.bSettings.php:45
275
+ msgid "Pages Settings"
276
+ msgstr "Ustawienia strony"
277
+
278
+ #: classes/class.bSettings.php:47
279
+ msgid "Login Page URL"
280
+ msgstr "Strona logowania"
281
+
282
+ #: classes/class.bSettings.php:51
283
+ msgid "Registration Page URL"
284
+ msgstr "Strona rejestracji"
285
+
286
+ #: classes/class.bSettings.php:55
287
+ msgid "Join Us Page URL"
288
+ msgstr "Strona dołącz do nas"
289
+
290
+ #: classes/class.bSettings.php:59
291
+ msgid "Edit Profile Page URL"
292
+ msgstr "Strona edycji profilu"
293
+
294
+ #: classes/class.bSettings.php:63
295
+ msgid "Password Reset Page URL"
296
+ msgstr "Strona zmiany hasła"
297
+
298
+ #: classes/class.bSettings.php:68
299
+ msgid "Test & Debug Settings"
300
+ msgstr "Ustawienia testów i debugowania"
301
+
302
+ #: classes/class.bSettings.php:74
303
+ msgid "Enable Sandbox Testing"
304
+ msgstr "Włącz testy sandbox "
305
+
306
+ #: classes/class.bSettings.php:77
307
+ msgid "Enable this option if you want to do sandbox payment testing."
308
+ msgstr "Włącz tę opcję, jeśli chcesz zrobić testy płatności (sandbox)"
309
+
310
+ #: classes/class.bSettings.php:90
311
+ msgid "Email Misc. Settings"
312
+ msgstr "Różne ustawienia email"
313
+
314
+ #: classes/class.bSettings.php:92
315
+ msgid "From Email Address"
316
+ msgstr "z adresu email"
317
+
318
+ #: classes/class.bSettings.php:97
319
+ msgid "Email Settings (Prompt to Complete Registration )"
320
+ msgstr "Ustawienia poczty e-mail (Podpowiedź do zakończenia rejestracji )"
321
+
322
+ #: classes/class.bSettings.php:99 classes/class.bSettings.php:110
323
+ #: classes/class.bSettings.php:129
324
+ msgid "Email Subject"
325
+ msgstr "Temat email"
326
+
327
+ #: classes/class.bSettings.php:103 classes/class.bSettings.php:114
328
+ #: classes/class.bSettings.php:133
329
+ msgid "Email Body"
330
+ msgstr "Treść email"
331
+
332
+ #: classes/class.bSettings.php:108
333
+ msgid "Email Settings (Registration Complete)"
334
+ msgstr "Ustawienia email (rejestracja zakończona)"
335
+
336
+ #: classes/class.bSettings.php:118
337
+ msgid "Send Notification To Admin"
338
+ msgstr "Wyślij powiadomienie do administratora"
339
+
340
+ #: classes/class.bSettings.php:122
341
+ msgid "Send Email to Member When Added via Admin Dashboard"
342
+ msgstr "Wyślij email to dodanego użytkownika przez panel administratora"
343
+
344
+ #: classes/class.bSettings.php:127
345
+ msgid " Email Settings (Account Upgrade Notification)"
346
+ msgstr ""
347
+
348
+ #: classes/class.bSettings.php:326
349
+ msgid "Not a Member?"
350
+ msgstr "Nie masz konta?"
351
+
352
+ #: classes/class.bSettings.php:326 views/login.php:30
353
+ msgid "Join Us"
354
+ msgstr "Dołącz do nas."
355
+
356
+ #: classes/class.bUtils.php:32 views/admin_member_form_common_part.php:66
357
+ msgid "Active"
358
+ msgstr "Aktywuj"
359
+
360
+ #: classes/class.bUtils.php:33 views/admin_member_form_common_part.php:67
361
+ msgid "Inactive"
362
+ msgstr "Nieaktywny"
363
+
364
+ #: classes/class.bUtils.php:34 views/admin_member_form_common_part.php:68
365
+ msgid "Pending"
366
+ msgstr "Oczekuje"
367
+
368
+ #: classes/class.bUtils.php:35 views/admin_member_form_common_part.php:69
369
+ msgid "Expired"
370
+ msgstr "Wygasło"
371
+
372
+ #: classes/class.bUtils.php:225
373
+ msgid "Never"
374
+ msgstr "Nigdy"
375
+
376
+ #: classes/class.miscUtils.php:51
377
+ msgid "Registration"
378
+ msgstr "Rejestracja"
379
+
380
+ #: classes/class.miscUtils.php:74
381
+ msgid "Member Login"
382
+ msgstr "Strona logowania"
383
+
384
+ #: classes/class.miscUtils.php:97
385
+ msgid "Profile"
386
+ msgstr "Twój profil"
387
+
388
+ #: classes/class.miscUtils.php:120
389
+ msgid "Password Reset"
390
+ msgstr "Reset hasła"
391
+
392
+ #: classes/class.simple-wp-membership.php:178
393
+ msgid "You are not logged in."
394
+ msgstr "Nie jesteś zalogowany"
395
+
396
+ #: classes/class.simple-wp-membership.php:209
397
+ msgid "Simple WP Membership Protection"
398
+ msgstr "Simple WP Membership Protection"
399
+
400
+ #: classes/class.simple-wp-membership.php:222
401
+ msgid "Simple Membership Protection options"
402
+ msgstr "Simple Membership Protection options"
403
+
404
+ #: classes/class.simple-wp-membership.php:238
405
+ msgid "Do you want to protect this content?"
406
+ msgstr "Czy chcesz "
407
+
408
+ #: classes/class.simple-wp-membership.php:243
409
+ msgid "Select the membership level that can access this content:"
410
+ msgstr "Wybierz poziom dostępu do tej zawartości"
411
+
412
+ #: classes/class.simple-wp-membership.php:375
413
+ msgid "Display SWPM Login."
414
+ msgstr "Wyświetl SWPM Login"
415
+
416
+ #: classes/class.simple-wp-membership.php:377
417
+ msgid "SWPM Login"
418
+ msgstr "SWPM Login"
419
+
420
+ #: classes/class.simple-wp-membership.php:464
421
+ msgid "WP Membership"
422
+ msgstr "WP Membership"
423
+
424
+ #: classes/class.simple-wp-membership.php:471
425
+ msgid "Settings"
426
+ msgstr "Ustawienia"
427
+
428
+ #: views/add.php:13 views/admin_member_form_common_part.php:45
429
+ #: views/edit.php:12 views/login.php:11
430
+ msgid "Password"
431
+ msgstr "Hasło"
432
+
433
+ #: views/add.php:17 views/edit.php:16
434
+ msgid "Repeat Password"
435
+ msgstr "Powtórz hasło"
436
+
437
+ #: views/add.php:29 views/admin_member_form_common_part.php:10
438
+ msgid "Gender"
439
+ msgstr "Płeć"
440
+
441
+ #: views/add.php:36 views/admin_member_form_common_part.php:17
442
+ #: views/edit.php:28
443
+ msgid "Phone"
444
+ msgstr "Nr telefonu"
445
+
446
+ #: views/add.php:40 views/admin_member_form_common_part.php:21
447
+ #: views/edit.php:32
448
+ msgid "Street"
449
+ msgstr "Ulica"
450
+
451
+ #: views/add.php:44 views/admin_member_form_common_part.php:25
452
+ #: views/edit.php:36
453
+ msgid "City"
454
+ msgstr "Miasto"
455
+
456
+ #: views/add.php:48 views/admin_member_form_common_part.php:29
457
+ #: views/edit.php:40
458
+ msgid "State"
459
+ msgstr "Województwo"
460
+
461
+ #: views/add.php:52 views/admin_member_form_common_part.php:33
462
+ #: views/edit.php:44
463
+ msgid "Zipcode"
464
+ msgstr "Kod pocztowy"
465
+
466
+ #: views/add.php:56 views/admin_member_form_common_part.php:37
467
+ #: views/edit.php:48
468
+ msgid "Country"
469
+ msgstr "Kraj"
470
+
471
+ #: views/add.php:60 views/admin_member_form_common_part.php:41
472
+ msgid "Company"
473
+ msgstr "Firma"
474
+
475
+ #: views/add.php:71
476
+ msgid "Register"
477
+ msgstr "Rejestruj"
478
+
479
+ #: views/admin_add.php:6
480
+ msgid "Add Member"
481
+ msgstr "Dodaj użytkownika"
482
+
483
+ #: views/admin_add.php:7
484
+ msgid "Create a brand new user and add it to this site."
485
+ msgstr "Dodaj nowego użytkownika do tej strony"
486
+
487
+ #: views/admin_add.php:11
488
+ msgid "User name"
489
+ msgstr "Nazwa użytkownika"
490
+
491
+ #: views/admin_add.php:11 views/admin_add.php:15 views/admin_add_level.php:11
492
+ #: views/admin_add_level.php:15 views/admin_add_level.php:19
493
+ #: views/admin_edit.php:9 views/admin_edit.php:13
494
+ #: views/admin_edit_level.php:10 views/admin_edit_level.php:14
495
+ #: views/admin_edit_level.php:18
496
+ msgid "(required)"
497
+ msgstr "(wymagane)"
498
+
499
+ #: views/admin_add.php:15 views/admin_edit.php:13
500
+ msgid "E-mail"
501
+ msgstr "E-mail"
502
+
503
+ #: views/admin_add.php:19
504
+ msgid "Add New Member "
505
+ msgstr "Dodaj nowego członka"
506
+
507
+ #: views/admin_add_level.php:6
508
+ msgid "Create new membership level."
509
+ msgstr "Stwórz nowy poziom dostępu"
510
+
511
+ #: views/admin_add_level.php:11 views/admin_edit_level.php:10
512
+ msgid "Membership Level Name"
513
+ msgstr "Nazwa poziomu dostępu"
514
+
515
+ #: views/admin_add_level.php:15 views/admin_edit_level.php:14
516
+ msgid "Default WordPress Role"
517
+ msgstr "Domyślna uprawnienia WordPress"
518
+
519
+ #: views/admin_add_level.php:19 views/admin_edit_level.php:18
520
+ msgid "Subscription Duration"
521
+ msgstr "Czas trwania subskrybcji"
522
+
523
+ #: views/admin_add_level.php:26 views/admin_edit_level.php:27
524
+ msgid "No Expiry"
525
+ msgstr "Nie wygasło"
526
+
527
+ #: views/admin_add_level.php:55
528
+ msgid "Add New Membership Level "
529
+ msgstr "Dodaj nowy pozim dostępu"
530
+
531
+ #: views/admin_edit.php:5
532
+ msgid "Edit Member"
533
+ msgstr "Edycja użytkownika"
534
+
535
+ #: views/admin_edit.php:6
536
+ msgid "Edit existing member details."
537
+ msgstr "Edytuj istniejącego użytkownika"
538
+
539
+ #: views/admin_edit.php:9
540
+ msgid "Username"
541
+ msgstr "Użytkownik"
542
+
543
+ #: views/admin_edit.php:18
544
+ msgid "Edit User "
545
+ msgstr "Edycja użytkownika"
546
+
547
+ #: views/admin_edit_level.php:5
548
+ msgid "Edit membership level"
549
+ msgstr "Edycja poziomu dostępu"
550
+
551
+ #: views/admin_edit_level.php:6
552
+ msgid "Edit membership level."
553
+ msgstr "Edycja poziomu dostępu"
554
+
555
+ #: views/admin_edit_level.php:54
556
+ msgid "Edit Membership Level "
557
+ msgstr "Edycja poziomu dostępu"
558
+
559
+ #: views/admin_members.php:2
560
+ msgid "Simple WP Membership::Members"
561
+ msgstr "Simple WP Membership::Użytkownicy"
562
+
563
+ #: views/admin_members.php:3 views/admin_members.php:19
564
+ #: views/admin_membership_levels.php:21
565
+ msgid "Add New"
566
+ msgstr "Dodaj nowy"
567
+
568
+ #: views/admin_members.php:9 views/admin_membership_levels.php:11
569
+ msgid "search"
570
+ msgstr "Szukaj"
571
+
572
+ #: views/admin_membership_levels.php:3
573
+ msgid "Simple WP Membership::Membership Levels"
574
+ msgstr "Simple WP Membership::Poziom członkowstwa"
575
+
576
+ #: views/admin_membership_level_menu.php:2
577
+ msgid "Membership level"
578
+ msgstr "Poziom dostępu"
579
+
580
+ #: views/admin_membership_level_menu.php:3
581
+ msgid "Manage Content Production"
582
+ msgstr "Zarządzanie ustawieniami ochrony zawartości"
583
+
584
+ #: views/admin_membership_manage.php:17
585
+ msgid "Example Content Protection Settings"
586
+ msgstr "Przykład ustawienia ochrony zawartości"
587
+
588
+ #: views/admin_member_form_common_part.php:45
589
+ msgid "(twice, required)"
590
+ msgstr "(dwukrotnie, wymagane)"
591
+
592
+ #: views/admin_member_form_common_part.php:50
593
+ msgid "Strength indicator"
594
+ msgstr "Wskaźnik siły"
595
+
596
+ #: views/admin_member_form_common_part.php:51
597
+ msgid ""
598
+ "Hint: The password should be at least seven characters long. To make it "
599
+ "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
600
+ "$ % ^ &amp; )."
601
+ msgstr ""
602
+ "Podpowiedź: Hasło powinno mieć conajmniej 7 znaków. Aby było silniejsze "
603
+ "można używać dużych i małych liter, znaków, symboli takich jak ! \" ? $ % ^ "
604
+ "&amp; )"
605
+
606
+ #: views/admin_member_form_common_part.php:64 views/loggedin.php:7
607
+ #: views/login_widget_logged.php:6
608
+ msgid "Account Status"
609
+ msgstr "Status konta"
610
+
611
+ #: views/admin_member_form_common_part.php:74
612
+ msgid "Member Since"
613
+ msgstr "Użytkownik od"
614
+
615
+ #: views/admin_payment_settings.php:2 views/admin_settings.php:2
616
+ #: views/admin_tools_settings.php:2
617
+ msgid "Simple WP Membership::Settings"
618
+ msgstr "Simple WP Membership::Ustawienia"
619
+
620
+ #: views/admin_payment_settings.php:33
621
+ msgid "PayPal Integration Settings"
622
+ msgstr "PayPal Ustawienia integracyjne"
623
+
624
+ #: views/admin_payment_settings.php:36
625
+ msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
626
+ msgstr "Genrowany \"Advanced Variables\" kod dla twojego przycisku PayPal"
627
+
628
+ #: views/admin_payment_settings.php:39
629
+ msgid "Enter the Membership Level ID"
630
+ msgstr "Wpisz ID poziomu "
631
+
632
+ #: views/admin_payment_settings.php:41
633
+ msgid "Generate Code"
634
+ msgstr "Wygeneruj kod"
635
+
636
+ #: views/admin_tools_settings.php:9
637
+ msgid "Generate a Registration Completion link"
638
+ msgstr "Generowanie linku zakończenia rejestracji"
639
+
640
+ #: views/admin_tools_settings.php:12
641
+ msgid ""
642
+ "You can manually generate a registration completion link here and give it to "
643
+ "your customer if they have missed the email that was automatically sent out "
644
+ "to them after the payment."
645
+ msgstr ""
646
+ "Tutaj można ręcznie wygenerować link zakończenia rejestracji i wysłać go do "
647
+ "klienta , jeśli nie został pominięty e-mail , który został automatycznie "
648
+ "wysłany po dokonaniu płatności ."
649
+
650
+ #: views/admin_tools_settings.php:17
651
+ msgid "Generate Registration Completion Link"
652
+ msgstr "Generowanie linku zakończenia rejestracji"
653
+
654
+ #: views/admin_tools_settings.php:20
655
+ msgid "OR"
656
+ msgstr "lub"
657
+
658
+ #: views/admin_tools_settings.php:21
659
+ msgid "For All Pending Registrations"
660
+ msgstr "Dla wszystkich oczekujących rejestracji"
661
+
662
+ #: views/admin_tools_settings.php:24
663
+ msgid "Registration Completion Links Will Appear Below:"
664
+ msgstr "Link zakończenia rejestracji pojawi się poniżej :"
665
+
666
+ #: views/admin_tools_settings.php:31
667
+ msgid "Send Registration Reminder Email too"
668
+ msgstr "Wyślij przypomnienie o rejestracji na email"
669
+
670
+ #: views/admin_tools_settings.php:34
671
+ msgid "Submit"
672
+ msgstr "Wyślij"
673
+
674
+ #: views/edit.php:58
675
+ msgid "Update"
676
+ msgstr "Aktualizacja"
677
+
678
+ #: views/forgot_password.php:5
679
+ msgid "Email Address"
680
+ msgstr "adres email"
681
+
682
+ #: views/forgot_password.php:12
683
+ msgid "Reset Password"
684
+ msgstr "Reset hasła"
685
+
686
+ #: views/loggedin.php:3 views/login_widget_logged.php:3
687
+ msgid "Logged in as"
688
+ msgstr "Jesteś zalogowany jako"
689
+
690
+ #: views/loggedin.php:11 views/login_widget_logged.php:9
691
+ msgid "Membership"
692
+ msgstr "Członkostwo"
693
+
694
+ #: views/loggedin.php:15 views/login_widget_logged.php:12
695
+ msgid "Account Expiry"
696
+ msgstr "Konto straciło ważność"
697
+
698
+ #: views/loggedin.php:19 views/login_widget_logged.php:16
699
+ msgid "Logout"
700
+ msgstr "Wyloguj"
701
+
702
+ #: views/login.php:17
703
+ msgid "Remember Me"
704
+ msgstr "Pamiętaj mnie"
705
+
706
+ #: views/login.php:26
707
+ msgid "Forgot Password"
708
+ msgstr "Zapomniałeś hasła"
languages/swpm-pt_BR.mo CHANGED
Binary file
languages/swpm-pt_BR.po CHANGED
@@ -2,13 +2,13 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: simple membership\n"
4
  "POT-Creation-Date: 2014-08-28 19:28+1000\n"
5
- "PO-Revision-Date: 2014-09-19 09:39-0600\n"
6
  "Last-Translator: \n"
7
  "Language-Team: \n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
- "X-Generator: Poedit 1.6.9\n"
12
  "X-Poedit-KeywordsList: __;_e\n"
13
  "X-Poedit-Basepath: .\n"
14
  "Plural-Forms: nplurals=2; plural=(n > 1);\n"
@@ -21,12 +21,12 @@ msgstr "Você não tem permissão para visualizar este conteúdo"
21
 
22
  #: classes/class.bAccessControl.php:26 classes/class.bAccessControl.php:43
23
  msgid "You need to login to view this content. "
24
- msgstr "Você precisa fazer o login para visualizar este conteúdo ."
25
 
26
  #: classes/class.bAdminRegistration.php:48
27
  #: classes/class.bFrontRegistration.php:64
28
  msgid "Registration Successful."
29
- msgstr "Registo bem sucedido ."
30
 
31
  #: classes/class.bAdminRegistration.php:53
32
  #: classes/class.bAdminRegistration.php:73
@@ -36,11 +36,11 @@ msgstr "Corrija o seguinte:"
36
 
37
  #: classes/class.bAjax.php:16 classes/class.bAjax.php:28
38
  msgid "Aready taken"
39
- msgstr "Aready tomadas"
40
 
41
  #: classes/class.bAjax.php:29
42
  msgid "Available"
43
- msgstr "Aisponível"
44
 
45
  #: classes/class.bAuth.php:48 classes/class.bFrontRegistration.php:179
46
  msgid "User Not Found."
@@ -48,7 +48,7 @@ msgstr "Usuário não encontrado."
48
 
49
  #: classes/class.bAuth.php:55
50
  msgid "Password Empty or Invalid."
51
- msgstr "Senha vazio ou inválido."
52
 
53
  #: classes/class.bAuth.php:79
54
  msgid "Account is inactive."
@@ -64,33 +64,33 @@ msgstr "Desconectado com sucesso."
64
 
65
  #: classes/class.bAuth.php:170
66
  msgid "Session Expired."
67
- msgstr "Sessão expirada ."
68
 
69
  #: classes/class.bAuth.php:179
70
  msgid "Invalid User Name"
71
- msgstr "Inválido Nome de Usuário"
72
 
73
  #: classes/class.bAuth.php:187
74
  msgid "Bad Cookie Hash"
75
- msgstr "Bad Hash de Cookies"
76
 
77
  #: classes/class.bForm.php:26
78
  msgid ""
79
  "Wordpress account exists with given user name. But given email doesn't match."
80
  msgstr ""
81
- "Conta Wordpress existe com determinado nome de usuário. Mas, dada email não "
82
- "corresponder."
83
 
84
  #: classes/class.bForm.php:31
85
  msgid ""
86
  "Wordpress account exists with given email. But given user name doesn't match."
87
  msgstr ""
88
- "Conta Wordpress existe com e-mail fornecido . Mas dado o nome de usuário não "
89
- "corresponder ."
90
 
91
  #: classes/class.bForm.php:40
92
  msgid "User name is required"
93
- msgstr "O utilizador é obrigatório"
94
 
95
  #: classes/class.bForm.php:49
96
  msgid "User name already exists."
@@ -102,27 +102,27 @@ msgstr "A senha é requerida"
102
 
103
  #: classes/class.bForm.php:79
104
  msgid "Password mismatch"
105
- msgstr "Senha incompatibilidade"
106
 
107
  #: classes/class.bForm.php:95
108
  msgid "Email is required"
109
- msgstr "Email é obrigatório"
110
 
111
  #: classes/class.bForm.php:99
112
  msgid "Email is invalid"
113
- msgstr "E-mail é inválido"
114
 
115
  #: classes/class.bForm.php:112
116
  msgid "Email is already used."
117
- msgstr "E-mail já está sendo usado."
118
 
119
  #: classes/class.bForm.php:178
120
  msgid "Member since field is invalid"
121
- msgstr "Membro desde campo é inválido"
122
 
123
  #: classes/class.bForm.php:189
124
  msgid "Subscription starts field is invalid"
125
- msgstr "Assinatura começa campo é inválido"
126
 
127
  #: classes/class.bForm.php:199
128
  msgid "Gender field is invalid"
@@ -130,11 +130,11 @@ msgstr "Campo Sexo é inválido"
130
 
131
  #: classes/class.bForm.php:210
132
  msgid "Account state field is invalid"
133
- msgstr "Campo de estado da conta é inválido"
134
 
135
  #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
136
  msgid "Please"
137
- msgstr "Por favor,"
138
 
139
  #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
140
  #: views/login.php:21
@@ -152,7 +152,7 @@ msgstr "Nível de Associação não pôde ser encontrado."
152
 
153
  #: classes/class.bFrontRegistration.php:168
154
  msgid "Email Address Not Valid."
155
- msgstr "Endereço de E-mail não é válido."
156
 
157
  #: classes/class.bFrontRegistration.php:199
158
  msgid "New password has been sent to your email address."
@@ -160,7 +160,7 @@ msgstr "Nova senha foi enviada para o seu endereço de e-mail."
160
 
161
  #: classes/class.bLevelForm.php:31
162
  msgid "Subscriptoin duration must be > 0."
163
- msgstr "Duração Subscriptoin deve ser> 0 ."
164
 
165
  #: classes/class.bMembers.php:7
166
  msgid "Member"
@@ -182,7 +182,7 @@ msgstr "Nome de Usuário"
182
  #: classes/class.bMembers.php:18 views/add.php:21
183
  #: views/admin_member_form_common_part.php:2 views/edit.php:20
184
  msgid "First Name"
185
- msgstr "Primeiro nome"
186
 
187
  #: classes/class.bMembers.php:19 views/add.php:25
188
  #: views/admin_member_form_common_part.php:6 views/edit.php:24
@@ -191,7 +191,7 @@ msgstr "Sobrenome"
191
 
192
  #: classes/class.bMembers.php:20 views/add.php:9 views/edit.php:8
193
  msgid "Email"
194
- msgstr "Email"
195
 
196
  #: classes/class.bMembers.php:21 classes/class.bMembershipLevels.php:8
197
  #: classes/class.bMembershipLevels.php:17 views/add.php:64
@@ -201,11 +201,11 @@ msgstr "Nível de Associação"
201
 
202
  #: classes/class.bMembers.php:22 views/admin_member_form_common_part.php:78
203
  msgid "Subscription Starts"
204
- msgstr "Inicia subscrição"
205
 
206
  #: classes/class.bMembers.php:23
207
  msgid "Account State"
208
- msgstr "Estado conta"
209
 
210
  #: classes/class.bMembers.php:35 classes/class.bMembershipLevels.php:29
211
  msgid "Delete"
@@ -217,11 +217,11 @@ msgstr "Nenhum membro encontrado."
217
 
218
  #: classes/class.bMembershipLevel.php:31
219
  msgid "Membership Level Creation Successful."
220
- msgstr "Composição Criação Nível de sucesso."
221
 
222
  #: classes/class.bMembershipLevel.php:50
223
  msgid "Updated Successfully."
224
- msgstr "Atualizado com sucesso ."
225
 
226
  #: classes/class.bMembershipLevels.php:9
227
  #: classes/class.simple-wp-membership.php:469
@@ -238,7 +238,7 @@ msgstr "Assinatura válida para"
238
 
239
  #: classes/class.bSettings.php:28
240
  msgid "Plugin Documentation"
241
- msgstr "Documentação Plugin"
242
 
243
  #: classes/class.bSettings.php:30
244
  msgid "General Settings"
@@ -246,7 +246,7 @@ msgstr "Configurações Gerais"
246
 
247
  #: classes/class.bSettings.php:32
248
  msgid "Enable Free Membership"
249
- msgstr "Habilite Membership grátis"
250
 
251
  #: classes/class.bSettings.php:35
252
  msgid "Enable/disable registration for free membership level"
@@ -262,7 +262,7 @@ msgstr "Atribuir livre adesão nível ID"
262
 
263
  #: classes/class.bSettings.php:40
264
  msgid "Hide Adminbar"
265
- msgstr "esconder Adminbar"
266
 
267
  #: classes/class.bSettings.php:43
268
  msgid ""
@@ -271,31 +271,31 @@ msgid ""
271
  msgstr ""
272
  "WordPress mostra uma barra de ferramentas de administração para o site para "
273
  "os usuários do site. Marque esta caixa se você quer esconder essa barra de "
274
- "ferramentas admin no fronend do seu site."
275
 
276
  #: classes/class.bSettings.php:45
277
  msgid "Pages Settings"
278
- msgstr "Páginas Configurações"
279
 
280
  #: classes/class.bSettings.php:47
281
  msgid "Login Page URL"
282
- msgstr "Entrar URL da página"
283
 
284
  #: classes/class.bSettings.php:51
285
  msgid "Registration Page URL"
286
- msgstr "URL Página de Registro"
287
 
288
  #: classes/class.bSettings.php:55
289
  msgid "Join Us Page URL"
290
- msgstr "Junte-se a URL Us Página"
291
 
292
  #: classes/class.bSettings.php:59
293
  msgid "Edit Profile Page URL"
294
- msgstr "Editar URL página de perfil"
295
 
296
  #: classes/class.bSettings.php:63
297
  msgid "Password Reset Page URL"
298
- msgstr "Senha URL Página Reset"
299
 
300
  #: classes/class.bSettings.php:68
301
  msgid "Test & Debug Settings"
@@ -307,11 +307,11 @@ msgstr "Permitir testes Sandbox"
307
 
308
  #: classes/class.bSettings.php:77
309
  msgid "Enable this option if you want to do sandbox payment testing."
310
- msgstr "Ative essa opção se você quiser fazer o teste pagamento sandbox."
311
 
312
  #: classes/class.bSettings.php:90
313
  msgid "Email Misc. Settings"
314
- msgstr "Email Misc. configurações"
315
 
316
  #: classes/class.bSettings.php:92
317
  msgid "From Email Address"
@@ -324,12 +324,12 @@ msgstr ""
324
  #: classes/class.bSettings.php:99 classes/class.bSettings.php:110
325
  #: classes/class.bSettings.php:129
326
  msgid "Email Subject"
327
- msgstr ""
328
 
329
  #: classes/class.bSettings.php:103 classes/class.bSettings.php:114
330
  #: classes/class.bSettings.php:133
331
  msgid "Email Body"
332
- msgstr ""
333
 
334
  #: classes/class.bSettings.php:108
335
  msgid "Email Settings (Registration Complete)"
@@ -350,7 +350,7 @@ msgstr "Configurações de e-mail ( Conta de Notificação de atualização )"
350
 
351
  #: classes/class.bSettings.php:326
352
  msgid "Not a Member?"
353
- msgstr "Não é um membro ?"
354
 
355
  #: classes/class.bSettings.php:326 views/login.php:30
356
  msgid "Join Us"
@@ -362,7 +362,7 @@ msgstr "Ativa"
362
 
363
  #: classes/class.bUtils.php:33 views/admin_member_form_common_part.php:67
364
  msgid "Inactive"
365
- msgstr "inativo"
366
 
367
  #: classes/class.bUtils.php:34 views/admin_member_form_common_part.php:68
368
  msgid "Pending"
@@ -370,11 +370,11 @@ msgstr "Pendendo"
370
 
371
  #: classes/class.bUtils.php:35 views/admin_member_form_common_part.php:69
372
  msgid "Expired"
373
- msgstr "expirado"
374
 
375
  #: classes/class.bUtils.php:225
376
  msgid "Never"
377
- msgstr "nunca"
378
 
379
  #: classes/class.miscUtils.php:51
380
  msgid "Registration"
@@ -382,7 +382,7 @@ msgstr "Inscrição"
382
 
383
  #: classes/class.miscUtils.php:74
384
  msgid "Member Login"
385
- msgstr "login de usuário"
386
 
387
  #: classes/class.miscUtils.php:97
388
  msgid "Profile"
@@ -394,7 +394,7 @@ msgstr ""
394
 
395
  #: classes/class.simple-wp-membership.php:178
396
  msgid "You are not logged in."
397
- msgstr "Você não está logado ."
398
 
399
  #: classes/class.simple-wp-membership.php:209
400
  msgid "Simple WP Membership Protection"
@@ -402,15 +402,15 @@ msgstr ""
402
 
403
  #: classes/class.simple-wp-membership.php:222
404
  msgid "Simple Membership Protection options"
405
- msgstr "Opções de proteção Membership Simples"
406
 
407
  #: classes/class.simple-wp-membership.php:238
408
  msgid "Do you want to protect this content?"
409
- msgstr "Você quer proteger este conteúdo ?"
410
 
411
  #: classes/class.simple-wp-membership.php:243
412
  msgid "Select the membership level that can access this content:"
413
- msgstr "Selecione o nível de adesão que pode acessar este conteúdo :"
414
 
415
  #: classes/class.simple-wp-membership.php:375
416
  msgid "Display SWPM Login."
@@ -426,7 +426,7 @@ msgstr ""
426
 
427
  #: classes/class.simple-wp-membership.php:471
428
  msgid "Settings"
429
- msgstr "configurações"
430
 
431
  #: views/add.php:13 views/admin_member_form_common_part.php:45
432
  #: views/edit.php:12 views/login.php:11
@@ -454,12 +454,12 @@ msgstr "Rua"
454
  #: views/add.php:44 views/admin_member_form_common_part.php:25
455
  #: views/edit.php:36
456
  msgid "City"
457
- msgstr "A cidade"
458
 
459
  #: views/add.php:48 views/admin_member_form_common_part.php:29
460
  #: views/edit.php:40
461
  msgid "State"
462
- msgstr "O Estado"
463
 
464
  #: views/add.php:52 views/admin_member_form_common_part.php:33
465
  #: views/edit.php:44
@@ -469,11 +469,11 @@ msgstr "Cep"
469
  #: views/add.php:56 views/admin_member_form_common_part.php:37
470
  #: views/edit.php:48
471
  msgid "Country"
472
- msgstr "O país"
473
 
474
  #: views/add.php:60 views/admin_member_form_common_part.php:41
475
  msgid "Company"
476
- msgstr "A firma"
477
 
478
  #: views/add.php:71
479
  msgid "Register"
@@ -506,23 +506,23 @@ msgstr ""
506
 
507
  #: views/admin_add.php:19
508
  msgid "Add New Member "
509
- msgstr "Adicionar Novo Membro"
510
 
511
  #: views/admin_add_level.php:6
512
  msgid "Create new membership level."
513
- msgstr "Criar novo nível de adesão ."
514
 
515
  #: views/admin_add_level.php:11 views/admin_edit_level.php:10
516
  msgid "Membership Level Name"
517
- msgstr "Nível de Associação Nome"
518
 
519
  #: views/admin_add_level.php:15 views/admin_edit_level.php:14
520
  msgid "Default WordPress Role"
521
- msgstr "Padrão WordPress Role"
522
 
523
  #: views/admin_add_level.php:19 views/admin_edit_level.php:18
524
  msgid "Subscription Duration"
525
- msgstr "Assinatura Duração"
526
 
527
  #: views/admin_add_level.php:26 views/admin_edit_level.php:27
528
  msgid "No Expiry"
@@ -530,7 +530,7 @@ msgstr "Sem validade"
530
 
531
  #: views/admin_add_level.php:55
532
  msgid "Add New Membership Level "
533
- msgstr "Adicionar Novo Nível de Associação"
534
 
535
  #: views/admin_edit.php:5
536
  msgid "Edit Member"
@@ -542,11 +542,11 @@ msgstr "Edite detalhes de membros existentes."
542
 
543
  #: views/admin_edit.php:9
544
  msgid "Username"
545
- msgstr "usuário"
546
 
547
  #: views/admin_edit.php:18
548
  msgid "Edit User "
549
- msgstr "Editar Usuário"
550
 
551
  #: views/admin_edit_level.php:5
552
  msgid "Edit membership level"
@@ -558,7 +558,7 @@ msgstr "Editar Nível de Associação"
558
 
559
  #: views/admin_edit_level.php:54
560
  msgid "Edit Membership Level "
561
- msgstr "Editar Nível de Associação"
562
 
563
  #: views/admin_members.php:2
564
  msgid "Simple WP Membership::Members"
@@ -571,7 +571,7 @@ msgstr "Adicionar Novo"
571
 
572
  #: views/admin_members.php:9 views/admin_membership_levels.php:11
573
  msgid "search"
574
- msgstr "pesquisa"
575
 
576
  #: views/admin_membership_levels.php:3
577
  msgid "Simple WP Membership::Membership Levels"
@@ -579,7 +579,7 @@ msgstr "Membership WP Simples :: Níveis de Associação"
579
 
580
  #: views/admin_membership_level_menu.php:2
581
  msgid "Membership level"
582
- msgstr "nível de inscrição"
583
 
584
  #: views/admin_membership_level_menu.php:3
585
  msgid "Manage Content Production"
@@ -587,15 +587,15 @@ msgstr "Gerenciar Produção de Conteúdo"
587
 
588
  #: views/admin_membership_manage.php:17
589
  msgid "Example Content Protection Settings"
590
- msgstr "Exemplo Configurações de proteção de conteúdo"
591
 
592
  #: views/admin_member_form_common_part.php:45
593
  msgid "(twice, required)"
594
- msgstr "( duas vezes , é necessária )"
595
 
596
  #: views/admin_member_form_common_part.php:50
597
  msgid "Strength indicator"
598
- msgstr "indicador de força"
599
 
600
  #: views/admin_member_form_common_part.php:51
601
  msgid ""
@@ -603,13 +603,13 @@ msgid ""
603
  "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
604
  "$ % ^ &amp; )."
605
  msgstr ""
606
- "Dica: A senha deve ter pelo menos sete caracteres. Para torná-lo mais "
607
- "forte , use letras maiúsculas e minúsculas , números e símbolos como! ?"
608
 
609
  #: views/admin_member_form_common_part.php:64 views/loggedin.php:7
610
  #: views/login_widget_logged.php:6
611
  msgid "Account Status"
612
- msgstr "Estado da Conta"
613
 
614
  #: views/admin_member_form_common_part.php:74
615
  msgid "Member Since"
@@ -622,11 +622,11 @@ msgstr "Membership WP Simples :: Configurações"
622
 
623
  #: views/admin_payment_settings.php:33
624
  msgid "PayPal Integration Settings"
625
- msgstr "PayPal Configurações de Integração"
626
 
627
  #: views/admin_payment_settings.php:36
628
  msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
629
- msgstr "Gerar o Variáveis ​​avançadas Código para o botão PayPal"
630
 
631
  #: views/admin_payment_settings.php:39
632
  msgid "Enter the Membership Level ID"
@@ -634,11 +634,11 @@ msgstr "Digite o Nível de Associação ID"
634
 
635
  #: views/admin_payment_settings.php:41
636
  msgid "Generate Code"
637
- msgstr "gerar código"
638
 
639
  #: views/admin_tools_settings.php:9
640
  msgid "Generate a Registration Completion link"
641
- msgstr "Gerar Registro Conclusão link"
642
 
643
  #: views/admin_tools_settings.php:12
644
  msgid ""
@@ -648,11 +648,11 @@ msgid ""
648
  msgstr ""
649
  "Você pode gerar um atalho manualmente conclusão de inscrição aqui e dar a "
650
  "seu cliente, se eles perderam o e-mail que foi enviado automaticamente para "
651
- "eles após o pagamento ."
652
 
653
  #: views/admin_tools_settings.php:17
654
  msgid "Generate Registration Completion Link"
655
- msgstr "Gerar Registro Conclusão link"
656
 
657
  #: views/admin_tools_settings.php:20
658
  msgid "OR"
@@ -664,7 +664,7 @@ msgstr "Para todos os registos pendentes"
664
 
665
  #: views/admin_tools_settings.php:24
666
  msgid "Registration Completion Links Will Appear Below:"
667
- msgstr "Links conclusão de inscrição aparecerá abaixo :"
668
 
669
  #: views/admin_tools_settings.php:31
670
  msgid "Send Registration Reminder Email too"
@@ -676,11 +676,11 @@ msgstr "Enviar"
676
 
677
  #: views/edit.php:58
678
  msgid "Update"
679
- msgstr "atualização"
680
 
681
  #: views/forgot_password.php:5
682
  msgid "Email Address"
683
- msgstr "endereço de email"
684
 
685
  #: views/forgot_password.php:12
686
  msgid "Reset Password"
@@ -692,11 +692,11 @@ msgstr "Logado como"
692
 
693
  #: views/loggedin.php:11 views/login_widget_logged.php:9
694
  msgid "Membership"
695
- msgstr "a qualidade de associado"
696
 
697
  #: views/loggedin.php:15 views/login_widget_logged.php:12
698
  msgid "Account Expiry"
699
- msgstr "Conta de Validade"
700
 
701
  #: views/loggedin.php:19 views/login_widget_logged.php:16
702
  msgid "Logout"
@@ -704,7 +704,7 @@ msgstr "Sair"
704
 
705
  #: views/login.php:17
706
  msgid "Remember Me"
707
- msgstr "lembre de mim"
708
 
709
  #: views/login.php:26
710
  msgid "Forgot Password"
2
  msgstr ""
3
  "Project-Id-Version: simple membership\n"
4
  "POT-Creation-Date: 2014-08-28 19:28+1000\n"
5
+ "PO-Revision-Date: 2015-04-11 11:19-0300\n"
6
  "Last-Translator: \n"
7
  "Language-Team: \n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
+ "X-Generator: Poedit 1.7.5\n"
12
  "X-Poedit-KeywordsList: __;_e\n"
13
  "X-Poedit-Basepath: .\n"
14
  "Plural-Forms: nplurals=2; plural=(n > 1);\n"
21
 
22
  #: classes/class.bAccessControl.php:26 classes/class.bAccessControl.php:43
23
  msgid "You need to login to view this content. "
24
+ msgstr "Você precisa fazer o login para visualizar este conteúdo. "
25
 
26
  #: classes/class.bAdminRegistration.php:48
27
  #: classes/class.bFrontRegistration.php:64
28
  msgid "Registration Successful."
29
+ msgstr "Registo bem sucedido."
30
 
31
  #: classes/class.bAdminRegistration.php:53
32
  #: classes/class.bAdminRegistration.php:73
36
 
37
  #: classes/class.bAjax.php:16 classes/class.bAjax.php:28
38
  msgid "Aready taken"
39
+ msgstr " em uso"
40
 
41
  #: classes/class.bAjax.php:29
42
  msgid "Available"
43
+ msgstr "Disponível"
44
 
45
  #: classes/class.bAuth.php:48 classes/class.bFrontRegistration.php:179
46
  msgid "User Not Found."
48
 
49
  #: classes/class.bAuth.php:55
50
  msgid "Password Empty or Invalid."
51
+ msgstr "Senha vazia ou inválida."
52
 
53
  #: classes/class.bAuth.php:79
54
  msgid "Account is inactive."
64
 
65
  #: classes/class.bAuth.php:170
66
  msgid "Session Expired."
67
+ msgstr "Sessão expirada."
68
 
69
  #: classes/class.bAuth.php:179
70
  msgid "Invalid User Name"
71
+ msgstr "Nome de Usuário Inválido"
72
 
73
  #: classes/class.bAuth.php:187
74
  msgid "Bad Cookie Hash"
75
+ msgstr "Bad Cookie Hash"
76
 
77
  #: classes/class.bForm.php:26
78
  msgid ""
79
  "Wordpress account exists with given user name. But given email doesn't match."
80
  msgstr ""
81
+ " existe conta Wordpress com o nome de usuário fornecido. Mas o e-mail dado "
82
+ "não corresponde."
83
 
84
  #: classes/class.bForm.php:31
85
  msgid ""
86
  "Wordpress account exists with given email. But given user name doesn't match."
87
  msgstr ""
88
+ " existe conta Wordpress com o e-mail fornecido. Mas o nome de usuário dado "
89
+ "não corresponde."
90
 
91
  #: classes/class.bForm.php:40
92
  msgid "User name is required"
93
+ msgstr "O nome de usuário é obrigatório"
94
 
95
  #: classes/class.bForm.php:49
96
  msgid "User name already exists."
102
 
103
  #: classes/class.bForm.php:79
104
  msgid "Password mismatch"
105
+ msgstr "Senha incompatível"
106
 
107
  #: classes/class.bForm.php:95
108
  msgid "Email is required"
109
+ msgstr "O e-mail é obrigatório"
110
 
111
  #: classes/class.bForm.php:99
112
  msgid "Email is invalid"
113
+ msgstr "O e-mail é inválido"
114
 
115
  #: classes/class.bForm.php:112
116
  msgid "Email is already used."
117
+ msgstr "O e-mail já está sendo usado."
118
 
119
  #: classes/class.bForm.php:178
120
  msgid "Member since field is invalid"
121
+ msgstr "Campo Membro desde é inválido"
122
 
123
  #: classes/class.bForm.php:189
124
  msgid "Subscription starts field is invalid"
125
+ msgstr "Campo Início de Assinatura é inválido"
126
 
127
  #: classes/class.bForm.php:199
128
  msgid "Gender field is invalid"
130
 
131
  #: classes/class.bForm.php:210
132
  msgid "Account state field is invalid"
133
+ msgstr "Campo de Status da Conta é inválido"
134
 
135
  #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
136
  msgid "Please"
137
+ msgstr "Por favor"
138
 
139
  #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
140
  #: views/login.php:21
152
 
153
  #: classes/class.bFrontRegistration.php:168
154
  msgid "Email Address Not Valid."
155
+ msgstr "O endereço de e-mail não é válido."
156
 
157
  #: classes/class.bFrontRegistration.php:199
158
  msgid "New password has been sent to your email address."
160
 
161
  #: classes/class.bLevelForm.php:31
162
  msgid "Subscriptoin duration must be > 0."
163
+ msgstr "Duração da assinatura deve ser > 0 ."
164
 
165
  #: classes/class.bMembers.php:7
166
  msgid "Member"
182
  #: classes/class.bMembers.php:18 views/add.php:21
183
  #: views/admin_member_form_common_part.php:2 views/edit.php:20
184
  msgid "First Name"
185
+ msgstr "Primeiro Nome"
186
 
187
  #: classes/class.bMembers.php:19 views/add.php:25
188
  #: views/admin_member_form_common_part.php:6 views/edit.php:24
191
 
192
  #: classes/class.bMembers.php:20 views/add.php:9 views/edit.php:8
193
  msgid "Email"
194
+ msgstr "E-mail"
195
 
196
  #: classes/class.bMembers.php:21 classes/class.bMembershipLevels.php:8
197
  #: classes/class.bMembershipLevels.php:17 views/add.php:64
201
 
202
  #: classes/class.bMembers.php:22 views/admin_member_form_common_part.php:78
203
  msgid "Subscription Starts"
204
+ msgstr "Início da Assinatura"
205
 
206
  #: classes/class.bMembers.php:23
207
  msgid "Account State"
208
+ msgstr "Status da Conta"
209
 
210
  #: classes/class.bMembers.php:35 classes/class.bMembershipLevels.php:29
211
  msgid "Delete"
217
 
218
  #: classes/class.bMembershipLevel.php:31
219
  msgid "Membership Level Creation Successful."
220
+ msgstr "Nível de Associação criado com sucesso,"
221
 
222
  #: classes/class.bMembershipLevel.php:50
223
  msgid "Updated Successfully."
224
+ msgstr "Atualizado com sucesso."
225
 
226
  #: classes/class.bMembershipLevels.php:9
227
  #: classes/class.simple-wp-membership.php:469
238
 
239
  #: classes/class.bSettings.php:28
240
  msgid "Plugin Documentation"
241
+ msgstr "Plugin Documentation"
242
 
243
  #: classes/class.bSettings.php:30
244
  msgid "General Settings"
246
 
247
  #: classes/class.bSettings.php:32
248
  msgid "Enable Free Membership"
249
+ msgstr "Habilite associação grátis"
250
 
251
  #: classes/class.bSettings.php:35
252
  msgid "Enable/disable registration for free membership level"
262
 
263
  #: classes/class.bSettings.php:40
264
  msgid "Hide Adminbar"
265
+ msgstr "Esconder Admin Bar"
266
 
267
  #: classes/class.bSettings.php:43
268
  msgid ""
271
  msgstr ""
272
  "WordPress mostra uma barra de ferramentas de administração para o site para "
273
  "os usuários do site. Marque esta caixa se você quer esconder essa barra de "
274
+ "ferramentas admin no front-end do seu site."
275
 
276
  #: classes/class.bSettings.php:45
277
  msgid "Pages Settings"
278
+ msgstr "Configurações de Páginas"
279
 
280
  #: classes/class.bSettings.php:47
281
  msgid "Login Page URL"
282
+ msgstr "URL da página de Entrar"
283
 
284
  #: classes/class.bSettings.php:51
285
  msgid "Registration Page URL"
286
+ msgstr "URL da página Registro"
287
 
288
  #: classes/class.bSettings.php:55
289
  msgid "Join Us Page URL"
290
+ msgstr "URL da página Junte-se a Nós"
291
 
292
  #: classes/class.bSettings.php:59
293
  msgid "Edit Profile Page URL"
294
+ msgstr "URL da página Editar Perfil"
295
 
296
  #: classes/class.bSettings.php:63
297
  msgid "Password Reset Page URL"
298
+ msgstr "URL da Página Reset de Senha"
299
 
300
  #: classes/class.bSettings.php:68
301
  msgid "Test & Debug Settings"
307
 
308
  #: classes/class.bSettings.php:77
309
  msgid "Enable this option if you want to do sandbox payment testing."
310
+ msgstr "Ative essa opção se você quiser fazer o teste de pagamento sandbox."
311
 
312
  #: classes/class.bSettings.php:90
313
  msgid "Email Misc. Settings"
314
+ msgstr "Configurações E-mail Misc. "
315
 
316
  #: classes/class.bSettings.php:92
317
  msgid "From Email Address"
324
  #: classes/class.bSettings.php:99 classes/class.bSettings.php:110
325
  #: classes/class.bSettings.php:129
326
  msgid "Email Subject"
327
+ msgstr "Assunto do E-mail"
328
 
329
  #: classes/class.bSettings.php:103 classes/class.bSettings.php:114
330
  #: classes/class.bSettings.php:133
331
  msgid "Email Body"
332
+ msgstr "Corpo do E-mail"
333
 
334
  #: classes/class.bSettings.php:108
335
  msgid "Email Settings (Registration Complete)"
350
 
351
  #: classes/class.bSettings.php:326
352
  msgid "Not a Member?"
353
+ msgstr "Não é um membro?"
354
 
355
  #: classes/class.bSettings.php:326 views/login.php:30
356
  msgid "Join Us"
362
 
363
  #: classes/class.bUtils.php:33 views/admin_member_form_common_part.php:67
364
  msgid "Inactive"
365
+ msgstr "Inativo"
366
 
367
  #: classes/class.bUtils.php:34 views/admin_member_form_common_part.php:68
368
  msgid "Pending"
370
 
371
  #: classes/class.bUtils.php:35 views/admin_member_form_common_part.php:69
372
  msgid "Expired"
373
+ msgstr "Expirado"
374
 
375
  #: classes/class.bUtils.php:225
376
  msgid "Never"
377
+ msgstr "Nunca"
378
 
379
  #: classes/class.miscUtils.php:51
380
  msgid "Registration"
382
 
383
  #: classes/class.miscUtils.php:74
384
  msgid "Member Login"
385
+ msgstr "Login de usuário"
386
 
387
  #: classes/class.miscUtils.php:97
388
  msgid "Profile"
394
 
395
  #: classes/class.simple-wp-membership.php:178
396
  msgid "You are not logged in."
397
+ msgstr "Você não está logado."
398
 
399
  #: classes/class.simple-wp-membership.php:209
400
  msgid "Simple WP Membership Protection"
402
 
403
  #: classes/class.simple-wp-membership.php:222
404
  msgid "Simple Membership Protection options"
405
+ msgstr "Opções de proteção Simple Membership"
406
 
407
  #: classes/class.simple-wp-membership.php:238
408
  msgid "Do you want to protect this content?"
409
+ msgstr "Você quer proteger este conteúdo?"
410
 
411
  #: classes/class.simple-wp-membership.php:243
412
  msgid "Select the membership level that can access this content:"
413
+ msgstr "Selecione o nível de associação que pode acessar este conteúdo:"
414
 
415
  #: classes/class.simple-wp-membership.php:375
416
  msgid "Display SWPM Login."
426
 
427
  #: classes/class.simple-wp-membership.php:471
428
  msgid "Settings"
429
+ msgstr "Configurações"
430
 
431
  #: views/add.php:13 views/admin_member_form_common_part.php:45
432
  #: views/edit.php:12 views/login.php:11
454
  #: views/add.php:44 views/admin_member_form_common_part.php:25
455
  #: views/edit.php:36
456
  msgid "City"
457
+ msgstr "Cidade"
458
 
459
  #: views/add.php:48 views/admin_member_form_common_part.php:29
460
  #: views/edit.php:40
461
  msgid "State"
462
+ msgstr "Estado"
463
 
464
  #: views/add.php:52 views/admin_member_form_common_part.php:33
465
  #: views/edit.php:44
469
  #: views/add.php:56 views/admin_member_form_common_part.php:37
470
  #: views/edit.php:48
471
  msgid "Country"
472
+ msgstr "País"
473
 
474
  #: views/add.php:60 views/admin_member_form_common_part.php:41
475
  msgid "Company"
476
+ msgstr "Empresa"
477
 
478
  #: views/add.php:71
479
  msgid "Register"
506
 
507
  #: views/admin_add.php:19
508
  msgid "Add New Member "
509
+ msgstr "Adicionar Novo Membro "
510
 
511
  #: views/admin_add_level.php:6
512
  msgid "Create new membership level."
513
+ msgstr "Criar novo nível de associação."
514
 
515
  #: views/admin_add_level.php:11 views/admin_edit_level.php:10
516
  msgid "Membership Level Name"
517
+ msgstr "Nome do Nível de Associação"
518
 
519
  #: views/admin_add_level.php:15 views/admin_edit_level.php:14
520
  msgid "Default WordPress Role"
521
+ msgstr "WordPress Role Padrão"
522
 
523
  #: views/admin_add_level.php:19 views/admin_edit_level.php:18
524
  msgid "Subscription Duration"
525
+ msgstr "Duração da Assinatura "
526
 
527
  #: views/admin_add_level.php:26 views/admin_edit_level.php:27
528
  msgid "No Expiry"
530
 
531
  #: views/admin_add_level.php:55
532
  msgid "Add New Membership Level "
533
+ msgstr "Adicionar Novo Nível de Associação "
534
 
535
  #: views/admin_edit.php:5
536
  msgid "Edit Member"
542
 
543
  #: views/admin_edit.php:9
544
  msgid "Username"
545
+ msgstr "Usuário"
546
 
547
  #: views/admin_edit.php:18
548
  msgid "Edit User "
549
+ msgstr "Editar Usuário "
550
 
551
  #: views/admin_edit_level.php:5
552
  msgid "Edit membership level"
558
 
559
  #: views/admin_edit_level.php:54
560
  msgid "Edit Membership Level "
561
+ msgstr "Editar Nível de Associação "
562
 
563
  #: views/admin_members.php:2
564
  msgid "Simple WP Membership::Members"
571
 
572
  #: views/admin_members.php:9 views/admin_membership_levels.php:11
573
  msgid "search"
574
+ msgstr "Pesquisa"
575
 
576
  #: views/admin_membership_levels.php:3
577
  msgid "Simple WP Membership::Membership Levels"
579
 
580
  #: views/admin_membership_level_menu.php:2
581
  msgid "Membership level"
582
+ msgstr "Nível de associação"
583
 
584
  #: views/admin_membership_level_menu.php:3
585
  msgid "Manage Content Production"
587
 
588
  #: views/admin_membership_manage.php:17
589
  msgid "Example Content Protection Settings"
590
+ msgstr "Exemplo de configurações de proteção de conteúdo"
591
 
592
  #: views/admin_member_form_common_part.php:45
593
  msgid "(twice, required)"
594
+ msgstr "(duas vezes, é necessária)"
595
 
596
  #: views/admin_member_form_common_part.php:50
597
  msgid "Strength indicator"
598
+ msgstr "Indicador de força"
599
 
600
  #: views/admin_member_form_common_part.php:51
601
  msgid ""
603
  "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
604
  "$ % ^ &amp; )."
605
  msgstr ""
606
+ "Dica: A senha deve ter pelo menos sete caracteres. Para torná-lo mais forte, "
607
+ "use letras maiúsculas e minúsculas, números e símbolos como !?"
608
 
609
  #: views/admin_member_form_common_part.php:64 views/loggedin.php:7
610
  #: views/login_widget_logged.php:6
611
  msgid "Account Status"
612
+ msgstr "Status da Conta"
613
 
614
  #: views/admin_member_form_common_part.php:74
615
  msgid "Member Since"
622
 
623
  #: views/admin_payment_settings.php:33
624
  msgid "PayPal Integration Settings"
625
+ msgstr "Configurações de Integração com PayPal"
626
 
627
  #: views/admin_payment_settings.php:36
628
  msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
629
+ msgstr "Gerar o Código \"Advanced Variables\" para o botão PayPal"
630
 
631
  #: views/admin_payment_settings.php:39
632
  msgid "Enter the Membership Level ID"
634
 
635
  #: views/admin_payment_settings.php:41
636
  msgid "Generate Code"
637
+ msgstr "Gerar código"
638
 
639
  #: views/admin_tools_settings.php:9
640
  msgid "Generate a Registration Completion link"
641
+ msgstr "Gerar link de Conclusão de Registro"
642
 
643
  #: views/admin_tools_settings.php:12
644
  msgid ""
648
  msgstr ""
649
  "Você pode gerar um atalho manualmente conclusão de inscrição aqui e dar a "
650
  "seu cliente, se eles perderam o e-mail que foi enviado automaticamente para "
651
+ "eles após o pagamento."
652
 
653
  #: views/admin_tools_settings.php:17
654
  msgid "Generate Registration Completion Link"
655
+ msgstr "Gerar link de Conclusão de Registro"
656
 
657
  #: views/admin_tools_settings.php:20
658
  msgid "OR"
664
 
665
  #: views/admin_tools_settings.php:24
666
  msgid "Registration Completion Links Will Appear Below:"
667
+ msgstr "Links conclusão de inscrição aparecerá abaixo:"
668
 
669
  #: views/admin_tools_settings.php:31
670
  msgid "Send Registration Reminder Email too"
676
 
677
  #: views/edit.php:58
678
  msgid "Update"
679
+ msgstr "Atualização"
680
 
681
  #: views/forgot_password.php:5
682
  msgid "Email Address"
683
+ msgstr "Endereço de e-mail"
684
 
685
  #: views/forgot_password.php:12
686
  msgid "Reset Password"
692
 
693
  #: views/loggedin.php:11 views/login_widget_logged.php:9
694
  msgid "Membership"
695
+ msgstr "Associado"
696
 
697
  #: views/loggedin.php:15 views/login_widget_logged.php:12
698
  msgid "Account Expiry"
699
+ msgstr "Validade da Conta"
700
 
701
  #: views/loggedin.php:19 views/login_widget_logged.php:16
702
  msgid "Logout"
704
 
705
  #: views/login.php:17
706
  msgid "Remember Me"
707
+ msgstr "Lembre-se de mim"
708
 
709
  #: views/login.php:26
710
  msgid "Forgot Password"
languages/swpm-ro_RO.mo ADDED
Binary file
languages/swpm-ro_RO.po ADDED
@@ -0,0 +1,709 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: simple membership\n"
4
+ "POT-Creation-Date: 2014-08-28 19:28+1000\n"
5
+ "PO-Revision-Date: 2015-01-11 12:34+0200\n"
6
+ "Last-Translator: Iulian <iulian.cazangiu@gmail.com>\n"
7
+ "Language-Team: \n"
8
+ "MIME-Version: 1.0\n"
9
+ "Content-Type: text/plain; charset=UTF-8\n"
10
+ "Content-Transfer-Encoding: 8bit\n"
11
+ "X-Generator: Poedit 1.7.3\n"
12
+ "X-Poedit-KeywordsList: __;_e\n"
13
+ "X-Poedit-Basepath: .\n"
14
+ "Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?"
15
+ "2:1));\n"
16
+ "Language: ro_RO\n"
17
+ "X-Poedit-SearchPath-0: .\n"
18
+
19
+ #: classes/class.bAccessControl.php:23 classes/class.bAccessControl.php:40
20
+ msgid "You are not allowed to view this content"
21
+ msgstr "Nu aveti dreptul sa accesati aceste informatii"
22
+
23
+ #: classes/class.bAccessControl.php:26 classes/class.bAccessControl.php:43
24
+ msgid "You need to login to view this content. "
25
+ msgstr "Trebuie sa va autentificati pentru a vedea aceste informatii."
26
+
27
+ #: classes/class.bAdminRegistration.php:48
28
+ #: classes/class.bFrontRegistration.php:64
29
+ msgid "Registration Successful."
30
+ msgstr "Inregistrare reusita."
31
+
32
+ #: classes/class.bAdminRegistration.php:53
33
+ #: classes/class.bAdminRegistration.php:73
34
+ #: classes/class.bMembershipLevel.php:36 classes/class.bMembershipLevel.php:54
35
+ msgid "Please correct the following:"
36
+ msgstr "Te rugam sa corectezi urmatoarele:"
37
+
38
+ #: classes/class.bAjax.php:16 classes/class.bAjax.php:28
39
+ msgid "Aready taken"
40
+ msgstr "Deja folosit"
41
+
42
+ #: classes/class.bAjax.php:29
43
+ msgid "Available"
44
+ msgstr "Disponibil"
45
+
46
+ #: classes/class.bAuth.php:48 classes/class.bFrontRegistration.php:179
47
+ msgid "User Not Found."
48
+ msgstr "Nu am gasit utilizatorul"
49
+
50
+ #: classes/class.bAuth.php:55
51
+ msgid "Password Empty or Invalid."
52
+ msgstr "Parola nu este introdusa sau este gresita."
53
+
54
+ #: classes/class.bAuth.php:79
55
+ msgid "Account is inactive."
56
+ msgstr "Cont inactiv."
57
+
58
+ #: classes/class.bAuth.php:89
59
+ msgid "You are logged in as:"
60
+ msgstr "Esti autentificat ca si:"
61
+
62
+ #: classes/class.bAuth.php:128
63
+ msgid "Logged Out Successfully."
64
+ msgstr "Te-ai deautentificat cu succes."
65
+
66
+ #: classes/class.bAuth.php:170
67
+ msgid "Session Expired."
68
+ msgstr "Sesiune expirata."
69
+
70
+ #: classes/class.bAuth.php:179
71
+ msgid "Invalid User Name"
72
+ msgstr "Utilizator incorect"
73
+
74
+ #: classes/class.bAuth.php:187
75
+ msgid "Bad Cookie Hash"
76
+ msgstr "Prajiturica rea :) (bad cookie)"
77
+
78
+ #: classes/class.bForm.php:26
79
+ msgid ""
80
+ "Wordpress account exists with given user name. But given email doesn't match."
81
+ msgstr ""
82
+ "Exista un cont wordpress cu acest nume de utilizator dar nu se potrivesc "
83
+ "adresele de email."
84
+
85
+ #: classes/class.bForm.php:31
86
+ msgid ""
87
+ "Wordpress account exists with given email. But given user name doesn't match."
88
+ msgstr ""
89
+ "Exista un cont wordpress cu aceasta adresa de email dar nu se potriveste cu "
90
+ "numele de utilizator."
91
+
92
+ #: classes/class.bForm.php:40
93
+ msgid "User name is required"
94
+ msgstr "Este nevoie de numele de utilizator"
95
+
96
+ #: classes/class.bForm.php:49
97
+ msgid "User name already exists."
98
+ msgstr "Acest nume de utilizator exista deja."
99
+
100
+ #: classes/class.bForm.php:72
101
+ msgid "Password is required"
102
+ msgstr "Este nevoie de parola"
103
+
104
+ #: classes/class.bForm.php:79
105
+ msgid "Password mismatch"
106
+ msgstr "Parolele nu se potrivesc"
107
+
108
+ #: classes/class.bForm.php:95
109
+ msgid "Email is required"
110
+ msgstr "Este nevoie de adresa de email"
111
+
112
+ #: classes/class.bForm.php:99
113
+ msgid "Email is invalid"
114
+ msgstr "Adresa de email incorecta"
115
+
116
+ #: classes/class.bForm.php:112
117
+ msgid "Email is already used."
118
+ msgstr "Adresa de email deja inregistrata in baza noastra de date"
119
+
120
+ #: classes/class.bForm.php:178
121
+ msgid "Member since field is invalid"
122
+ msgstr "Campul de membru din este incorect"
123
+
124
+ #: classes/class.bForm.php:189
125
+ msgid "Subscription starts field is invalid"
126
+ msgstr "Campul de start calitate membru este incorect"
127
+
128
+ #: classes/class.bForm.php:199
129
+ msgid "Gender field is invalid"
130
+ msgstr "Campul de gen sexual este incorect"
131
+
132
+ #: classes/class.bForm.php:210
133
+ msgid "Account state field is invalid"
134
+ msgstr "Campul de stare a contului este incorect"
135
+
136
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
137
+ msgid "Please"
138
+ msgstr "Te rugam"
139
+
140
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
141
+ #: views/login.php:21
142
+ msgid "Login"
143
+ msgstr "Autentificare"
144
+
145
+ #: classes/class.bFrontRegistration.php:79
146
+ #: classes/class.bFrontRegistration.php:158
147
+ msgid "Please correct the following"
148
+ msgstr "Te rugam sa corectezi urmatoarele"
149
+
150
+ #: classes/class.bFrontRegistration.php:92
151
+ msgid "Membership Level Couldn't be found."
152
+ msgstr "Nivelul de membru nu a fost gasit"
153
+
154
+ #: classes/class.bFrontRegistration.php:168
155
+ msgid "Email Address Not Valid."
156
+ msgstr "Adresa de email incorecta"
157
+
158
+ #: classes/class.bFrontRegistration.php:199
159
+ msgid "New password has been sent to your email address."
160
+ msgstr "O noua parola a fost trimisa pe adresa dvs. de email."
161
+
162
+ #: classes/class.bLevelForm.php:31
163
+ msgid "Subscriptoin duration must be > 0."
164
+ msgstr "Durata abonarii trebuie sa fie mai mare ca 0"
165
+
166
+ #: classes/class.bMembers.php:7
167
+ msgid "Member"
168
+ msgstr "Membru"
169
+
170
+ #: classes/class.bMembers.php:8 classes/class.simple-wp-membership.php:467
171
+ msgid "Members"
172
+ msgstr "Membrii"
173
+
174
+ #: classes/class.bMembers.php:16 classes/class.bMembershipLevels.php:16
175
+ msgid "ID"
176
+ msgstr "ID"
177
+
178
+ #: classes/class.bMembers.php:17 views/add.php:5 views/edit.php:4
179
+ #: views/login.php:5
180
+ msgid "User Name"
181
+ msgstr "Nume de utilizator"
182
+
183
+ #: classes/class.bMembers.php:18 views/add.php:21
184
+ #: views/admin_member_form_common_part.php:2 views/edit.php:20
185
+ msgid "First Name"
186
+ msgstr "Prenume"
187
+
188
+ #: classes/class.bMembers.php:19 views/add.php:25
189
+ #: views/admin_member_form_common_part.php:6 views/edit.php:24
190
+ msgid "Last Name"
191
+ msgstr "Nume de familie"
192
+
193
+ #: classes/class.bMembers.php:20 views/add.php:9 views/edit.php:8
194
+ msgid "Email"
195
+ msgstr "Adresa de email"
196
+
197
+ #: classes/class.bMembers.php:21 classes/class.bMembershipLevels.php:8
198
+ #: classes/class.bMembershipLevels.php:17 views/add.php:64
199
+ #: views/admin_member_form_common_part.php:55 views/edit.php:52
200
+ msgid "Membership Level"
201
+ msgstr "Nivel de abonare"
202
+
203
+ #: classes/class.bMembers.php:22 views/admin_member_form_common_part.php:78
204
+ msgid "Subscription Starts"
205
+ msgstr "Abonarea incepe la"
206
+
207
+ #: classes/class.bMembers.php:23
208
+ msgid "Account State"
209
+ msgstr "Starea contului"
210
+
211
+ #: classes/class.bMembers.php:35 classes/class.bMembershipLevels.php:29
212
+ msgid "Delete"
213
+ msgstr "Stergere"
214
+
215
+ #: classes/class.bMembers.php:100
216
+ msgid "No Member found."
217
+ msgstr "Nu am gasit membrul"
218
+
219
+ #: classes/class.bMembershipLevel.php:31
220
+ msgid "Membership Level Creation Successful."
221
+ msgstr "Nivelul de abonare creat cu succes"
222
+
223
+ #: classes/class.bMembershipLevel.php:50
224
+ msgid "Updated Successfully."
225
+ msgstr "Actualizat cu succes"
226
+
227
+ #: classes/class.bMembershipLevels.php:9
228
+ #: classes/class.simple-wp-membership.php:469
229
+ msgid "Membership Levels"
230
+ msgstr "Niveluri de abonare"
231
+
232
+ #: classes/class.bMembershipLevels.php:18
233
+ msgid "Role"
234
+ msgstr "Rol"
235
+
236
+ #: classes/class.bMembershipLevels.php:19
237
+ msgid "Subscription Valid For"
238
+ msgstr "Abonare valabila pana la"
239
+
240
+ #: classes/class.bSettings.php:28
241
+ msgid "Plugin Documentation"
242
+ msgstr "Documentatie plugin"
243
+
244
+ #: classes/class.bSettings.php:30
245
+ msgid "General Settings"
246
+ msgstr "Setari generale"
247
+
248
+ #: classes/class.bSettings.php:32
249
+ msgid "Enable Free Membership"
250
+ msgstr "Permite Abonare gratuita"
251
+
252
+ #: classes/class.bSettings.php:35
253
+ msgid "Enable/disable registration for free membership level"
254
+ msgstr "Permite/Nu permie inregistrarea pentru abonare gratuita"
255
+
256
+ #: classes/class.bSettings.php:36
257
+ msgid "Free Membership Level ID"
258
+ msgstr "ID pentru Abonarea gratuita"
259
+
260
+ #: classes/class.bSettings.php:39
261
+ msgid "Assign free membership level ID"
262
+ msgstr "Aloca ID pentru abonare gratuita"
263
+
264
+ #: classes/class.bSettings.php:40
265
+ msgid "Hide Adminbar"
266
+ msgstr "Ascunde bara de admin"
267
+
268
+ #: classes/class.bSettings.php:43
269
+ msgid ""
270
+ "WordPress shows an admin toolbar to the logged in users of the site. Check "
271
+ "this box if you want to hide that admin toolbar in the fronend of your site."
272
+ msgstr ""
273
+ "Wordpress arata bara de administrator utilizatorilor autentificati. Bifeaza "
274
+ "casuta pentru a ascunde aceasta bara."
275
+
276
+ #: classes/class.bSettings.php:45
277
+ msgid "Pages Settings"
278
+ msgstr "Setari pagina"
279
+
280
+ #: classes/class.bSettings.php:47
281
+ msgid "Login Page URL"
282
+ msgstr "URL pentru autentificare"
283
+
284
+ #: classes/class.bSettings.php:51
285
+ msgid "Registration Page URL"
286
+ msgstr "URL pentru inregistrare"
287
+
288
+ #: classes/class.bSettings.php:55
289
+ msgid "Join Us Page URL"
290
+ msgstr "URL pentru Pagina de Aderare"
291
+
292
+ #: classes/class.bSettings.php:59
293
+ msgid "Edit Profile Page URL"
294
+ msgstr "URL pentru editarea profilului"
295
+
296
+ #: classes/class.bSettings.php:63
297
+ msgid "Password Reset Page URL"
298
+ msgstr "URL pentru resetare parola"
299
+
300
+ #: classes/class.bSettings.php:68
301
+ msgid "Test & Debug Settings"
302
+ msgstr "Setari pentru test & debug"
303
+
304
+ #: classes/class.bSettings.php:74
305
+ msgid "Enable Sandbox Testing"
306
+ msgstr "Permite testarea in mediul Sandbox"
307
+
308
+ #: classes/class.bSettings.php:77
309
+ msgid "Enable this option if you want to do sandbox payment testing."
310
+ msgstr "Bifeaza acesta optiune pentru testarea platilor"
311
+
312
+ #: classes/class.bSettings.php:90
313
+ msgid "Email Misc. Settings"
314
+ msgstr "Setari diverse de email"
315
+
316
+ #: classes/class.bSettings.php:92
317
+ msgid "From Email Address"
318
+ msgstr "Adresa de email de la care sa plece toate email-urile"
319
+
320
+ #: classes/class.bSettings.php:97
321
+ msgid "Email Settings (Prompt to Complete Registration )"
322
+ msgstr "Setari email (Pentru a termina inregistrarea)"
323
+
324
+ #: classes/class.bSettings.php:99 classes/class.bSettings.php:110
325
+ #: classes/class.bSettings.php:129
326
+ msgid "Email Subject"
327
+ msgstr "Subiect Email"
328
+
329
+ #: classes/class.bSettings.php:103 classes/class.bSettings.php:114
330
+ #: classes/class.bSettings.php:133
331
+ msgid "Email Body"
332
+ msgstr "Continut Email"
333
+
334
+ #: classes/class.bSettings.php:108
335
+ msgid "Email Settings (Registration Complete)"
336
+ msgstr "Setari Email (Inregistrare reusita)"
337
+
338
+ #: classes/class.bSettings.php:118
339
+ msgid "Send Notification To Admin"
340
+ msgstr "Trimitere notificari catre Admin"
341
+
342
+ #: classes/class.bSettings.php:122
343
+ msgid "Send Email to Member When Added via Admin Dashboard"
344
+ msgstr "Trimite email la membrii cand sunt adaugati via Admin Dashboard"
345
+
346
+ #: classes/class.bSettings.php:127
347
+ msgid " Email Settings (Account Upgrade Notification)"
348
+ msgstr "Setari Email (Notificari pentru upgrade la abonare)"
349
+
350
+ #: classes/class.bSettings.php:326
351
+ msgid "Not a Member?"
352
+ msgstr "Nu sunteti inca membru ?"
353
+
354
+ #: classes/class.bSettings.php:326 views/login.php:30
355
+ msgid "Join Us"
356
+ msgstr "Inscrieti-va"
357
+
358
+ #: classes/class.bUtils.php:32 views/admin_member_form_common_part.php:66
359
+ msgid "Active"
360
+ msgstr "Activ"
361
+
362
+ #: classes/class.bUtils.php:33 views/admin_member_form_common_part.php:67
363
+ msgid "Inactive"
364
+ msgstr "Inactiv"
365
+
366
+ #: classes/class.bUtils.php:34 views/admin_member_form_common_part.php:68
367
+ msgid "Pending"
368
+ msgstr "In asteptare"
369
+
370
+ #: classes/class.bUtils.php:35 views/admin_member_form_common_part.php:69
371
+ msgid "Expired"
372
+ msgstr "Expirat"
373
+
374
+ #: classes/class.bUtils.php:225
375
+ msgid "Never"
376
+ msgstr "Niciodata"
377
+
378
+ #: classes/class.miscUtils.php:51
379
+ msgid "Registration"
380
+ msgstr "Inregistrare"
381
+
382
+ #: classes/class.miscUtils.php:74
383
+ msgid "Member Login"
384
+ msgstr "Autentificare membrii"
385
+
386
+ #: classes/class.miscUtils.php:97
387
+ msgid "Profile"
388
+ msgstr "Profil"
389
+
390
+ #: classes/class.miscUtils.php:120
391
+ msgid "Password Reset"
392
+ msgstr "Resetare Parola"
393
+
394
+ #: classes/class.simple-wp-membership.php:178
395
+ msgid "You are not logged in."
396
+ msgstr "Nu sunteti autentificat"
397
+
398
+ #: classes/class.simple-wp-membership.php:209
399
+ msgid "Simple WP Membership Protection"
400
+ msgstr "Simple WP Membership Protection"
401
+
402
+ #: classes/class.simple-wp-membership.php:222
403
+ msgid "Simple Membership Protection options"
404
+ msgstr "Optiuni Simple WP Membership Protection"
405
+
406
+ #: classes/class.simple-wp-membership.php:238
407
+ msgid "Do you want to protect this content?"
408
+ msgstr "Vrei sa protejezi acest continut ?"
409
+
410
+ #: classes/class.simple-wp-membership.php:243
411
+ msgid "Select the membership level that can access this content:"
412
+ msgstr "Selecteaza nivelul de abonare ce poate accesa acest continu:"
413
+
414
+ #: classes/class.simple-wp-membership.php:375
415
+ msgid "Display SWPM Login."
416
+ msgstr "Arata autentificare SWPM ."
417
+
418
+ #: classes/class.simple-wp-membership.php:377
419
+ msgid "SWPM Login"
420
+ msgstr "Autentificare SWPM"
421
+
422
+ #: classes/class.simple-wp-membership.php:464
423
+ msgid "WP Membership"
424
+ msgstr "Abonare WP"
425
+
426
+ #: classes/class.simple-wp-membership.php:471
427
+ msgid "Settings"
428
+ msgstr "Setari"
429
+
430
+ #: views/add.php:13 views/admin_member_form_common_part.php:45
431
+ #: views/edit.php:12 views/login.php:11
432
+ msgid "Password"
433
+ msgstr "Parola"
434
+
435
+ #: views/add.php:17 views/edit.php:16
436
+ msgid "Repeat Password"
437
+ msgstr "Repetare Parola"
438
+
439
+ #: views/add.php:29 views/admin_member_form_common_part.php:10
440
+ msgid "Gender"
441
+ msgstr "Sex"
442
+
443
+ #: views/add.php:36 views/admin_member_form_common_part.php:17
444
+ #: views/edit.php:28
445
+ msgid "Phone"
446
+ msgstr "Telefon"
447
+
448
+ #: views/add.php:40 views/admin_member_form_common_part.php:21
449
+ #: views/edit.php:32
450
+ msgid "Street"
451
+ msgstr "Strada"
452
+
453
+ #: views/add.php:44 views/admin_member_form_common_part.php:25
454
+ #: views/edit.php:36
455
+ msgid "City"
456
+ msgstr "Oras"
457
+
458
+ #: views/add.php:48 views/admin_member_form_common_part.php:29
459
+ #: views/edit.php:40
460
+ msgid "State"
461
+ msgstr "Judet"
462
+
463
+ #: views/add.php:52 views/admin_member_form_common_part.php:33
464
+ #: views/edit.php:44
465
+ msgid "Zipcode"
466
+ msgstr "Cod postal"
467
+
468
+ #: views/add.php:56 views/admin_member_form_common_part.php:37
469
+ #: views/edit.php:48
470
+ msgid "Country"
471
+ msgstr "Tara"
472
+
473
+ #: views/add.php:60 views/admin_member_form_common_part.php:41
474
+ msgid "Company"
475
+ msgstr "Companie"
476
+
477
+ #: views/add.php:71
478
+ msgid "Register"
479
+ msgstr "Inregistrare"
480
+
481
+ #: views/admin_add.php:6
482
+ msgid "Add Member"
483
+ msgstr "Adauga membru"
484
+
485
+ #: views/admin_add.php:7
486
+ msgid "Create a brand new user and add it to this site."
487
+ msgstr "Creeaza un utilizator nou si adauga-l pe site."
488
+
489
+ #: views/admin_add.php:11
490
+ msgid "User name"
491
+ msgstr "Nume de utilizator"
492
+
493
+ #: views/admin_add.php:11 views/admin_add.php:15 views/admin_add_level.php:11
494
+ #: views/admin_add_level.php:15 views/admin_add_level.php:19
495
+ #: views/admin_edit.php:9 views/admin_edit.php:13
496
+ #: views/admin_edit_level.php:10 views/admin_edit_level.php:14
497
+ #: views/admin_edit_level.php:18
498
+ msgid "(required)"
499
+ msgstr "(obligatoriu)"
500
+
501
+ #: views/admin_add.php:15 views/admin_edit.php:13
502
+ msgid "E-mail"
503
+ msgstr "Adresa de email"
504
+
505
+ #: views/admin_add.php:19
506
+ msgid "Add New Member "
507
+ msgstr "Adauga membru nou"
508
+
509
+ #: views/admin_add_level.php:6
510
+ msgid "Create new membership level."
511
+ msgstr "Creeaza nivel nou de abonare"
512
+
513
+ #: views/admin_add_level.php:11 views/admin_edit_level.php:10
514
+ msgid "Membership Level Name"
515
+ msgstr "Nume nivel de abonare"
516
+
517
+ #: views/admin_add_level.php:15 views/admin_edit_level.php:14
518
+ msgid "Default WordPress Role"
519
+ msgstr "Rol Wordpress implicit"
520
+
521
+ #: views/admin_add_level.php:19 views/admin_edit_level.php:18
522
+ msgid "Subscription Duration"
523
+ msgstr "Durata Abonare"
524
+
525
+ #: views/admin_add_level.php:26 views/admin_edit_level.php:27
526
+ msgid "No Expiry"
527
+ msgstr "Fara expirare"
528
+
529
+ #: views/admin_add_level.php:55
530
+ msgid "Add New Membership Level "
531
+ msgstr "Adauga nivel nou de abonare"
532
+
533
+ #: views/admin_edit.php:5
534
+ msgid "Edit Member"
535
+ msgstr "Editeaza membru"
536
+
537
+ #: views/admin_edit.php:6
538
+ msgid "Edit existing member details."
539
+ msgstr "Editeaza detalii membru existent"
540
+
541
+ #: views/admin_edit.php:9
542
+ msgid "Username"
543
+ msgstr "Utilizator"
544
+
545
+ #: views/admin_edit.php:18
546
+ msgid "Edit User "
547
+ msgstr "Editeaza utilizator"
548
+
549
+ #: views/admin_edit_level.php:5
550
+ msgid "Edit membership level"
551
+ msgstr "Editeaza nivel abonare"
552
+
553
+ #: views/admin_edit_level.php:6
554
+ msgid "Edit membership level."
555
+ msgstr "Editeaza nivel abonare."
556
+
557
+ #: views/admin_edit_level.php:54
558
+ msgid "Edit Membership Level "
559
+ msgstr "Editeaza nivel abonare"
560
+
561
+ #: views/admin_members.php:2
562
+ msgid "Simple WP Membership::Members"
563
+ msgstr "Simple WP Membership::Membrii"
564
+
565
+ #: views/admin_members.php:3 views/admin_members.php:19
566
+ #: views/admin_membership_levels.php:21
567
+ msgid "Add New"
568
+ msgstr "Adauga nou"
569
+
570
+ #: views/admin_members.php:9 views/admin_membership_levels.php:11
571
+ msgid "search"
572
+ msgstr "cauta"
573
+
574
+ #: views/admin_membership_levels.php:3
575
+ msgid "Simple WP Membership::Membership Levels"
576
+ msgstr "Simple WP Membership::Nivele Abonare"
577
+
578
+ #: views/admin_membership_level_menu.php:2
579
+ msgid "Membership level"
580
+ msgstr "Nivel Abonare"
581
+
582
+ #: views/admin_membership_level_menu.php:3
583
+ msgid "Manage Content Production"
584
+ msgstr "Gestioneaza generarea de continut"
585
+
586
+ #: views/admin_membership_manage.php:17
587
+ msgid "Example Content Protection Settings"
588
+ msgstr "Exemplu de setari protejare continut"
589
+
590
+ #: views/admin_member_form_common_part.php:45
591
+ msgid "(twice, required)"
592
+ msgstr "(de doua ori, obligatoriu)"
593
+
594
+ #: views/admin_member_form_common_part.php:50
595
+ msgid "Strength indicator"
596
+ msgstr "Indicator complexitate"
597
+
598
+ #: views/admin_member_form_common_part.php:51
599
+ msgid ""
600
+ "Hint: The password should be at least seven characters long. To make it "
601
+ "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
602
+ "$ % ^ &amp; )."
603
+ msgstr ""
604
+ "Sfat: Parola ar trebui sa aibe macar 7 caractere. Pentru a fi cat mai "
605
+ "complexa, folositi litere mici si mari, numere si simboluri de genul ! \" ? "
606
+ "$ % ^ &amp;)"
607
+
608
+ #: views/admin_member_form_common_part.php:64 views/loggedin.php:7
609
+ #: views/login_widget_logged.php:6
610
+ msgid "Account Status"
611
+ msgstr "Status cont"
612
+
613
+ #: views/admin_member_form_common_part.php:74
614
+ msgid "Member Since"
615
+ msgstr "Membru din"
616
+
617
+ #: views/admin_payment_settings.php:2 views/admin_settings.php:2
618
+ #: views/admin_tools_settings.php:2
619
+ msgid "Simple WP Membership::Settings"
620
+ msgstr "Simple WP Membership::Setari"
621
+
622
+ #: views/admin_payment_settings.php:33
623
+ msgid "PayPal Integration Settings"
624
+ msgstr "Setari integrare plati Paypal"
625
+
626
+ #: views/admin_payment_settings.php:36
627
+ msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
628
+ msgstr "Genereaza codul de \"Advanced Variables\" necesar butonului Paypal"
629
+
630
+ #: views/admin_payment_settings.php:39
631
+ msgid "Enter the Membership Level ID"
632
+ msgstr "Introdu ID pentru nivelul de abonare"
633
+
634
+ #: views/admin_payment_settings.php:41
635
+ msgid "Generate Code"
636
+ msgstr "Genereaza cod"
637
+
638
+ #: views/admin_tools_settings.php:9
639
+ msgid "Generate a Registration Completion link"
640
+ msgstr "Genereaza link pentru Inregistrarea incheiata cu succes"
641
+
642
+ #: views/admin_tools_settings.php:12
643
+ msgid ""
644
+ "You can manually generate a registration completion link here and give it to "
645
+ "your customer if they have missed the email that was automatically sent out "
646
+ "to them after the payment."
647
+ msgstr ""
648
+ "Poti genera manual un link pentru inregistrarea cu succes si il poti trimite "
649
+ "clientului daca acestia nu au primit email-ul automat dupa efectuarea platii."
650
+
651
+ #: views/admin_tools_settings.php:17
652
+ msgid "Generate Registration Completion Link"
653
+ msgstr "Genereaza link pentru inregistrarea cu succes"
654
+
655
+ #: views/admin_tools_settings.php:20
656
+ msgid "OR"
657
+ msgstr "SAU"
658
+
659
+ #: views/admin_tools_settings.php:21
660
+ msgid "For All Pending Registrations"
661
+ msgstr "Pentru toate inregistrarile in asteptare"
662
+
663
+ #: views/admin_tools_settings.php:24
664
+ msgid "Registration Completion Links Will Appear Below:"
665
+ msgstr "Link-ul de inregistrare cu succes va aparea dedesubt:"
666
+
667
+ #: views/admin_tools_settings.php:31
668
+ msgid "Send Registration Reminder Email too"
669
+ msgstr "Trimite de asemenea si un email cu reminder de inregistrare"
670
+
671
+ #: views/admin_tools_settings.php:34
672
+ msgid "Submit"
673
+ msgstr "Trimite"
674
+
675
+ #: views/edit.php:58
676
+ msgid "Update"
677
+ msgstr "Actualizeaza"
678
+
679
+ #: views/forgot_password.php:5
680
+ msgid "Email Address"
681
+ msgstr "Adresa de email"
682
+
683
+ #: views/forgot_password.php:12
684
+ msgid "Reset Password"
685
+ msgstr "Resetare Parola"
686
+
687
+ #: views/loggedin.php:3 views/login_widget_logged.php:3
688
+ msgid "Logged in as"
689
+ msgstr "Autentificat ca"
690
+
691
+ #: views/loggedin.php:11 views/login_widget_logged.php:9
692
+ msgid "Membership"
693
+ msgstr "Abonare"
694
+
695
+ #: views/loggedin.php:15 views/login_widget_logged.php:12
696
+ msgid "Account Expiry"
697
+ msgstr "Expirare cont"
698
+
699
+ #: views/loggedin.php:19 views/login_widget_logged.php:16
700
+ msgid "Logout"
701
+ msgstr "Iesire din cont"
702
+
703
+ #: views/login.php:17
704
+ msgid "Remember Me"
705
+ msgstr "Tine-ma minte"
706
+
707
+ #: views/login.php:26
708
+ msgid "Forgot Password"
709
+ msgstr "Am uitat parola"
languages/swpm-ru_RU.mo ADDED
Binary file
languages/swpm-ru_RU.po ADDED
@@ -0,0 +1,712 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: simple membership\n"
4
+ "POT-Creation-Date: 2014-08-28 19:28+1000\n"
5
+ "PO-Revision-Date: 2015-01-11 02:11+0300\n"
6
+ "Last-Translator: Vladimir Vaulin <vvaulin@hotmail.com>\n"
7
+ "Language-Team: \n"
8
+ "Language: ru_RU\n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "X-Generator: Poedit 1.7.3\n"
13
+ "X-Poedit-KeywordsList: __;_e\n"
14
+ "X-Poedit-Basepath: .\n"
15
+ "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
16
+ "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
17
+ "X-Poedit-SearchPath-0: .\n"
18
+
19
+ #: classes/class.bAccessControl.php:23 classes/class.bAccessControl.php:40
20
+ msgid "You are not allowed to view this content"
21
+ msgstr "У вас нет прав на просмотр этого материала."
22
+
23
+ #: classes/class.bAccessControl.php:26 classes/class.bAccessControl.php:43
24
+ msgid "You need to login to view this content. "
25
+ msgstr "Вам необходимо войти, чтобы увидеть этот материал."
26
+
27
+ #: classes/class.bAdminRegistration.php:48
28
+ #: classes/class.bFrontRegistration.php:64
29
+ msgid "Registration Successful."
30
+ msgstr "Регистрация осуществлена успешно."
31
+
32
+ #: classes/class.bAdminRegistration.php:53
33
+ #: classes/class.bAdminRegistration.php:73
34
+ #: classes/class.bMembershipLevel.php:36 classes/class.bMembershipLevel.php:54
35
+ msgid "Please correct the following:"
36
+ msgstr "Пожалуйста, исправьте следующие ошибки:"
37
+
38
+ #: classes/class.bAjax.php:16 classes/class.bAjax.php:28
39
+ msgid "Aready taken"
40
+ msgstr "Уже принято"
41
+
42
+ #: classes/class.bAjax.php:29
43
+ msgid "Available"
44
+ msgstr "Доступно"
45
+
46
+ #: classes/class.bAuth.php:48 classes/class.bFrontRegistration.php:179
47
+ msgid "User Not Found."
48
+ msgstr "Пользователь не найден."
49
+
50
+ #: classes/class.bAuth.php:55
51
+ msgid "Password Empty or Invalid."
52
+ msgstr "Пароль пустой или неверный."
53
+
54
+ #: classes/class.bAuth.php:79
55
+ msgid "Account is inactive."
56
+ msgstr "Учетная запись не активна."
57
+
58
+ #: classes/class.bAuth.php:89
59
+ msgid "You are logged in as:"
60
+ msgstr "Вы вошли как:"
61
+
62
+ #: classes/class.bAuth.php:128
63
+ msgid "Logged Out Successfully."
64
+ msgstr "Вы успешно вышли."
65
+
66
+ #: classes/class.bAuth.php:170
67
+ msgid "Session Expired."
68
+ msgstr "Сессия истекла."
69
+
70
+ #: classes/class.bAuth.php:179
71
+ msgid "Invalid User Name"
72
+ msgstr "Неверное имя пользователя"
73
+
74
+ #: classes/class.bAuth.php:187
75
+ msgid "Bad Cookie Hash"
76
+ msgstr "Неверный хэш куки"
77
+
78
+ #: classes/class.bForm.php:26
79
+ msgid ""
80
+ "Wordpress account exists with given user name. But given email doesn't match."
81
+ msgstr ""
82
+ "Для указанного пользователя существует учетная запись, но e-mail не "
83
+ "совпадает."
84
+
85
+ #: classes/class.bForm.php:31
86
+ msgid ""
87
+ "Wordpress account exists with given email. But given user name doesn't match."
88
+ msgstr ""
89
+ "Для указанного e-mail существует учетная запись, но имя пользователя не "
90
+ "совпадает."
91
+
92
+ #: classes/class.bForm.php:40
93
+ msgid "User name is required"
94
+ msgstr "Имя пользователя обязательно."
95
+
96
+ #: classes/class.bForm.php:49
97
+ msgid "User name already exists."
98
+ msgstr "Такой пользователь уже существует."
99
+
100
+ #: classes/class.bForm.php:72
101
+ msgid "Password is required"
102
+ msgstr "Пароль обязателен"
103
+
104
+ #: classes/class.bForm.php:79
105
+ msgid "Password mismatch"
106
+ msgstr "Пароль не совпадает"
107
+
108
+ #: classes/class.bForm.php:95
109
+ msgid "Email is required"
110
+ msgstr "E-mail обязателен"
111
+
112
+ #: classes/class.bForm.php:99
113
+ msgid "Email is invalid"
114
+ msgstr "Неверный e-mail"
115
+
116
+ #: classes/class.bForm.php:112
117
+ msgid "Email is already used."
118
+ msgstr "Такой e-mail уже существует."
119
+
120
+ #: classes/class.bForm.php:178
121
+ msgid "Member since field is invalid"
122
+ msgstr "Неверное поле \"дата присоединения\""
123
+
124
+ #: classes/class.bForm.php:189
125
+ msgid "Subscription starts field is invalid"
126
+ msgstr "Неверное поле \"начало подписки\""
127
+
128
+ #: classes/class.bForm.php:199
129
+ msgid "Gender field is invalid"
130
+ msgstr "Неверное поле \"пол\""
131
+
132
+ #: classes/class.bForm.php:210
133
+ msgid "Account state field is invalid"
134
+ msgstr "Неверное поле \"состояние учетной записи\""
135
+
136
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
137
+ msgid "Please"
138
+ msgstr "Пожалуйста,"
139
+
140
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
141
+ #: views/login.php:21
142
+ msgid "Login"
143
+ msgstr "Войдите"
144
+
145
+ #: classes/class.bFrontRegistration.php:79
146
+ #: classes/class.bFrontRegistration.php:158
147
+ msgid "Please correct the following"
148
+ msgstr "Пожалуйста, исправьте следующие ошибки"
149
+
150
+ #: classes/class.bFrontRegistration.php:92
151
+ msgid "Membership Level Couldn't be found."
152
+ msgstr "Уровень доступа не найден."
153
+
154
+ #: classes/class.bFrontRegistration.php:168
155
+ msgid "Email Address Not Valid."
156
+ msgstr "Неверный адрес e-mail."
157
+
158
+ #: classes/class.bFrontRegistration.php:199
159
+ msgid "New password has been sent to your email address."
160
+ msgstr "На Ваш адрес e-mail выслан новый пароль."
161
+
162
+ #: classes/class.bLevelForm.php:31
163
+ msgid "Subscriptoin duration must be > 0."
164
+ msgstr "Срок подписки должен быть больше 0."
165
+
166
+ #: classes/class.bMembers.php:7
167
+ msgid "Member"
168
+ msgstr "Участник"
169
+
170
+ #: classes/class.bMembers.php:8 classes/class.simple-wp-membership.php:467
171
+ msgid "Members"
172
+ msgstr "Участники"
173
+
174
+ #: classes/class.bMembers.php:16 classes/class.bMembershipLevels.php:16
175
+ msgid "ID"
176
+ msgstr "ID"
177
+
178
+ #: classes/class.bMembers.php:17 views/add.php:5 views/edit.php:4
179
+ #: views/login.php:5
180
+ msgid "User Name"
181
+ msgstr "Имя пользователя"
182
+
183
+ #: classes/class.bMembers.php:18 views/add.php:21
184
+ #: views/admin_member_form_common_part.php:2 views/edit.php:20
185
+ msgid "First Name"
186
+ msgstr "Имя"
187
+
188
+ #: classes/class.bMembers.php:19 views/add.php:25
189
+ #: views/admin_member_form_common_part.php:6 views/edit.php:24
190
+ msgid "Last Name"
191
+ msgstr "Фамилия"
192
+
193
+ #: classes/class.bMembers.php:20 views/add.php:9 views/edit.php:8
194
+ msgid "Email"
195
+ msgstr "E-mail"
196
+
197
+ #: classes/class.bMembers.php:21 classes/class.bMembershipLevels.php:8
198
+ #: classes/class.bMembershipLevels.php:17 views/add.php:64
199
+ #: views/admin_member_form_common_part.php:55 views/edit.php:52
200
+ msgid "Membership Level"
201
+ msgstr "Уровень доступа"
202
+
203
+ #: classes/class.bMembers.php:22 views/admin_member_form_common_part.php:78
204
+ msgid "Subscription Starts"
205
+ msgstr "Подписка начинается"
206
+
207
+ #: classes/class.bMembers.php:23
208
+ msgid "Account State"
209
+ msgstr "Состояние учетной записи"
210
+
211
+ #: classes/class.bMembers.php:35 classes/class.bMembershipLevels.php:29
212
+ msgid "Delete"
213
+ msgstr "Удалить"
214
+
215
+ #: classes/class.bMembers.php:100
216
+ msgid "No Member found."
217
+ msgstr "Участник не найден."
218
+
219
+ #: classes/class.bMembershipLevel.php:31
220
+ msgid "Membership Level Creation Successful."
221
+ msgstr "Уровень доступа успешно создан."
222
+
223
+ #: classes/class.bMembershipLevel.php:50
224
+ msgid "Updated Successfully."
225
+ msgstr "Успешно обновлено."
226
+
227
+ #: classes/class.bMembershipLevels.php:9
228
+ #: classes/class.simple-wp-membership.php:469
229
+ msgid "Membership Levels"
230
+ msgstr "Уровни доступа"
231
+
232
+ #: classes/class.bMembershipLevels.php:18
233
+ msgid "Role"
234
+ msgstr "Роль"
235
+
236
+ #: classes/class.bMembershipLevels.php:19
237
+ msgid "Subscription Valid For"
238
+ msgstr "Подписка действительна до"
239
+
240
+ #: classes/class.bSettings.php:28
241
+ msgid "Plugin Documentation"
242
+ msgstr "Документация плагина"
243
+
244
+ #: classes/class.bSettings.php:30
245
+ msgid "General Settings"
246
+ msgstr "Общие настройки"
247
+
248
+ #: classes/class.bSettings.php:32
249
+ msgid "Enable Free Membership"
250
+ msgstr "Включить бесплатное членство"
251
+
252
+ #: classes/class.bSettings.php:35
253
+ msgid "Enable/disable registration for free membership level"
254
+ msgstr "Включить/отключить регистрацию для бесплатного уровня доступа"
255
+
256
+ #: classes/class.bSettings.php:36
257
+ msgid "Free Membership Level ID"
258
+ msgstr "ID бесплатного уровня доступа"
259
+
260
+ #: classes/class.bSettings.php:39
261
+ msgid "Assign free membership level ID"
262
+ msgstr "Присвоить ID бесплатного уровня доступа"
263
+
264
+ #: classes/class.bSettings.php:40
265
+ msgid "Hide Adminbar"
266
+ msgstr "Спрятать панель администрирования"
267
+
268
+ #: classes/class.bSettings.php:43
269
+ msgid ""
270
+ "WordPress shows an admin toolbar to the logged in users of the site. Check "
271
+ "this box if you want to hide that admin toolbar in the fronend of your site."
272
+ msgstr ""
273
+ "Всем вошедшим пользователям WordPress показывает панель администрирования. "
274
+ "Поставьте этот флажок, если вы хотите прятать панель администрирования со "
275
+ "страниц вашего сайта."
276
+
277
+ #: classes/class.bSettings.php:45
278
+ msgid "Pages Settings"
279
+ msgstr "Настройки страниц"
280
+
281
+ #: classes/class.bSettings.php:47
282
+ msgid "Login Page URL"
283
+ msgstr "URL страницы логина"
284
+
285
+ #: classes/class.bSettings.php:51
286
+ msgid "Registration Page URL"
287
+ msgstr "URL страницы регистрации"
288
+
289
+ #: classes/class.bSettings.php:55
290
+ msgid "Join Us Page URL"
291
+ msgstr "URL страницы для новичков"
292
+
293
+ #: classes/class.bSettings.php:59
294
+ msgid "Edit Profile Page URL"
295
+ msgstr "URL страницы редактирования профиля"
296
+
297
+ #: classes/class.bSettings.php:63
298
+ msgid "Password Reset Page URL"
299
+ msgstr "URL страницы сброса пароля"
300
+
301
+ #: classes/class.bSettings.php:68
302
+ msgid "Test & Debug Settings"
303
+ msgstr "Настройки тестирования и отладки"
304
+
305
+ #: classes/class.bSettings.php:74
306
+ msgid "Enable Sandbox Testing"
307
+ msgstr "Разрешить тестирование в режиме песочницы"
308
+
309
+ #: classes/class.bSettings.php:77
310
+ msgid "Enable this option if you want to do sandbox payment testing."
311
+ msgstr ""
312
+ "Включите эту настройку, если вы хотите проводить платежи в тестовом режиме."
313
+
314
+ #: classes/class.bSettings.php:90
315
+ msgid "Email Misc. Settings"
316
+ msgstr "Различные настройки e-mail"
317
+
318
+ #: classes/class.bSettings.php:92
319
+ msgid "From Email Address"
320
+ msgstr "Адрес отправки писем"
321
+
322
+ #: classes/class.bSettings.php:97
323
+ msgid "Email Settings (Prompt to Complete Registration )"
324
+ msgstr "Настройки писем (Запрос о подтверждении регистрации)"
325
+
326
+ #: classes/class.bSettings.php:99 classes/class.bSettings.php:110
327
+ #: classes/class.bSettings.php:129
328
+ msgid "Email Subject"
329
+ msgstr "Тема письма"
330
+
331
+ #: classes/class.bSettings.php:103 classes/class.bSettings.php:114
332
+ #: classes/class.bSettings.php:133
333
+ msgid "Email Body"
334
+ msgstr "Текст письма"
335
+
336
+ #: classes/class.bSettings.php:108
337
+ msgid "Email Settings (Registration Complete)"
338
+ msgstr "Настройки писем (Успешная регистрация)"
339
+
340
+ #: classes/class.bSettings.php:118
341
+ msgid "Send Notification To Admin"
342
+ msgstr "Отправлять уведомление администратору"
343
+
344
+ #: classes/class.bSettings.php:122
345
+ msgid "Send Email to Member When Added via Admin Dashboard"
346
+ msgstr "Отправлять уведомление участнику, когда он добавлен администратором"
347
+
348
+ #: classes/class.bSettings.php:127
349
+ msgid " Email Settings (Account Upgrade Notification)"
350
+ msgstr "Настройки писем (Уведомление об обновлении учетной записи)"
351
+
352
+ #: classes/class.bSettings.php:326
353
+ msgid "Not a Member?"
354
+ msgstr "Не участник?"
355
+
356
+ #: classes/class.bSettings.php:326 views/login.php:30
357
+ msgid "Join Us"
358
+ msgstr "Присоединяйтесь к нам"
359
+
360
+ #: classes/class.bUtils.php:32 views/admin_member_form_common_part.php:66
361
+ msgid "Active"
362
+ msgstr "Активный"
363
+
364
+ #: classes/class.bUtils.php:33 views/admin_member_form_common_part.php:67
365
+ msgid "Inactive"
366
+ msgstr "Неактивный"
367
+
368
+ #: classes/class.bUtils.php:34 views/admin_member_form_common_part.php:68
369
+ msgid "Pending"
370
+ msgstr "В ожидании"
371
+
372
+ #: classes/class.bUtils.php:35 views/admin_member_form_common_part.php:69
373
+ msgid "Expired"
374
+ msgstr "Просрочен"
375
+
376
+ #: classes/class.bUtils.php:225
377
+ msgid "Never"
378
+ msgstr "Никогда"
379
+
380
+ #: classes/class.miscUtils.php:51
381
+ msgid "Registration"
382
+ msgstr "Регистрация"
383
+
384
+ #: classes/class.miscUtils.php:74
385
+ msgid "Member Login"
386
+ msgstr "Вход для участников"
387
+
388
+ #: classes/class.miscUtils.php:97
389
+ msgid "Profile"
390
+ msgstr "Учетная запись"
391
+
392
+ #: classes/class.miscUtils.php:120
393
+ msgid "Password Reset"
394
+ msgstr "Сброс пароля"
395
+
396
+ #: classes/class.simple-wp-membership.php:178
397
+ msgid "You are not logged in."
398
+ msgstr "Вы не вошли на сайт."
399
+
400
+ #: classes/class.simple-wp-membership.php:209
401
+ msgid "Simple WP Membership Protection"
402
+ msgstr "Защита Simple WP Membership"
403
+
404
+ #: classes/class.simple-wp-membership.php:222
405
+ msgid "Simple Membership Protection options"
406
+ msgstr "Настройки защиты Simple Membership"
407
+
408
+ #: classes/class.simple-wp-membership.php:238
409
+ msgid "Do you want to protect this content?"
410
+ msgstr "Вы хотите защитить этот материал?"
411
+
412
+ #: classes/class.simple-wp-membership.php:243
413
+ msgid "Select the membership level that can access this content:"
414
+ msgstr ""
415
+ "Выберите уровень доступа, которому будет разрешен доступ к этому материалу:"
416
+
417
+ #: classes/class.simple-wp-membership.php:375
418
+ msgid "Display SWPM Login."
419
+ msgstr "Показывать вход в SWPM."
420
+
421
+ #: classes/class.simple-wp-membership.php:377
422
+ msgid "SWPM Login"
423
+ msgstr "Вход в SWPM"
424
+
425
+ #: classes/class.simple-wp-membership.php:464
426
+ msgid "WP Membership"
427
+ msgstr "WP Membership"
428
+
429
+ #: classes/class.simple-wp-membership.php:471
430
+ msgid "Settings"
431
+ msgstr "Настройки"
432
+
433
+ #: views/add.php:13 views/admin_member_form_common_part.php:45
434
+ #: views/edit.php:12 views/login.php:11
435
+ msgid "Password"
436
+ msgstr "Пароль"
437
+
438
+ #: views/add.php:17 views/edit.php:16
439
+ msgid "Repeat Password"
440
+ msgstr "Повторите пароль"
441
+
442
+ #: views/add.php:29 views/admin_member_form_common_part.php:10
443
+ msgid "Gender"
444
+ msgstr "Пол"
445
+
446
+ #: views/add.php:36 views/admin_member_form_common_part.php:17
447
+ #: views/edit.php:28
448
+ msgid "Phone"
449
+ msgstr "Телефон"
450
+
451
+ #: views/add.php:40 views/admin_member_form_common_part.php:21
452
+ #: views/edit.php:32
453
+ msgid "Street"
454
+ msgstr "Улица"
455
+
456
+ #: views/add.php:44 views/admin_member_form_common_part.php:25
457
+ #: views/edit.php:36
458
+ msgid "City"
459
+ msgstr "Город"
460
+
461
+ #: views/add.php:48 views/admin_member_form_common_part.php:29
462
+ #: views/edit.php:40
463
+ msgid "State"
464
+ msgstr "Регион/Штат"
465
+
466
+ #: views/add.php:52 views/admin_member_form_common_part.php:33
467
+ #: views/edit.php:44
468
+ msgid "Zipcode"
469
+ msgstr "Индекс"
470
+
471
+ #: views/add.php:56 views/admin_member_form_common_part.php:37
472
+ #: views/edit.php:48
473
+ msgid "Country"
474
+ msgstr "Страна"
475
+
476
+ #: views/add.php:60 views/admin_member_form_common_part.php:41
477
+ msgid "Company"
478
+ msgstr "Компания"
479
+
480
+ #: views/add.php:71
481
+ msgid "Register"
482
+ msgstr "Зарегистрироваться"
483
+
484
+ #: views/admin_add.php:6
485
+ msgid "Add Member"
486
+ msgstr "Добавить участника"
487
+
488
+ #: views/admin_add.php:7
489
+ msgid "Create a brand new user and add it to this site."
490
+ msgstr "Создать нового участника и добавить его на сайт."
491
+
492
+ #: views/admin_add.php:11
493
+ msgid "User name"
494
+ msgstr "Имя пользователя"
495
+
496
+ #: views/admin_add.php:11 views/admin_add.php:15 views/admin_add_level.php:11
497
+ #: views/admin_add_level.php:15 views/admin_add_level.php:19
498
+ #: views/admin_edit.php:9 views/admin_edit.php:13
499
+ #: views/admin_edit_level.php:10 views/admin_edit_level.php:14
500
+ #: views/admin_edit_level.php:18
501
+ msgid "(required)"
502
+ msgstr "(обязательно)"
503
+
504
+ #: views/admin_add.php:15 views/admin_edit.php:13
505
+ msgid "E-mail"
506
+ msgstr "E-mail"
507
+
508
+ #: views/admin_add.php:19
509
+ msgid "Add New Member "
510
+ msgstr "Добавить нового участника"
511
+
512
+ #: views/admin_add_level.php:6
513
+ msgid "Create new membership level."
514
+ msgstr "Создать новый уровень доступа."
515
+
516
+ #: views/admin_add_level.php:11 views/admin_edit_level.php:10
517
+ msgid "Membership Level Name"
518
+ msgstr "Название уровня доступа"
519
+
520
+ #: views/admin_add_level.php:15 views/admin_edit_level.php:14
521
+ msgid "Default WordPress Role"
522
+ msgstr "Роль WordPress по умолчанию"
523
+
524
+ #: views/admin_add_level.php:19 views/admin_edit_level.php:18
525
+ msgid "Subscription Duration"
526
+ msgstr "Срок подписки"
527
+
528
+ #: views/admin_add_level.php:26 views/admin_edit_level.php:27
529
+ msgid "No Expiry"
530
+ msgstr "Бессрочно"
531
+
532
+ #: views/admin_add_level.php:55
533
+ msgid "Add New Membership Level "
534
+ msgstr "Добавить новый уровень доступа"
535
+
536
+ #: views/admin_edit.php:5
537
+ msgid "Edit Member"
538
+ msgstr "Изменить участника"
539
+
540
+ #: views/admin_edit.php:6
541
+ msgid "Edit existing member details."
542
+ msgstr "Редактировать данные существующего участника."
543
+
544
+ #: views/admin_edit.php:9
545
+ msgid "Username"
546
+ msgstr "Имя пользователя"
547
+
548
+ #: views/admin_edit.php:18
549
+ msgid "Edit User "
550
+ msgstr "Изменить пользователя"
551
+
552
+ #: views/admin_edit_level.php:5
553
+ msgid "Edit membership level"
554
+ msgstr "Изменить уровень доступа"
555
+
556
+ #: views/admin_edit_level.php:6
557
+ msgid "Edit membership level."
558
+ msgstr "Изменить уровень доступа."
559
+
560
+ #: views/admin_edit_level.php:54
561
+ msgid "Edit Membership Level "
562
+ msgstr "Изменить уровень доступа"
563
+
564
+ #: views/admin_members.php:2
565
+ msgid "Simple WP Membership::Members"
566
+ msgstr "Simple WP Membership::Участники"
567
+
568
+ #: views/admin_members.php:3 views/admin_members.php:19
569
+ #: views/admin_membership_levels.php:21
570
+ msgid "Add New"
571
+ msgstr "Добавить нового"
572
+
573
+ #: views/admin_members.php:9 views/admin_membership_levels.php:11
574
+ msgid "search"
575
+ msgstr "поиск"
576
+
577
+ #: views/admin_membership_levels.php:3
578
+ msgid "Simple WP Membership::Membership Levels"
579
+ msgstr "Simple WP Membership::Уровни доступа"
580
+
581
+ #: views/admin_membership_level_menu.php:2
582
+ msgid "Membership level"
583
+ msgstr "Уровень доступа"
584
+
585
+ #: views/admin_membership_level_menu.php:3
586
+ msgid "Manage Content Production"
587
+ msgstr "Управление доступом к материалам"
588
+
589
+ #: views/admin_membership_manage.php:17
590
+ msgid "Example Content Protection Settings"
591
+ msgstr "Пример настроек управления доступом к материалам"
592
+
593
+ #: views/admin_member_form_common_part.php:45
594
+ msgid "(twice, required)"
595
+ msgstr "(дважды, обязательно)"
596
+
597
+ #: views/admin_member_form_common_part.php:50
598
+ msgid "Strength indicator"
599
+ msgstr "Индикатор сложности"
600
+
601
+ #: views/admin_member_form_common_part.php:51
602
+ msgid ""
603
+ "Hint: The password should be at least seven characters long. To make it "
604
+ "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
605
+ "$ % ^ &amp; )."
606
+ msgstr ""
607
+ "Подсказка: пароль должен быть не короче 7 символов. Чтобы усилить пароль, "
608
+ "используйте заглавные и строчные буквы, цифры и символы ! \" ? $ % ^ &amp; )."
609
+
610
+ #: views/admin_member_form_common_part.php:64 views/loggedin.php:7
611
+ #: views/login_widget_logged.php:6
612
+ msgid "Account Status"
613
+ msgstr "Статус учетной записи"
614
+
615
+ #: views/admin_member_form_common_part.php:74
616
+ msgid "Member Since"
617
+ msgstr "Участник с"
618
+
619
+ #: views/admin_payment_settings.php:2 views/admin_settings.php:2
620
+ #: views/admin_tools_settings.php:2
621
+ msgid "Simple WP Membership::Settings"
622
+ msgstr "Simple WP Membership::Настройки"
623
+
624
+ #: views/admin_payment_settings.php:33
625
+ msgid "PayPal Integration Settings"
626
+ msgstr "Настройки интеграции с PayPal"
627
+
628
+ #: views/admin_payment_settings.php:36
629
+ msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
630
+ msgstr "Генерировать код \"Advanced Variables\" для вашей кнопки PayPal"
631
+
632
+ #: views/admin_payment_settings.php:39
633
+ msgid "Enter the Membership Level ID"
634
+ msgstr "Введите ID уровня доступа"
635
+
636
+ #: views/admin_payment_settings.php:41
637
+ msgid "Generate Code"
638
+ msgstr "Генерировать код"
639
+
640
+ #: views/admin_tools_settings.php:9
641
+ msgid "Generate a Registration Completion link"
642
+ msgstr "Генерировать ссылку для завершения регистрации"
643
+
644
+ #: views/admin_tools_settings.php:12
645
+ msgid ""
646
+ "You can manually generate a registration completion link here and give it to "
647
+ "your customer if they have missed the email that was automatically sent out "
648
+ "to them after the payment."
649
+ msgstr ""
650
+ "Вы можете вручную сгенерировать ссылку для завершения регистрации и передать "
651
+ "её клиенту, если он пропустил письмо, отправленное автоматически после "
652
+ "совершения платежа."
653
+
654
+ #: views/admin_tools_settings.php:17
655
+ msgid "Generate Registration Completion Link"
656
+ msgstr "Генерировать ссылку для завершения регистрации"
657
+
658
+ #: views/admin_tools_settings.php:20
659
+ msgid "OR"
660
+ msgstr "ИЛИ"
661
+
662
+ #: views/admin_tools_settings.php:21
663
+ msgid "For All Pending Registrations"
664
+ msgstr "Для всех не подтвержденных регистраций"
665
+
666
+ #: views/admin_tools_settings.php:24
667
+ msgid "Registration Completion Links Will Appear Below:"
668
+ msgstr "Ссылки для завершения регистрации появятся ниже:"
669
+
670
+ #: views/admin_tools_settings.php:31
671
+ msgid "Send Registration Reminder Email too"
672
+ msgstr "Отправить также письмо с напоминанием о регистрации"
673
+
674
+ #: views/admin_tools_settings.php:34
675
+ msgid "Submit"
676
+ msgstr "Отправить"
677
+
678
+ #: views/edit.php:58
679
+ msgid "Update"
680
+ msgstr "Обновить"
681
+
682
+ #: views/forgot_password.php:5
683
+ msgid "Email Address"
684
+ msgstr "Адрес e-mail"
685
+
686
+ #: views/forgot_password.php:12
687
+ msgid "Reset Password"
688
+ msgstr "Сбросить пароль"
689
+
690
+ #: views/loggedin.php:3 views/login_widget_logged.php:3
691
+ msgid "Logged in as"
692
+ msgstr "Вход как"
693
+
694
+ #: views/loggedin.php:11 views/login_widget_logged.php:9
695
+ msgid "Membership"
696
+ msgstr "Участие"
697
+
698
+ #: views/loggedin.php:15 views/login_widget_logged.php:12
699
+ msgid "Account Expiry"
700
+ msgstr "Учетная запись истекает"
701
+
702
+ #: views/loggedin.php:19 views/login_widget_logged.php:16
703
+ msgid "Logout"
704
+ msgstr "Выйти"
705
+
706
+ #: views/login.php:17
707
+ msgid "Remember Me"
708
+ msgstr "Запомнить меня"
709
+
710
+ #: views/login.php:26
711
+ msgid "Forgot Password"
712
+ msgstr "Забыли пароль"
languages/swpm-sv_SE.mo ADDED
Binary file
languages/swpm-sv_SE.po ADDED
@@ -0,0 +1,708 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: simple membership\n"
4
+ "POT-Creation-Date: 2014-08-28 19:28+1000\n"
5
+ "PO-Revision-Date: 2014-10-17 09:59+0100\n"
6
+ "Last-Translator: Geson Perry <gp@echad.se>\n"
7
+ "Language-Team: \n"
8
+ "MIME-Version: 1.0\n"
9
+ "Content-Type: text/plain; charset=UTF-8\n"
10
+ "Content-Transfer-Encoding: 8bit\n"
11
+ "X-Generator: Poedit 1.6.10\n"
12
+ "X-Poedit-KeywordsList: __;_e\n"
13
+ "X-Poedit-Basepath: .\n"
14
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
15
+ "Language: sv\n"
16
+ "X-Poedit-SearchPath-0: .\n"
17
+
18
+ #: classes/class.bAccessControl.php:23 classes/class.bAccessControl.php:40
19
+ msgid "You are not allowed to view this content"
20
+ msgstr "Du är inte tillåten att se detta innehåll"
21
+
22
+ #: classes/class.bAccessControl.php:26 classes/class.bAccessControl.php:43
23
+ msgid "You need to login to view this content. "
24
+ msgstr "Du behöver logga in för att se innehållet"
25
+
26
+ #: classes/class.bAdminRegistration.php:48
27
+ #: classes/class.bFrontRegistration.php:64
28
+ msgid "Registration Successful."
29
+ msgstr "Registreringen är fullförd"
30
+
31
+ #: classes/class.bAdminRegistration.php:53
32
+ #: classes/class.bAdminRegistration.php:73
33
+ #: classes/class.bMembershipLevel.php:36 classes/class.bMembershipLevel.php:54
34
+ msgid "Please correct the following:"
35
+ msgstr "Vänligen korrigera följande:"
36
+
37
+ #: classes/class.bAjax.php:16 classes/class.bAjax.php:28
38
+ msgid "Aready taken"
39
+ msgstr "Är redan tagen"
40
+
41
+ #: classes/class.bAjax.php:29
42
+ msgid "Available"
43
+ msgstr "Tillgänglig"
44
+
45
+ #: classes/class.bAuth.php:48 classes/class.bFrontRegistration.php:179
46
+ msgid "User Not Found."
47
+ msgstr "Användaren finns inte."
48
+
49
+ #: classes/class.bAuth.php:55
50
+ msgid "Password Empty or Invalid."
51
+ msgstr "Lösenordet är tomt eller felaktigt."
52
+
53
+ #: classes/class.bAuth.php:79
54
+ msgid "Account is inactive."
55
+ msgstr "Kontot är inaktivt."
56
+
57
+ #: classes/class.bAuth.php:89
58
+ msgid "You are logged in as:"
59
+ msgstr "Du är inloggad som:"
60
+
61
+ #: classes/class.bAuth.php:128
62
+ msgid "Logged Out Successfully."
63
+ msgstr "Du är nu utloggad."
64
+
65
+ #: classes/class.bAuth.php:170
66
+ msgid "Session Expired."
67
+ msgstr "Sessionen har utgått."
68
+
69
+ #: classes/class.bAuth.php:179
70
+ msgid "Invalid User Name"
71
+ msgstr "Ogiltigt Användarnamn"
72
+
73
+ #: classes/class.bAuth.php:187
74
+ msgid "Bad Cookie Hash"
75
+ msgstr "Felaktig Cookie Hash"
76
+
77
+ #: classes/class.bForm.php:26
78
+ msgid ""
79
+ "Wordpress account exists with given user name. But given email doesn't match."
80
+ msgstr ""
81
+ "Wordpress-kontot finns med tanke på användarnamnet. Men e-posten matchar "
82
+ "inte."
83
+
84
+ #: classes/class.bForm.php:31
85
+ msgid ""
86
+ "Wordpress account exists with given email. But given user name doesn't match."
87
+ msgstr ""
88
+ "Wordpress-kontot finns med given e-post. Men matchar inte med tanke på "
89
+ "användarnamnet."
90
+
91
+ #: classes/class.bForm.php:40
92
+ msgid "User name is required"
93
+ msgstr "Användarnamn krävs"
94
+
95
+ #: classes/class.bForm.php:49
96
+ msgid "User name already exists."
97
+ msgstr "Användarnamnet finns redan."
98
+
99
+ #: classes/class.bForm.php:72
100
+ msgid "Password is required"
101
+ msgstr "Lösenord krävs"
102
+
103
+ #: classes/class.bForm.php:79
104
+ msgid "Password mismatch"
105
+ msgstr "Lösenordet matchar inte"
106
+
107
+ #: classes/class.bForm.php:95
108
+ msgid "Email is required"
109
+ msgstr "E-post krävs"
110
+
111
+ #: classes/class.bForm.php:99
112
+ msgid "Email is invalid"
113
+ msgstr "E-post är ogiltlig"
114
+
115
+ #: classes/class.bForm.php:112
116
+ msgid "Email is already used."
117
+ msgstr "E-post adressen används redan."
118
+
119
+ #: classes/class.bForm.php:178
120
+ msgid "Member since field is invalid"
121
+ msgstr "Medlem sedan fältet är ogiltigt"
122
+
123
+ #: classes/class.bForm.php:189
124
+ msgid "Subscription starts field is invalid"
125
+ msgstr "Prenumeration startar fältet är ogiltigt"
126
+
127
+ #: classes/class.bForm.php:199
128
+ msgid "Gender field is invalid"
129
+ msgstr "Kön Fältet är ogiltigt"
130
+
131
+ #: classes/class.bForm.php:210
132
+ msgid "Account state field is invalid"
133
+ msgstr "Kontots tillstånds fält är ogiltigt"
134
+
135
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
136
+ msgid "Please"
137
+ msgstr "Vänligen"
138
+
139
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
140
+ #: views/login.php:21
141
+ msgid "Login"
142
+ msgstr "Logga in"
143
+
144
+ #: classes/class.bFrontRegistration.php:79
145
+ #: classes/class.bFrontRegistration.php:158
146
+ msgid "Please correct the following"
147
+ msgstr "Vänligen korrigera följande"
148
+
149
+ #: classes/class.bFrontRegistration.php:92
150
+ msgid "Membership Level Couldn't be found."
151
+ msgstr "Medlemskapsnivå kunde inte hittas."
152
+
153
+ #: classes/class.bFrontRegistration.php:168
154
+ msgid "Email Address Not Valid."
155
+ msgstr "E-postadress ogiltig."
156
+
157
+ #: classes/class.bFrontRegistration.php:199
158
+ msgid "New password has been sent to your email address."
159
+ msgstr "Nytt lösenord har skickats till din e-postadress."
160
+
161
+ #: classes/class.bLevelForm.php:31
162
+ msgid "Subscriptoin duration must be > 0."
163
+ msgstr "Prenumerationens längd måste vara > 0."
164
+
165
+ #: classes/class.bMembers.php:7
166
+ msgid "Member"
167
+ msgstr "Medlem"
168
+
169
+ #: classes/class.bMembers.php:8 classes/class.simple-wp-membership.php:467
170
+ msgid "Members"
171
+ msgstr "Medlemmar"
172
+
173
+ #: classes/class.bMembers.php:16 classes/class.bMembershipLevels.php:16
174
+ msgid "ID"
175
+ msgstr "ID"
176
+
177
+ #: classes/class.bMembers.php:17 views/add.php:5 views/edit.php:4
178
+ #: views/login.php:5
179
+ msgid "User Name"
180
+ msgstr "Användarnamn"
181
+
182
+ #: classes/class.bMembers.php:18 views/add.php:21
183
+ #: views/admin_member_form_common_part.php:2 views/edit.php:20
184
+ msgid "First Name"
185
+ msgstr "Förnamn"
186
+
187
+ #: classes/class.bMembers.php:19 views/add.php:25
188
+ #: views/admin_member_form_common_part.php:6 views/edit.php:24
189
+ msgid "Last Name"
190
+ msgstr "Efternamn"
191
+
192
+ #: classes/class.bMembers.php:20 views/add.php:9 views/edit.php:8
193
+ msgid "Email"
194
+ msgstr "E-post"
195
+
196
+ #: classes/class.bMembers.php:21 classes/class.bMembershipLevels.php:8
197
+ #: classes/class.bMembershipLevels.php:17 views/add.php:64
198
+ #: views/admin_member_form_common_part.php:55 views/edit.php:52
199
+ msgid "Membership Level"
200
+ msgstr "Medlemsnivå"
201
+
202
+ #: classes/class.bMembers.php:22 views/admin_member_form_common_part.php:78
203
+ msgid "Subscription Starts"
204
+ msgstr "Prenumerationen startar"
205
+
206
+ #: classes/class.bMembers.php:23
207
+ msgid "Account State"
208
+ msgstr "Tillstånd på kontot"
209
+
210
+ #: classes/class.bMembers.php:35 classes/class.bMembershipLevels.php:29
211
+ msgid "Delete"
212
+ msgstr "Ta bort"
213
+
214
+ #: classes/class.bMembers.php:100
215
+ msgid "No Member found."
216
+ msgstr "Ingen medlem funnen."
217
+
218
+ #: classes/class.bMembershipLevel.php:31
219
+ msgid "Membership Level Creation Successful."
220
+ msgstr "Skapande av Medlemsnivå lyckades."
221
+
222
+ #: classes/class.bMembershipLevel.php:50
223
+ msgid "Updated Successfully."
224
+ msgstr "Uppdatering klar."
225
+
226
+ #: classes/class.bMembershipLevels.php:9
227
+ #: classes/class.simple-wp-membership.php:469
228
+ msgid "Membership Levels"
229
+ msgstr "Medlemsnivåer"
230
+
231
+ #: classes/class.bMembershipLevels.php:18
232
+ msgid "Role"
233
+ msgstr "Roll"
234
+
235
+ #: classes/class.bMembershipLevels.php:19
236
+ msgid "Subscription Valid For"
237
+ msgstr "Prenumerationen gäller"
238
+
239
+ #: classes/class.bSettings.php:28
240
+ msgid "Plugin Documentation"
241
+ msgstr "Plugin dokumentation"
242
+
243
+ #: classes/class.bSettings.php:30
244
+ msgid "General Settings"
245
+ msgstr "Generella inställningar"
246
+
247
+ #: classes/class.bSettings.php:32
248
+ msgid "Enable Free Membership"
249
+ msgstr "Aktivera gratis medlemskap"
250
+
251
+ #: classes/class.bSettings.php:35
252
+ msgid "Enable/disable registration for free membership level"
253
+ msgstr "Aktivera / inaktivera registrering för gratis medlemsnivå"
254
+
255
+ #: classes/class.bSettings.php:36
256
+ msgid "Free Membership Level ID"
257
+ msgstr "Gratis medlemsnivå ID"
258
+
259
+ #: classes/class.bSettings.php:39
260
+ msgid "Assign free membership level ID"
261
+ msgstr "Tilldela gratis medlemskap nivå ID"
262
+
263
+ #: classes/class.bSettings.php:40
264
+ msgid "Hide Adminbar"
265
+ msgstr "Göm Adminbar"
266
+
267
+ #: classes/class.bSettings.php:43
268
+ msgid ""
269
+ "WordPress shows an admin toolbar to the logged in users of the site. Check "
270
+ "this box if you want to hide that admin toolbar in the fronend of your site."
271
+ msgstr ""
272
+ "Wordpress visar admin verktygsfältet för inloggade användare på webbplatsen. "
273
+ "Markera den här rutan om du vill dölja admin verktygsfältet på din webbplats."
274
+
275
+ #: classes/class.bSettings.php:45
276
+ msgid "Pages Settings"
277
+ msgstr "Sidinställningar"
278
+
279
+ #: classes/class.bSettings.php:47
280
+ msgid "Login Page URL"
281
+ msgstr "Login sidans URL"
282
+
283
+ #: classes/class.bSettings.php:51
284
+ msgid "Registration Page URL"
285
+ msgstr "Registreringssidans URL"
286
+
287
+ #: classes/class.bSettings.php:55
288
+ msgid "Join Us Page URL"
289
+ msgstr "Gå med oss sidans URL"
290
+
291
+ #: classes/class.bSettings.php:59
292
+ msgid "Edit Profile Page URL"
293
+ msgstr "Ändra profilsidans URL"
294
+
295
+ #: classes/class.bSettings.php:63
296
+ msgid "Password Reset Page URL"
297
+ msgstr "Återställ lösenordssidans URL"
298
+
299
+ #: classes/class.bSettings.php:68
300
+ msgid "Test & Debug Settings"
301
+ msgstr "Test & Debug inställningar"
302
+
303
+ #: classes/class.bSettings.php:74
304
+ msgid "Enable Sandbox Testing"
305
+ msgstr "Aktivera Sandbox test"
306
+
307
+ #: classes/class.bSettings.php:77
308
+ msgid "Enable this option if you want to do sandbox payment testing."
309
+ msgstr "Aktivera det här alternativet om du vill testa Sandbox betalning."
310
+
311
+ #: classes/class.bSettings.php:90
312
+ msgid "Email Misc. Settings"
313
+ msgstr "Diverse E-post inställningar"
314
+
315
+ #: classes/class.bSettings.php:92
316
+ msgid "From Email Address"
317
+ msgstr "Från E-post adress"
318
+
319
+ #: classes/class.bSettings.php:97
320
+ msgid "Email Settings (Prompt to Complete Registration )"
321
+ msgstr "E-postinställningar (Uppmana att slutföra registreringen)"
322
+
323
+ #: classes/class.bSettings.php:99 classes/class.bSettings.php:110
324
+ #: classes/class.bSettings.php:129
325
+ msgid "Email Subject"
326
+ msgstr "E-post ämne"
327
+
328
+ #: classes/class.bSettings.php:103 classes/class.bSettings.php:114
329
+ #: classes/class.bSettings.php:133
330
+ msgid "Email Body"
331
+ msgstr "E-post meddelande"
332
+
333
+ #: classes/class.bSettings.php:108
334
+ msgid "Email Settings (Registration Complete)"
335
+ msgstr "E-post inställningar (Registrering avklarad)"
336
+
337
+ #: classes/class.bSettings.php:118
338
+ msgid "Send Notification To Admin"
339
+ msgstr "Skicka ett meddelande till Admin"
340
+
341
+ #: classes/class.bSettings.php:122
342
+ msgid "Send Email to Member When Added via Admin Dashboard"
343
+ msgstr "Skicka e-post till medlem när de är tillagda via Admin dashboard"
344
+
345
+ #: classes/class.bSettings.php:127
346
+ msgid " Email Settings (Account Upgrade Notification)"
347
+ msgstr "E-postinställningar (Kontouppgraderings meddelande)"
348
+
349
+ #: classes/class.bSettings.php:326
350
+ msgid "Not a Member?"
351
+ msgstr "Inte medlem?"
352
+
353
+ #: classes/class.bSettings.php:326 views/login.php:30
354
+ msgid "Join Us"
355
+ msgstr "Gå med oss"
356
+
357
+ #: classes/class.bUtils.php:32 views/admin_member_form_common_part.php:66
358
+ msgid "Active"
359
+ msgstr "Aktiv"
360
+
361
+ #: classes/class.bUtils.php:33 views/admin_member_form_common_part.php:67
362
+ msgid "Inactive"
363
+ msgstr "Inaktiv"
364
+
365
+ #: classes/class.bUtils.php:34 views/admin_member_form_common_part.php:68
366
+ msgid "Pending"
367
+ msgstr "Väntar"
368
+
369
+ #: classes/class.bUtils.php:35 views/admin_member_form_common_part.php:69
370
+ msgid "Expired"
371
+ msgstr "Förfallen"
372
+
373
+ #: classes/class.bUtils.php:225
374
+ msgid "Never"
375
+ msgstr "Aldrig"
376
+
377
+ #: classes/class.miscUtils.php:51
378
+ msgid "Registration"
379
+ msgstr "Registrering"
380
+
381
+ #: classes/class.miscUtils.php:74
382
+ msgid "Member Login"
383
+ msgstr "Login för medlemmar"
384
+
385
+ #: classes/class.miscUtils.php:97
386
+ msgid "Profile"
387
+ msgstr "Profil"
388
+
389
+ #: classes/class.miscUtils.php:120
390
+ msgid "Password Reset"
391
+ msgstr "Återställ lösenord"
392
+
393
+ #: classes/class.simple-wp-membership.php:178
394
+ msgid "You are not logged in."
395
+ msgstr "Du är inte inloggad."
396
+
397
+ #: classes/class.simple-wp-membership.php:209
398
+ msgid "Simple WP Membership Protection"
399
+ msgstr "Simple WP Membership skydd"
400
+
401
+ #: classes/class.simple-wp-membership.php:222
402
+ msgid "Simple Membership Protection options"
403
+ msgstr "Simple Membership Protection alternativ"
404
+
405
+ #: classes/class.simple-wp-membership.php:238
406
+ msgid "Do you want to protect this content?"
407
+ msgstr "Vill du skydda innehållet?"
408
+
409
+ #: classes/class.simple-wp-membership.php:243
410
+ msgid "Select the membership level that can access this content:"
411
+ msgstr "Välj den medlemsnivå som kan komma åt det här innehållet:"
412
+
413
+ #: classes/class.simple-wp-membership.php:375
414
+ msgid "Display SWPM Login."
415
+ msgstr "Visa SWPM Login."
416
+
417
+ #: classes/class.simple-wp-membership.php:377
418
+ msgid "SWPM Login"
419
+ msgstr "SWPM Login"
420
+
421
+ #: classes/class.simple-wp-membership.php:464
422
+ msgid "WP Membership"
423
+ msgstr "WP medlemskap"
424
+
425
+ #: classes/class.simple-wp-membership.php:471
426
+ msgid "Settings"
427
+ msgstr "Inställningar"
428
+
429
+ #: views/add.php:13 views/admin_member_form_common_part.php:45
430
+ #: views/edit.php:12 views/login.php:11
431
+ msgid "Password"
432
+ msgstr "Lösenord"
433
+
434
+ #: views/add.php:17 views/edit.php:16
435
+ msgid "Repeat Password"
436
+ msgstr "Upprepa lösenord"
437
+
438
+ #: views/add.php:29 views/admin_member_form_common_part.php:10
439
+ msgid "Gender"
440
+ msgstr "Kön"
441
+
442
+ #: views/add.php:36 views/admin_member_form_common_part.php:17
443
+ #: views/edit.php:28
444
+ msgid "Phone"
445
+ msgstr "Telefon"
446
+
447
+ #: views/add.php:40 views/admin_member_form_common_part.php:21
448
+ #: views/edit.php:32
449
+ msgid "Street"
450
+ msgstr "Gata"
451
+
452
+ #: views/add.php:44 views/admin_member_form_common_part.php:25
453
+ #: views/edit.php:36
454
+ msgid "City"
455
+ msgstr "Stad"
456
+
457
+ #: views/add.php:48 views/admin_member_form_common_part.php:29
458
+ #: views/edit.php:40
459
+ msgid "State"
460
+ msgstr "Stat"
461
+
462
+ #: views/add.php:52 views/admin_member_form_common_part.php:33
463
+ #: views/edit.php:44
464
+ msgid "Zipcode"
465
+ msgstr "Poastnummer"
466
+
467
+ #: views/add.php:56 views/admin_member_form_common_part.php:37
468
+ #: views/edit.php:48
469
+ msgid "Country"
470
+ msgstr "Land"
471
+
472
+ #: views/add.php:60 views/admin_member_form_common_part.php:41
473
+ msgid "Company"
474
+ msgstr "Företag"
475
+
476
+ #: views/add.php:71
477
+ msgid "Register"
478
+ msgstr "Registrera"
479
+
480
+ #: views/admin_add.php:6
481
+ msgid "Add Member"
482
+ msgstr "Lägg till medlem"
483
+
484
+ #: views/admin_add.php:7
485
+ msgid "Create a brand new user and add it to this site."
486
+ msgstr "Skapa en helt ny användare och lägga till den här webbplatsen."
487
+
488
+ #: views/admin_add.php:11
489
+ msgid "User name"
490
+ msgstr "Användarnamn"
491
+
492
+ #: views/admin_add.php:11 views/admin_add.php:15 views/admin_add_level.php:11
493
+ #: views/admin_add_level.php:15 views/admin_add_level.php:19
494
+ #: views/admin_edit.php:9 views/admin_edit.php:13
495
+ #: views/admin_edit_level.php:10 views/admin_edit_level.php:14
496
+ #: views/admin_edit_level.php:18
497
+ msgid "(required)"
498
+ msgstr "(krävs)"
499
+
500
+ #: views/admin_add.php:15 views/admin_edit.php:13
501
+ msgid "E-mail"
502
+ msgstr "E.post"
503
+
504
+ #: views/admin_add.php:19
505
+ msgid "Add New Member "
506
+ msgstr "Lägg till ny medlem"
507
+
508
+ #: views/admin_add_level.php:6
509
+ msgid "Create new membership level."
510
+ msgstr "Skapa ny medlemsnivå."
511
+
512
+ #: views/admin_add_level.php:11 views/admin_edit_level.php:10
513
+ msgid "Membership Level Name"
514
+ msgstr "Namn på medlemsnivå"
515
+
516
+ #: views/admin_add_level.php:15 views/admin_edit_level.php:14
517
+ msgid "Default WordPress Role"
518
+ msgstr "Standard Wordpress roll"
519
+
520
+ #: views/admin_add_level.php:19 views/admin_edit_level.php:18
521
+ msgid "Subscription Duration"
522
+ msgstr "Längd på prenumeration"
523
+
524
+ #: views/admin_add_level.php:26 views/admin_edit_level.php:27
525
+ msgid "No Expiry"
526
+ msgstr "Ingen utgång"
527
+
528
+ #: views/admin_add_level.php:55
529
+ msgid "Add New Membership Level "
530
+ msgstr "Lägg till ny medlemsnivå"
531
+
532
+ #: views/admin_edit.php:5
533
+ msgid "Edit Member"
534
+ msgstr "Ändra medlem"
535
+
536
+ #: views/admin_edit.php:6
537
+ msgid "Edit existing member details."
538
+ msgstr "Ändra existerande medlemsdetaljer"
539
+
540
+ #: views/admin_edit.php:9
541
+ msgid "Username"
542
+ msgstr "Användarnamn"
543
+
544
+ #: views/admin_edit.php:18
545
+ msgid "Edit User "
546
+ msgstr "Ändra användare"
547
+
548
+ #: views/admin_edit_level.php:5
549
+ msgid "Edit membership level"
550
+ msgstr "Ändra medlemsnivå"
551
+
552
+ #: views/admin_edit_level.php:6
553
+ msgid "Edit membership level."
554
+ msgstr "Ändra medlemsnivå."
555
+
556
+ #: views/admin_edit_level.php:54
557
+ msgid "Edit Membership Level "
558
+ msgstr "Ändra medlemsnivå"
559
+
560
+ #: views/admin_members.php:2
561
+ msgid "Simple WP Membership::Members"
562
+ msgstr "Simple WP Membership::Medlemmar"
563
+
564
+ #: views/admin_members.php:3 views/admin_members.php:19
565
+ #: views/admin_membership_levels.php:21
566
+ msgid "Add New"
567
+ msgstr "Lägg till ny"
568
+
569
+ #: views/admin_members.php:9 views/admin_membership_levels.php:11
570
+ msgid "search"
571
+ msgstr "sök"
572
+
573
+ #: views/admin_membership_levels.php:3
574
+ msgid "Simple WP Membership::Membership Levels"
575
+ msgstr "Simple WP Membership::Medlemsnivåer"
576
+
577
+ #: views/admin_membership_level_menu.php:2
578
+ msgid "Membership level"
579
+ msgstr "Medlemsnivå"
580
+
581
+ #: views/admin_membership_level_menu.php:3
582
+ msgid "Manage Content Production"
583
+ msgstr "Hantera innehållsproduktion"
584
+
585
+ #: views/admin_membership_manage.php:17
586
+ msgid "Example Content Protection Settings"
587
+ msgstr "Exempel på skyddsinställningar av innehåll"
588
+
589
+ #: views/admin_member_form_common_part.php:45
590
+ msgid "(twice, required)"
591
+ msgstr "(två gånger, krävs)"
592
+
593
+ #: views/admin_member_form_common_part.php:50
594
+ msgid "Strength indicator"
595
+ msgstr "Indikator för styrka"
596
+
597
+ #: views/admin_member_form_common_part.php:51
598
+ msgid ""
599
+ "Hint: The password should be at least seven characters long. To make it "
600
+ "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
601
+ "$ % ^ &amp; )."
602
+ msgstr ""
603
+ "Tips: Lösenordet ska vara minst sju tecken långt. För att göra det starkare, "
604
+ "använd stora och små bokstäver, siffror och symboler som! ? \"$% ^ & Amp;)."
605
+
606
+ #: views/admin_member_form_common_part.php:64 views/loggedin.php:7
607
+ #: views/login_widget_logged.php:6
608
+ msgid "Account Status"
609
+ msgstr "Tillstånd på kontot"
610
+
611
+ #: views/admin_member_form_common_part.php:74
612
+ msgid "Member Since"
613
+ msgstr "Medlem sedan"
614
+
615
+ #: views/admin_payment_settings.php:2 views/admin_settings.php:2
616
+ #: views/admin_tools_settings.php:2
617
+ msgid "Simple WP Membership::Settings"
618
+ msgstr "Simple WP Membership::Inställningar"
619
+
620
+ #: views/admin_payment_settings.php:33
621
+ msgid "PayPal Integration Settings"
622
+ msgstr "PayPal integrationsinställningar"
623
+
624
+ #: views/admin_payment_settings.php:36
625
+ msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
626
+ msgstr "Generera \"Avancerade variabler \" Kod för din PayPal-knapp"
627
+
628
+ #: views/admin_payment_settings.php:39
629
+ msgid "Enter the Membership Level ID"
630
+ msgstr "Ange medlemsnivå ID"
631
+
632
+ #: views/admin_payment_settings.php:41
633
+ msgid "Generate Code"
634
+ msgstr "Skapa kod"
635
+
636
+ #: views/admin_tools_settings.php:9
637
+ msgid "Generate a Registration Completion link"
638
+ msgstr "Skapa en Registrering klar länk"
639
+
640
+ #: views/admin_tools_settings.php:12
641
+ msgid ""
642
+ "You can manually generate a registration completion link here and give it to "
643
+ "your customer if they have missed the email that was automatically sent out "
644
+ "to them after the payment."
645
+ msgstr ""
646
+ "Du kan manuellt skapa en registrerings slutförande länk här och ge den till "
647
+ "din kund om de har missat den e-post som automatiskt skickades ut till dem "
648
+ "efter betalningen."
649
+
650
+ #: views/admin_tools_settings.php:17
651
+ msgid "Generate Registration Completion Link"
652
+ msgstr "Skapa en Registrering klar länk"
653
+
654
+ #: views/admin_tools_settings.php:20
655
+ msgid "OR"
656
+ msgstr "ELLER"
657
+
658
+ #: views/admin_tools_settings.php:21
659
+ msgid "For All Pending Registrations"
660
+ msgstr "För alla väntande registreringar"
661
+
662
+ #: views/admin_tools_settings.php:24
663
+ msgid "Registration Completion Links Will Appear Below:"
664
+ msgstr "Registrering klar länk visas nedan:"
665
+
666
+ #: views/admin_tools_settings.php:31
667
+ msgid "Send Registration Reminder Email too"
668
+ msgstr "Skicka registrerings påminnelse via E-post till"
669
+
670
+ #: views/admin_tools_settings.php:34
671
+ msgid "Submit"
672
+ msgstr "Skicka"
673
+
674
+ #: views/edit.php:58
675
+ msgid "Update"
676
+ msgstr "Uppdatera"
677
+
678
+ #: views/forgot_password.php:5
679
+ msgid "Email Address"
680
+ msgstr "E-post adress"
681
+
682
+ #: views/forgot_password.php:12
683
+ msgid "Reset Password"
684
+ msgstr "Återställ lösenord"
685
+
686
+ #: views/loggedin.php:3 views/login_widget_logged.php:3
687
+ msgid "Logged in as"
688
+ msgstr "Inloggad som"
689
+
690
+ #: views/loggedin.php:11 views/login_widget_logged.php:9
691
+ msgid "Membership"
692
+ msgstr "Medlemskap"
693
+
694
+ #: views/loggedin.php:15 views/login_widget_logged.php:12
695
+ msgid "Account Expiry"
696
+ msgstr "Utgång för konto"
697
+
698
+ #: views/loggedin.php:19 views/login_widget_logged.php:16
699
+ msgid "Logout"
700
+ msgstr "Logga ut"
701
+
702
+ #: views/login.php:17
703
+ msgid "Remember Me"
704
+ msgstr "Kom ihåg mig"
705
+
706
+ #: views/login.php:26
707
+ msgid "Forgot Password"
708
+ msgstr "Glömt lösenordet"
languages/swpm-tr_TR.mo ADDED
Binary file
languages/swpm-tr_TR.po ADDED
@@ -0,0 +1,709 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: simple membership\n"
4
+ "POT-Creation-Date: 2014-08-28 19:28+1000\n"
5
+ "PO-Revision-Date: 2014-12-18 21:42+0200\n"
6
+ "Last-Translator: \n"
7
+ "Language-Team: \n"
8
+ "MIME-Version: 1.0\n"
9
+ "Content-Type: text/plain; charset=UTF-8\n"
10
+ "Content-Transfer-Encoding: 8bit\n"
11
+ "X-Generator: Poedit 1.7.1\n"
12
+ "X-Poedit-KeywordsList: __;_e\n"
13
+ "X-Poedit-Basepath: .\n"
14
+ "Plural-Forms: nplurals=1; plural=0;\n"
15
+ "Language: tr_TR\n"
16
+ "X-Poedit-SearchPath-0: .\n"
17
+
18
+ #: classes/class.bAccessControl.php:23 classes/class.bAccessControl.php:40
19
+ msgid "You are not allowed to view this content"
20
+ msgstr "Bu içeriği görmenize izin verilmemektedir."
21
+
22
+ #: classes/class.bAccessControl.php:26 classes/class.bAccessControl.php:43
23
+ msgid "You need to login to view this content. "
24
+ msgstr "Bu içeriği görmek için giriş yapmanız gerekmektedir."
25
+
26
+ #: classes/class.bAdminRegistration.php:48
27
+ #: classes/class.bFrontRegistration.php:64
28
+ msgid "Registration Successful."
29
+ msgstr "Kayıt başarıyla son bulmuştur"
30
+
31
+ #: classes/class.bAdminRegistration.php:53
32
+ #: classes/class.bAdminRegistration.php:73
33
+ #: classes/class.bMembershipLevel.php:36 classes/class.bMembershipLevel.php:54
34
+ msgid "Please correct the following:"
35
+ msgstr "Lütfen düzeltin:"
36
+
37
+ #: classes/class.bAjax.php:16 classes/class.bAjax.php:28
38
+ msgid "Aready taken"
39
+ msgstr "Halihazırda alınmıştır"
40
+
41
+ #: classes/class.bAjax.php:29
42
+ msgid "Available"
43
+ msgstr "Müsaittir"
44
+
45
+ #: classes/class.bAuth.php:48 classes/class.bFrontRegistration.php:179
46
+ msgid "User Not Found."
47
+ msgstr "Kullanıcı bulunamadı"
48
+
49
+ #: classes/class.bAuth.php:55
50
+ msgid "Password Empty or Invalid."
51
+ msgstr "Şifre boş veya geçersiz."
52
+
53
+ #: classes/class.bAuth.php:79
54
+ msgid "Account is inactive."
55
+ msgstr "Hesap aktif değil."
56
+
57
+ #: classes/class.bAuth.php:89
58
+ msgid "You are logged in as:"
59
+ msgstr "Kullanıcı hesabınız:"
60
+
61
+ #: classes/class.bAuth.php:128
62
+ msgid "Logged Out Successfully."
63
+ msgstr "Oturum başarı ile sonlandırılmıştır."
64
+
65
+ #: classes/class.bAuth.php:170
66
+ msgid "Session Expired."
67
+ msgstr "Oturum zamanı doldu."
68
+
69
+ #: classes/class.bAuth.php:179
70
+ msgid "Invalid User Name"
71
+ msgstr "Geçersiz Kullanıcı Adı"
72
+
73
+ #: classes/class.bAuth.php:187
74
+ msgid "Bad Cookie Hash"
75
+ msgstr "Kötü çerez kaydı"
76
+
77
+ #: classes/class.bForm.php:26
78
+ msgid ""
79
+ "Wordpress account exists with given user name. But given email doesn't match."
80
+ msgstr ""
81
+ "Belirtilen kullanıcı hesabı mevcut. Ama verilen e-posta adresi "
82
+ "uyuşmuyor."
83
+
84
+ #: classes/class.bForm.php:31
85
+ msgid ""
86
+ "Wordpress account exists with given email. But given user name doesn't match."
87
+ msgstr ""
88
+ "Belirtilen kullanıcı hesabı mevcut. Ama verilen kullanıcı adı adresi "
89
+ "uyuşmuyor."
90
+
91
+ #: classes/class.bForm.php:40
92
+ msgid "User name is required"
93
+ msgstr "Kullanıcı adı gerekiyor"
94
+
95
+ #: classes/class.bForm.php:49
96
+ msgid "User name already exists."
97
+ msgstr "Bu kullanıcı adı mevcut."
98
+
99
+ #: classes/class.bForm.php:72
100
+ msgid "Password is required"
101
+ msgstr "Şifre gerekiyor"
102
+
103
+ #: classes/class.bForm.php:79
104
+ msgid "Password mismatch"
105
+ msgstr "Şifre yanlış"
106
+
107
+ #: classes/class.bForm.php:95
108
+ msgid "Email is required"
109
+ msgstr "E-Posta gereklidir"
110
+
111
+ #: classes/class.bForm.php:99
112
+ msgid "Email is invalid"
113
+ msgstr "E-Posta geçersizdir."
114
+
115
+ #: classes/class.bForm.php:112
116
+ msgid "Email is already used."
117
+ msgstr "E-Posta halen sistemimizde kulanılıyor."
118
+
119
+ #: classes/class.bForm.php:178
120
+ msgid "Member since field is invalid"
121
+ msgstr "Üye ...den beri alanı geçersiz."
122
+
123
+ #: classes/class.bForm.php:189
124
+ msgid "Subscription starts field is invalid"
125
+ msgstr "Kayıt Başlama alanı geçersiz"
126
+
127
+ #: classes/class.bForm.php:199
128
+ msgid "Gender field is invalid"
129
+ msgstr "Cinsiyet alanı geçersiz"
130
+
131
+ #: classes/class.bForm.php:210
132
+ msgid "Account state field is invalid"
133
+ msgstr "Hesap durumu alanı geçersiz"
134
+
135
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
136
+ msgid "Please"
137
+ msgstr "Lütfen"
138
+
139
+ #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
140
+ #: views/login.php:21
141
+ msgid "Login"
142
+ msgstr "Giriş"
143
+
144
+ #: classes/class.bFrontRegistration.php:79
145
+ #: classes/class.bFrontRegistration.php:158
146
+ msgid "Please correct the following"
147
+ msgstr "Lütfen Düzeltin :"
148
+
149
+ #: classes/class.bFrontRegistration.php:92
150
+ msgid "Membership Level Couldn't be found."
151
+ msgstr "Üyelik Seviyesi bulunamıyor"
152
+
153
+ #: classes/class.bFrontRegistration.php:168
154
+ msgid "Email Address Not Valid."
155
+ msgstr "E-Posta Geçersiz."
156
+
157
+ #: classes/class.bFrontRegistration.php:199
158
+ msgid "New password has been sent to your email address."
159
+ msgstr "Yeni Şifre e-posta adresinize gönderildi."
160
+
161
+ #: classes/class.bLevelForm.php:31
162
+ msgid "Subscriptoin duration must be > 0."
163
+ msgstr "Üyelik Süresi Sıfırdan Büyük Olmalıdır."
164
+
165
+ #: classes/class.bMembers.php:7
166
+ msgid "Member"
167
+ msgstr "Üye"
168
+
169
+ #: classes/class.bMembers.php:8 classes/class.simple-wp-membership.php:467
170
+ msgid "Members"
171
+ msgstr "Üyeler"
172
+
173
+ #: classes/class.bMembers.php:16 classes/class.bMembershipLevels.php:16
174
+ msgid "ID"
175
+ msgstr "Kimlik No"
176
+
177
+ #: classes/class.bMembers.php:17 views/add.php:5 views/edit.php:4
178
+ #: views/login.php:5
179
+ msgid "User Name"
180
+ msgstr "Kullanıcı Adı"
181
+
182
+ #: classes/class.bMembers.php:18 views/add.php:21
183
+ #: views/admin_member_form_common_part.php:2 views/edit.php:20
184
+ msgid "First Name"
185
+ msgstr "İlk Adınız"
186
+
187
+ #: classes/class.bMembers.php:19 views/add.php:25
188
+ #: views/admin_member_form_common_part.php:6 views/edit.php:24
189
+ msgid "Last Name"
190
+ msgstr "Soyadınız"
191
+
192
+ #: classes/class.bMembers.php:20 views/add.php:9 views/edit.php:8
193
+ msgid "Email"
194
+ msgstr "E-Posta"
195
+
196
+ #: classes/class.bMembers.php:21 classes/class.bMembershipLevels.php:8
197
+ #: classes/class.bMembershipLevels.php:17 views/add.php:64
198
+ #: views/admin_member_form_common_part.php:55 views/edit.php:52
199
+ msgid "Membership Level"
200
+ msgstr "Üyelik Düzeyi"
201
+
202
+ #: classes/class.bMembers.php:22 views/admin_member_form_common_part.php:78
203
+ msgid "Subscription Starts"
204
+ msgstr "Üyelik Başlama Tarihi"
205
+
206
+ #: classes/class.bMembers.php:23
207
+ msgid "Account State"
208
+ msgstr "Hesap Durumu"
209
+
210
+ #: classes/class.bMembers.php:35 classes/class.bMembershipLevels.php:29
211
+ msgid "Delete"
212
+ msgstr "Sil"
213
+
214
+ #: classes/class.bMembers.php:100
215
+ msgid "No Member found."
216
+ msgstr "Üye Bulunamadı"
217
+
218
+ #: classes/class.bMembershipLevel.php:31
219
+ msgid "Membership Level Creation Successful."
220
+ msgstr "Üyelik Derecesi Oluşturulması Başarılı."
221
+
222
+ #: classes/class.bMembershipLevel.php:50
223
+ msgid "Updated Successfully."
224
+ msgstr "Başarıyla Güncellendi."
225
+
226
+ #: classes/class.bMembershipLevels.php:9
227
+ #: classes/class.simple-wp-membership.php:469
228
+ msgid "Membership Levels"
229
+ msgstr "Üyelik Düzeyleri"
230
+
231
+ #: classes/class.bMembershipLevels.php:18
232
+ msgid "Role"
233
+ msgstr "Görev"
234
+
235
+ #: classes/class.bMembershipLevels.php:19
236
+ msgid "Subscription Valid For"
237
+ msgstr "Üyelik Geçerli :"
238
+
239
+ #: classes/class.bSettings.php:28
240
+ msgid "Plugin Documentation"
241
+ msgstr "Eklenti Dökümantasyonu"
242
+
243
+ #: classes/class.bSettings.php:30
244
+ msgid "General Settings"
245
+ msgstr "Genel Ayarlar"
246
+
247
+ #: classes/class.bSettings.php:32
248
+ msgid "Enable Free Membership"
249
+ msgstr "Ücretsiz Üyelik Mümkünmü?"
250
+
251
+ #: classes/class.bSettings.php:35
252
+ msgid "Enable/disable registration for free membership level"
253
+ msgstr "Ücretsiz üyelik için kaydolmayı aç veya kapa"
254
+
255
+ #: classes/class.bSettings.php:36
256
+ msgid "Free Membership Level ID"
257
+ msgstr "Ücretsiz Üyelik Seviyesi Numarası"
258
+
259
+ #: classes/class.bSettings.php:39
260
+ msgid "Assign free membership level ID"
261
+ msgstr "Ücretsiz Üyelik Numarası Atanması"
262
+
263
+ #: classes/class.bSettings.php:40
264
+ msgid "Hide Adminbar"
265
+ msgstr "Yönetici çubuğunu sakla"
266
+
267
+ #: classes/class.bSettings.php:43
268
+ msgid ""
269
+ "WordPress shows an admin toolbar to the logged in users of the site. Check "
270
+ "this box if you want to hide that admin toolbar in the fronend of your site."
271
+ msgstr ""
272
+ "Blog sitenin çevrimiçi kullanıcılarına yönetici çubuğunu gösterir. Eğer "
273
+ "yönetim çubuğunu saklamak istiyorsanız bu kutucuğu işaretleyin."
274
+
275
+ #: classes/class.bSettings.php:45
276
+ msgid "Pages Settings"
277
+ msgstr "Sayfa Ayarları"
278
+
279
+ #: classes/class.bSettings.php:47
280
+ msgid "Login Page URL"
281
+ msgstr "Giriş Sayfası URLsi"
282
+
283
+ #: classes/class.bSettings.php:51
284
+ msgid "Registration Page URL"
285
+ msgstr "Kayıt Sayfası URLsi"
286
+
287
+ #: classes/class.bSettings.php:55
288
+ msgid "Join Us Page URL"
289
+ msgstr "Bize Katılın Sayfası URLsi"
290
+
291
+ #: classes/class.bSettings.php:59
292
+ msgid "Edit Profile Page URL"
293
+ msgstr "Profil Düzenleme Sayfası URLsi"
294
+
295
+ #: classes/class.bSettings.php:63
296
+ msgid "Password Reset Page URL"
297
+ msgstr "Şifre Reset Sayfası URLsi"
298
+
299
+ #: classes/class.bSettings.php:68
300
+ msgid "Test & Debug Settings"
301
+ msgstr "Test ve Debug Ayarları"
302
+
303
+ #: classes/class.bSettings.php:74
304
+ msgid "Enable Sandbox Testing"
305
+ msgstr "Sandbox Testi Aktif Et"
306
+
307
+ #: classes/class.bSettings.php:77
308
+ msgid "Enable this option if you want to do sandbox payment testing."
309
+ msgstr "Bu opsiyonu , eğer SANDBOX ödeme testi istiyorsanız aktif edin."
310
+
311
+ #: classes/class.bSettings.php:90
312
+ msgid "Email Misc. Settings"
313
+ msgstr "E-Posta Çeşitli Ayarları"
314
+
315
+ #: classes/class.bSettings.php:92
316
+ msgid "From Email Address"
317
+ msgstr "Gönderen E-Posta Adresi"
318
+
319
+ #: classes/class.bSettings.php:97
320
+ msgid "Email Settings (Prompt to Complete Registration )"
321
+ msgstr "E-Posta Ayarları ( Anında Kayıt Tamamlama) "
322
+
323
+ #: classes/class.bSettings.php:99 classes/class.bSettings.php:110
324
+ #: classes/class.bSettings.php:129
325
+ msgid "Email Subject"
326
+ msgstr "E-Posta Konusu"
327
+
328
+ #: classes/class.bSettings.php:103 classes/class.bSettings.php:114
329
+ #: classes/class.bSettings.php:133
330
+ msgid "Email Body"
331
+ msgstr "E-Posta Gövdesi"
332
+
333
+ #: classes/class.bSettings.php:108
334
+ msgid "Email Settings (Registration Complete)"
335
+ msgstr "E-Posta Ayarları (Kayut Tamamlandı)"
336
+
337
+ #: classes/class.bSettings.php:118
338
+ msgid "Send Notification To Admin"
339
+ msgstr "Yöneticiye Uyarı Gönder"
340
+
341
+ #: classes/class.bSettings.php:122
342
+ msgid "Send Email to Member When Added via Admin Dashboard"
343
+ msgstr "Yönetim Panelinden Kayıt Yapıldığı Zaman Üyeye E-Posta Gönder"
344
+
345
+ #: classes/class.bSettings.php:127
346
+ msgid " Email Settings (Account Upgrade Notification)"
347
+ msgstr "E-Posta Ayarları ( Hesap Yükseltme Bildirimi)"
348
+
349
+ #: classes/class.bSettings.php:326
350
+ msgid "Not a Member?"
351
+ msgstr "Üye Değilmisiniz?"
352
+
353
+ #: classes/class.bSettings.php:326 views/login.php:30
354
+ msgid "Join Us"
355
+ msgstr "Bize Katılın"
356
+
357
+ #: classes/class.bUtils.php:32 views/admin_member_form_common_part.php:66
358
+ msgid "Active"
359
+ msgstr "Aktif"
360
+
361
+ #: classes/class.bUtils.php:33 views/admin_member_form_common_part.php:67
362
+ msgid "Inactive"
363
+ msgstr "Aktif Değil"
364
+
365
+ #: classes/class.bUtils.php:34 views/admin_member_form_common_part.php:68
366
+ msgid "Pending"
367
+ msgstr "Beklemede"
368
+
369
+ #: classes/class.bUtils.php:35 views/admin_member_form_common_part.php:69
370
+ msgid "Expired"
371
+ msgstr "Süresi Dolmuş"
372
+
373
+ #: classes/class.bUtils.php:225
374
+ msgid "Never"
375
+ msgstr "Asla"
376
+
377
+ #: classes/class.miscUtils.php:51
378
+ msgid "Registration"
379
+ msgstr "Kayıt"
380
+
381
+ #: classes/class.miscUtils.php:74
382
+ msgid "Member Login"
383
+ msgstr "Üye Girişi"
384
+
385
+ #: classes/class.miscUtils.php:97
386
+ msgid "Profile"
387
+ msgstr "Profil"
388
+
389
+ #: classes/class.miscUtils.php:120
390
+ msgid "Password Reset"
391
+ msgstr "Şifre Reset"
392
+
393
+ #: classes/class.simple-wp-membership.php:178
394
+ msgid "You are not logged in."
395
+ msgstr "Giriş Yapmadınız."
396
+
397
+ #: classes/class.simple-wp-membership.php:209
398
+ msgid "Simple WP Membership Protection"
399
+ msgstr "Basit Blog Üyelik Koruması"
400
+
401
+ #: classes/class.simple-wp-membership.php:222
402
+ msgid "Simple Membership Protection options"
403
+ msgstr "Basit Üyelik Koruması Opsiyonları"
404
+
405
+ #: classes/class.simple-wp-membership.php:238
406
+ msgid "Do you want to protect this content?"
407
+ msgstr "Bu içeriği korumak istiyormusunuz?"
408
+
409
+ #: classes/class.simple-wp-membership.php:243
410
+ msgid "Select the membership level that can access this content:"
411
+ msgstr "Bu içeriğe erişecek üyelik seviyesini seçiniz:"
412
+
413
+ #: classes/class.simple-wp-membership.php:375
414
+ msgid "Display SWPM Login."
415
+ msgstr "SWPM Girişini Göster."
416
+
417
+ #: classes/class.simple-wp-membership.php:377
418
+ msgid "SWPM Login"
419
+ msgstr "SWPM Girişi"
420
+
421
+ #: classes/class.simple-wp-membership.php:464
422
+ msgid "WP Membership"
423
+ msgstr "Blog Üyeliği"
424
+
425
+ #: classes/class.simple-wp-membership.php:471
426
+ msgid "Settings"
427
+ msgstr "Ayarlar"
428
+
429
+ #: views/add.php:13 views/admin_member_form_common_part.php:45
430
+ #: views/edit.php:12 views/login.php:11
431
+ msgid "Password"
432
+ msgstr "Şifre"
433
+
434
+ #: views/add.php:17 views/edit.php:16
435
+ msgid "Repeat Password"
436
+ msgstr "Şifre Tekrarı"
437
+
438
+ #: views/add.php:29 views/admin_member_form_common_part.php:10
439
+ msgid "Gender"
440
+ msgstr "Cinsiyet"
441
+
442
+ #: views/add.php:36 views/admin_member_form_common_part.php:17
443
+ #: views/edit.php:28
444
+ msgid "Phone"
445
+ msgstr "Telefon"
446
+
447
+ #: views/add.php:40 views/admin_member_form_common_part.php:21
448
+ #: views/edit.php:32
449
+ msgid "Street"
450
+ msgstr "Cadde"
451
+
452
+ #: views/add.php:44 views/admin_member_form_common_part.php:25
453
+ #: views/edit.php:36
454
+ msgid "City"
455
+ msgstr "Şehir"
456
+
457
+ #: views/add.php:48 views/admin_member_form_common_part.php:29
458
+ #: views/edit.php:40
459
+ msgid "State"
460
+ msgstr "İl"
461
+
462
+ #: views/add.php:52 views/admin_member_form_common_part.php:33
463
+ #: views/edit.php:44
464
+ msgid "Zipcode"
465
+ msgstr "Posta Kodu"
466
+
467
+ #: views/add.php:56 views/admin_member_form_common_part.php:37
468
+ #: views/edit.php:48
469
+ msgid "Country"
470
+ msgstr "Ülke"
471
+
472
+ #: views/add.php:60 views/admin_member_form_common_part.php:41
473
+ msgid "Company"
474
+ msgstr "Şirket"
475
+
476
+ #: views/add.php:71
477
+ msgid "Register"
478
+ msgstr "Kayıt"
479
+
480
+ #: views/admin_add.php:6
481
+ msgid "Add Member"
482
+ msgstr "Üye Ekleme"
483
+
484
+ #: views/admin_add.php:7
485
+ msgid "Create a brand new user and add it to this site."
486
+ msgstr "Yeni bir kullanıcı oluşturun ve bu siteye ekleyin."
487
+
488
+ #: views/admin_add.php:11
489
+ msgid "User name"
490
+ msgstr "Kullanıcı Adı"
491
+
492
+ #: views/admin_add.php:11 views/admin_add.php:15 views/admin_add_level.php:11
493
+ #: views/admin_add_level.php:15 views/admin_add_level.php:19
494
+ #: views/admin_edit.php:9 views/admin_edit.php:13
495
+ #: views/admin_edit_level.php:10 views/admin_edit_level.php:14
496
+ #: views/admin_edit_level.php:18
497
+ msgid "(required)"
498
+ msgstr "(gerekli)"
499
+
500
+ #: views/admin_add.php:15 views/admin_edit.php:13
501
+ msgid "E-mail"
502
+ msgstr "E-Posta"
503
+
504
+ #: views/admin_add.php:19
505
+ msgid "Add New Member "
506
+ msgstr "Yeni Üye Kaydı"
507
+
508
+ #: views/admin_add_level.php:6
509
+ msgid "Create new membership level."
510
+ msgstr "Yeni Üyelik Seviyesi Oluşturulması"
511
+
512
+ #: views/admin_add_level.php:11 views/admin_edit_level.php:10
513
+ msgid "Membership Level Name"
514
+ msgstr "Üyelik Seviyesi İsmi"
515
+
516
+ #: views/admin_add_level.php:15 views/admin_edit_level.php:14
517
+ msgid "Default WordPress Role"
518
+ msgstr "Varsayılan Blog Görevi"
519
+
520
+ #: views/admin_add_level.php:19 views/admin_edit_level.php:18
521
+ msgid "Subscription Duration"
522
+ msgstr "Üyelik Süresi"
523
+
524
+ #: views/admin_add_level.php:26 views/admin_edit_level.php:27
525
+ msgid "No Expiry"
526
+ msgstr "Süresiz"
527
+
528
+ #: views/admin_add_level.php:55
529
+ msgid "Add New Membership Level "
530
+ msgstr "Yeni Üyelik Seviyesi Ekleyin"
531
+
532
+ #: views/admin_edit.php:5
533
+ msgid "Edit Member"
534
+ msgstr "Üyelik Bilgileri Düzenleyin"
535
+
536
+ #: views/admin_edit.php:6
537
+ msgid "Edit existing member details."
538
+ msgstr "Mevcut üye detaylarını düzenleyin."
539
+
540
+ #: views/admin_edit.php:9
541
+ msgid "Username"
542
+ msgstr "Kullanıcı Adı"
543
+
544
+ #: views/admin_edit.php:18
545
+ msgid "Edit User "
546
+ msgstr "Kullanıcı Bilgilerini Düzenleyin"
547
+
548
+ #: views/admin_edit_level.php:5
549
+ msgid "Edit membership level"
550
+ msgstr "Üyelik seviyesi düzenleyin"
551
+
552
+ #: views/admin_edit_level.php:6
553
+ msgid "Edit membership level."
554
+ msgstr "Üyelik seviyesi düzenleyin."
555
+
556
+ #: views/admin_edit_level.php:54
557
+ msgid "Edit Membership Level "
558
+ msgstr "Üyelik Seviyesi Düzenleyin"
559
+
560
+ #: views/admin_members.php:2
561
+ msgid "Simple WP Membership::Members"
562
+ msgstr "Blog Üyelik::Üyeler"
563
+
564
+ #: views/admin_members.php:3 views/admin_members.php:19
565
+ #: views/admin_membership_levels.php:21
566
+ msgid "Add New"
567
+ msgstr "Yeni Ekleyin"
568
+
569
+ #: views/admin_members.php:9 views/admin_membership_levels.php:11
570
+ msgid "search"
571
+ msgstr "ara"
572
+
573
+ #: views/admin_membership_levels.php:3
574
+ msgid "Simple WP Membership::Membership Levels"
575
+ msgstr "Blog Üyeliği:: Üyelik Seviyeleri"
576
+
577
+ #: views/admin_membership_level_menu.php:2
578
+ msgid "Membership level"
579
+ msgstr "Üyelik Seviyeleri"
580
+
581
+ #: views/admin_membership_level_menu.php:3
582
+ msgid "Manage Content Production"
583
+ msgstr "İçerik Korumasını Yönet"
584
+
585
+ #: views/admin_membership_manage.php:17
586
+ msgid "Example Content Protection Settings"
587
+ msgstr "İçerik Yönetimi Örnek Ayarları"
588
+
589
+ #: views/admin_member_form_common_part.php:45
590
+ msgid "(twice, required)"
591
+ msgstr "(ikinci defa, bu gereklidir)"
592
+
593
+ #: views/admin_member_form_common_part.php:50
594
+ msgid "Strength indicator"
595
+ msgstr "Güvenlik Seviyesi"
596
+
597
+ #: views/admin_member_form_common_part.php:51
598
+ msgid ""
599
+ "Hint: The password should be at least seven characters long. To make it "
600
+ "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
601
+ "$ % ^ &amp; )."
602
+ msgstr ""
603
+ "İpucu: Şifre en az 7 karakterden oluşmalıdır. Güçlü bir şifre için küçük ve "
604
+ "Büyük harfler, rakamlar ve ! \" ? $ % ^ &amp; ) gibi çeşitli semboller "
605
+ "şifrede kullanılmalıdır. "
606
+
607
+ #: views/admin_member_form_common_part.php:64 views/loggedin.php:7
608
+ #: views/login_widget_logged.php:6
609
+ msgid "Account Status"
610
+ msgstr "Hesap Durumu"
611
+
612
+ #: views/admin_member_form_common_part.php:74
613
+ msgid "Member Since"
614
+ msgstr "Üyelik Başlama Tarihi"
615
+
616
+ #: views/admin_payment_settings.php:2 views/admin_settings.php:2
617
+ #: views/admin_tools_settings.php:2
618
+ msgid "Simple WP Membership::Settings"
619
+ msgstr "Blog Üyeliği:: Ayarlar"
620
+
621
+ #: views/admin_payment_settings.php:33
622
+ msgid "PayPal Integration Settings"
623
+ msgstr "Paypal Entegrasyon Ayarları"
624
+
625
+ #: views/admin_payment_settings.php:36
626
+ msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
627
+ msgstr "PayPal Düğmeniz için \"Gelişmiş Seçenekler \" Oluşturulması"
628
+
629
+ #: views/admin_payment_settings.php:39
630
+ msgid "Enter the Membership Level ID"
631
+ msgstr "Üyelik Numarasını Girin"
632
+
633
+ #: views/admin_payment_settings.php:41
634
+ msgid "Generate Code"
635
+ msgstr "Kod Oluştur"
636
+
637
+ #: views/admin_tools_settings.php:9
638
+ msgid "Generate a Registration Completion link"
639
+ msgstr "Kayıt Tamamlama Linki Oluştur"
640
+
641
+ #: views/admin_tools_settings.php:12
642
+ msgid ""
643
+ "You can manually generate a registration completion link here and give it to "
644
+ "your customer if they have missed the email that was automatically sent out "
645
+ "to them after the payment."
646
+ msgstr ""
647
+ "Eğer müşteriniz kayıttan sonra otomatik olarak gönderilen epostayı "
648
+ "almadıysa, BURADA kayıt tamamlama linkini manuel olarak oluşturabilir ve "
649
+ "müşterinize gönderebilirsiniz."
650
+
651
+ #: views/admin_tools_settings.php:17
652
+ msgid "Generate Registration Completion Link"
653
+ msgstr "Kayıt Tamamlama Linki Oluştur"
654
+
655
+ #: views/admin_tools_settings.php:20
656
+ msgid "OR"
657
+ msgstr "VEYA"
658
+
659
+ #: views/admin_tools_settings.php:21
660
+ msgid "For All Pending Registrations"
661
+ msgstr "Bekleyen Bütün Kayıtlar İçin"
662
+
663
+ #: views/admin_tools_settings.php:24
664
+ msgid "Registration Completion Links Will Appear Below:"
665
+ msgstr "Kayıt Tamamama Linkleri Aşağıda Görülecektir."
666
+
667
+ #: views/admin_tools_settings.php:31
668
+ msgid "Send Registration Reminder Email too"
669
+ msgstr "Kayıt Hatırlatma E-Postası da Gönder"
670
+
671
+ #: views/admin_tools_settings.php:34
672
+ msgid "Submit"
673
+ msgstr "Giriş Yapın"
674
+
675
+ #: views/edit.php:58
676
+ msgid "Update"
677
+ msgstr "Güncelle"
678
+
679
+ #: views/forgot_password.php:5
680
+ msgid "Email Address"
681
+ msgstr "E-Posta Adresi"
682
+
683
+ #: views/forgot_password.php:12
684
+ msgid "Reset Password"
685
+ msgstr "Şifre Resetle"
686
+
687
+ #: views/loggedin.php:3 views/login_widget_logged.php:3
688
+ msgid "Logged in as"
689
+ msgstr "Giriş yapılan hesap:"
690
+
691
+ #: views/loggedin.php:11 views/login_widget_logged.php:9
692
+ msgid "Membership"
693
+ msgstr "Üyelik"
694
+
695
+ #: views/loggedin.php:15 views/login_widget_logged.php:12
696
+ msgid "Account Expiry"
697
+ msgstr "Hesap süresi doldu"
698
+
699
+ #: views/loggedin.php:19 views/login_widget_logged.php:16
700
+ msgid "Logout"
701
+ msgstr "ÇIKIŞ"
702
+
703
+ #: views/login.php:17
704
+ msgid "Remember Me"
705
+ msgstr "Beni Hatırla"
706
+
707
+ #: views/login.php:26
708
+ msgid "Forgot Password"
709
+ msgstr "Şifreyi Unut"
languages/swpm.pot CHANGED
@@ -1,8 +1,8 @@
1
  msgid ""
2
  msgstr ""
3
- "Project-Id-Version: simple membership\n"
4
- "POT-Creation-Date: 2014-08-28 19:28+1000\n"
5
- "PO-Revision-Date: 2014-08-28 19:28+1000\n"
6
  "Last-Translator: \n"
7
  "Language-Team: \n"
8
  "MIME-Version: 1.0\n"
@@ -13,683 +13,894 @@ msgstr ""
13
  "X-Poedit-Basepath: .\n"
14
  "X-Poedit-SearchPath-0: .\n"
15
 
16
- #: classes/class.bAccessControl.php:23 classes/class.bAccessControl.php:40
 
 
 
 
 
 
 
 
17
  msgid "You are not allowed to view this content"
18
  msgstr ""
19
 
20
- #: classes/class.bAccessControl.php:26 classes/class.bAccessControl.php:43
21
- msgid "You need to login to view this content. "
 
 
 
 
 
22
  msgstr ""
23
 
24
- #: classes/class.bAdminRegistration.php:48
25
- #: classes/class.bFrontRegistration.php:64
26
  msgid "Registration Successful."
27
  msgstr ""
28
 
29
- #: classes/class.bAdminRegistration.php:53
30
- #: classes/class.bAdminRegistration.php:73
31
- #: classes/class.bMembershipLevel.php:36 classes/class.bMembershipLevel.php:54
 
32
  msgid "Please correct the following:"
33
  msgstr ""
34
 
35
- #: classes/class.bAjax.php:16 classes/class.bAjax.php:28
 
36
  msgid "Aready taken"
37
  msgstr ""
38
 
39
- #: classes/class.bAjax.php:29
40
  msgid "Available"
41
  msgstr ""
42
 
43
- #: classes/class.bAuth.php:48 classes/class.bFrontRegistration.php:179
 
44
  msgid "User Not Found."
45
  msgstr ""
46
 
47
- #: classes/class.bAuth.php:55
48
  msgid "Password Empty or Invalid."
49
  msgstr ""
50
 
51
- #: classes/class.bAuth.php:79
52
  msgid "Account is inactive."
53
  msgstr ""
54
 
55
- #: classes/class.bAuth.php:89
 
 
 
 
56
  msgid "You are logged in as:"
57
  msgstr ""
58
 
59
- #: classes/class.bAuth.php:128
60
  msgid "Logged Out Successfully."
61
  msgstr ""
62
 
63
- #: classes/class.bAuth.php:170
64
  msgid "Session Expired."
65
  msgstr ""
66
 
67
- #: classes/class.bAuth.php:179
68
  msgid "Invalid User Name"
69
  msgstr ""
70
 
71
- #: classes/class.bAuth.php:187
72
- msgid "Bad Cookie Hash"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
73
  msgstr ""
74
 
75
- #: classes/class.bForm.php:26
76
  msgid ""
77
  "Wordpress account exists with given user name. But given email doesn't match."
78
  msgstr ""
79
 
80
- #: classes/class.bForm.php:31
81
  msgid ""
82
  "Wordpress account exists with given email. But given user name doesn't match."
83
  msgstr ""
84
 
85
- #: classes/class.bForm.php:40
86
  msgid "User name is required"
87
  msgstr ""
88
 
89
- #: classes/class.bForm.php:49
 
 
 
 
90
  msgid "User name already exists."
91
  msgstr ""
92
 
93
- #: classes/class.bForm.php:72
94
  msgid "Password is required"
95
  msgstr ""
96
 
97
- #: classes/class.bForm.php:79
98
  msgid "Password mismatch"
99
  msgstr ""
100
 
101
- #: classes/class.bForm.php:95
102
  msgid "Email is required"
103
  msgstr ""
104
 
105
- #: classes/class.bForm.php:99
106
  msgid "Email is invalid"
107
  msgstr ""
108
 
109
- #: classes/class.bForm.php:112
110
  msgid "Email is already used."
111
  msgstr ""
112
 
113
- #: classes/class.bForm.php:178
114
  msgid "Member since field is invalid"
115
  msgstr ""
116
 
117
- #: classes/class.bForm.php:189
118
- msgid "Subscription starts field is invalid"
119
  msgstr ""
120
 
121
- #: classes/class.bForm.php:199
122
  msgid "Gender field is invalid"
123
  msgstr ""
124
 
125
- #: classes/class.bForm.php:210
126
  msgid "Account state field is invalid"
127
  msgstr ""
128
 
129
- #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
 
 
 
 
 
 
 
 
 
130
  msgid "Please"
131
  msgstr ""
132
 
133
- #: classes/class.bFrontRegistration.php:64 classes/class.bSettings.php:326
134
- #: views/login.php:21
 
135
  msgid "Login"
136
  msgstr ""
137
 
138
- #: classes/class.bFrontRegistration.php:79
139
- #: classes/class.bFrontRegistration.php:158
140
  msgid "Please correct the following"
141
  msgstr ""
142
 
143
- #: classes/class.bFrontRegistration.php:92
144
  msgid "Membership Level Couldn't be found."
145
  msgstr ""
146
 
147
- #: classes/class.bFrontRegistration.php:168
148
  msgid "Email Address Not Valid."
149
  msgstr ""
150
 
151
- #: classes/class.bFrontRegistration.php:199
152
  msgid "New password has been sent to your email address."
153
  msgstr ""
154
 
155
- #: classes/class.bLevelForm.php:31
156
- msgid "Subscriptoin duration must be > 0."
157
  msgstr ""
158
 
159
- #: classes/class.bMembers.php:7
160
- msgid "Member"
161
  msgstr ""
162
 
163
- #: classes/class.bMembers.php:8 classes/class.simple-wp-membership.php:467
164
- msgid "Members"
165
  msgstr ""
166
 
167
- #: classes/class.bMembers.php:16 classes/class.bMembershipLevels.php:16
168
- msgid "ID"
 
169
  msgstr ""
170
 
171
- #: classes/class.bMembers.php:17 views/add.php:5 views/edit.php:4
172
- #: views/login.php:5
173
  msgid "User Name"
174
  msgstr ""
175
 
176
- #: classes/class.bMembers.php:18 views/add.php:21
177
- #: views/admin_member_form_common_part.php:2 views/edit.php:20
 
 
178
  msgid "First Name"
179
  msgstr ""
180
 
181
- #: classes/class.bMembers.php:19 views/add.php:25
182
- #: views/admin_member_form_common_part.php:6 views/edit.php:24
 
 
183
  msgid "Last Name"
184
  msgstr ""
185
 
186
- #: classes/class.bMembers.php:20 views/add.php:9 views/edit.php:8
 
187
  msgid "Email"
188
  msgstr ""
189
 
190
- #: classes/class.bMembers.php:21 classes/class.bMembershipLevels.php:8
191
- #: classes/class.bMembershipLevels.php:17 views/add.php:64
192
- #: views/admin_member_form_common_part.php:55 views/edit.php:52
193
- msgid "Membership Level"
194
  msgstr ""
195
 
196
- #: classes/class.bMembers.php:22 views/admin_member_form_common_part.php:78
197
- msgid "Subscription Starts"
198
- msgstr ""
199
-
200
- #: classes/class.bMembers.php:23
201
  msgid "Account State"
202
  msgstr ""
203
 
204
- #: classes/class.bMembers.php:35 classes/class.bMembershipLevels.php:29
 
205
  msgid "Delete"
206
  msgstr ""
207
 
208
- #: classes/class.bMembers.php:100
209
  msgid "No Member found."
210
  msgstr ""
211
 
212
- #: classes/class.bMembershipLevel.php:31
213
  msgid "Membership Level Creation Successful."
214
  msgstr ""
215
 
216
- #: classes/class.bMembershipLevel.php:50
217
  msgid "Updated Successfully."
218
  msgstr ""
219
 
220
- #: classes/class.bMembershipLevels.php:9
221
- #: classes/class.simple-wp-membership.php:469
222
- msgid "Membership Levels"
223
- msgstr ""
224
-
225
- #: classes/class.bMembershipLevels.php:18
226
  msgid "Role"
227
  msgstr ""
228
 
229
- #: classes/class.bMembershipLevels.php:19
230
- msgid "Subscription Valid For"
231
  msgstr ""
232
 
233
- #: classes/class.bSettings.php:28
234
  msgid "Plugin Documentation"
235
  msgstr ""
236
 
237
- #: classes/class.bSettings.php:30
238
  msgid "General Settings"
239
  msgstr ""
240
 
241
- #: classes/class.bSettings.php:32
242
  msgid "Enable Free Membership"
243
  msgstr ""
244
 
245
- #: classes/class.bSettings.php:35
246
  msgid "Enable/disable registration for free membership level"
247
  msgstr ""
248
 
249
- #: classes/class.bSettings.php:36
250
  msgid "Free Membership Level ID"
251
  msgstr ""
252
 
253
- #: classes/class.bSettings.php:39
254
  msgid "Assign free membership level ID"
255
  msgstr ""
256
 
257
- #: classes/class.bSettings.php:40
 
 
 
 
 
 
 
 
 
 
 
258
  msgid "Hide Adminbar"
259
  msgstr ""
260
 
261
- #: classes/class.bSettings.php:43
262
  msgid ""
263
  "WordPress shows an admin toolbar to the logged in users of the site. Check "
264
  "this box if you want to hide that admin toolbar in the fronend of your site."
265
  msgstr ""
266
 
267
- #: classes/class.bSettings.php:45
 
 
 
 
 
 
 
 
 
 
268
  msgid "Pages Settings"
269
  msgstr ""
270
 
271
- #: classes/class.bSettings.php:47
272
  msgid "Login Page URL"
273
  msgstr ""
274
 
275
- #: classes/class.bSettings.php:51
276
  msgid "Registration Page URL"
277
  msgstr ""
278
 
279
- #: classes/class.bSettings.php:55
280
  msgid "Join Us Page URL"
281
  msgstr ""
282
 
283
- #: classes/class.bSettings.php:59
284
  msgid "Edit Profile Page URL"
285
  msgstr ""
286
 
287
- #: classes/class.bSettings.php:63
288
  msgid "Password Reset Page URL"
289
  msgstr ""
290
 
291
- #: classes/class.bSettings.php:68
292
  msgid "Test & Debug Settings"
293
  msgstr ""
294
 
295
- #: classes/class.bSettings.php:74
296
  msgid "Enable Sandbox Testing"
297
  msgstr ""
298
 
299
- #: classes/class.bSettings.php:77
300
  msgid "Enable this option if you want to do sandbox payment testing."
301
  msgstr ""
302
 
303
- #: classes/class.bSettings.php:90
304
  msgid "Email Misc. Settings"
305
  msgstr ""
306
 
307
- #: classes/class.bSettings.php:92
308
  msgid "From Email Address"
309
  msgstr ""
310
 
311
- #: classes/class.bSettings.php:97
312
  msgid "Email Settings (Prompt to Complete Registration )"
313
  msgstr ""
314
 
315
- #: classes/class.bSettings.php:99 classes/class.bSettings.php:110
316
- #: classes/class.bSettings.php:129
 
317
  msgid "Email Subject"
318
  msgstr ""
319
 
320
- #: classes/class.bSettings.php:103 classes/class.bSettings.php:114
321
- #: classes/class.bSettings.php:133
 
322
  msgid "Email Body"
323
  msgstr ""
324
 
325
- #: classes/class.bSettings.php:108
326
  msgid "Email Settings (Registration Complete)"
327
  msgstr ""
328
 
329
- #: classes/class.bSettings.php:118
330
  msgid "Send Notification To Admin"
331
  msgstr ""
332
 
333
- #: classes/class.bSettings.php:122
334
  msgid "Send Email to Member When Added via Admin Dashboard"
335
  msgstr ""
336
 
337
- #: classes/class.bSettings.php:127
338
  msgid " Email Settings (Account Upgrade Notification)"
339
  msgstr ""
340
 
341
- #: classes/class.bSettings.php:326
342
  msgid "Not a Member?"
343
  msgstr ""
344
 
345
- #: classes/class.bSettings.php:326 views/login.php:30
 
346
  msgid "Join Us"
347
  msgstr ""
348
 
349
- #: classes/class.bUtils.php:32 views/admin_member_form_common_part.php:66
350
  msgid "Active"
351
  msgstr ""
352
 
353
- #: classes/class.bUtils.php:33 views/admin_member_form_common_part.php:67
354
  msgid "Inactive"
355
  msgstr ""
356
 
357
- #: classes/class.bUtils.php:34 views/admin_member_form_common_part.php:68
358
  msgid "Pending"
359
  msgstr ""
360
 
361
- #: classes/class.bUtils.php:35 views/admin_member_form_common_part.php:69
362
  msgid "Expired"
363
  msgstr ""
364
 
365
- #: classes/class.bUtils.php:225
366
  msgid "Never"
367
  msgstr ""
368
 
369
- #: classes/class.miscUtils.php:51
370
  msgid "Registration"
371
  msgstr ""
372
 
373
- #: classes/class.miscUtils.php:74
374
  msgid "Member Login"
375
  msgstr ""
376
 
377
- #: classes/class.miscUtils.php:97
378
  msgid "Profile"
379
  msgstr ""
380
 
381
- #: classes/class.miscUtils.php:120
382
  msgid "Password Reset"
383
  msgstr ""
384
 
385
- #: classes/class.simple-wp-membership.php:178
386
  msgid "You are not logged in."
387
  msgstr ""
388
 
389
- #: classes/class.simple-wp-membership.php:209
390
  msgid "Simple WP Membership Protection"
391
  msgstr ""
392
 
393
- #: classes/class.simple-wp-membership.php:222
394
  msgid "Simple Membership Protection options"
395
  msgstr ""
396
 
397
- #: classes/class.simple-wp-membership.php:238
398
  msgid "Do you want to protect this content?"
399
  msgstr ""
400
 
401
- #: classes/class.simple-wp-membership.php:243
402
  msgid "Select the membership level that can access this content:"
403
  msgstr ""
404
 
405
- #: classes/class.simple-wp-membership.php:375
406
- msgid "Display SWPM Login."
407
- msgstr ""
408
-
409
- #: classes/class.simple-wp-membership.php:377
410
- msgid "SWPM Login"
411
- msgstr ""
412
-
413
- #: classes/class.simple-wp-membership.php:464
414
  msgid "WP Membership"
415
  msgstr ""
416
 
417
- #: classes/class.simple-wp-membership.php:471
418
  msgid "Settings"
419
  msgstr ""
420
 
421
- #: views/add.php:13 views/admin_member_form_common_part.php:45
422
- #: views/edit.php:12 views/login.php:11
 
 
 
 
 
423
  msgid "Password"
424
  msgstr ""
425
 
426
- #: views/add.php:17 views/edit.php:16
427
  msgid "Repeat Password"
428
  msgstr ""
429
 
430
- #: views/add.php:29 views/admin_member_form_common_part.php:10
431
- msgid "Gender"
432
  msgstr ""
433
 
434
- #: views/add.php:36 views/admin_member_form_common_part.php:17
435
- #: views/edit.php:28
436
- msgid "Phone"
437
  msgstr ""
438
 
439
- #: views/add.php:40 views/admin_member_form_common_part.php:21
440
- #: views/edit.php:32
441
- msgid "Street"
442
  msgstr ""
443
 
444
- #: views/add.php:44 views/admin_member_form_common_part.php:25
445
- #: views/edit.php:36
446
- msgid "City"
447
  msgstr ""
448
 
449
- #: views/add.php:48 views/admin_member_form_common_part.php:29
450
- #: views/edit.php:40
451
- msgid "State"
 
 
 
 
 
 
 
 
452
  msgstr ""
453
 
454
- #: views/add.php:52 views/admin_member_form_common_part.php:33
455
- #: views/edit.php:44
456
- msgid "Zipcode"
457
  msgstr ""
458
 
459
- #: views/add.php:56 views/admin_member_form_common_part.php:37
460
- #: views/edit.php:48
461
- msgid "Country"
462
  msgstr ""
463
 
464
- #: views/add.php:60 views/admin_member_form_common_part.php:41
465
- msgid "Company"
 
466
  msgstr ""
467
 
468
- #: views/add.php:71
469
- msgid "Register"
 
 
 
 
470
  msgstr ""
471
 
472
- #: views/admin_add.php:6
473
- msgid "Add Member"
 
 
474
  msgstr ""
475
 
476
- #: views/admin_add.php:7
477
- msgid "Create a brand new user and add it to this site."
478
  msgstr ""
479
 
480
- #: views/admin_add.php:11
481
- msgid "User name"
 
 
 
482
  msgstr ""
483
 
484
- #: views/admin_add.php:11 views/admin_add.php:15 views/admin_add_level.php:11
485
- #: views/admin_add_level.php:15 views/admin_add_level.php:19
486
- #: views/admin_edit.php:9 views/admin_edit.php:13
487
- #: views/admin_edit_level.php:10 views/admin_edit_level.php:14
488
- #: views/admin_edit_level.php:18
489
- msgid "(required)"
490
  msgstr ""
491
 
492
- #: views/admin_add.php:15 views/admin_edit.php:13
493
- msgid "E-mail"
494
  msgstr ""
495
 
496
- #: views/admin_add.php:19
497
- msgid "Add New Member "
 
498
  msgstr ""
499
 
500
- #: views/admin_add_level.php:6
501
- msgid "Create new membership level."
 
502
  msgstr ""
503
 
504
- #: views/admin_add_level.php:11 views/admin_edit_level.php:10
505
- msgid "Membership Level Name"
 
506
  msgstr ""
507
 
508
- #: views/admin_add_level.php:15 views/admin_edit_level.php:14
509
- msgid "Default WordPress Role"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
510
  msgstr ""
511
 
512
- #: views/admin_add_level.php:19 views/admin_edit_level.php:18
513
- msgid "Subscription Duration"
514
  msgstr ""
515
 
516
- #: views/admin_add_level.php:26 views/admin_edit_level.php:27
517
- msgid "No Expiry"
 
518
  msgstr ""
519
 
520
- #: views/admin_add_level.php:55
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
521
  msgid "Add New Membership Level "
522
  msgstr ""
523
 
524
- #: views/admin_edit.php:5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
525
  msgid "Edit Member"
526
  msgstr ""
527
 
528
- #: views/admin_edit.php:6
529
  msgid "Edit existing member details."
530
  msgstr ""
531
 
532
- #: views/admin_edit.php:9
 
533
  msgid "Username"
534
  msgstr ""
535
 
536
- #: views/admin_edit.php:18
 
 
 
 
 
 
 
 
537
  msgid "Edit User "
538
  msgstr ""
539
 
540
- #: views/admin_edit_level.php:5
541
  msgid "Edit membership level"
542
  msgstr ""
543
 
544
- #: views/admin_edit_level.php:6
545
  msgid "Edit membership level."
546
  msgstr ""
547
 
548
- #: views/admin_edit_level.php:54
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
549
  msgid "Edit Membership Level "
550
  msgstr ""
551
 
552
- #: views/admin_members.php:2
553
  msgid "Simple WP Membership::Members"
554
  msgstr ""
555
 
556
- #: views/admin_members.php:3 views/admin_members.php:19
557
- #: views/admin_membership_levels.php:21
 
558
  msgid "Add New"
559
  msgstr ""
560
 
561
- #: views/admin_members.php:9 views/admin_membership_levels.php:11
 
562
  msgid "search"
563
  msgstr ""
564
 
565
- #: views/admin_membership_levels.php:3
566
  msgid "Simple WP Membership::Membership Levels"
567
  msgstr ""
568
 
569
- #: views/admin_membership_level_menu.php:2
570
  msgid "Membership level"
571
  msgstr ""
572
 
573
- #: views/admin_membership_level_menu.php:3
574
  msgid "Manage Content Production"
575
  msgstr ""
576
 
577
- #: views/admin_membership_manage.php:17
 
 
 
 
578
  msgid "Example Content Protection Settings"
579
  msgstr ""
580
 
581
- #: views/admin_member_form_common_part.php:45
582
- msgid "(twice, required)"
583
  msgstr ""
584
 
585
- #: views/admin_member_form_common_part.php:50
586
- msgid "Strength indicator"
 
587
  msgstr ""
588
 
589
- #: views/admin_member_form_common_part.php:51
590
- msgid ""
591
- "Hint: The password should be at least seven characters long. To make it "
592
- "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
593
- "$ % ^ &amp; )."
594
  msgstr ""
595
 
596
- #: views/admin_member_form_common_part.php:64 views/loggedin.php:7
597
- #: views/login_widget_logged.php:6
598
- msgid "Account Status"
599
  msgstr ""
600
 
601
- #: views/admin_member_form_common_part.php:74
602
- msgid "Member Since"
 
603
  msgstr ""
604
 
605
- #: views/admin_payment_settings.php:2 views/admin_settings.php:2
606
- #: views/admin_tools_settings.php:2
607
- msgid "Simple WP Membership::Settings"
 
 
 
 
 
 
 
 
 
 
 
 
 
608
  msgstr ""
609
 
610
- #: views/admin_payment_settings.php:33
611
  msgid "PayPal Integration Settings"
612
  msgstr ""
613
 
614
- #: views/admin_payment_settings.php:36
615
  msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
616
  msgstr ""
617
 
618
- #: views/admin_payment_settings.php:39
619
  msgid "Enter the Membership Level ID"
620
  msgstr ""
621
 
622
- #: views/admin_payment_settings.php:41
623
  msgid "Generate Code"
624
  msgstr ""
625
 
626
- #: views/admin_tools_settings.php:9
627
  msgid "Generate a Registration Completion link"
628
  msgstr ""
629
 
630
- #: views/admin_tools_settings.php:12
631
  msgid ""
632
  "You can manually generate a registration completion link here and give it to "
633
  "your customer if they have missed the email that was automatically sent out "
634
  "to them after the payment."
635
  msgstr ""
636
 
637
- #: views/admin_tools_settings.php:17
638
  msgid "Generate Registration Completion Link"
639
  msgstr ""
640
 
641
- #: views/admin_tools_settings.php:20
642
  msgid "OR"
643
  msgstr ""
644
 
645
- #: views/admin_tools_settings.php:21
646
  msgid "For All Pending Registrations"
647
  msgstr ""
648
 
649
- #: views/admin_tools_settings.php:24
650
  msgid "Registration Completion Links Will Appear Below:"
651
  msgstr ""
652
 
653
- #: views/admin_tools_settings.php:31
654
  msgid "Send Registration Reminder Email too"
655
  msgstr ""
656
 
657
- #: views/admin_tools_settings.php:34
658
  msgid "Submit"
659
  msgstr ""
660
 
661
- #: views/edit.php:58
662
  msgid "Update"
663
  msgstr ""
664
 
665
- #: views/forgot_password.php:5
666
  msgid "Email Address"
667
  msgstr ""
668
 
669
- #: views/forgot_password.php:12
670
  msgid "Reset Password"
671
  msgstr ""
672
 
673
- #: views/loggedin.php:3 views/login_widget_logged.php:3
674
  msgid "Logged in as"
675
  msgstr ""
676
 
677
- #: views/loggedin.php:11 views/login_widget_logged.php:9
678
  msgid "Membership"
679
  msgstr ""
680
 
681
- #: views/loggedin.php:15 views/login_widget_logged.php:12
682
  msgid "Account Expiry"
683
  msgstr ""
684
 
685
- #: views/loggedin.php:19 views/login_widget_logged.php:16
686
  msgid "Logout"
687
  msgstr ""
688
 
689
- #: views/login.php:17
690
  msgid "Remember Me"
691
  msgstr ""
692
 
693
- #: views/login.php:26
694
  msgid "Forgot Password"
695
  msgstr ""
1
  msgid ""
2
  msgstr ""
3
+ "Project-Id-Version: Simple Membership\n"
4
+ "POT-Creation-Date: 2015-01-27 14:50+1000\n"
5
+ "PO-Revision-Date: 2015-01-27 14:51+1000\n"
6
  "Last-Translator: \n"
7
  "Language-Team: \n"
8
  "MIME-Version: 1.0\n"
13
  "X-Poedit-Basepath: .\n"
14
  "X-Poedit-SearchPath-0: .\n"
15
 
16
+ #: simple-membership/classes/class.bAccessControl.php:21
17
+ #: simple-membership/classes/class.bAccessControl.php:28
18
+ #: simple-membership/classes/class.bAccessControl.php:48
19
+ msgid "You need to login to view this content. "
20
+ msgstr ""
21
+
22
+ #: simple-membership/classes/class.bAccessControl.php:35
23
+ #: simple-membership/classes/class.bAccessControl.php:39
24
+ #: simple-membership/classes/class.bAccessControl.php:54
25
  msgid "You are not allowed to view this content"
26
  msgstr ""
27
 
28
+ #: simple-membership/classes/class.bAccessControl.php:72
29
+ msgid "You do no have permission to view rest of the content"
30
+ msgstr ""
31
+
32
+ #: simple-membership/classes/class.bAccessControl.php:76
33
+ #: simple-membership/classes/class.bAccessControl.php:94
34
+ msgid "You need to login to view the rest of the content. "
35
  msgstr ""
36
 
37
+ #: simple-membership/classes/class.bAdminRegistration.php:49
 
38
  msgid "Registration Successful."
39
  msgstr ""
40
 
41
+ #: simple-membership/classes/class.bAdminRegistration.php:54
42
+ #: simple-membership/classes/class.bAdminRegistration.php:89
43
+ #: simple-membership/classes/class.bMembershipLevel.php:42
44
+ #: simple-membership/classes/class.bMembershipLevel.php:60
45
  msgid "Please correct the following:"
46
  msgstr ""
47
 
48
+ #: simple-membership/classes/class.bAjax.php:17
49
+ #: simple-membership/classes/class.bAjax.php:28
50
  msgid "Aready taken"
51
  msgstr ""
52
 
53
+ #: simple-membership/classes/class.bAjax.php:29
54
  msgid "Available"
55
  msgstr ""
56
 
57
+ #: simple-membership/classes/class.bAuth.php:46
58
+ #: simple-membership/classes/class.bFrontRegistration.php:173
59
  msgid "User Not Found."
60
  msgstr ""
61
 
62
+ #: simple-membership/classes/class.bAuth.php:53
63
  msgid "Password Empty or Invalid."
64
  msgstr ""
65
 
66
+ #: simple-membership/classes/class.bAuth.php:76
67
  msgid "Account is inactive."
68
  msgstr ""
69
 
70
+ #: simple-membership/classes/class.bAuth.php:93
71
+ msgid "Account has expired."
72
+ msgstr ""
73
+
74
+ #: simple-membership/classes/class.bAuth.php:100
75
  msgid "You are logged in as:"
76
  msgstr ""
77
 
78
+ #: simple-membership/classes/class.bAuth.php:139
79
  msgid "Logged Out Successfully."
80
  msgstr ""
81
 
82
+ #: simple-membership/classes/class.bAuth.php:186
83
  msgid "Session Expired."
84
  msgstr ""
85
 
86
+ #: simple-membership/classes/class.bAuth.php:194
87
  msgid "Invalid User Name"
88
  msgstr ""
89
 
90
+ #: simple-membership/classes/class.bAuth.php:202
91
+ msgid "Sorry! Something went wrong"
92
+ msgstr ""
93
+
94
+ #: simple-membership/classes/class.bCategoryList.php:15
95
+ #: simple-membership/classes/class.bMembers.php:21
96
+ #: simple-membership/classes/class.bMembershipLevels.php:8
97
+ #: simple-membership/classes/class.bMembershipLevels.php:17
98
+ #: simple-membership/views/add.php:30
99
+ #: simple-membership/views/admin_member_form_common_part.php:2
100
+ #: simple-membership/views/edit.php:52
101
+ msgid "Membership Level"
102
+ msgstr ""
103
+
104
+ #: simple-membership/classes/class.bCategoryList.php:16
105
+ #: simple-membership/classes/class.bMembershipLevels.php:9
106
+ #: simple-membership/classes/class.simple-wp-membership.php:464
107
+ msgid "Membership Levels"
108
+ msgstr ""
109
+
110
+ #: simple-membership/classes/class.bCategoryList.php:29
111
+ #: simple-membership/classes/class.bMembers.php:16
112
+ #: simple-membership/classes/class.bMembershipLevels.php:16
113
+ msgid "ID"
114
+ msgstr ""
115
+
116
+ #: simple-membership/classes/class.bCategoryList.php:30
117
+ msgid "Name"
118
+ msgstr ""
119
+
120
+ #: simple-membership/classes/class.bCategoryList.php:31
121
+ msgid "Description"
122
+ msgstr ""
123
+
124
+ #: simple-membership/classes/class.bCategoryList.php:32
125
+ msgid "Count"
126
+ msgstr ""
127
+
128
+ #: simple-membership/classes/class.bCategoryList.php:63
129
+ msgid "Updated! "
130
  msgstr ""
131
 
132
+ #: simple-membership/classes/class.bForm.php:26
133
  msgid ""
134
  "Wordpress account exists with given user name. But given email doesn't match."
135
  msgstr ""
136
 
137
+ #: simple-membership/classes/class.bForm.php:31
138
  msgid ""
139
  "Wordpress account exists with given email. But given user name doesn't match."
140
  msgstr ""
141
 
142
+ #: simple-membership/classes/class.bForm.php:40
143
  msgid "User name is required"
144
  msgstr ""
145
 
146
+ #: simple-membership/classes/class.bForm.php:44
147
+ msgid "User name contains invalid character"
148
+ msgstr ""
149
+
150
+ #: simple-membership/classes/class.bForm.php:52
151
  msgid "User name already exists."
152
  msgstr ""
153
 
154
+ #: simple-membership/classes/class.bForm.php:75
155
  msgid "Password is required"
156
  msgstr ""
157
 
158
+ #: simple-membership/classes/class.bForm.php:82
159
  msgid "Password mismatch"
160
  msgstr ""
161
 
162
+ #: simple-membership/classes/class.bForm.php:98
163
  msgid "Email is required"
164
  msgstr ""
165
 
166
+ #: simple-membership/classes/class.bForm.php:102
167
  msgid "Email is invalid"
168
  msgstr ""
169
 
170
+ #: simple-membership/classes/class.bForm.php:118
171
  msgid "Email is already used."
172
  msgstr ""
173
 
174
+ #: simple-membership/classes/class.bForm.php:184
175
  msgid "Member since field is invalid"
176
  msgstr ""
177
 
178
+ #: simple-membership/classes/class.bForm.php:195
179
+ msgid "Access starts field is invalid"
180
  msgstr ""
181
 
182
+ #: simple-membership/classes/class.bForm.php:205
183
  msgid "Gender field is invalid"
184
  msgstr ""
185
 
186
+ #: simple-membership/classes/class.bForm.php:216
187
  msgid "Account state field is invalid"
188
  msgstr ""
189
 
190
+ #: simple-membership/classes/class.bForm.php:223
191
+ msgid "Invalid membership level"
192
+ msgstr ""
193
+
194
+ #: simple-membership/classes/class.bFrontRegistration.php:61
195
+ msgid "Registration Successful. "
196
+ msgstr ""
197
+
198
+ #: simple-membership/classes/class.bFrontRegistration.php:61
199
+ #: simple-membership/classes/class.bSettings.php:367
200
  msgid "Please"
201
  msgstr ""
202
 
203
+ #: simple-membership/classes/class.bFrontRegistration.php:61
204
+ #: simple-membership/classes/class.bSettings.php:367
205
+ #: simple-membership/views/login.php:21
206
  msgid "Login"
207
  msgstr ""
208
 
209
+ #: simple-membership/classes/class.bFrontRegistration.php:72
210
+ #: simple-membership/classes/class.bFrontRegistration.php:152
211
  msgid "Please correct the following"
212
  msgstr ""
213
 
214
+ #: simple-membership/classes/class.bFrontRegistration.php:106
215
  msgid "Membership Level Couldn't be found."
216
  msgstr ""
217
 
218
+ #: simple-membership/classes/class.bFrontRegistration.php:162
219
  msgid "Email Address Not Valid."
220
  msgstr ""
221
 
222
+ #: simple-membership/classes/class.bFrontRegistration.php:193
223
  msgid "New password has been sent to your email address."
224
  msgstr ""
225
 
226
+ #: simple-membership/classes/class.bLevelForm.php:47
227
+ msgid "Date format is not valid."
228
  msgstr ""
229
 
230
+ #: simple-membership/classes/class.bLevelForm.php:54
231
+ msgid "Access duration must be > 0."
232
  msgstr ""
233
 
234
+ #: simple-membership/classes/class.bMembers.php:7
235
+ msgid "Member"
236
  msgstr ""
237
 
238
+ #: simple-membership/classes/class.bMembers.php:8
239
+ #: simple-membership/classes/class.simple-wp-membership.php:462
240
+ msgid "Members"
241
  msgstr ""
242
 
243
+ #: simple-membership/classes/class.bMembers.php:17
244
+ #: simple-membership/views/add.php:6 simple-membership/views/edit.php:4
245
  msgid "User Name"
246
  msgstr ""
247
 
248
+ #: simple-membership/classes/class.bMembers.php:18
249
+ #: simple-membership/views/add.php:22
250
+ #: simple-membership/views/admin_member_form_common_part.php:15
251
+ #: simple-membership/views/edit.php:20
252
  msgid "First Name"
253
  msgstr ""
254
 
255
+ #: simple-membership/classes/class.bMembers.php:19
256
+ #: simple-membership/views/add.php:26
257
+ #: simple-membership/views/admin_member_form_common_part.php:19
258
+ #: simple-membership/views/edit.php:24
259
  msgid "Last Name"
260
  msgstr ""
261
 
262
+ #: simple-membership/classes/class.bMembers.php:20
263
+ #: simple-membership/views/add.php:10 simple-membership/views/edit.php:8
264
  msgid "Email"
265
  msgstr ""
266
 
267
+ #: simple-membership/classes/class.bMembers.php:22
268
+ #: simple-membership/views/admin_member_form_common_part.php:11
269
+ msgid "Access Starts"
 
270
  msgstr ""
271
 
272
+ #: simple-membership/classes/class.bMembers.php:23
 
 
 
 
273
  msgid "Account State"
274
  msgstr ""
275
 
276
+ #: simple-membership/classes/class.bMembers.php:35
277
+ #: simple-membership/classes/class.bMembershipLevels.php:29
278
  msgid "Delete"
279
  msgstr ""
280
 
281
+ #: simple-membership/classes/class.bMembers.php:101
282
  msgid "No Member found."
283
  msgstr ""
284
 
285
+ #: simple-membership/classes/class.bMembershipLevel.php:37
286
  msgid "Membership Level Creation Successful."
287
  msgstr ""
288
 
289
+ #: simple-membership/classes/class.bMembershipLevel.php:56
290
  msgid "Updated Successfully."
291
  msgstr ""
292
 
293
+ #: simple-membership/classes/class.bMembershipLevels.php:18
 
 
 
 
 
294
  msgid "Role"
295
  msgstr ""
296
 
297
+ #: simple-membership/classes/class.bMembershipLevels.php:19
298
+ msgid "Access Valid For/Until"
299
  msgstr ""
300
 
301
+ #: simple-membership/classes/class.bSettings.php:30
302
  msgid "Plugin Documentation"
303
  msgstr ""
304
 
305
+ #: simple-membership/classes/class.bSettings.php:32
306
  msgid "General Settings"
307
  msgstr ""
308
 
309
+ #: simple-membership/classes/class.bSettings.php:34
310
  msgid "Enable Free Membership"
311
  msgstr ""
312
 
313
+ #: simple-membership/classes/class.bSettings.php:37
314
  msgid "Enable/disable registration for free membership level"
315
  msgstr ""
316
 
317
+ #: simple-membership/classes/class.bSettings.php:38
318
  msgid "Free Membership Level ID"
319
  msgstr ""
320
 
321
+ #: simple-membership/classes/class.bSettings.php:41
322
  msgid "Assign free membership level ID"
323
  msgstr ""
324
 
325
+ #: simple-membership/classes/class.bSettings.php:42
326
+ msgid "Enable More Tag Protection"
327
+ msgstr ""
328
+
329
+ #: simple-membership/classes/class.bSettings.php:45
330
+ msgid ""
331
+ "Enables or disables \"more\" tag protection in the posts and pages. Anything "
332
+ "after the More tag is protected. Anything before the more tag is teaser "
333
+ "content."
334
+ msgstr ""
335
+
336
+ #: simple-membership/classes/class.bSettings.php:46
337
  msgid "Hide Adminbar"
338
  msgstr ""
339
 
340
+ #: simple-membership/classes/class.bSettings.php:49
341
  msgid ""
342
  "WordPress shows an admin toolbar to the logged in users of the site. Check "
343
  "this box if you want to hide that admin toolbar in the fronend of your site."
344
  msgstr ""
345
 
346
+ #: simple-membership/classes/class.bSettings.php:51
347
+ msgid "Default Account Status"
348
+ msgstr ""
349
+
350
+ #: simple-membership/classes/class.bSettings.php:56
351
+ msgid ""
352
+ "Select the default account status for newly registered users. If you want to "
353
+ "manually approve the members then you can set the status to \"Pending\"."
354
+ msgstr ""
355
+
356
+ #: simple-membership/classes/class.bSettings.php:62
357
  msgid "Pages Settings"
358
  msgstr ""
359
 
360
+ #: simple-membership/classes/class.bSettings.php:64
361
  msgid "Login Page URL"
362
  msgstr ""
363
 
364
+ #: simple-membership/classes/class.bSettings.php:68
365
  msgid "Registration Page URL"
366
  msgstr ""
367
 
368
+ #: simple-membership/classes/class.bSettings.php:72
369
  msgid "Join Us Page URL"
370
  msgstr ""
371
 
372
+ #: simple-membership/classes/class.bSettings.php:76
373
  msgid "Edit Profile Page URL"
374
  msgstr ""
375
 
376
+ #: simple-membership/classes/class.bSettings.php:80
377
  msgid "Password Reset Page URL"
378
  msgstr ""
379
 
380
+ #: simple-membership/classes/class.bSettings.php:85
381
  msgid "Test & Debug Settings"
382
  msgstr ""
383
 
384
+ #: simple-membership/classes/class.bSettings.php:91
385
  msgid "Enable Sandbox Testing"
386
  msgstr ""
387
 
388
+ #: simple-membership/classes/class.bSettings.php:94
389
  msgid "Enable this option if you want to do sandbox payment testing."
390
  msgstr ""
391
 
392
+ #: simple-membership/classes/class.bSettings.php:104
393
  msgid "Email Misc. Settings"
394
  msgstr ""
395
 
396
+ #: simple-membership/classes/class.bSettings.php:106
397
  msgid "From Email Address"
398
  msgstr ""
399
 
400
+ #: simple-membership/classes/class.bSettings.php:111
401
  msgid "Email Settings (Prompt to Complete Registration )"
402
  msgstr ""
403
 
404
+ #: simple-membership/classes/class.bSettings.php:113
405
+ #: simple-membership/classes/class.bSettings.php:124
406
+ #: simple-membership/classes/class.bSettings.php:143
407
  msgid "Email Subject"
408
  msgstr ""
409
 
410
+ #: simple-membership/classes/class.bSettings.php:117
411
+ #: simple-membership/classes/class.bSettings.php:128
412
+ #: simple-membership/classes/class.bSettings.php:147
413
  msgid "Email Body"
414
  msgstr ""
415
 
416
+ #: simple-membership/classes/class.bSettings.php:122
417
  msgid "Email Settings (Registration Complete)"
418
  msgstr ""
419
 
420
+ #: simple-membership/classes/class.bSettings.php:132
421
  msgid "Send Notification To Admin"
422
  msgstr ""
423
 
424
+ #: simple-membership/classes/class.bSettings.php:136
425
  msgid "Send Email to Member When Added via Admin Dashboard"
426
  msgstr ""
427
 
428
+ #: simple-membership/classes/class.bSettings.php:141
429
  msgid " Email Settings (Account Upgrade Notification)"
430
  msgstr ""
431
 
432
+ #: simple-membership/classes/class.bSettings.php:367
433
  msgid "Not a Member?"
434
  msgstr ""
435
 
436
+ #: simple-membership/classes/class.bSettings.php:367
437
+ #: simple-membership/views/login.php:27
438
  msgid "Join Us"
439
  msgstr ""
440
 
441
+ #: simple-membership/classes/class.bUtils.php:63
442
  msgid "Active"
443
  msgstr ""
444
 
445
+ #: simple-membership/classes/class.bUtils.php:64
446
  msgid "Inactive"
447
  msgstr ""
448
 
449
+ #: simple-membership/classes/class.bUtils.php:65
450
  msgid "Pending"
451
  msgstr ""
452
 
453
+ #: simple-membership/classes/class.bUtils.php:66
454
  msgid "Expired"
455
  msgstr ""
456
 
457
+ #: simple-membership/classes/class.bUtils.php:251
458
  msgid "Never"
459
  msgstr ""
460
 
461
+ #: simple-membership/classes/class.miscUtils.php:51
462
  msgid "Registration"
463
  msgstr ""
464
 
465
+ #: simple-membership/classes/class.miscUtils.php:74
466
  msgid "Member Login"
467
  msgstr ""
468
 
469
+ #: simple-membership/classes/class.miscUtils.php:97
470
  msgid "Profile"
471
  msgstr ""
472
 
473
+ #: simple-membership/classes/class.miscUtils.php:120
474
  msgid "Password Reset"
475
  msgstr ""
476
 
477
+ #: simple-membership/classes/class.simple-wp-membership.php:184
478
  msgid "You are not logged in."
479
  msgstr ""
480
 
481
+ #: simple-membership/classes/class.simple-wp-membership.php:215
482
  msgid "Simple WP Membership Protection"
483
  msgstr ""
484
 
485
+ #: simple-membership/classes/class.simple-wp-membership.php:228
486
  msgid "Simple Membership Protection options"
487
  msgstr ""
488
 
489
+ #: simple-membership/classes/class.simple-wp-membership.php:244
490
  msgid "Do you want to protect this content?"
491
  msgstr ""
492
 
493
+ #: simple-membership/classes/class.simple-wp-membership.php:249
494
  msgid "Select the membership level that can access this content:"
495
  msgstr ""
496
 
497
+ #: simple-membership/classes/class.simple-wp-membership.php:459
 
 
 
 
 
 
 
 
498
  msgid "WP Membership"
499
  msgstr ""
500
 
501
+ #: simple-membership/classes/class.simple-wp-membership.php:466
502
  msgid "Settings"
503
  msgstr ""
504
 
505
+ #: simple-membership/classes/class.simple-wp-membership.php:468
506
+ msgid "Add-ons"
507
+ msgstr ""
508
+
509
+ #: simple-membership/views/add.php:14 simple-membership/views/admin_add.php:19
510
+ #: simple-membership/views/admin_edit.php:17
511
+ #: simple-membership/views/edit.php:12 simple-membership/views/login.php:11
512
  msgid "Password"
513
  msgstr ""
514
 
515
+ #: simple-membership/views/add.php:18 simple-membership/views/edit.php:16
516
  msgid "Repeat Password"
517
  msgstr ""
518
 
519
+ #: simple-membership/views/add.php:37
520
+ msgid "Register"
521
  msgstr ""
522
 
523
+ #: simple-membership/views/admin_add.php:6
524
+ msgid "Add Member"
 
525
  msgstr ""
526
 
527
+ #: simple-membership/views/admin_add.php:7
528
+ msgid "Create a brand new user and add it to this site."
 
529
  msgstr ""
530
 
531
+ #: simple-membership/views/admin_add.php:11
532
+ msgid "User name"
 
533
  msgstr ""
534
 
535
+ #: simple-membership/views/admin_add.php:11
536
+ #: simple-membership/views/admin_add.php:15
537
+ #: simple-membership/views/admin_add_level.php:11
538
+ #: simple-membership/views/admin_add_level.php:15
539
+ #: simple-membership/views/admin_add_level.php:19
540
+ #: simple-membership/views/admin_edit.php:9
541
+ #: simple-membership/views/admin_edit.php:13
542
+ #: simple-membership/views/admin_edit_level.php:10
543
+ #: simple-membership/views/admin_edit_level.php:14
544
+ #: simple-membership/views/admin_edit_level.php:18
545
+ msgid "(required)"
546
  msgstr ""
547
 
548
+ #: simple-membership/views/admin_add.php:15
549
+ #: simple-membership/views/admin_edit.php:13
550
+ msgid "E-mail"
551
  msgstr ""
552
 
553
+ #: simple-membership/views/admin_add.php:19
554
+ msgid "(twice, required)"
 
555
  msgstr ""
556
 
557
+ #: simple-membership/views/admin_add.php:24
558
+ #: simple-membership/views/admin_edit.php:21
559
+ msgid "Strength indicator"
560
  msgstr ""
561
 
562
+ #: simple-membership/views/admin_add.php:25
563
+ #: simple-membership/views/admin_edit.php:22
564
+ msgid ""
565
+ "Hint: The password should be at least seven characters long. To make it "
566
+ "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
567
+ "$ % ^ &amp; )."
568
  msgstr ""
569
 
570
+ #: simple-membership/views/admin_add.php:29
571
+ #: simple-membership/views/admin_edit.php:26
572
+ #: simple-membership/views/loggedin.php:7
573
+ msgid "Account Status"
574
  msgstr ""
575
 
576
+ #: simple-membership/views/admin_add.php:36
577
+ msgid "Add New Member "
578
  msgstr ""
579
 
580
+ #: simple-membership/views/admin_addon_settings.php:2
581
+ #: simple-membership/views/admin_payment_settings.php:2
582
+ #: simple-membership/views/admin_settings.php:2
583
+ #: simple-membership/views/admin_tools_settings.php:2
584
+ msgid "Simple WP Membership::Settings"
585
  msgstr ""
586
 
587
+ #: simple-membership/views/admin_addon_settings.php:7
588
+ msgid ""
589
+ "Some of the simple membership plugin's addon settings and options will be "
590
+ "displayed here (if you have them)"
 
 
591
  msgstr ""
592
 
593
+ #: simple-membership/views/admin_add_level.php:6
594
+ msgid "Create new membership level."
595
  msgstr ""
596
 
597
+ #: simple-membership/views/admin_add_level.php:11
598
+ #: simple-membership/views/admin_edit_level.php:10
599
+ msgid "Membership Level Name"
600
  msgstr ""
601
 
602
+ #: simple-membership/views/admin_add_level.php:15
603
+ #: simple-membership/views/admin_edit_level.php:14
604
+ msgid "Default WordPress Role"
605
  msgstr ""
606
 
607
+ #: simple-membership/views/admin_add_level.php:19
608
+ #: simple-membership/views/admin_edit_level.php:18
609
+ msgid "Access Duration"
610
  msgstr ""
611
 
612
+ #: simple-membership/views/admin_add_level.php:22
613
+ msgid "No Expiry (Access for this level will not expire until cancelled"
614
+ msgstr ""
615
+
616
+ #: simple-membership/views/admin_add_level.php:23
617
+ #: simple-membership/views/admin_add_level.php:25
618
+ #: simple-membership/views/admin_add_level.php:27
619
+ #: simple-membership/views/admin_add_level.php:29
620
+ #: simple-membership/views/admin_edit_level.php:22
621
+ #: simple-membership/views/admin_edit_level.php:25
622
+ #: simple-membership/views/admin_edit_level.php:28
623
+ #: simple-membership/views/admin_edit_level.php:31
624
+ msgid "Expire After"
625
+ msgstr ""
626
+
627
+ #: simple-membership/views/admin_add_level.php:24
628
+ #: simple-membership/views/admin_edit_level.php:23
629
+ msgid "Days (Access expires after given number of days)"
630
  msgstr ""
631
 
632
+ #: simple-membership/views/admin_add_level.php:26
633
+ msgid "Weeks (Access expires after given number of weeks"
634
  msgstr ""
635
 
636
+ #: simple-membership/views/admin_add_level.php:28
637
+ #: simple-membership/views/admin_edit_level.php:29
638
+ msgid "Months (Access expires after given number of months)"
639
  msgstr ""
640
 
641
+ #: simple-membership/views/admin_add_level.php:30
642
+ #: simple-membership/views/admin_edit_level.php:32
643
+ msgid "Years (Access expires after given number of years)"
644
+ msgstr ""
645
+
646
+ #: simple-membership/views/admin_add_level.php:31
647
+ #: simple-membership/views/admin_edit_level.php:34
648
+ msgid "Fixed Date Expiry"
649
+ msgstr ""
650
+
651
+ #: simple-membership/views/admin_add_level.php:32
652
+ #: simple-membership/views/admin_edit_level.php:35
653
+ msgid "(Access expires on a fixed date)"
654
+ msgstr ""
655
+
656
+ #: simple-membership/views/admin_add_level.php:36
657
+ msgid "Access to older posts."
658
+ msgstr ""
659
+
660
+ #: simple-membership/views/admin_add_level.php:39
661
+ msgid "Only allow access to posts published after the user's join date."
662
+ msgstr ""
663
+
664
+ #: simple-membership/views/admin_add_level.php:45
665
  msgid "Add New Membership Level "
666
  msgstr ""
667
 
668
+ #: simple-membership/views/admin_add_ons_page.php:6
669
+ msgid "Simple WP Membership::Add-ons"
670
+ msgstr ""
671
+
672
+ #: simple-membership/views/admin_category_list.php:2
673
+ msgid "Simple WP Membership::Categories"
674
+ msgstr ""
675
+
676
+ #: simple-membership/views/admin_category_list.php:7
677
+ msgid ""
678
+ "First of all, globally protect the category on your site by selecting "
679
+ "\"General Protection\" from the drop-down box below and then select the "
680
+ "categories that should be protected from non-logged in users."
681
+ msgstr ""
682
+
683
+ #: simple-membership/views/admin_category_list.php:10
684
+ msgid ""
685
+ "Next, select an existing membership level from the drop-down box below and "
686
+ "then select the categories you want to grant access to (for that particular "
687
+ "membership level)."
688
+ msgstr ""
689
+
690
+ #: simple-membership/views/admin_edit.php:5
691
  msgid "Edit Member"
692
  msgstr ""
693
 
694
+ #: simple-membership/views/admin_edit.php:6
695
  msgid "Edit existing member details."
696
  msgstr ""
697
 
698
+ #: simple-membership/views/admin_edit.php:9
699
+ #: simple-membership/views/login.php:5
700
  msgid "Username"
701
  msgstr ""
702
 
703
+ #: simple-membership/views/admin_edit.php:17
704
+ msgid "(twice, leave empty to retain old password)"
705
+ msgstr ""
706
+
707
+ #: simple-membership/views/admin_edit.php:33
708
+ msgid "Notify User"
709
+ msgstr ""
710
+
711
+ #: simple-membership/views/admin_edit.php:40
712
  msgid "Edit User "
713
  msgstr ""
714
 
715
+ #: simple-membership/views/admin_edit_level.php:5
716
  msgid "Edit membership level"
717
  msgstr ""
718
 
719
+ #: simple-membership/views/admin_edit_level.php:6
720
  msgid "Edit membership level."
721
  msgstr ""
722
 
723
+ #: simple-membership/views/admin_edit_level.php:21
724
+ msgid "No Expiry (Access for this level will not expire until cancelled)"
725
+ msgstr ""
726
+
727
+ #: simple-membership/views/admin_edit_level.php:26
728
+ msgid "Weeks (Access expires after given number of weeks)"
729
+ msgstr ""
730
+
731
+ #: simple-membership/views/admin_edit_level.php:40
732
+ msgid "Protect Older Posts (optional)"
733
+ msgstr ""
734
+
735
+ #: simple-membership/views/admin_edit_level.php:43
736
+ msgid ""
737
+ "Only allow access to protected posts published after the members's join date."
738
+ msgstr ""
739
+
740
+ #: simple-membership/views/admin_edit_level.php:51
741
  msgid "Edit Membership Level "
742
  msgstr ""
743
 
744
+ #: simple-membership/views/admin_members.php:2
745
  msgid "Simple WP Membership::Members"
746
  msgstr ""
747
 
748
+ #: simple-membership/views/admin_members.php:3
749
+ #: simple-membership/views/admin_members.php:19
750
+ #: simple-membership/views/admin_membership_levels.php:20
751
  msgid "Add New"
752
  msgstr ""
753
 
754
+ #: simple-membership/views/admin_members.php:9
755
+ #: simple-membership/views/admin_membership_levels.php:10
756
  msgid "search"
757
  msgstr ""
758
 
759
+ #: simple-membership/views/admin_membership_levels.php:2
760
  msgid "Simple WP Membership::Membership Levels"
761
  msgstr ""
762
 
763
+ #: simple-membership/views/admin_membership_level_menu.php:2
764
  msgid "Membership level"
765
  msgstr ""
766
 
767
+ #: simple-membership/views/admin_membership_level_menu.php:3
768
  msgid "Manage Content Production"
769
  msgstr ""
770
 
771
+ #: simple-membership/views/admin_membership_level_menu.php:4
772
+ msgid "Category Protection"
773
+ msgstr ""
774
+
775
+ #: simple-membership/views/admin_membership_manage.php:17
776
  msgid "Example Content Protection Settings"
777
  msgstr ""
778
 
779
+ #: simple-membership/views/admin_member_form_common_part.php:23
780
+ msgid "Gender"
781
  msgstr ""
782
 
783
+ #: simple-membership/views/admin_member_form_common_part.php:30
784
+ #: simple-membership/views/edit.php:28
785
+ msgid "Phone"
786
  msgstr ""
787
 
788
+ #: simple-membership/views/admin_member_form_common_part.php:34
789
+ #: simple-membership/views/edit.php:32
790
+ msgid "Street"
 
 
791
  msgstr ""
792
 
793
+ #: simple-membership/views/admin_member_form_common_part.php:38
794
+ #: simple-membership/views/edit.php:36
795
+ msgid "City"
796
  msgstr ""
797
 
798
+ #: simple-membership/views/admin_member_form_common_part.php:42
799
+ #: simple-membership/views/edit.php:40
800
+ msgid "State"
801
  msgstr ""
802
 
803
+ #: simple-membership/views/admin_member_form_common_part.php:46
804
+ #: simple-membership/views/edit.php:44
805
+ msgid "Zipcode"
806
+ msgstr ""
807
+
808
+ #: simple-membership/views/admin_member_form_common_part.php:50
809
+ #: simple-membership/views/edit.php:48
810
+ msgid "Country"
811
+ msgstr ""
812
+
813
+ #: simple-membership/views/admin_member_form_common_part.php:54
814
+ msgid "Company"
815
+ msgstr ""
816
+
817
+ #: simple-membership/views/admin_member_form_common_part.php:58
818
+ msgid "Member Since"
819
  msgstr ""
820
 
821
+ #: simple-membership/views/admin_payment_settings.php:33
822
  msgid "PayPal Integration Settings"
823
  msgstr ""
824
 
825
+ #: simple-membership/views/admin_payment_settings.php:36
826
  msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
827
  msgstr ""
828
 
829
+ #: simple-membership/views/admin_payment_settings.php:39
830
  msgid "Enter the Membership Level ID"
831
  msgstr ""
832
 
833
+ #: simple-membership/views/admin_payment_settings.php:41
834
  msgid "Generate Code"
835
  msgstr ""
836
 
837
+ #: simple-membership/views/admin_tools_settings.php:9
838
  msgid "Generate a Registration Completion link"
839
  msgstr ""
840
 
841
+ #: simple-membership/views/admin_tools_settings.php:12
842
  msgid ""
843
  "You can manually generate a registration completion link here and give it to "
844
  "your customer if they have missed the email that was automatically sent out "
845
  "to them after the payment."
846
  msgstr ""
847
 
848
+ #: simple-membership/views/admin_tools_settings.php:17
849
  msgid "Generate Registration Completion Link"
850
  msgstr ""
851
 
852
+ #: simple-membership/views/admin_tools_settings.php:20
853
  msgid "OR"
854
  msgstr ""
855
 
856
+ #: simple-membership/views/admin_tools_settings.php:21
857
  msgid "For All Pending Registrations"
858
  msgstr ""
859
 
860
+ #: simple-membership/views/admin_tools_settings.php:24
861
  msgid "Registration Completion Links Will Appear Below:"
862
  msgstr ""
863
 
864
+ #: simple-membership/views/admin_tools_settings.php:31
865
  msgid "Send Registration Reminder Email too"
866
  msgstr ""
867
 
868
+ #: simple-membership/views/admin_tools_settings.php:34
869
  msgid "Submit"
870
  msgstr ""
871
 
872
+ #: simple-membership/views/edit.php:58
873
  msgid "Update"
874
  msgstr ""
875
 
876
+ #: simple-membership/views/forgot_password.php:5
877
  msgid "Email Address"
878
  msgstr ""
879
 
880
+ #: simple-membership/views/forgot_password.php:12
881
  msgid "Reset Password"
882
  msgstr ""
883
 
884
+ #: simple-membership/views/loggedin.php:3
885
  msgid "Logged in as"
886
  msgstr ""
887
 
888
+ #: simple-membership/views/loggedin.php:11
889
  msgid "Membership"
890
  msgstr ""
891
 
892
+ #: simple-membership/views/loggedin.php:15
893
  msgid "Account Expiry"
894
  msgstr ""
895
 
896
+ #: simple-membership/views/loggedin.php:19
897
  msgid "Logout"
898
  msgstr ""
899
 
900
+ #: simple-membership/views/login.php:18
901
  msgid "Remember Me"
902
  msgstr ""
903
 
904
+ #: simple-membership/views/login.php:24
905
  msgid "Forgot Password"
906
  msgstr ""
readme.txt CHANGED
@@ -1,10 +1,10 @@
1
  === Simple Membership ===
2
- Contributors: smp7, wp.insider
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 access, Restrict content, admin, access control, subscription, teaser, protection
5
  Requires at least: 3.3
6
- Tested up to: 4.0
7
- Stable tag: 1.8.0
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -29,6 +29,9 @@ You can configure it to have free and/or paid memberships on your site. Paid mem
29
 
30
  Both one time and recurring/subscription payments are supported.
31
 
 
 
 
32
  = Member Login Widget on The Sidebar =
33
  You can easily add a member login widget on the sidebar of your site. Simply use the login form shortcode in the sidebar widget.
34
 
@@ -50,11 +53,18 @@ You can create a free forum user account and ask your questions.
50
  * Show teaser content to convert visitors into members.
51
  * Comments on your protected posts will also be protected automatically.
52
  * There is an option to enable debug logging so you can troubleshoot membership payment related issues easily (if any).
 
53
  * Membership management side is handled by the plugin.
 
54
  * Ability to import WordPress users as members.
55
  * Can be translated to any language.
56
  * Hide the admin toolbar from the frontend of your site.
 
 
57
  * The login and registration widgets will be responsive if you are using a responsive theme.
 
 
 
58
 
59
  = Language Translations =
60
 
@@ -62,9 +72,19 @@ The following language translations are already available:
62
 
63
  * English
64
  * Spanish
 
65
  * French
66
  * Chinese
67
  * Portuguese (Brazil)
 
 
 
 
 
 
 
 
 
68
 
69
  You can translate the plugin using the language [translation documentation](https://simple-membership-plugin.com/translate-simple-membership-plugin/).
70
 
@@ -86,6 +106,157 @@ https://simple-membership-plugin.com/
86
 
87
  == Changelog ==
88
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
89
  = 1.8.0 =
90
  - Added a new feature called "more tag protection" to enable teaser content. Read the [teaser content documentation](https://simple-membership-plugin.com/creating-teaser-content-membership-site/) for more info.
91
  - Added Portuguese (Brazil) language translation to the plugin. The translation was submitted by Rachel Oakes.
@@ -165,9 +336,7 @@ http://wordpress.org/plugins/simple-membership-after-login-redirection/
165
  - First commit to WordPress repository.
166
 
167
  == Upgrade Notice ==
168
-
169
- None
170
 
171
  == Arbitrary section ==
172
-
173
  None
1
  === Simple Membership ===
2
+ 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,
5
  Requires at least: 3.3
6
+ Tested up to: 4.2
7
+ Stable tag: 2.2.4
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
29
 
30
  Both one time and recurring/subscription payments are supported.
31
 
32
+ = Membership Payments Log =
33
+ All the payments from your members are recorded in the plugin. You can view them anytime by visiting the payments menu from the admin dashboard.
34
+
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
 
53
  * Show teaser content to convert visitors into members.
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.
60
  * Can be translated to any language.
61
  * Hide the admin toolbar from the frontend of your site.
62
+ * Allow your members to deleter their membership accounts.
63
+ * Send quick notification email to your members.
64
  * The login and registration widgets will be responsive if you are using a responsive theme.
65
+ * Front-end member registration page.
66
+ * Front-end member profiles.
67
+ * Front-end member login page.
68
 
69
  = Language Translations =
70
 
72
 
73
  * English
74
  * Spanish
75
+ * German
76
  * French
77
  * Chinese
78
  * Portuguese (Brazil)
79
+ * Swedish
80
+ * Macedonian
81
+ * Polish
82
+ * Turkish
83
+ * Russian
84
+ * Dutch (Netherlands)
85
+ * Romanian
86
+ * Danish
87
+ * Lithuanian
88
 
89
  You can translate the plugin using the language [translation documentation](https://simple-membership-plugin.com/translate-simple-membership-plugin/).
90
 
106
 
107
  == Changelog ==
108
 
109
+ = 2.2.4 =
110
+ - Fixed an issue with not being able to unprotect the category protection.
111
+ - Minor refactoring work with the classes.
112
+
113
+ = 2.2.3 =
114
+ - Updated the category protection interface to use the get_terms() function.
115
+ - Added a new Utility class that has some helpful functions (example: check if a member is logged into the site).
116
+
117
+ = 2.2.2 =
118
+ - All the membership payments are now recorded in the payments table.
119
+ - Added a new menu item (Payments) to show all the membership payments and transactions.
120
+ - Added Lithuanian language translation to the plugin. The translation was submitted by Daiva Pakalne.
121
+ - Fixed an invalid argument error.
122
+
123
+ = 2.2.1 =
124
+ - Added a new table for logging the membership payments/transactions in the future.
125
+ - Made some enhancements in the installer class so it can handle both the WP Multi-site and single site setup via the same function.
126
+
127
+ = 2.2 =
128
+ - Added a new feature to allow expired members to be able to log into the system (to allow easy account renewal).
129
+ - The email address value of a member is now editable from the admin dashboard and in the profile edit form.
130
+ - Added CSS classes around some of the messages for styling purpose.
131
+ - Some translation updates.
132
+
133
+ = 2.1.9 =
134
+ - Improved the password reset functionality.
135
+ - Improved the message that gets displayed after the password reset functionality is used.
136
+ - Updated the Portuguese (Brazil) language file.
137
+ - Improved the user login handling code.
138
+
139
+ = 2.1.8 =
140
+ - Improved the after logout redirection so it uses the home_url() value.
141
+ - Fixed a bug in the member table sorting functionality.
142
+ - The members table can now be sorted using ID column.
143
+
144
+
145
+ = 2.1.7 =
146
+ - Added a new feature to automatically delete pending membership accounts that are older than 1 or 2 months.
147
+ - Fixed an issue with the send notification to admin email settings not saving.
148
+
149
+ = 2.1.6 =
150
+ - Fixed a bug with new membership level creation with a number of days or weeks duration value.
151
+
152
+ = 2.1.5 =
153
+ - Improved the attachment protection so it doesn't protect when viewing from the admin side also.
154
+ - Removed a dubug dump statement.
155
+
156
+ = 2.1.4 =
157
+ - Improved the login authentication handler logic.
158
+ - Fixed the restricted image icon URL.
159
+ - Updated the restricted attachment icon to use a better one.
160
+
161
+ = 2.1.3 =
162
+ - Added a new feature to allow the members to delete their accounts.
163
+
164
+ = 2.1.2 =
165
+ - Updated the membership subscription payment cancellation handler and made it more robust.
166
+ - Added an option in the settings to reset the debug log files.
167
+
168
+ = 2.1.1 =
169
+ - Enhanced the username exists function query.
170
+ - Updated one of the notice messages.
171
+
172
+ = 2.1 =
173
+ - Changed the PHP short tags to the standard tags
174
+ - Updated a message in the settings to make the usage instruction clear.
175
+ - Corrected a version number value.
176
+
177
+ = 2.0 =
178
+ - Improved some of the default content protection messages.
179
+ - Added Danish language translation to the plugin. The translation was submitted by Niels Boje Lund.
180
+
181
+ = 1.9.9 =
182
+ - WP Multi-site network activation error fix.
183
+
184
+ = 1.9.8 =
185
+ - Fixed an issue with the phone number not saving.
186
+ - Fixed an issue with the new fixed membership expiry date feature.
187
+
188
+ = 1.9.7 =
189
+ - Minor UI fix in the add new membership level menu.
190
+
191
+ = 1.9.6 =
192
+ - Added a new feature to allow fixed expiry date for membership levels.
193
+ - Added Russian language translation to the plugin. The translation was submitted by Vladimir Vaulin.
194
+ - Added Dutch language translation to the plugin. The translation was submitted by Henk Rostohar.
195
+ - Added Romanian language translation to the plugin. The translation was submitted by Iulian Cazangiu.
196
+ - Some minor code refactoring.
197
+
198
+ = 1.9.5 =
199
+ - Added a check to show the content of a protected post/page if the admin is previewing the post or page.
200
+ - Fixed an issue with the quick notification email feature not filtering the email shortcodes.
201
+ - Improved the login form's HTML and CSS.
202
+
203
+ = 1.9.4 =
204
+ - Added a new feature to send an email notification to a member when you edit a user's record. This will be helpful to notify members when you activate their account.
205
+ - Fixed an issue with "pending" member account getting set to active when the record is edited from admin side.
206
+
207
+ = 1.9.3 =
208
+ - Fixed an issue with the featured image not showing properly for some protected blog posts.
209
+
210
+ = 1.9.2 =
211
+ - Fixed the edit link in the member search interface.
212
+
213
+ = 1.9.1 =
214
+ - Added Turkish language translation to the plugin. The translation was submitted by Murat SEYISOGLU.
215
+ - WordPrss 4.1 compatibility.
216
+
217
+ = 1.9.0 =
218
+ - Fixed a bug in the default account setting option (the option to do manual approval for membership).
219
+ - Added Polish language translation to the plugin. The translation was submitted by Maytki.
220
+ - Added Macedonian language translation to the plugin. The translation was submitted by I. Ivanov.
221
+
222
+ = 1.8.9 =
223
+ - Added a new feature so you can set the default account status of your members. This can useful if you want to manually approve members after they signup.
224
+
225
+ = 1.8.8 =
226
+ - Fixed an issue with the account expiry when it is set to 1 year.
227
+
228
+ = 1.8.7 =
229
+ - Updated the registration form validation code to not accept apostrophe character in the username field.
230
+ - Added a new tab for showing addon settings options (some of the addons will be able to utilize this settings tab).
231
+ - Added a new action hook in the addon settings tab.
232
+ - Moved the plugin's main class initialization code outside of the plugins_loaded hook.
233
+
234
+ = 1.8.6 =
235
+ - Fixed an email validation issue with paid membership registration process.
236
+ - Added a new free addon to customize the protected content message.
237
+
238
+ = 1.8.5 =
239
+ - Added category protection feature under the membership level menu.
240
+ - Fixed a bug with paid membership paypal IPN processing code.
241
+
242
+ = 1.8.4 =
243
+ - The Password field won't use the browser's autofill option in the admin interface when editing a member info.
244
+
245
+ = 1.8.3 =
246
+ - Added Swedish language translation to the plugin. The translation was submitted by Geson Perry.
247
+ - There is now a cronjob in the plugin to expire the member profiles in the background.
248
+ - Released a new addon - https://simple-membership-plugin.com/simple-membership-registration-form-shortcode-generator/
249
+ - Added a menu called "Add-ons" for listing all the extensions of this plugin.
250
+
251
+ = 1.8.2 =
252
+ - Updated the members expiry check code at the time of login and made it more robust.
253
+
254
+ = 1.8.1 =
255
+ - MySQL database character set and collation values are read from the system when creating the tables.
256
+ - Added German language translation file to the plugin.
257
+ - Some code refactoring work.
258
+ - Added a new feature to allow admins to create a registration form for a particular membership level.
259
+
260
  = 1.8.0 =
261
  - Added a new feature called "more tag protection" to enable teaser content. Read the [teaser content documentation](https://simple-membership-plugin.com/creating-teaser-content-membership-site/) for more info.
262
  - Added Portuguese (Brazil) language translation to the plugin. The translation was submitted by Rachel Oakes.
336
  - First commit to WordPress repository.
337
 
338
  == Upgrade Notice ==
339
+ If you are using the form builder adddon, then that addon will need to be upgraded to v1.1 also.
 
340
 
341
  == Arbitrary section ==
 
342
  None
simple-wp-membership.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
  /*
3
  Plugin Name: Simple WordPress Membership
4
- Version: v1.8.0
5
  Plugin URI: https://simple-membership-plugin.com/
6
  Author: smp7, wp.insider
7
  Author URI: https://simple-membership-plugin.com/
@@ -14,8 +14,10 @@ if (realpath (__FILE__) === realpath ($_SERVER["SCRIPT_FILENAME"])){
14
  }
15
 
16
  include_once('classes/class.simple-wp-membership.php');
 
17
 
18
- define('SIMPLE_WP_MEMBERSHIP_VER', '1.8.0');
 
19
  define('SIMPLE_WP_MEMBERSHIP_SITE_HOME_URL', home_url());
20
  define('SIMPLE_WP_MEMBERSHIP_PATH', dirname(__FILE__) . '/');
21
  define('SIMPLE_WP_MEMBERSHIP_URL', plugins_url('',__FILE__));
@@ -27,10 +29,10 @@ define('SIMPLE_WP_MEMBERSHIP_SEC_AUTH', 'simple_wp_membership_sec_'. COOKIEHASH)
27
  register_activation_hook( SIMPLE_WP_MEMBERSHIP_PATH .'simple-wp-membership.php', 'SimpleWpMembership::activate' );
28
  register_deactivation_hook( SIMPLE_WP_MEMBERSHIP_PATH . 'simple-wp-membership.php', 'SimpleWpMembership::deactivate' );
29
  add_action('swpm_login','SimpleWpMembership::swpm_login', 10,3);
30
- add_action('plugins_loaded', "swpm_plugins_loaded");
31
- function swpm_plugins_loaded(){
32
- new SimpleWpMembership();
33
- }
34
  //Add settings link in plugins listing page
35
  function swpm_add_settings_link($links, $file) {
36
  if ($file == plugin_basename(__FILE__)) {
1
  <?php
2
  /*
3
  Plugin Name: Simple WordPress Membership
4
+ Version: v2.2.4
5
  Plugin URI: https://simple-membership-plugin.com/
6
  Author: smp7, wp.insider
7
  Author URI: https://simple-membership-plugin.com/
14
  }
15
 
16
  include_once('classes/class.simple-wp-membership.php');
17
+ include_once('classes/class.bCronJob.php');
18
 
19
+ define('SIMPLE_WP_MEMBERSHIP_VER', '2.2.4');
20
+ define('SIMPLE_WP_MEMBERSHIP_DB_VER', '1.2');
21
  define('SIMPLE_WP_MEMBERSHIP_SITE_HOME_URL', home_url());
22
  define('SIMPLE_WP_MEMBERSHIP_PATH', dirname(__FILE__) . '/');
23
  define('SIMPLE_WP_MEMBERSHIP_URL', plugins_url('',__FILE__));
29
  register_activation_hook( SIMPLE_WP_MEMBERSHIP_PATH .'simple-wp-membership.php', 'SimpleWpMembership::activate' );
30
  register_deactivation_hook( SIMPLE_WP_MEMBERSHIP_PATH . 'simple-wp-membership.php', 'SimpleWpMembership::deactivate' );
31
  add_action('swpm_login','SimpleWpMembership::swpm_login', 10,3);
32
+
33
+ $simple_membership = new SimpleWpMembership();
34
+ $simple_membership_cron = new BCronJob();
35
+
36
  //Add settings link in plugins listing page
37
  function swpm_add_settings_link($links, $file) {
38
  if ($file == plugin_basename(__FILE__)) {
views/account_delete_warning.php ADDED
@@ -0,0 +1,16 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ <header class="entry-header">
3
+ Delete Account
4
+ </header>
5
+ <?php if (!empty($msg)) echo '<p>' . $msg . '</p>' ; ?>
6
+ <p style="color:red;">
7
+ You are about to delete an account.This will delete user data associated with this account.
8
+ It will also delete associated wordpress account.
9
+ (NOTE: For consistency, we do not allow deleting any associated wordpress account with administrator role).
10
+ Continue?
11
+ </p>
12
+ <form method="post">
13
+ <p>Password: <input name="account_delete_confirm_pass" type="password"></p>
14
+ <p><input type="submit" name="confirm" value="Confirm" /> </p>
15
+ <?php wp_nonce_field( 'swpm_account_delete_confirm', 'account_delete_confirm_nonce' ); ?>
16
+ </form>
views/add.php CHANGED
@@ -1,82 +1,49 @@
1
  <div class="swpm-registration-widget-form">
2
  <form id="swpm-registration-form" name="swpm-registration-form" method="post" action="">
3
- <table>
4
- <tr>
5
- <td><label for="user_name"><?= BUtils::_('User Name') ?></label></td>
6
- <td><input type="text" id="user_name" class="validate[required,custom[SWPMUserName],minSize[4],ajax[ajaxUserCall]]" value="<?php echo $user_name;?>" tabindex="1" size="50" name="user_name" /></td>
7
- </tr>
8
- <tr>
9
- <td><label for="email"><?= BUtils::_('Email') ?></label></td>
10
- <td><input type="text" id="email" class="validate[required,custom[email],ajax[ajaxEmailCall]]" value="<?php echo $email;?>" tabindex="2" size="50" name="email" /></td>
11
- </tr>
12
- <tr>
13
- <td><label for="password"><?= BUtils::_('Password') ?></label></td>
14
- <td><input type="password" id="password" value="" tabindex="3" size="50" name="password" /></td>
15
- </tr>
16
- <tr>
17
- <td><label for="password_re"><?= BUtils::_('Repeat Password') ?></label></td>
18
- <td><input type="password" id="password_re" value="" tabindex="4" size="50" name="password_re" /></td>
19
- </tr>
20
- <tr>
21
- <td><label for="first_name"><?= BUtils::_('First Name') ?></label></td>
22
- <td><input type="text" id="first_name" value="<?php echo $first_name;?>" tabindex="5" size="50" name="first_name" /></td>
23
- </tr>
24
- <tr>
25
- <td><label for="last_name"><?= BUtils::_('Last Name') ?></label></td>
26
- <td><input type="text" id="last_name" value="<?php echo $last_name;?>" tabindex="6" size="50" name="last_name" /></td>
27
- </tr>
28
- <!--<tr>
29
- <td><label for="gender"><?= BUtils::_('Gender'); ?></label></td>
30
- <td><select name="gender" id="gender">
31
- <?= BUtils::gender_dropdown() ?>
32
- </select>
33
- </td>
34
- </tr>
35
- <tr>
36
- <td><label for="phone"><?= BUtils::_('Phone') ?></label></td>
37
- <td><input type="text" id="phone" value="<?php echo $phone;?>" tabindex="7" size="50" name="phone" /></td>
38
- </tr>
39
- <tr>
40
- <td><label for="address_street"><?= BUtils::_('Street') ?></label></td>
41
- <td><input type="text" id="address_street" value="<?php echo $address_street;?>" tabindex="8" size="50" name="address_street" /></td>
42
- </tr>
43
- <tr>
44
- <td><label for="address_city"><?= BUtils::_('City') ?> </label></td>
45
- <td><input type="text" id="address_city" value="<?php echo $address_city;?>" tabindex="9" size="50" name="address_city" /></td>
46
- </tr>
47
- <tr>
48
- <td><label for="address_state"><?= BUtils::_('State') ?></label></td>
49
- <td><input type="text" id="address_state" value="<?php echo $address_state;?>" tabindex="10" size="50" name="address_state" /></td>
50
- </tr>
51
- <tr>
52
- <td><label for="address_zipcode"><?= BUtils::_('Zipcode') ?></label></td>
53
- <td><input type="text" id="address_zipcode" value="<?php echo $address_zipcode;?>" tabindex="11" size="50" name="address_zipcode" /></td>
54
- </tr>
55
- <tr>
56
- <td><label for="country"><?= BUtils::_('Country') ?></label></td>
57
- <td><input type="text" id="country" value="<?php echo $country;?>" tabindex="12" size="50" name="country" /></td>
58
- </tr>
59
- <tr>
60
- <td ><label for="company_name"><?= BUtils::_('Company') ?></label></td>
61
- <td><input name="company_name" type="text" id="company_name" tabindex="13" size="50" value="<?php echo esc_attr($company_name); ?>" /></td>
62
- </tr>-->
63
- <tr>
64
- <td><label for="membership_level"><?= BUtils::_('Membership Level') ?></label></td>
65
- <td>
66
- <?php echo $membership_level_alias;?>
67
- <input type="hidden" value="<?php echo $membership_level;?>" size="50" name="membership_level" id="membership_level" />
68
- </td>
69
- </tr>
70
- </table>
71
- <p align="center"><input type="submit" value="<?= BUtils::_('Register') ?>" tabindex="6" id="submit" name="swpm_registration_submit" /></p>
72
- <input type="hidden" name="action" value="custom_posts" />
73
- <?php wp_nonce_field( 'name_of_my_action','name_of_nonce_field' ); ?>
74
  </form>
75
  </div>
76
  <script>
77
  jQuery(document).ready(function($){
78
- $.validationEngineLanguage.allRules['ajaxUserCall']['url']= '<?php echo admin_url('admin-ajax.php');?>';
79
- $.validationEngineLanguage.allRules['ajaxEmailCall']['url']= '<?php echo admin_url('admin-ajax.php');?>';
80
- $("#swpm-registration-form").validationEngine('attach');
 
81
  });
82
  </script>
1
  <div class="swpm-registration-widget-form">
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 BUtils::_('User Name') ?></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;?>" tabindex="1" size="50" name="user_name" /></td>
8
+ </tr>
9
+ <tr>
10
+ <td><label for="email"><?php echo BUtils::_('Email') ?></label></td>
11
+ <td><input type="text" id="email" class="validate[required,custom[email],ajax[ajaxEmailCall]]" value="<?php echo $email;?>" tabindex="2" size="50" name="email" /></td>
12
+ </tr>
13
+ <tr>
14
+ <td><label for="password"><?php echo BUtils::_('Password') ?></label></td>
15
+ <td><input type="password" autocomplete="off" id="password" value="" tabindex="3" size="50" name="password" /></td>
16
+ </tr>
17
+ <tr>
18
+ <td><label for="password_re"><?php echo BUtils::_('Repeat Password') ?></label></td>
19
+ <td><input type="password" autocomplete="off" id="password_re" value="" tabindex="4" size="50" name="password_re" /></td>
20
+ </tr>
21
+ <tr>
22
+ <td><label for="first_name"><?php echo BUtils::_('First Name') ?></label></td>
23
+ <td><input type="text" id="first_name" value="<?php echo $first_name;?>" tabindex="5" size="50" name="first_name" /></td>
24
+ </tr>
25
+ <tr>
26
+ <td><label for="last_name"><?php echo BUtils::_('Last Name') ?></label></td>
27
+ <td><input type="text" id="last_name" value="<?php echo $last_name;?>" tabindex="6" size="50" name="last_name" /></td>
28
+ </tr>
29
+ <tr>
30
+ <td><label for="membership_level"><?php echo BUtils::_('Membership Level') ?></label></td>
31
+ <td>
32
+ <?php echo $membership_level_alias;?>
33
+ <input type="hidden" value="<?php echo $membership_level;?>" size="50" name="membership_level" tabindex="7" id="membership_level" />
34
+ </td>
35
+ </tr>
36
+ </table>
37
+ <p align="center"><input type="submit" value="<?php echo BUtils::_('Register') ?>" tabindex="8" id="submit" name="swpm_registration_submit" /></p>
38
+ <input type="hidden" name="action" value="custom_posts" />
39
+ <?php wp_nonce_field( 'name_of_my_action','name_of_nonce_field' ); ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
40
  </form>
41
  </div>
42
  <script>
43
  jQuery(document).ready(function($){
44
+ $.validationEngineLanguage.allRules['ajaxUserCall']['url']= '<?php echo admin_url('admin-ajax.php');?>';
45
+ $.validationEngineLanguage.allRules['ajaxEmailCall']['url']= '<?php echo admin_url('admin-ajax.php');?>';
46
+ $.validationEngineLanguage.allRules['ajaxEmailCall']['extraData'] = '&action=swpm_validate_email&member_id=<?php echo filter_input(INPUT_GET, 'member_id');?>';
47
+ $("#swpm-registration-form").validationEngine('attach');
48
  });
49
  </script>
views/admin_add.php CHANGED
@@ -1,21 +1,41 @@
1
- <div class="wrap" id="swpm-profile-page">
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' ) ?>
6
- <h3><?= BUtils::_('Add Member') ?></h3>
7
- <p><?= BUtils::_('Create a brand new user and add it to this site.'); ?></p>
8
  <table class="form-table">
9
  <tbody>
10
  <tr class="form-required">
11
- <th scope="row"><label for="user_name"><?= BUtils::_('User name'); ?> <span class="description"><?= BUtils::_('(required)'); ?></span></label></th>
12
- <td><input class="regular-text validate[required,custom[SWPMUserName],minSize[4],ajax[ajaxUserCall]]" name="user_name" type="text" id="user_name" value="<?php echo esc_attr($user_name); ?>" aria-required="true" /></td>
13
  </tr>
14
  <tr class="form-required">
15
- <th scope="row"><label for="email"><?= BUtils::_('E-mail'); ?> <span class="description"><?= BUtils::_('(required)'); ?></span></label></th>
16
  <td><input name="email" class="regular-text validate[required,custom[email],ajax[ajaxEmailCall]]" type="text" id="email" value="<?php echo esc_attr($email); ?>" /></td>
17
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
18
  <?php include('admin_member_form_common_part.php');?>
 
 
 
19
  <?php submit_button( BUtils::_('Add New Member '), 'primary', 'createswpmuser', true, array( 'id' => 'createswpmusersub' ) ); ?>
20
  </form>
21
  </div>
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' ) ?>
6
+ <h3><?php echo BUtils::_('Add Member') ?></h3>
7
+ <p><?php echo BUtils::_('Create a brand new user and add it to this site.'); ?></p>
8
  <table class="form-table">
9
  <tbody>
10
  <tr class="form-required">
11
+ <th scope="row"><label for="user_name"><?php echo BUtils::_('User name'); ?> <span class="description"><?php echo BUtils::_('(required)'); ?></span></label></th>
12
+ <td><input class="regular-text validate[required,custom[noapostrophe],custom[SWPMUserName],minSize[4],ajax[ajaxUserCall]]" name="user_name" type="text" id="user_name" value="<?php echo esc_attr(stripslashes($user_name)); ?>" aria-required="true" /></td>
13
  </tr>
14
  <tr class="form-required">
15
+ <th scope="row"><label for="email"><?php echo BUtils::_('E-mail'); ?> <span class="description"><?php echo BUtils::_('(required)'); ?></span></label></th>
16
  <td><input name="email" class="regular-text validate[required,custom[email],ajax[ajaxEmailCall]]" type="text" id="email" value="<?php echo esc_attr($email); ?>" /></td>
17
  </tr>
18
+ <tr class="form-required">
19
+ <th scope="row"><label for="password"><?php echo BUtils::_('Password'); ?> <span class="description"><?php /* translators: password input field */_e('(twice, required)'); ?></span></label></th>
20
+ <td><input class="regular-text" name="password" type="password" id="pass1" autocomplete="off" />
21
+ <br />
22
+ <input class="regular-text" name="password_re" type="password" id="pass2" autocomplete="off" />
23
+ <br />
24
+ <div id="pass-strength-result"><?php echo BUtils::_('Strength indicator'); ?></div>
25
+ <p class="description indicator-hint"><?php echo BUtils::_('Hint: The password should be at least seven characters long. To make it stronger, use upper and lower case letters, numbers and symbols like ! " ? $ % ^ &amp; ).'); ?></p>
26
+ </td>
27
+ </tr>
28
+ <tr>
29
+ <th scope="row"><label for="account_state"><?php echo BUtils::_('Account Status'); ?></label></th>
30
+ <td><select class="regular-text" name="account_state" id="account_state">
31
+ <?php echo BUtils::account_state_dropdown('active');?>
32
+ </select>
33
+ </td>
34
+ </tr>
35
  <?php include('admin_member_form_common_part.php');?>
36
+ </tbody>
37
+ </table>
38
+ <?php include('admin_member_form_common_js.php');?>
39
  <?php submit_button( BUtils::_('Add New Member '), 'primary', 'createswpmuser', true, array( 'id' => 'createswpmusersub' ) ); ?>
40
  </form>
41
  </div>
views/admin_add_level.php CHANGED
@@ -3,53 +3,36 @@
3
  <form action="" method="post" name="swpm-create-level" id="swpm-create-level" class="validate"<?php do_action('level_new_form_tag');?>>
4
  <input name="action" type="hidden" value="createlevel" />
5
  <h3>Add Membership Level</h3>
6
- <p><?= BUtils::_('Create new membership level.'); ?></p>
7
  <?php wp_nonce_field( 'create-swpmlevel', '_wpnonce_create-swpmlevel' ) ?>
8
  <table class="form-table">
9
  <tbody>
10
  <tr>
11
- <th scope="row"><label for="alias"><?= BUtils::_('Membership Level Name'); ?> <span class="description"><?= BUtils::_('(required)'); ?></span></label></th>
12
  <td><input class="regular-text validate[required]" name="alias" type="text" id="alias" value="" aria-required="true" /></td>
13
  </tr>
14
  <tr class="form-field form-required">
15
- <th scope="row"><label for="role"><?= BUtils::_('Default WordPress Role'); ?> <span class="description"><?= BUtils::_('(required)'); ?></span></label></th>
16
  <td><select class="regular-text" name="role"><?php wp_dropdown_roles( 'subscriber' ); ?></select></td>
17
  </tr>
18
  <tr>
19
- <th scope="row"><label for="subscription_unit"><?= BUtils::_('Subscription Duration'); ?> <span class="description"><?= BUtils::_('(required)'); ?></span></label>
20
- </th>
21
- <td>
22
- <div class="color-option"><input name="subscript_duration_type" id="subscript_duration_noexpire" checked="checked" type="radio" value="0" class="tog">
23
- <table class="color-palette">
24
- <tbody>
25
- <tr>
26
- <td style="width: 60px;"><b><?= BUtils::_('No Expiry') ?></b></td>
27
- </tr>
28
- </tbody></table>
29
- </div>
30
- </td>
31
- </tr>
32
- <tr>
33
- <th></th>
34
  <td>
35
- <div class="color-option"><input name="subscript_duration_type" id="subscript_duration_expire" type="radio" value="1" class="tog">
36
- <table class="color-palette">
37
- <tbody><tr>
38
- <td style="background-color: #d1e5ee" title="fresh"><input type="text" class="validate[required]" size="3" id="subscription_period" name="subscription_period" value=""></td>
39
- <td style="background-color: #cfdfe9" title="fresh">
40
- <select id="subscription_unit" name="subscription_unit">
41
- <option value="Days">Days</option>
42
- <option value="Weeks">Weeks</option>
43
- <option value="Months">Months</option>
44
- <option value="Years">Years</option>
45
- </select>
46
- </td>
47
- </tr>
48
- </tbody></table>
49
- </div>
50
- </td>
51
  </tr>
52
- <?= apply_filters('swpm_admin_add_membership_level_ui', '');?>
53
  </tbody>
54
  </table>
55
  <?php submit_button( BUtils::_('Add New Membership Level '), 'primary', 'createswpmlevel', true, array( 'id' => 'createswpmlevelsub' ) ); ?>
@@ -57,17 +40,8 @@
57
  </div>
58
  <script>
59
  jQuery(document).ready(function($){
60
- $('.tog:radio').on('update_deps click',function(){
61
- if($(this).attr('checked')){
62
- $("#swpm-create-level").validationEngine('detach');
63
- if($(this).val() === '0')
64
- $('#subscription_period').removeClass('validate[required]');
65
- else if($(this).val() === '1')
66
- $('#subscription_period').addClass('validate[required]');
67
- $("#swpm-create-level").validationEngine('attach');
68
- }
69
- });
70
- $('.tog:radio').trigger('update_deps');
71
  });
72
  </script>
73
 
3
  <form action="" method="post" name="swpm-create-level" id="swpm-create-level" class="validate"<?php do_action('level_new_form_tag');?>>
4
  <input name="action" type="hidden" value="createlevel" />
5
  <h3>Add Membership Level</h3>
6
+ <p><?php echo BUtils::_('Create new membership level.'); ?></p>
7
  <?php wp_nonce_field( 'create-swpmlevel', '_wpnonce_create-swpmlevel' ) ?>
8
  <table class="form-table">
9
  <tbody>
10
  <tr>
11
+ <th scope="row"><label for="alias"><?php echo BUtils::_('Membership Level Name'); ?> <span class="description"><?php echo BUtils::_('(required)'); ?></span></label></th>
12
  <td><input class="regular-text validate[required]" name="alias" type="text" id="alias" value="" aria-required="true" /></td>
13
  </tr>
14
  <tr class="form-field form-required">
15
+ <th scope="row"><label for="role"><?php echo BUtils::_('Default WordPress Role'); ?> <span class="description"><?php echo BUtils::_('(required)'); ?></span></label></th>
16
  <td><select class="regular-text" name="role"><?php wp_dropdown_roles( 'subscriber' ); ?></select></td>
17
  </tr>
18
  <tr>
19
+ <th scope="row"><label for="subscription_period"><?php echo BUtils::_('Access Duration'); ?> <span class="description"><?php echo BUtils::_('(required)'); ?></span></label>
20
+ </th>
 
 
 
 
 
 
 
 
 
 
 
 
 
21
  <td>
22
+ <p><input type="radio" checked="checked" value="<?php echo BMembershipLevel::NO_EXPIRY?>" name="subscription_duration_type" /> <?php echo BUtils::_('No Expiry (Access for this level will not expire until cancelled')?>)</p>
23
+ <p><input type="radio" value="<?php echo BMembershipLevel::DAYS ?>" name="subscription_duration_type" /> <?php echo BUtils::_('Expire After')?>
24
+ <input type="text" value="" name="subscription_period_<?php echo BMembershipLevel::DAYS ?>"> <?php echo BUtils::_('Days (Access expires after given number of days)')?></p>
25
+ <p><input type="radio" value="<?php echo BMembershipLevel::WEEKS?>" name="subscription_duration_type" /> <?php echo BUtils::_('Expire After')?>
26
+ <input type="text" value="" name="subscription_period_<?php echo BMembershipLevel::WEEKS ?>"> <?php echo BUtils::_('Weeks (Access expires after given number of weeks')?></p>
27
+ <p><input type="radio" value="<?php echo BMembershipLevel::MONTHS?>" name="subscription_duration_type" /> <?php echo BUtils::_('Expire After')?>
28
+ <input type="text" value="" name="subscription_period_<?php echo BMembershipLevel::MONTHS?>"> <?php echo BUtils::_('Months (Access expires after given number of months)')?></p>
29
+ <p><input type="radio" value="<?php echo BMembershipLevel::YEARS?>" name="subscription_duration_type" /> <?php echo BUtils::_('Expire After')?>
30
+ <input type="text" value="" name="subscription_period_<?php echo BMembershipLevel::YEARS?>"> <?php echo BUtils::_('Years (Access expires after given number of years)')?></p>
31
+ <p><input type="radio" value="<?php echo BMembershipLevel::FIXED_DATE?>" name="subscription_duration_type" /> <?php echo BUtils::_('Fixed Date Expiry')?>
32
+ <input type="text" class="swpm-date-picker" value="<?php echo date('Y-m-d');?>" name="subscription_period_<?php echo BMembershipLevel::FIXED_DATE?>"> <?php echo BUtils::_('(Access expires on a fixed date)')?></p>
33
+ </td>
 
 
 
 
34
  </tr>
35
+ <?php echo apply_filters('swpm_admin_add_membership_level_ui', '');?>
36
  </tbody>
37
  </table>
38
  <?php submit_button( BUtils::_('Add New Membership Level '), 'primary', 'createswpmlevel', true, array( 'id' => 'createswpmlevelsub' ) ); ?>
40
  </div>
41
  <script>
42
  jQuery(document).ready(function($){
43
+ $("#swpm-create-level").validationEngine('attach');
44
+ $('.swpm-date-picker').dateinput({'format':'yyyy-mm-dd',selectors: true,yearRange:[-100,100]});
 
 
 
 
 
 
 
 
 
45
  });
46
  </script>
47
 
views/admin_add_ons_page.php ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $output = '';
3
+ echo '<link type="text/css" rel="stylesheet" href="' . SIMPLE_WP_MEMBERSHIP_URL . '/css/swpm.addons.listing.css" />' . "\n";
4
+ ?>
5
+
6
+ <h1><?php echo BUtils::_('Simple WP Membership::Add-ons') ?></h1>
7
+ <div class="wrap">
8
+
9
+ <?php
10
+ $addons_data = array();
11
+ $addon_1 = array(
12
+ 'name' => 'After Login Redirection',
13
+ 'thumbnail' => SIMPLE_WP_MEMBERSHIP_URL . '/images/addons/swpm-login-redirection.png',
14
+ 'description' => 'Allows you to configure after login redirection to a specific page based on the member\'s level',
15
+ 'page_url' => 'https://simple-membership-plugin.com/configure-login-redirection-members/',
16
+ );
17
+ array_push($addons_data, $addon_1);
18
+
19
+ $addon_2 = array(
20
+ 'name' => 'MailChimp Integration',
21
+ 'thumbnail' => SIMPLE_WP_MEMBERSHIP_URL . '/images/addons/mailchimp-integration.png',
22
+ 'description' => 'Allows you to signup the member to your MailChimp list after registration',
23
+ 'page_url' => 'https://simple-membership-plugin.com/signup-members-mailchimp-list/',
24
+ );
25
+ array_push($addons_data, $addon_2);
26
+
27
+ $addon_3 = array(
28
+ 'name' => 'Form Shortcode',
29
+ 'thumbnail' => SIMPLE_WP_MEMBERSHIP_URL . '/images/addons/form-shortcode-generator.png',
30
+ 'description' => 'Simple Membership Addon to generate form shortcode for specific membership level.',
31
+ 'page_url' => 'https://simple-membership-plugin.com/simple-membership-registration-form-shortcode-generator/',
32
+ );
33
+ array_push($addons_data, $addon_3);
34
+
35
+ $addon_4 = array(
36
+ 'name' => 'WP User Import',
37
+ 'thumbnail' => SIMPLE_WP_MEMBERSHIP_URL . '/images/addons/wp-user-import.png',
38
+ 'description' => 'Addon for importing existing Wordpress users to Simple Membership plugin',
39
+ 'page_url' => 'https://simple-membership-plugin.com/import-existing-wordpress-users-simple-membership-plugin/',
40
+ );
41
+ array_push($addons_data, $addon_4);
42
+
43
+ $addon_5 = array(
44
+ 'name' => 'Form Builder',
45
+ 'thumbnail' => SIMPLE_WP_MEMBERSHIP_URL . '/images/addons/swpm-form-builder.png',
46
+ 'description' => 'Allows you to fully customize the fields that appear on the registration and edit profile forms of your membership site',
47
+ 'page_url' => 'https://simple-membership-plugin.com/simple-membership-form-builder-addon/',
48
+ );
49
+ array_push($addons_data, $addon_5);
50
+
51
+ $addon_6 = array(
52
+ 'name' => 'Custom Messages',
53
+ 'thumbnail' => SIMPLE_WP_MEMBERSHIP_URL . '/images/addons/swpm-custom-messages.png',
54
+ 'description' => 'Custom Messages addon allows you to customize the content protection message that gets output from the membership plugin',
55
+ 'page_url' => 'https://simple-membership-plugin.com/simple-membership-custom-messages-addon/',
56
+ );
57
+ array_push($addons_data, $addon_6);
58
+
59
+ $addon_7 = array(
60
+ 'name' => 'Protect Older Posts',
61
+ 'thumbnail' => SIMPLE_WP_MEMBERSHIP_URL . '/images/addons/swpm-older-posts-protection.png',
62
+ 'description' => 'The protect older posts addon allows you to control protection of posts that were published before a member\'s access start date.',
63
+ 'page_url' => 'https://simple-membership-plugin.com/simple-membership-protect-older-posts-addon/',
64
+ );
65
+ array_push($addons_data, $addon_7);
66
+
67
+ foreach ($addons_data as $addon) {
68
+ $output .= '<div class="swpm_addon_item_canvas">';
69
+
70
+ $output .= '<div class="swpm_addon_item_thumb">';
71
+ $img_src = $addon['thumbnail'];
72
+ $output .= '<img src="' . $img_src . '" alt="' . $addon['name'] . '">';
73
+ $output .= '</div>'; //end thumbnail
74
+
75
+ $output .='<div class="swpm_addon_item_body">';
76
+ $output .='<div class="swpm_addon_item_name">';
77
+ $output .= '<a href="' . $addon['page_url'] . '" target="_blank">' . $addon['name'] . '</a>';
78
+ $output .='</div>'; //end name
79
+
80
+ $output .='<div class="swpm_addon_item_description">';
81
+ $output .= $addon['description'];
82
+ $output .='</div>'; //end description
83
+
84
+ $output .='<div class="swpm_addon_item_details_link">';
85
+ $output .='<a href="'.$addon['page_url'].'" class="swpm_addon_view_details" target="_blank">View Details</a>';
86
+ $output .='</div>'; //end detils link
87
+ $output .='</div>'; //end body
88
+
89
+ $output .= '</div>'; //end canvas
90
+ }
91
+
92
+ echo $output;
93
+ ?>
94
+
95
+ </div><!-- end of .wrap -->
views/admin_addon_settings.php ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php screen_icon( 'options-general' );?>
2
+ <h1><?php echo BUtils::_('Simple WP Membership::Settings')?></h1>
3
+ <div class="wrap">
4
+ <?php do_action("swpm-draw-tab"); ?>
5
+
6
+ <p>
7
+ <?php echo BUtils::_("Some of the simple membership plugin's addon settings and options will be displayed here (if you have them)")?>
8
+ </p>
9
+ <form action="" method="POST">
10
+ <input type="hidden" name="tab" value="<?php echo $current_tab;?>" />
11
+ <?php do_action('swpm_addon_settings_section');?>
12
+ <?php submit_button('Save Changes', 'primary', 'swpm-addon-settings'); ?>
13
+ </form>
14
+ </div><!-- end of wrap -->
views/admin_category_list.php ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <div class="wrap">
2
+ <h2><?php screen_icon('users'); ?><?php echo BUtils::_('Simple WP Membership::Categories') ?></h2>
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;">
6
+ <p>
7
+ <?php echo BUtils::_('First of all, globally protect the category on your site by selecting "General Protection" from the drop-down box below and then select the categories that should be protected from non-logged in users.'); ?>
8
+ </p>
9
+ <p>
10
+ <?php echo BUtils::_('Next, select an existing membership level from the drop-down box below and then select the categories you want to grant access to (for that particular membership level).'); ?>
11
+ </p>
12
+ </div>
13
+ <form id="category_list_form" method="post">
14
+ <p class="swpm-select-box-left">
15
+ <label for="membership_level_id">
16
+ Membership Level:</label>
17
+
18
+ <select id="membership_level_id" name="membership_level_id">
19
+ <option <?php echo $category_list->selected_level_id==1? "selected": "" ?> value="1">General Protection</option>
20
+ <?php echo BUtils::membership_level_dropdown($category_list->selected_level_id); ?>
21
+ </select>
22
+ </p>
23
+ <p class="swpm-select-box-left"><input type="submit" class="button-primary" name="update_category_list" value="Update"></p>
24
+ <?php $category_list->prepare_items(); ?>
25
+ <?php $category_list->display(); ?>
26
+ </form>
27
+ </div><!-- end of .wrap -->
28
+ <script type="text/javascript">
29
+ jQuery(document).ready(function($){
30
+ $('#membership_level_id').change(function(){
31
+ $('#category_list_form').submit();
32
+ });
33
+ });
34
+ </script>
views/admin_edit.php CHANGED
@@ -1,25 +1,73 @@
1
- <div class="wrap" id="swpm-profile-page">
2
- <form action="" method="post" name="swpm-edit-user" id="swpm-edit-user" class="validate"<?php do_action('user_new_form_tag');?>>
3
- <input name="action" type="hidden" value="edituser" />
4
- <?php wp_nonce_field( 'edit-swpmuser', '_wpnonce_edit-swpmuser' ) ?>
5
- <h3><?= BUtils::_('Edit Member') ?></h3>
6
- <p><?= BUtils::_('Edit existing member details.'); ?></p>
7
- <table class="form-table">
8
- <tr class="form-field form-required">
9
- <th scope="row"><label for="user_name"><?= BUtils::_('Username'); ?> <span class="description"><?= BUtils::_('(required)'); ?></span></label></th>
10
- <td><?php echo esc_attr($user_name); ?></td>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11
  </tr>
12
- <tr class="form-field form-required">
13
- <th scope="row"><label for="email"><?= BUtils::_('E-mail'); ?> <span class="description"><?= BUtils::_('(required)'); ?></span></label></th>
14
- <td><?php echo esc_attr($email); ?></td>
15
- </tr>
16
- <?php include('admin_member_form_common_part.php');?>
17
- <?= apply_filters('swpm_admin_custom_fields', '',$membership_level);?>
18
- <?php submit_button( BUtils::_('Edit User '), 'primary', 'editswpmuser', true, array( 'id' => 'createswpmusersub' ) ); ?>
 
 
 
 
19
  </form>
20
  </div>
21
  <script>
22
- jQuery(document).ready(function($){
23
- $("#swpm-edit-user").validationEngine('attach');
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
24
  });
25
  </script>
1
+ <div class="wrap" id="swpm-profile-page" type="edit">
2
+ <form action="" method="post" name="swpm-edit-user" id="swpm-edit-user" class="validate"<?php do_action('user_new_form_tag');?>>
3
+ <input name="action" type="hidden" value="edituser" />
4
+ <?php wp_nonce_field( 'edit-swpmuser', '_wpnonce_edit-swpmuser' ) ?>
5
+ <h3><?php echo BUtils::_('Edit Member') ?></h3>
6
+ <p><?php echo BUtils::_('Edit existing member details.'); ?></p>
7
+ <table class="form-table">
8
+ <tr class="form-field form-required">
9
+ <th scope="row"><label for="user_name"><?php echo BUtils::_('Username'); ?> <span class="description"><?php echo BUtils::_('(required)'); ?></span></label></th>
10
+ <td><?php echo esc_attr($user_name); ?></td>
11
+ </tr>
12
+ <tr class="form-required">
13
+ <th scope="row"><label for="email"><?php echo BUtils::_('E-mail'); ?> <span class="description"><?php echo BUtils::_('(required)'); ?></span></label></th>
14
+ <td><input name="email" class="regular-text validate[required,custom[email],ajax[ajaxEmailCall]]" type="text" id="email" value="<?php echo esc_attr($email); ?>" /></td>
15
+ </tr>
16
+ <tr class="">
17
+ <th scope="row"><label for="password"><?php echo BUtils::_('Password'); ?> <span class="description"><?php /* translators: password input field */_e('(twice, leave empty to retain old password)'); ?></span></label></th>
18
+ <td><input class="regular-text" name="password" type="password" id="pass1" autocomplete="off" /><br />
19
+ <input class="regular-text" name="password_re" type="password" id="pass2" autocomplete="off" />
20
+ <br />
21
+ <div id="pass-strength-result"><?php echo BUtils::_('Strength indicator'); ?></div>
22
+ <p class="description indicator-hint"><?php echo BUtils::_('Hint: The password should be at least seven characters long. To make it stronger, use upper and lower case letters, numbers and symbols like ! " ? $ % ^ &amp; ).'); ?></p>
23
+ </td>
24
+ </tr>
25
+ <tr>
26
+ <th scope="row"><label for="account_state"><?php echo BUtils::_('Account Status'); ?></label></th>
27
+ <td><select class="regular-text" name="account_state" id="account_state">
28
+ <?php echo BUtils::account_state_dropdown($account_state);?>
29
+ </select>
30
+ </td>
31
+ </tr>
32
+ <tr>
33
+ <th scope="row"><label for="account_state_change"><?php echo BUtils::_('Notify User'); ?></label></th>
34
+ <td><input type="checkbox" id="account_status_change" name="account_status_change" />
35
+ <p class="description indicator-hint">You can use this option to send a quick notification email to this member (the email will be sent when you hit the save button below).</p>
36
+ </td>
37
  </tr>
38
+ <?php include('admin_member_form_common_part.php');?>
39
+ <tr>
40
+ <th scope="row"><label for="subscr_id"><?php echo BUtils::_('Subscriber ID/Reference') ?> </label></th>
41
+ <td><input class="regular-text" name="subscr_id" type="text" id="subscr_id" value="<?php echo esc_attr($subscr_id); ?>" /></td>
42
+ </tr>
43
+
44
+ </table>
45
+
46
+ <?php include('admin_member_form_common_js.php');?>
47
+ <?php echo apply_filters('swpm_admin_custom_fields', '',$membership_level);?>
48
+ <?php submit_button( BUtils::_('Edit User '), 'primary', 'editswpmuser', true, array( 'id' => 'createswpmusersub' ) ); ?>
49
  </form>
50
  </div>
51
  <script>
52
+ jQuery(document).ready(function($){
53
+ $.validationEngineLanguage.allRules['ajaxEmailCall']['url']= '<?php echo admin_url('admin-ajax.php');?>';
54
+ $.validationEngineLanguage.allRules['ajaxEmailCall']['extraData']= '&action=swpm_validate_email&member_id=<?php echo $member_id;?>';
55
+ $("#swpm-edit-user").validationEngine('attach');
56
+ $('#account_status_change').change(function(){
57
+ var target = $(this).closest('tr');
58
+ var $body = '<textarea rows="5" cols="60" id="notificationmailbody" name="notificationmailbody">' + SwpmSettings.statusChangeEmailBody + '</textarea>';
59
+ var $head = '<input type="text" size="60" id="notificationmailhead" name="notificationmailhead" value="' + SwpmSettings.statusChangeEmailHead + '" />';
60
+ var content = '<tr><th scope="row">Mail Subject</th><td>' + $head + '</td></tr>';
61
+ content += '<tr><th scope="row">Mail Body</th><td>' + $body + '</td></tr>';
62
+ if (this.checked) {
63
+ target.after(content);
64
+ }
65
+ else {
66
+ if (target.next('tr').find('#notificationmailhead').length > 0) {
67
+ target.next('tr').remove();
68
+ target.next('tr').remove();
69
+ }
70
+ }
71
+ });
72
  });
73
  </script>
views/admin_edit_level.php CHANGED
@@ -2,53 +2,40 @@
2
  <form action="" method="post" name="swpm-edit-level" id="swpm-edit-level" class="validate"<?php do_action('level_edit_form_tag');?>>
3
  <input name="action" type="hidden" value="editlevel" />
4
  <?php wp_nonce_field( 'edit-swpmlevel', '_wpnonce_edit-swpmlevel' ) ?>
5
- <h3><?= BUtils::_('Edit membership level'); ?></h3>
6
- <p><?= BUtils::_('Edit membership level.'); ?></p>
7
  <table class="form-table">
8
  <tbody>
9
  <tr>
10
- <th scope="row"><label for="alias"><?= BUtils::_('Membership Level Name'); ?> <span class="description"><?= BUtils::_('(required)'); ?></span></label></th>
11
  <td><input class="regular-text validate[required]" name="alias" type="text" id="alias" value="<?php echo stripslashes($alias);?>" aria-required="true" /></td>
12
  </tr>
13
  <tr class="form-field form-required">
14
- <th scope="row"><label for="role"><?= BUtils::_('Default WordPress Role'); ?> <span class="description"><?= BUtils::_('(required)'); ?></span></label></th>
15
  <td><select class="regular-text" name="role"><?php wp_dropdown_roles( $role ); ?></select></td>
16
  </tr>
17
  <tr>
18
- <th scope="row"><label for="subscription_unit"><?= BUtils::_('Subscription Duration'); ?> <span class="description"><?= BUtils::_('(required)'); ?></span></label>
19
  </th>
20
  <td>
21
- <fieldset>
22
- <div class="color-option">
23
- <input name="subscript_duration_type" id="subscript_duration_noexpire"
24
- <?php echo $noexpire?'checked="checked"': ""; ?> type="radio" value="0" class="tog">
25
- <table class="color-palette">
26
- <tbody><tr>
27
- <td style="width: 60px;"><b><?= BUtils::_('No Expiry') ?></b></td>
28
- </tr>
29
- </tbody></table>
30
- </div>
31
- <div class="color-option">
32
- <input name="subscript_duration_type" id="subscript_duration_expire"
33
- <?php echo !$noexpire?'checked="checked"': ""; ?> type="radio" value="1" class="tog">
34
- <table class="color-palette">
35
- <tbody><tr>
36
- <td style="background-color: #d1e5ee" title="fresh">
37
- <input type="text" class="validate[required]" size="3" id="subscription_period" name="subscription_period"
38
- value="<?php echo $noexpire?'':$subscription_period;?>"></td>
39
- <td style="background-color: #cfdfe9" title="fresh">
40
- <select id="subscription_unit" name="subscription_unit">
41
- <?= BUtils::subscription_unit_dropdown($subscription_unit)?>
42
- </select>
43
- </td>
44
- </tr>
45
- </tbody></table>
46
- </div>
47
- </fieldset>
48
-
49
- </td>
50
  </tr>
51
- <?= apply_filters('swpm_admin_edit_membership_level_ui', '', $id);?>
52
  </tbody>
53
  </table>
54
  <?php submit_button(BUtils::_('Edit Membership Level '), 'primary', 'editswpmlevel', true, array( 'id' => 'editswpmlevelsub' ) ); ?>
@@ -56,16 +43,7 @@
56
  </div>
57
  <script>
58
  jQuery(document).ready(function($){
59
- $('.tog:radio').on('update_deps click',function(){
60
- if($(this).attr('checked')){
61
- $("#swpm-edit-level").validationEngine('detach');
62
- if($(this).val()==0)
63
- $('#subscription_period').removeClass('validate[required]');
64
- else if($(this).val()==1)
65
- $('#subscription_period').addClass('validate[required]');
66
- $("#swpm-edit-level").validationEngine('attach');
67
- }
68
- });
69
- $('.tog:radio').trigger('update_deps');
70
  });
71
  </script>
2
  <form action="" method="post" name="swpm-edit-level" id="swpm-edit-level" class="validate"<?php do_action('level_edit_form_tag');?>>
3
  <input name="action" type="hidden" value="editlevel" />
4
  <?php wp_nonce_field( 'edit-swpmlevel', '_wpnonce_edit-swpmlevel' ) ?>
5
+ <h3><?php echo BUtils::_('Edit membership level'); ?></h3>
6
+ <p><?php echo BUtils::_('Edit membership level.'); ?></p>
7
  <table class="form-table">
8
  <tbody>
9
  <tr>
10
+ <th scope="row"><label for="alias"><?php echo BUtils::_('Membership Level Name'); ?> <span class="description"><?php echo BUtils::_('(required)'); ?></span></label></th>
11
  <td><input class="regular-text validate[required]" name="alias" type="text" id="alias" value="<?php echo stripslashes($alias);?>" aria-required="true" /></td>
12
  </tr>
13
  <tr class="form-field form-required">
14
+ <th scope="row"><label for="role"><?php echo BUtils::_('Default WordPress Role'); ?> <span class="description"><?php echo BUtils::_('(required)'); ?></span></label></th>
15
  <td><select class="regular-text" name="role"><?php wp_dropdown_roles( $role ); ?></select></td>
16
  </tr>
17
  <tr>
18
+ <th scope="row"><label for="subscription_period"><?php echo BUtils::_('Access Duration'); ?> <span class="description"><?php echo BUtils::_('(required)'); ?></span></label>
19
  </th>
20
  <td>
21
+ <p><input type="radio" <?php echo checked(BMembershipLevel::NO_EXPIRY,$subscription_duration_type,false)?> value="<?php echo BMembershipLevel::NO_EXPIRY?>" name="subscription_duration_type" /> <?php echo BUtils::_('No Expiry (Access for this level will not expire until cancelled)')?></p>
22
+ <p><input type="radio" <?php echo checked(BMembershipLevel::DAYS,$subscription_duration_type,false)?> value="<?php echo BMembershipLevel::DAYS ?>" name="subscription_duration_type" /> <?php echo BUtils::_('Expire After')?>
23
+ <input type="text" value="<?php echo checked(BMembershipLevel::DAYS,$subscription_duration_type,false)? $subscription_period: "";?>" name="subscription_period_<?php echo BMembershipLevel::DAYS ?>"> <?php echo BUtils::_('Days (Access expires after given number of days)')?></p>
24
+
25
+ <p><input type="radio" <?php echo checked(BMembershipLevel::WEEKS,$subscription_duration_type,false)?> value="<?php echo BMembershipLevel::WEEKS?>" name="subscription_duration_type" /> <?php echo BUtils::_('Expire After')?>
26
+ <input type="text" value="<?php echo checked(BMembershipLevel::WEEKS,$subscription_duration_type,false)? $subscription_period: "";?>" name="subscription_period_<?php echo BMembershipLevel::WEEKS ?>"> <?php echo BUtils::_('Weeks (Access expires after given number of weeks)')?></p>
27
+
28
+ <p><input type="radio" <?php echo checked(BMembershipLevel::MONTHS,$subscription_duration_type,false)?> value="<?php echo BMembershipLevel::MONTHS?>" name="subscription_duration_type" /> <?php echo BUtils::_('Expire After')?>
29
+ <input type="text" value="<?php echo checked(BMembershipLevel::MONTHS,$subscription_duration_type,false)? $subscription_period: "";?>" name="subscription_period_<?php echo BMembershipLevel::MONTHS?>"> <?php echo BUtils::_('Months (Access expires after given number of months)')?></p>
30
+
31
+ <p><input type="radio" <?php echo checked(BMembershipLevel::YEARS,$subscription_duration_type,false)?> value="<?php echo BMembershipLevel::YEARS?>" name="subscription_duration_type" /> <?php echo BUtils::_('Expire After')?>
32
+ <input type="text" value="<?php echo checked(BMembershipLevel::YEARS,$subscription_duration_type,false)? $subscription_period: "";?>" name="subscription_period_<?php echo BMembershipLevel::YEARS?>"> <?php echo BUtils::_('Years (Access expires after given number of years)')?></p>
33
+
34
+ <p><input type="radio" <?php echo checked(BMembershipLevel::FIXED_DATE,$subscription_duration_type,false)?> value="<?php echo BMembershipLevel::FIXED_DATE?>" name="subscription_duration_type" /> <?php echo BUtils::_('Fixed Date Expiry')?>
35
+ <input type="text" class="swpm-date-picker" value="<?php echo checked(BMembershipLevel::FIXED_DATE,$subscription_duration_type,false)? $subscription_period: "";?>" name="subscription_period_<?php echo BMembershipLevel::FIXED_DATE?>" id="subscription_period_<?php echo BMembershipLevel::FIXED_DATE?>"> <?php echo BUtils::_('(Access expires on a fixed date)')?></p>
36
+ </td>
 
 
 
 
 
 
 
 
 
 
 
 
 
37
  </tr>
38
+ <?php echo apply_filters('swpm_admin_edit_membership_level_ui', '', $id);?>
39
  </tbody>
40
  </table>
41
  <?php submit_button(BUtils::_('Edit Membership Level '), 'primary', 'editswpmlevel', true, array( 'id' => 'editswpmlevelsub' ) ); ?>
43
  </div>
44
  <script>
45
  jQuery(document).ready(function($){
46
+ $('.swpm-date-picker').dateinput({'format':'yyyy-mm-dd',selectors: true,yearRange:[-100,100]});
47
+ $("#swpm-edit-level").validationEngine('attach');
 
 
 
 
 
 
 
 
 
48
  });
49
  </script>
views/admin_member_form_common_js.php ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <script>
2
+ jQuery(document).ready(function($){
3
+ $('#member_since').dateinput({'format':'yyyy-mm-dd',selectors: true,yearRange:[-100,100]});
4
+ $('#subscription_starts').dateinput({'format':'yyyy-mm-dd',selectors: true,yearRange:[-100,100]});
5
+ });
6
+ </script>
views/admin_member_form_common_part.php CHANGED
@@ -1,88 +1,60 @@
1
  <tr>
2
- <th scope="row"><label for="first_name"><?= BUtils::_('First Name') ?> </label></th>
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  <td><input class="regular-text" name="first_name" type="text" id="first_name" value="<?php echo esc_attr($first_name); ?>" /></td>
4
  </tr>
5
  <tr>
6
- <th scope="row"><label for="last_name"><?= BUtils::_('Last Name') ?> </label></th>
7
  <td><input class="regular-text" name="last_name" type="text" id="last_name" value="<?php echo esc_attr($last_name); ?>" /></td>
8
  </tr>
9
  <tr>
10
- <th scope="row"><label for="gender"><?= BUtils::_('Gender'); ?></label></th>
11
  <td><select class="regular-text" name="gender" id="gender">
12
- <?= BUtils::gender_dropdown($gender) ?>
13
  </select>
14
  </td>
15
  </tr>
16
  <tr>
17
- <th scope="row"><label for="phone"><?= BUtils::_('Phone') ?> </label></th>
18
  <td><input class="regular-text" name="phone" type="text" id="phone" value="<?php echo esc_attr($phone); ?>" /></td>
19
  </tr>
20
  <tr>
21
- <th scope="row"><label for="address_street"><?= BUtils::_('Street') ?> </label></th>
22
  <td><input class="regular-text" name="address_street" type="text" id="address_street" value="<?php echo esc_attr($address_street); ?>" /></td>
23
  </tr>
24
  <tr>
25
- <th scope="row"><label for="address_city"><?= BUtils::_('City') ?> </label></th>
26
  <td><input class="regular-text" name="address_city" type="text" id="address_city" value="<?php echo esc_attr($address_city); ?>" /></td>
27
  </tr>
28
  <tr>
29
- <th scope="row"><label for="address_state"><?= BUtils::_('State') ?> </label></th>
30
  <td><input class="regular-text" name="address_state" type="text" id="address_state" value="<?php echo esc_attr($address_state); ?>" /></td>
31
  </tr>
32
  <tr>
33
- <th scope="row"><label for="address_zipcode"><?= BUtils::_('Zipcode') ?> </label></th>
34
  <td><input class="regular-text" name="address_zipcode" type="text" id="address_zipcode" value="<?php echo esc_attr($address_zipcode); ?>" /></td>
35
  </tr>
36
  <tr>
37
- <th scope="row"><label for="country"><?= BUtils::_('Country') ?> </label></th>
38
  <td><input class="regular-text" name="country" type="text" id="country" value="<?php echo esc_attr($country); ?>" /></td>
39
  </tr>
40
  <tr>
41
- <th scope="row"><label for="company_name"><?= BUtils::_('Company') ?></label></th>
42
  <td><input name="company_name" type="text" id="company_name" class="code regular-text" value="<?php echo esc_attr($company_name); ?>" /></td>
43
- </tr>
44
- <tr class="form-required">
45
- <th scope="row"><label for="password"><?= BUtils::_('Password'); ?> <span class="description"><?php /* translators: password input field */_e('(twice, required)'); ?></span></label></th>
46
- <td><input class="regular-text" name="password" type="password" id="pass1" autocomplete="off" />
47
- <br />
48
- <input class="regular-text" name="password_re" type="password" id="pass2" autocomplete="off" />
49
- <br />
50
- <div id="pass-strength-result"><?= BUtils::_('Strength indicator'); ?></div>
51
- <p class="description indicator-hint"><?= BUtils::_('Hint: The password should be at least seven characters long. To make it stronger, use upper and lower case letters, numbers and symbols like ! " ? $ % ^ &amp; ).'); ?></p>
52
- </td>
53
- </tr>
54
  <tr>
55
- <th scope="row"><label for="membership_level"><?= BUtils::_('Membership Level'); ?></label></th>
56
- <td><select class="regular-text" name="membership_level" id="membership_level">
57
- <?php foreach ($levels as $level):?>
58
- <option <?php echo ($level['id'] == $membership_level)? "selected='selected'": "";?> value="<?php echo $level['id'];?>"> <?php echo $level['alias']?></option>
59
- <?php endforeach;?>
60
- </select>
61
- </td>
62
- </tr>
63
- <tr>
64
- <th scope="row"><label for="account_state"><?= BUtils::_('Account Status'); ?></label></th>
65
- <td><select class="regular-text" name="account_state" id="account_state">
66
- <option value="active"><?= BUtils::_('Active') ?></option>
67
- <option value="inactive"><?= BUtils::_('Inactive') ?></option>
68
- <option value="pending"><?= BUtils::_('Pending') ?></option>
69
- <option value="expired"><?= BUtils::_('Expired') ?></option>
70
- </select>
71
- </td>
72
- </tr>
73
- <tr>
74
- <th scope="row"><label for="member_since"><?= BUtils::_('Member Since') ?> </label></th>
75
  <td><input class="regular-text" name="member_since" type="text" id="member_since" value="<?php echo esc_attr($member_since); ?>" /></td>
76
  </tr>
77
- <tr>
78
- <th scope="row"><label for="subscription_starts"><?= BUtils::_('Subscription Starts') ?> </label></th>
79
- <td><input class="regular-text" name="subscription_starts" type="text" id="subscription_starts" value="<?php echo esc_attr($subscription_starts); ?>" /></td>
80
- </tr>
81
- </tbody>
82
- </table>
83
- <script>
84
- jQuery(document).ready(function($){
85
- $('#member_since').dateinput({'format':'yyyy-mm-dd',selectors: true,yearRange:[-100,100]});
86
- $('#subscription_starts').dateinput({'format':'yyyy-mm-dd',selectors: true,yearRange:[-100,100]});
87
- });
88
- </script>
1
  <tr>
2
+ <th scope="row"><label for="membership_level"><?php echo BUtils::_('Membership Level'); ?></label></th>
3
+ <td><select class="regular-text" name="membership_level" id="membership_level">
4
+ <?php foreach ($levels as $level):?>
5
+ <option <?php echo ($level['id'] == $membership_level)? "selected='selected'": "";?> value="<?php echo $level['id'];?>"> <?php echo $level['alias']?></option>
6
+ <?php endforeach;?>
7
+ </select>
8
+ </td>
9
+ </tr>
10
+ <tr>
11
+ <th scope="row"><label for="subscription_starts"><?php echo BUtils::_('Access Starts') ?> </label></th>
12
+ <td><input class="regular-text" name="subscription_starts" type="text" id="subscription_starts" value="<?php echo esc_attr($subscription_starts); ?>" /></td>
13
+ </tr>
14
+ <tr>
15
+ <th scope="row"><label for="first_name"><?php echo BUtils::_('First Name') ?> </label></th>
16
  <td><input class="regular-text" name="first_name" type="text" id="first_name" value="<?php echo esc_attr($first_name); ?>" /></td>
17
  </tr>
18
  <tr>
19
+ <th scope="row"><label for="last_name"><?php echo BUtils::_('Last Name') ?> </label></th>
20
  <td><input class="regular-text" name="last_name" type="text" id="last_name" value="<?php echo esc_attr($last_name); ?>" /></td>
21
  </tr>
22
  <tr>
23
+ <th scope="row"><label for="gender"><?php echo BUtils::_('Gender'); ?></label></th>
24
  <td><select class="regular-text" name="gender" id="gender">
25
+ <?php echo BUtils::gender_dropdown($gender) ?>
26
  </select>
27
  </td>
28
  </tr>
29
  <tr>
30
+ <th scope="row"><label for="phone"><?php echo BUtils::_('Phone') ?> </label></th>
31
  <td><input class="regular-text" name="phone" type="text" id="phone" value="<?php echo esc_attr($phone); ?>" /></td>
32
  </tr>
33
  <tr>
34
+ <th scope="row"><label for="address_street"><?php echo BUtils::_('Street') ?> </label></th>
35
  <td><input class="regular-text" name="address_street" type="text" id="address_street" value="<?php echo esc_attr($address_street); ?>" /></td>
36
  </tr>
37
  <tr>
38
+ <th scope="row"><label for="address_city"><?php echo BUtils::_('City') ?> </label></th>
39
  <td><input class="regular-text" name="address_city" type="text" id="address_city" value="<?php echo esc_attr($address_city); ?>" /></td>
40
  </tr>
41
  <tr>
42
+ <th scope="row"><label for="address_state"><?php echo BUtils::_('State') ?> </label></th>
43
  <td><input class="regular-text" name="address_state" type="text" id="address_state" value="<?php echo esc_attr($address_state); ?>" /></td>
44
  </tr>
45
  <tr>
46
+ <th scope="row"><label for="address_zipcode"><?php echo BUtils::_('Zipcode') ?> </label></th>
47
  <td><input class="regular-text" name="address_zipcode" type="text" id="address_zipcode" value="<?php echo esc_attr($address_zipcode); ?>" /></td>
48
  </tr>
49
  <tr>
50
+ <th scope="row"><label for="country"><?php echo BUtils::_('Country') ?> </label></th>
51
  <td><input class="regular-text" name="country" type="text" id="country" value="<?php echo esc_attr($country); ?>" /></td>
52
  </tr>
53
  <tr>
54
+ <th scope="row"><label for="company_name"><?php echo BUtils::_('Company') ?></label></th>
55
  <td><input name="company_name" type="text" id="company_name" class="code regular-text" value="<?php echo esc_attr($company_name); ?>" /></td>
56
+ </tr>
 
 
 
 
 
 
 
 
 
 
57
  <tr>
58
+ <th scope="row"><label for="member_since"><?php echo BUtils::_('Member Since') ?> </label></th>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
59
  <td><input class="regular-text" name="member_since" type="text" id="member_since" value="<?php echo esc_attr($member_since); ?>" /></td>
60
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
views/admin_members.php CHANGED
@@ -1,13 +1,13 @@
1
  <div class="wrap">
2
- <h2><?php screen_icon('users'); ?><?= BUtils::_('Simple WP Membership::Members') ?>
3
- <a href="admin.php?page=simple_wp_membership&member_action=add" class="add-new-h2"><?= BUtils::_('Add New'); ?></a></h2>
4
  <form method="post">
5
  <p class="search-box">
6
  <label class="screen-reader-text" for="search_id-search-input">
7
  search:</label>
8
  <input id="search_id-search-input" type="text" name="s" value="" />
9
- <input id="search-submit" class="button" type="submit" name="" value="<?= BUtils::_('search')?>" />
10
- <input type="hidden" name="page" value="my_list_test" />
11
  </p>
12
  </form>
13
  <?php $this->prepare_items(); ?>
@@ -16,6 +16,6 @@
16
  </form>
17
 
18
  <p>
19
- <a href="admin.php?page=simple_wp_membership&member_action=add" class="button-primary"><?= BUtils::_('Add New')?></a>
20
  </p>
21
  </div><!-- end of wrap -->
1
  <div class="wrap">
2
+ <h2><?php screen_icon('users'); ?><?php echo BUtils::_('Simple WP Membership::Members') ?>
3
+ <a href="admin.php?page=simple_wp_membership&member_action=add" class="add-new-h2"><?php echo BUtils::_('Add New'); ?></a></h2>
4
  <form method="post">
5
  <p class="search-box">
6
  <label class="screen-reader-text" for="search_id-search-input">
7
  search:</label>
8
  <input id="search_id-search-input" type="text" name="s" value="" />
9
+ <input id="search-submit" class="button" type="submit" name="" value="<?php echo BUtils::_('search')?>" />
10
+ <input type="hidden" name="page" value="simple_wp_membership" />
11
  </p>
12
  </form>
13
  <?php $this->prepare_items(); ?>
16
  </form>
17
 
18
  <p>
19
+ <a href="admin.php?page=simple_wp_membership&member_action=add" class="button-primary"><?php echo BUtils::_('Add New')?></a>
20
  </p>
21
  </div><!-- end of wrap -->
views/admin_membership_level_menu.php CHANGED
@@ -1,4 +1,5 @@
1
- <h3 class="nav-tab-wrapper">
2
- <a class="nav-tab <?php echo ($selected==1) ? 'nav-tab-active' : ''; ?>" href="admin.php?page=simple_wp_membership_levels"><?= BUtils::_('Membership level') ?></a>
3
- <a class="nav-tab <?php echo ($selected==2) ? 'nav-tab-active' : ''; ?>" href="admin.php?page=simple_wp_membership_levels&level_action=manage"><?= BUtils::_('Manage Content Production') ?></a>
 
4
  </h3>
1
+ <h3 class="nav-tab-wrapper">
2
+ <a class="nav-tab <?php echo ($selected==1) ? 'nav-tab-active' : ''; ?>" href="admin.php?page=simple_wp_membership_levels"><?php echo BUtils::_('Membership level') ?></a>
3
+ <a class="nav-tab <?php echo ($selected==2) ? 'nav-tab-active' : ''; ?>" href="admin.php?page=simple_wp_membership_levels&level_action=manage"><?php echo BUtils::_('Manage Content Production') ?></a>
4
+ <a class="nav-tab <?php echo ($selected==3) ? 'nav-tab-active' : ''; ?>" href="admin.php?page=simple_wp_membership_levels&level_action=category_list"><?php echo BUtils::_('Category Protection') ?></a>
5
  </h3>
views/admin_membership_levels.php CHANGED
@@ -1,6 +1,5 @@
1
  <div class="wrap">
2
-
3
- <h2><?php screen_icon('users'); ?><?= BUtils::_('Simple WP Membership::Membership Levels') ?>
4
  <a href="admin.php?page=simple_wp_membership_levels&level_action=add" class="add-new-h2"><?php echo esc_html_x('Add New', 'Level'); ?></a></h2>
5
  <?php include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_membership_level_menu.php'); ?>
6
  <form method="post">
@@ -8,8 +7,8 @@
8
  <label class="screen-reader-text" for="search_id-search-input">
9
  search:</label>
10
  <input id="search_id-search-input" type="text" name="s" value="" />
11
- <input id="search-submit" class="button" type="submit" name="" value="<?= BUtils::_('search')?>" />
12
- <input type="hidden" name="page" value="my_list_test" />
13
  </p>
14
  </form>
15
  <?php $this->prepare_items(); ?>
@@ -18,7 +17,7 @@
18
  </form>
19
 
20
  <p>
21
- <a href="admin.php?page=simple_wp_membership_levels&level_action=add" class="button-primary"><?= BUtils::_('Add New') ?></a>
22
  </p>
23
 
24
  </div><!-- end of .wrap -->
1
  <div class="wrap">
2
+ <h2><?php screen_icon('users'); ?><?php echo BUtils::_('Simple WP Membership::Membership Levels') ?>
 
3
  <a href="admin.php?page=simple_wp_membership_levels&level_action=add" class="add-new-h2"><?php echo esc_html_x('Add New', 'Level'); ?></a></h2>
4
  <?php include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_membership_level_menu.php'); ?>
5
  <form method="post">
7
  <label class="screen-reader-text" for="search_id-search-input">
8
  search:</label>
9
  <input id="search_id-search-input" type="text" name="s" value="" />
10
+ <input id="search-submit" class="button" type="submit" name="" value="<?php echo BUtils::_('search')?>" />
11
+ <input type="hidden" name="page" value="simple_wp_membership" />
12
  </p>
13
  </form>
14
  <?php $this->prepare_items(); ?>
17
  </form>
18
 
19
  <p>
20
+ <a href="admin.php?page=simple_wp_membership_levels&level_action=add" class="button-primary"><?php echo BUtils::_('Add New') ?></a>
21
  </p>
22
 
23
  </div><!-- end of .wrap -->
views/admin_membership_manage.php CHANGED
@@ -14,7 +14,7 @@
14
  <br />5. Hit the Update/Save Button to save the changes.
15
 
16
  <br /><br />
17
- <h3><?= BUtils::_('Example Content Protection Settings')?></h3>
18
 
19
  <img src="<?php echo SIMPLE_WP_MEMBERSHIP_URL.'/images/simple-membership-content-protection-usage.png'; ?>" alt="Content protection example usage">
20
 
14
  <br />5. Hit the Update/Save Button to save the changes.
15
 
16
  <br /><br />
17
+ <h3><?php echo BUtils::_('Example Content Protection Settings')?></h3>
18
 
19
  <img src="<?php echo SIMPLE_WP_MEMBERSHIP_URL.'/images/simple-membership-content-protection-usage.png'; ?>" alt="Content protection example usage">
20
 
views/admin_payment_settings.php CHANGED
@@ -1,5 +1,5 @@
1
  <?php screen_icon( 'options-general' );?>
2
- <h1><?= BUtils::_('Simple WP Membership::Settings')?></h1>
3
  <div class="wrap">
4
 
5
  <?php do_action("swpm-draw-tab"); ?>
@@ -13,7 +13,7 @@ if(isset($_POST['swpm_generate_adv_code']))
13
  {
14
  $paypal_ipn_url = SIMPLE_WP_MEMBERSHIP_SITE_HOME_URL.'/?swpm_process_ipn=1';
15
  $mem_level = trim($_POST['swpm_paypal_adv_member_level']);
16
- $query = "SELECT * FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id =". $mem_level;
17
  $membership_level_resultset = $wpdb->get_row($query);
18
  if($membership_level_resultset){
19
  $pp_av_code = 'notify_url='.$paypal_ipn_url.'<br /> '.'custom=subsc_ref='.$mem_level;
@@ -30,15 +30,15 @@ if(isset($_POST['swpm_generate_adv_code']))
30
  }
31
  ?>
32
  <div class="postbox">
33
- <h3><label for="title"><?= BUtils::_('PayPal Integration Settings')?></label></h3>
34
  <div class="inside">
35
 
36
- <p><strong><?= BUtils::_('Generate the "Advanced Variables" Code for your PayPal button')?></strong></p>
37
 
38
  <form action="" method="post">
39
- <?= BUtils::_('Enter the Membership Level ID')?>
40
  <input type="text" value="" size="4" name="swpm_paypal_adv_member_level">
41
- <input type="submit" value="<?= BUtils::_('Generate Code')?>" class="button-primary" name="swpm_generate_adv_code">
42
  </form>
43
 
44
  </div></div>
1
  <?php screen_icon( 'options-general' );?>
2
+ <h1><?php echo BUtils::_('Simple WP Membership::Settings')?></h1>
3
  <div class="wrap">
4
 
5
  <?php do_action("swpm-draw-tab"); ?>
13
  {
14
  $paypal_ipn_url = SIMPLE_WP_MEMBERSHIP_SITE_HOME_URL.'/?swpm_process_ipn=1';
15
  $mem_level = trim($_POST['swpm_paypal_adv_member_level']);
16
+ $query = $wpdb->prepare("SELECT * FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id !=1 AND id =%d", $mem_level);
17
  $membership_level_resultset = $wpdb->get_row($query);
18
  if($membership_level_resultset){
19
  $pp_av_code = 'notify_url='.$paypal_ipn_url.'<br /> '.'custom=subsc_ref='.$mem_level;
30
  }
31
  ?>
32
  <div class="postbox">
33
+ <h3><label for="title"><?php echo BUtils::_('PayPal Integration Settings')?></label></h3>
34
  <div class="inside">
35
 
36
+ <p><strong><?php echo BUtils::_('Generate the "Advanced Variables" Code for your PayPal button')?></strong></p>
37
 
38
  <form action="" method="post">
39
+ <?php echo BUtils::_('Enter the Membership Level ID')?>
40
  <input type="text" value="" size="4" name="swpm_paypal_adv_member_level">
41
+ <input type="submit" value="<?php echo BUtils::_('Generate Code')?>" class="button-primary" name="swpm_generate_adv_code">
42
  </form>
43
 
44
  </div></div>
views/admin_payments_page.php ADDED
@@ -0,0 +1,55 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $output = '';
3
+ ?>
4
+
5
+ <h1><?php echo BUtils::_('Simple Membership::Payments') ?></h1>
6
+ <div class="wrap">
7
+ <div id="poststuff"><div id="post-body">
8
+
9
+ <div style="background: #DDDDDD;border: 1px solid #CCCCCC;color: #383838;margin: 10px 0;padding: 5px 5px 5px 10px;text-shadow: 1px 1px #FFFFFF;">
10
+ <p>
11
+ <?php echo BUtils::_('All the payments/transactions of your members are recorded here.'); ?>
12
+ </p>
13
+ </div>
14
+
15
+ <div class="postbox">
16
+ <h3><label for="title">Search Transaction</label></h3>
17
+ <div class="inside">
18
+ <?php echo BUtils::_('Search for a transaction by using email or name'); ?>
19
+ <br /><br />
20
+ <form method="post" action="<?php echo $_SERVER["REQUEST_URI"]; ?>">
21
+ <input name="swpm_txn_search" type="text" size="40" value="<?php echo isset($_POST['swpm_txn_search'])? $_POST['swpm_txn_search']: ''; ?>"/>
22
+ <input type="submit" name="swpm_txn_search_btn" class="button" value="<?php echo BUtils::_('Search'); ?>" />
23
+ </form>
24
+ </div></div>
25
+
26
+ <?php
27
+ include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'classes/admin-includes/swpm-payments-list-table.php');
28
+ //Create an instance of our package class...
29
+ $payments_list_table = new SWPM_Payments_List_Table();
30
+
31
+ //Check if an action was performed
32
+ if (isset($_REQUEST['action'])) { //Do list table form row action tasks
33
+ if (isset($_REQUEST['action']) && $_REQUEST['action'] == 'delete_txn') { //Delete link was clicked for a row in list table
34
+ $record_id = strip_tags($_REQUEST['id']);
35
+ $payments_list_table->delete_record($record_id);
36
+ $success_msg = '<div id="message" class="updated"><p><strong>';
37
+ $success_msg .= BUtils::_('The selected entry was deleted!');
38
+ $success_msg .= '</strong></p></div>';
39
+ echo $success_msg;
40
+ }
41
+ }
42
+
43
+ //Fetch, prepare, sort, and filter our data...
44
+ $payments_list_table->prepare_items();
45
+
46
+ ?>
47
+ <form id="tables-filter" method="get" onSubmit="return confirm('Are you sure you want to perform this bulk operation on the selected entries?');">
48
+ <!-- For plugins, we also need to ensure that the form posts back to our current page -->
49
+ <input type="hidden" name="page" value="<?php echo $_REQUEST['page']; ?>" />
50
+ <!-- Now we can render the completed list table -->
51
+ <?php $payments_list_table->display(); ?>
52
+ </form>
53
+
54
+ </div></div><!-- end of poststuff and post-body -->
55
+ </div><!-- end of .wrap -->
views/admin_settings.php CHANGED
@@ -1,5 +1,5 @@
1
  <?php screen_icon( 'options-general' );?>
2
- <h1><?= BUtils::_('Simple WP Membership::Settings') ?></h1>
3
  <div class="wrap">
4
  <?php do_action("swpm-draw-tab"); ?>
5
  <form action="options.php" method="POST">
1
  <?php screen_icon( 'options-general' );?>
2
+ <h1><?php echo BUtils::_('Simple WP Membership::Settings') ?></h1>
3
  <div class="wrap">
4
  <?php do_action("swpm-draw-tab"); ?>
5
  <form action="options.php" method="POST">
views/admin_tools_settings.php CHANGED
@@ -1,37 +1,37 @@
1
  <?php screen_icon( 'options-general' );?>
2
- <h1><?= BUtils::_('Simple WP Membership::Settings')?></h1>
3
  <div class="wrap">
4
 
5
  <?php do_action("swpm-draw-tab"); ?>
6
 
7
  <div id="poststuff"><div id="post-body">
8
  <div class="postbox">
9
- <h3><label for="title"><?= BUtils::_('Generate a Registration Completion link')?></label></h3>
10
  <div class="inside">
11
 
12
- <p><strong><?= BUtils::_('You can manually generate a registration completion link here and give it to your customer if they have missed the email that was automatically sent out to them after the payment.')?></strong></p>
13
 
14
  <form action="" method="post">
15
  <table>
16
  <tr>
17
- <?= BUtils::_('Generate Registration Completion Link')?>
18
  <br /><input type="radio" value="one" name="swpm_link_for" />For a Particular Member ID
19
  <input type="text" name="member_id" size="5" value="" />
20
- <br /> <strong> <?= BUtils::_('OR')?> </strong>
21
- <br /><input type="radio" checked="checked" value="all" name="swpm_link_for" /> <?= BUtils::_('For All Pending Registrations')?>
22
  </tr>
23
  <tr>
24
- <td><?= BUtils::_('Registration Completion Links Will Appear Below:')?><br/>
25
  <?php foreach ($links as $key=>$link):?>
26
- <input type="text" size="100" readonly="readonly" name="link[<?= $key?>]" value="<?= $link;?>"/><br/>
27
  <?php endforeach;?>
28
  </td>
29
  </tr>
30
  <tr>
31
- <td><?= BUtils::_('Send Registration Reminder Email too')?> <input type="checkbox" value="checked" name="swpm_reminder_email"></td>
32
  </tr>
33
  <tr>
34
- <td><input type="submit" name="submit" class="button-primary" value="<?= BUtils::_('Submit')?>" /></td>
35
  </tr>
36
  </table>
37
  </form>
1
  <?php screen_icon( 'options-general' );?>
2
+ <h1><?php echo BUtils::_('Simple WP Membership::Settings')?></h1>
3
  <div class="wrap">
4
 
5
  <?php do_action("swpm-draw-tab"); ?>
6
 
7
  <div id="poststuff"><div id="post-body">
8
  <div class="postbox">
9
+ <h3><label for="title"><?php echo BUtils::_('Generate a Registration Completion link')?></label></h3>
10
  <div class="inside">
11
 
12
+ <p><strong><?php echo BUtils::_('You can manually generate a registration completion link here and give it to your customer if they have missed the email that was automatically sent out to them after the payment.')?></strong></p>
13
 
14
  <form action="" method="post">
15
  <table>
16
  <tr>
17
+ <?php echo BUtils::_('Generate Registration Completion Link')?>
18
  <br /><input type="radio" value="one" name="swpm_link_for" />For a Particular Member ID
19
  <input type="text" name="member_id" size="5" value="" />
20
+ <br /> <strong> <?php echo BUtils::_('OR')?> </strong>
21
+ <br /><input type="radio" checked="checked" value="all" name="swpm_link_for" /> <?php echo BUtils::_('For All Pending Registrations')?>
22
  </tr>
23
  <tr>
24
+ <td><?php echo BUtils::_('Registration Completion Links Will Appear Below:')?><br/>
25
  <?php foreach ($links as $key=>$link):?>
26
+ <input type="text" size="100" readonly="readonly" name="link[<?php echo $key?>]" value="<?php echo $link;?>"/><br/>
27
  <?php endforeach;?>
28
  </td>
29
  </tr>
30
  <tr>
31
+ <td><?php echo BUtils::_('Send Registration Reminder Email too')?> <input type="checkbox" value="checked" name="swpm_reminder_email"></td>
32
  </tr>
33
  <tr>
34
+ <td><input type="submit" name="submit" class="button-primary" value="<?php echo BUtils::_('Submit')?>" /></td>
35
  </tr>
36
  </table>
37
  </form>
views/edit.php CHANGED
@@ -1,61 +1,71 @@
1
  <form id="swpm-editprofile-form" name="swpm-editprofile-form" method="post" action="">
2
  <table>
3
  <tr>
4
- <td><label for="user_name"><?= BUtils::_('User Name') ?></label></td>
5
- <td><?= $user_name ?></td>
6
  </tr>
7
  <tr>
8
- <td><label for="email"><?= BUtils::_('Email')?></label></td>
9
- <td><?= $email; ?></td>
10
  </tr>
11
  <tr>
12
- <td><label for="password"><?= BUtils::_('Password')?></label></td>
13
- <td><input type="text" id="password" value="" tabindex="3" size="50" name="password" /></td>
14
  </tr>
15
  <tr>
16
- <td><label for="password_re"><?= BUtils::_('Repeat Password')?></label></td>
17
- <td><input type="text" id="password_re" value="" tabindex="4" size="50" name="password_re" /></td>
18
  </tr>
19
  <tr>
20
- <td><label for="first_name"><?= BUtils::_('First Name')?></label></td>
21
- <td><input type="text" id="first_name" value="<?= $first_name; ?>" tabindex="5" size="50" name="first_name" /></td>
22
  </tr>
23
  <tr>
24
- <td><label for="last_name"><?= BUtils::_('Last Name')?></label></td>
25
- <td><input type="text" id="last_name" value="<?= $last_name; ?>" tabindex="6" size="50" name="last_name" /></td>
26
  </tr>
27
  <tr>
28
- <td><label for="phone"><?= BUtils::_('Phone')?></label></td>
29
- <td><input type="text" id="phone" value="<?= $phone; ?>" tabindex="7" size="50" name="phone" /></td>
30
  </tr>
31
  <tr>
32
- <td><label for="address_street"><?= BUtils::_('Street')?></label></td>
33
- <td><input type="text" id="address_street" value="<?= $address_street; ?>" tabindex="8" size="50" name="address_street" /></td>
34
  </tr>
35
  <tr>
36
- <td><label for="address_city"><?= BUtils::_('City')?></label></td>
37
- <td><input type="text" id="address_city" value="<?= $address_city; ?>" tabindex="9" size="50" name="address_city" /></td>
38
  </tr>
39
  <tr>
40
- <td><label for="address_state"><?= BUtils::_('State')?></label></td>
41
- <td><input type="text" id="address_state" value="<?= $address_state; ?>" tabindex="10" size="50" name="address_state" /></td>
42
  </tr>
43
  <tr>
44
- <td><label for="address_zipcode"><?= BUtils::_('Zipcode')?></label></td>
45
- <td><input type="text" id="address_zipcode" value="<?= $address_zipcode; ?>" tabindex="11" size="50" name="address_zipcode" /></td>
46
  </tr>
47
  <tr>
48
- <td><label for="country"><?= BUtils::_('Country') ?></label></td>
49
- <td><input type="text" id="country" value="<?= $country; ?>" tabindex="12" size="50" name="country" /></td>
50
  </tr>
51
  <tr>
52
- <td><label for="membership_level"><?= BUtils::_('Membership Level')?></label></td>
53
  <td>
54
- <?= $membership_level_alias; ?>
55
  </td>
56
  </tr>
57
  </table>
58
- <p align="center"><input type="submit" value="<?= BUtils::_('Update')?>" tabindex="6" id="submit" name="swpm_editprofile_submit" /></p>
 
 
 
59
  <input type="hidden" name="action" value="custom_posts" />
60
  <?php wp_nonce_field('name_of_my_action', 'name_of_nonce_field'); ?>
61
  </form>
 
 
 
 
 
 
 
1
  <form id="swpm-editprofile-form" name="swpm-editprofile-form" method="post" action="">
2
  <table>
3
  <tr>
4
+ <td><label for="user_name"><?php echo BUtils::_('User Name') ?></label></td>
5
+ <td><?php echo $user_name ?></td>
6
  </tr>
7
  <tr>
8
+ <td><label for="email"><?php echo BUtils::_('Email')?></label></td>
9
+ <td><input type="text" id="email" class="validate[required,custom[email],ajax[ajaxEmailCall]]" value="<?php echo $email;?>" tabindex="2" size="50" name="email" /></td>
10
  </tr>
11
  <tr>
12
+ <td><label for="password"><?php echo BUtils::_('Password')?></label></td>
13
+ <td><input type="text" id="password" value="" tabindex="1" size="50" name="password" /></td>
14
  </tr>
15
  <tr>
16
+ <td><label for="password_re"><?php echo BUtils::_('Repeat Password')?></label></td>
17
+ <td><input type="text" id="password_re" value="" tabindex="2" size="50" name="password_re" /></td>
18
  </tr>
19
  <tr>
20
+ <td><label for="first_name"><?php echo BUtils::_('First Name')?></label></td>
21
+ <td><input type="text" id="first_name" value="<?php echo $first_name; ?>" tabindex="3" size="50" name="first_name" /></td>
22
  </tr>
23
  <tr>
24
+ <td><label for="last_name"><?php echo BUtils::_('Last Name')?></label></td>
25
+ <td><input type="text" id="last_name" value="<?php echo $last_name; ?>" tabindex="4" size="50" name="last_name" /></td>
26
  </tr>
27
  <tr>
28
+ <td><label for="phone"><?php echo BUtils::_('Phone')?></label></td>
29
+ <td><input type="text" id="phone" value="<?php echo $phone; ?>" tabindex="5" size="50" name="phone" /></td>
30
  </tr>
31
  <tr>
32
+ <td><label for="address_street"><?php echo BUtils::_('Street')?></label></td>
33
+ <td><input type="text" id="address_street" value="<?php echo $address_street; ?>" tabindex="6" size="50" name="address_street" /></td>
34
  </tr>
35
  <tr>
36
+ <td><label for="address_city"><?php echo BUtils::_('City')?></label></td>
37
+ <td><input type="text" id="address_city" value="<?php echo $address_city; ?>" tabindex="7" size="50" name="address_city" /></td>
38
  </tr>
39
  <tr>
40
+ <td><label for="address_state"><?php echo BUtils::_('State')?></label></td>
41
+ <td><input type="text" id="address_state" value="<?php echo $address_state; ?>" tabindex="8" size="50" name="address_state" /></td>
42
  </tr>
43
  <tr>
44
+ <td><label for="address_zipcode"><?php echo BUtils::_('Zipcode')?></label></td>
45
+ <td><input type="text" id="address_zipcode" value="<?php echo $address_zipcode; ?>" tabindex="9" size="50" name="address_zipcode" /></td>
46
  </tr>
47
  <tr>
48
+ <td><label for="country"><?php echo BUtils::_('Country') ?></label></td>
49
+ <td><input type="text" id="country" value="<?php echo $country; ?>" tabindex="10" size="50" name="country" /></td>
50
  </tr>
51
  <tr>
52
+ <td><label for="membership_level"><?php echo BUtils::_('Membership Level')?></label></td>
53
  <td>
54
+ <?php echo $membership_level_alias; ?>
55
  </td>
56
  </tr>
57
  </table>
58
+ <p align="center"><input type="submit" value="<?php echo BUtils::_('Update')?>" tabindex="11" id="submit" name="swpm_editprofile_submit" />
59
+ </p>
60
+ <?php echo Butils::delete_account_button(); ?>
61
+
62
  <input type="hidden" name="action" value="custom_posts" />
63
  <?php wp_nonce_field('name_of_my_action', 'name_of_nonce_field'); ?>
64
  </form>
65
+ <script>
66
+ jQuery(document).ready(function($){
67
+ $.validationEngineLanguage.allRules['ajaxEmailCall']['url']= '<?php echo admin_url('admin-ajax.php');?>';
68
+ $.validationEngineLanguage.allRules['ajaxEmailCall']['extraData'] = '&action=swpm_validate_email&member_id=<?php echo BAuth::get_instance()->get('member_id'); ?>';
69
+ $("#swpm-editprofile-form").validationEngine('attach');
70
+ });
71
+ </script>
views/forgot_password.php CHANGED
@@ -2,14 +2,14 @@
2
  <form id="swpm-reset-form" name="swpm-reset-form" method="post" action="">
3
  <table width="95%" border="0" cellpadding="3" cellspacing="5" class="forms">
4
  <tr>
5
- <td colspan="2"><label for="swpm_reset_email" class="swpm_label"><?= BUtils::_('Email Address')?></label></td>
6
  </tr>
7
  <tr>
8
  <td colspan="2"><input type="text" class="swpm_text_field" id="swpm_reset_email" value="" size="40" name="swpm_reset_email" /></td>
9
  </tr>
10
  <tr>
11
  <td colspan="2">
12
- <input type="submit" name="swpm-reset" value="<?= BUtils::_('Reset Password')?>"/>
13
  </td>
14
  </tr>
15
  </table>
2
  <form id="swpm-reset-form" name="swpm-reset-form" method="post" action="">
3
  <table width="95%" border="0" cellpadding="3" cellspacing="5" class="forms">
4
  <tr>
5
+ <td colspan="2"><label for="swpm_reset_email" class="swpm_label"><?php echo BUtils::_('Email Address')?></label></td>
6
  </tr>
7
  <tr>
8
  <td colspan="2"><input type="text" class="swpm_text_field" id="swpm_reset_email" value="" size="40" name="swpm_reset_email" /></td>
9
  </tr>
10
  <tr>
11
  <td colspan="2">
12
+ <input type="submit" name="swpm-reset" value="<?php echo BUtils::_('Reset Password')?>"/>
13
  </td>
14
  </tr>
15
  </table>
views/index.html ADDED
File without changes
views/loggedin.php CHANGED
@@ -1,21 +1,21 @@
1
- <table>
2
- <tr>
3
- <td><?= BUtils::_('Logged in as')?></td>
4
- <td><b><?php echo $auth->get('user_name');?><b></td>
5
- </tr>
6
- <tr>
7
- <td><?= BUtils::_('Account Status')?></td>
8
- <td><b><?php echo ucfirst($auth->get('account_state'));?></b></td>
9
- </tr>
10
- <tr>
11
- <td><?= BUtils::_('Membership')?></td>
12
- <td><b><?php echo $auth->get('alias');?></b></td>
13
- </tr>
14
- <tr>
15
- <td><?= BUtils::_('Account Expiry')?></td>
16
- <td><b><?php echo $auth->get_expire_date();?></b></td>
17
- </tr>
18
- <tr>
19
- <td colspan="2"><a href="?swpm-logout=true"><?= BUtils::_('Logout')?></a></td>
20
- </tr>
21
- </table>
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 BUtils::_('Logged in as') ?></div>
4
+ <div class="swpm-logged-username-value swpm-logged-value"><?php echo $auth->get('user_name'); ?></div>
5
+ </div>
6
+ <div class="swpm-logged-status">
7
+ <div class="swpm-logged-status-label swpm-logged-label"><?php echo BUtils::_('Account Status') ?></div>
8
+ <div class="swpm-logged-status-value swpm-logged-value"><?php echo ucfirst($auth->get('account_state')); ?></div>
9
+ </div>
10
+ <div class="swpm-logged-membership">
11
+ <div class="swpm-logged-membership-label swpm-logged-label"><?php echo BUtils::_('Membership') ?></div>
12
+ <div class="swpm-logged-membership-value swpm-logged-value"><?php echo $auth->get('alias'); ?></div>
13
+ </div>
14
+ <div class="swpm-logged-expiry">
15
+ <div class="swpm-logged-expiry-label swpm-logged-label"><?php echo BUtils::_('Account Expiry') ?></div>
16
+ <div class="swpm-logged-expiry-value swpm-logged-value"><?php echo $auth->get_expire_date(); ?></div>
17
+ </div>
18
+ <div class="swpm-logged-logout-link">
19
+ <a href="?swpm-logout=true"><?php echo BUtils::_('Logout') ?></a>
20
+ </div>
21
+ </div>
views/login.php CHANGED
@@ -1,37 +1,34 @@
1
  <div class="swpm-login-widget-form">
2
- <form id="swpm-login-form" name="swpm-login-form" method="post" action="">
3
- <table width="95%" border="0" cellpadding="3" cellspacing="5" class="forms">
4
- <tr>
5
- <td colspan="2"><label for="login_user_name" class="eMember_label"><?= BUtils::_('User Name')?></label></td>
6
- </tr>
7
- <tr>
8
- <td colspan="2"><input type="text" class="swpm_text_field" id="swpm_user_name" value="" size="30" name="swpm_user_name" /></td>
9
- </tr>
10
- <tr>
11
- <td colspan="2"><label for="login_pwd" class="eMember_label"><?= BUtils::_('Password')?></label></td>
12
- </tr>
13
- <tr>
14
- <td colspan="2"><input type="password" class="swpm_text_field" id="swpm_password" value="" size="30" name="swpm_password" /></td>
15
- </tr>
16
- <tr>
17
- <td colspan="2"><input type="checkbox" name="rememberme" value="checked='checked'"> <?= BUtils::_('Remember Me')?></td>
18
- </tr>
19
- <tr>
20
- <td colspan="2">
21
- <input type="submit" name="swpm-login" value="<?= BUtils::_('Login')?>"/>
22
- </td>
23
- </tr>
24
- <tr>
25
- <td colspan="2">
26
- <a id="forgot_pass" href="<?php echo $password_reset_url;?>"><?= BUtils::_('Forgot Password')?>?</a>
27
- </td>
28
- </tr>
29
- <tr>
30
- <td colspan="2"><a id="register" class="register_link" href="<?php echo $join_url; ?>"><?= BUtils::_('Join Us')?></a></td>
31
- </tr>
32
- <tr>
33
- <td colspan="2"><span> <?php echo $auth->get_message();?> </span></td>
34
- </tr>
35
- </table>
36
- </form>
37
  </div>
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 BUtils::_('Username') ?></label>
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="30" name="swpm_user_name" />
9
+ </div>
10
+ <div class="swpm-password-label">
11
+ <label for="swpm_password" class="swpm-label"><?php echo BUtils::_('Password') ?></label>
12
+ </div>
13
+ <div class="swpm-password-input">
14
+ <input type="password" class="swpm-text-field swpm-password-field" id="swpm_password" value="" size="30" 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 BUtils::_('Remember Me') ?></span>
19
+ </div>
20
+ <div class="swpm-login-submit">
21
+ <input type="submit" name="swpm-login" value="<?php echo BUtils::_('Login') ?>"/>
22
+ </div>
23
+ <div class="swpm-forgot-pass-link">
24
+ <a id="forgot_pass" href="<?php echo $password_reset_url; ?>"><?php echo BUtils::_('Forgot Password') ?>?</a>
25
+ </div>
26
+ <div class="swpm-join-us-link">
27
+ <a id="register" class="register_link" href="<?php echo $join_url; ?>"><?php echo BUtils::_('Join Us') ?></a>
28
+ </div>
29
+ <div class="swpm-login-action-msg">
30
+ <span class="swpm-login-widget-action-msg"><?php echo $auth->get_message(); ?></span>
31
+ </div>
32
+ </div>
33
+ </form>
 
 
 
34
  </div>
views/login_widget.php DELETED
@@ -1,16 +0,0 @@
1
- <?php include('login.php');?>
2
- <!--<form id="swpm-login-form" name="swpm-login-form" method="post" action="">
3
- <p>
4
- <label for="swpm_user_name">User Name</label>
5
- <input type="text" id="swpm_user_name" value="" size="30" name="swpm_user_name" />
6
- </p>
7
- <p>
8
- <label for="swpm_password">Password</label>
9
- <input type="password" id="swpm_password" value="" size="30" name="swpm_password" />
10
- </p>
11
- <p>
12
- <input type="submit" name="swpm-login" value="Login"/>
13
- <input type="checkbox" name="rememberme" value="checked='checked'">Remember Me
14
- <span><?php echo $auth->get_message();?></span>
15
- </p>
16
- </form>-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
views/login_widget_logged.php DELETED
@@ -1,18 +0,0 @@
1
-
2
- <ul class="xoxo">
3
- <li id="text-1" class="widget widget_text"><h3 class="widgettitle"><?= BUtils::_('Logged in as')?></h3>
4
- <div class="textwidget"><b><?php echo $auth->get('user_name');?><b></div>
5
- </li>
6
- <li id="text-2" class="widget widget_text"><h3 class="widgettitle"><?= BUtils::_('Account Status')?></h3>
7
- <div class="textwidget"><b><?php echo ucfirst($auth->get('account_state'));?></b></div>
8
- </li>
9
- <li id="text-2" class="widget widget_text"><h3 class="widgettitle"><?= BUtils::_('Membership')?></h3>
10
- <div class="textwidget"><b><?php echo $auth->get('alias');?></b></div>
11
- </li>
12
- <li id="text-2" class="widget widget_text"><h3 class="widgettitle"><?= BUtils::_('Account Expiry')?></h3>
13
- <div class="textwidget"><b><?php echo $auth->get_expire_date();?></b></div>
14
- </li>
15
- <li id="text-2" class="widget widget_text">
16
- <a href="?swpm-logout=true"><?= BUtils::_('Logout')?></a>
17
- </li>
18
- </ul>