Simple Membership - Version 1.8.0

Version Description

  • Added a new feature called "more tag protection" to enable teaser content. Read the teaser content documentation for more info.
  • Added Portuguese (Brazil) language translation to the plugin. The translation was submitted by Rachel Oakes.
  • Added cookiehash definition check (in case it is not defined already).
Download this release

Release Info

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

Code changes from version 1.6 to 1.8.0

Files changed (49) hide show
  1. classes/class.bAccessControl.php +60 -37
  2. classes/class.bAdminRegistration.php +8 -4
  3. classes/class.bAjax.php +3 -2
  4. classes/class.bAuth.php +25 -16
  5. classes/class.bForm.php +42 -22
  6. classes/class.bFrontRegistration.php +18 -13
  7. classes/class.bLevelForm.php +12 -12
  8. classes/class.bMembers.php +18 -13
  9. classes/class.bMembershipLevel.php +4 -4
  10. classes/class.bMembershipLevels.php +58 -57
  11. classes/class.bProtectionBase.php +4 -3
  12. classes/class.bRegistration.php +5 -11
  13. classes/class.bSettings.php +13 -3
  14. classes/class.bTransfer.php +6 -4
  15. classes/class.bUtils.php +53 -1
  16. classes/class.miscUtils.php +4 -4
  17. classes/class.simple-wp-membership.php +79 -33
  18. css/swpm.common.css +12 -1
  19. languages/swpm-es_ES.mo +0 -0
  20. languages/swpm-es_ES.po +714 -0
  21. languages/swpm-fr_FR.mo +0 -0
  22. languages/swpm-fr_FR.po +895 -0
  23. languages/swpm-pt_BR.mo +0 -0
  24. languages/swpm-pt_BR.po +711 -0
  25. languages/swpm-zh_CN.mo +0 -0
  26. languages/swpm-zh_CN.po +689 -0
  27. languages/swpm-zh_Hans.mo +0 -0
  28. languages/swpm-zh_Hans.po +689 -0
  29. languages/swpm.pot +695 -0
  30. readme.txt +77 -8
  31. simple-wp-membership.php +10 -5
  32. views/add.php +18 -18
  33. views/admin_add.php +7 -7
  34. views/admin_add_level.php +29 -28
  35. views/admin_edit.php +6 -5
  36. views/admin_edit_level.php +7 -7
  37. views/admin_member_form_common_part.php +21 -21
  38. views/admin_members.php +8 -8
  39. views/admin_membership_level_menu.php +3 -3
  40. views/admin_membership_levels.php +7 -7
  41. views/admin_membership_manage.php +1 -1
  42. views/admin_payment_settings.php +6 -7
  43. views/admin_settings.php +1 -1
  44. views/admin_tools_settings.php +9 -9
  45. views/edit.php +59 -59
  46. views/forgot_password.php +4 -4
  47. views/loggedin.php +11 -7
  48. views/login.php +12 -12
  49. views/login_widget_logged.php +10 -7
classes/class.bAccessControl.php CHANGED
@@ -14,53 +14,76 @@ 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 ='You are not allowed to view this content' ;
24
- return false;
25
- }
26
- $this->lastError ='You need to login to view this content. '
27
- . BSettings::get_instance()->get_login_link();
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 ="You are not allowed to view this content";
41
- return false;
42
- }
43
- $this->lastError ="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
  return $this->lastError;
56
  }
57
- public function filter_comment($id,$content){
58
- if($this->can_i_read_comment($id)) return $content;
59
  return $this->lastError;
60
  }
61
- public function filter_post_with_moretag($id, $content){
62
- $this->moretags[] = $id;
63
- if($this->can_i_read_post($id)) return $content;
64
- return $this->lastError;
 
 
 
65
  }
66
  }
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;
58
+ }
59
+ $post = get_post($id);
60
+ $post_segments = explode( '<!--more-->', $post->post_content);
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 {
68
+ $error_msg = '<div class="swpm-margin-top-10">' . BUtils::_("You need to login to view the rest of the content. ") . BSettings::get_instance()->get_login_link() . '</div>';
69
+ $this->lastError = apply_filters('swpm_not_logged_in_more_tag_msg', $error_msg);
70
+ }
71
+
72
+ return do_shortcode($post_segments[0]) . $this->lastError;
73
+ }
74
+
75
  return $this->lastError;
76
  }
77
+ public function filter_comment($id,$content){
78
+ if($this->can_i_read_comment($id)) { return $content; }
79
  return $this->lastError;
80
  }
81
+ public function filter_post_with_moretag($id, $more_link, $more_link_text){
82
+ $this->moretags[] = $id;
83
+ if($this->can_i_read_post($id)) {
84
+ return $more_link;
85
+ }
86
+ $msg = BUtils::_("You need to login to view the rest of the content. ") . BSettings::get_instance()->get_login_link();
87
+ return apply_filters('swpm_not_logged_in_more_tag_msg', $msg);
88
  }
89
  }
classes/class.bAdminRegistration.php CHANGED
@@ -6,7 +6,10 @@
6
  * @author nur
7
  */
8
  class BAdminRegistration extends BRegistration {
9
- protected static $__CLASS__ = __CLASS__;
 
 
 
10
  public function show_form() {
11
 
12
  }
@@ -42,12 +45,12 @@ class BAdminRegistration extends BRegistration {
42
  if (!empty($send_notification)){
43
  $this->send_reg_email();
44
  }
45
- $message = array('succeeded' => true, 'message' => 'Registration Successful.');
46
  BTransfer::get_instance()->set('status', $message);
47
  wp_redirect('admin.php?page=simple_wp_membership');
48
  return;
49
  }
50
- $message = array('succeeded' => false, 'message' => 'Please correct the following:', 'extra' => $form->get_errors());
51
  BTransfer::get_instance()->set('status', $message);
52
  }
53
  public function edit($id){
@@ -63,10 +66,11 @@ class BAdminRegistration extends BRegistration {
63
  unset($member['plain_password']);
64
  $wpdb->update($wpdb->prefix . "swpm_members_tbl", $member, array('member_id' => $id));
65
  $message = array('succeeded' => true, 'message' => 'Updated Successfully.');
 
66
  BTransfer::get_instance()->set('status', $message);
67
  wp_redirect('admin.php?page=simple_wp_membership');
68
  }
69
- $message = array('succeeded' => false, 'message' => 'Please correct the following:', 'extra' => $form->get_errors());
70
  BTransfer::get_instance()->set('status', $message);
71
  }
72
  }
6
  * @author nur
7
  */
8
  class BAdminRegistration extends BRegistration {
9
+ public static function get_instance(){
10
+ self::$_intance = empty(self::$_intance)? new BAdminRegistration():self::$_intance;
11
+ return self::$_intance;
12
+ }
13
  public function show_form() {
14
 
15
  }
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());
54
  BTransfer::get_instance()->set('status', $message);
55
  }
56
  public function edit($id){
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
  }
76
  }
classes/class.bAjax.php CHANGED
@@ -13,7 +13,7 @@ class BAjax {
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;Aready taken"]' : '",true, "&radic;&nbsp;Available"]');
17
  exit;
18
  }
19
 
@@ -25,7 +25,8 @@ class BAjax {
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;Aready taken"]' : '",true,"&radic;&nbsp;Available"]');
 
29
  exit;
30
  }
31
  }
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
  }
19
 
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'). '"]');
30
  exit;
31
  }
32
  }
classes/class.bAuth.php CHANGED
@@ -33,6 +33,7 @@ class BAuth {
33
  global $wpdb;
34
  $swpm_user_name = filter_input(INPUT_POST, 'swpm_user_name');
35
  $swpm_password = filter_input(INPUT_POST, 'swpm_password');
 
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);
@@ -44,14 +45,14 @@ class BAuth {
44
  if (!$userData) {
45
  $this->isLoggedIn = false;
46
  $this->userData = null;
47
- $this->lastStatusMsg = "User Not Found.";
48
  return false;
49
  }
50
  $check = $this->check_password($pass, $userData->password);
51
  if (!$check) {
52
  $this->isLoggedIn = false;
53
  $this->userData = null;
54
- $this->lastStatusMsg = "Password Empty or Invalid.";
55
  return false;
56
  }
57
  if ($this->check_constraints()) {
@@ -75,7 +76,7 @@ class BAuth {
75
  $permission = BPermission::get_instance($this->userData->membership_level);
76
  $valid = true;
77
  if ($this->userData->account_state != 'active') {
78
- $this->lastStatusMsg = 'Account is inactive.';
79
  $valid = false;
80
  }
81
  if (!$valid) {
@@ -84,8 +85,8 @@ class BAuth {
84
  return false;
85
  }
86
  //:todo check if account expired and update db if it did.
87
- $this->userData->permitted = $permission;
88
- $this->lastStatusMsg = "You are logged in as:" . $this->userData->user_name;
89
  $this->isLoggedIn = true;
90
  return true;
91
  }
@@ -120,11 +121,11 @@ class BAuth {
120
  if (!$this->isLoggedIn){
121
  return;
122
  }
123
- setcookie(SIMPLE_WP_MEMBERSHIP_AUTH, ' ', time() - YEAR_IN_SECONDS, "/", COOKIE_DOMAIN);
124
- setcookie(SIMPLE_WP_MEMBERSHIP_SEC_AUTH, ' ', time() - YEAR_IN_SECONDS, "/", COOKIE_DOMAIN);
125
  $this->userData = null;
126
  $this->isLoggedIn = false;
127
- $this->lastStatusMsg = "Logged Out Successfully.";
128
  do_action('swpm_logout');
129
  }
130
 
@@ -145,7 +146,7 @@ class BAuth {
145
  $auth_cookie = $this->userData->user_name . '|' . $expire . '|' . $hash;
146
  $auth_cookie_name = $secure ? SIMPLE_WP_MEMBERSHIP_SEC_AUTH : SIMPLE_WP_MEMBERSHIP_AUTH;
147
  //setcookie($auth_cookie_name, $auth_cookie, $expire, PLUGINS_COOKIE_PATH, COOKIE_DOMAIN, $secure, true);
148
- setcookie($auth_cookie_name, $auth_cookie, $expire, "/", COOKIE_DOMAIN, $secure, true);
149
  }
150
 
151
  private function validate() {
@@ -166,7 +167,7 @@ class BAuth {
166
  }
167
  // Quick check to see if an honest cookie has expired
168
  if ($expired < time()) {
169
- $this->lastStatusMsg = "Session Expired."; //do_action('auth_cookie_expired', $cookie_elements);
170
  return false;
171
  }
172
  Blog::log_simple_debug("validate:Session Expired",true);
@@ -175,7 +176,7 @@ class BAuth {
175
  $query.= " WHERE user_name = '" . $username . "'";
176
  $user = $wpdb->get_row($query);
177
  if (empty($user)) {
178
- $this->lastStatusMsg = "Invalid User Name";
179
  return false;
180
  }
181
  Blog::log_simple_debug("validate:Invalid User Name:" . serialize($user),true);
@@ -183,7 +184,7 @@ class BAuth {
183
  $key = BAuth::b_hash($username . $pass_frag . '|' . $expiration);
184
  $hash = hash_hmac('md5', $username . '|' . $expiration, $key);
185
  if ($hmac != $hash) {
186
- $this->lastStatusMsg = "Bad Cookie Hash";
187
  return false;
188
  }
189
  Blog::log_simple_debug("validate:bad hash",true);
@@ -207,14 +208,22 @@ class BAuth {
207
  if (isset($this->userData->$key)){
208
  return $this->userData->$key;
209
  }
210
- if (isset($this->userData->permitted->$key)){
211
- return $this->userData->permitted->$key;
212
  }
213
- return $default;
214
  }
215
 
216
  public function get_message() {
217
  return $this->lastStatusMsg;
218
  }
219
-
 
 
 
 
 
 
 
 
220
  }
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);
45
  if (!$userData) {
46
  $this->isLoggedIn = false;
47
  $this->userData = null;
48
+ $this->lastStatusMsg = BUtils::_("User Not Found.");
49
  return false;
50
  }
51
  $check = $this->check_password($pass, $userData->password);
52
  if (!$check) {
53
  $this->isLoggedIn = false;
54
  $this->userData = null;
55
+ $this->lastStatusMsg = BUtils::_("Password Empty or Invalid.");
56
  return false;
57
  }
58
  if ($this->check_constraints()) {
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) {
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;
92
  }
121
  if (!$this->isLoggedIn){
122
  return;
123
  }
124
+ setcookie(SIMPLE_WP_MEMBERSHIP_AUTH, ' ', time() - YEAR_IN_SECONDS, COOKIEPATH, COOKIE_DOMAIN);
125
+ setcookie(SIMPLE_WP_MEMBERSHIP_SEC_AUTH, ' ', time() - YEAR_IN_SECONDS, COOKIEPATH, COOKIE_DOMAIN);
126
  $this->userData = null;
127
  $this->isLoggedIn = false;
128
+ $this->lastStatusMsg = BUtils::_("Logged Out Successfully.");
129
  do_action('swpm_logout');
130
  }
131
 
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);
150
  }
151
 
152
  private function validate() {
167
  }
168
  // Quick check to see if an honest cookie has expired
169
  if ($expired < time()) {
170
+ $this->lastStatusMsg = BUtils::_("Session Expired."); //do_action('auth_cookie_expired', $cookie_elements);
171
  return false;
172
  }
173
  Blog::log_simple_debug("validate:Session Expired",true);
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;
181
  }
182
  Blog::log_simple_debug("validate:Invalid User Name:" . serialize($user),true);
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);
208
  if (isset($this->userData->$key)){
209
  return $this->userData->$key;
210
  }
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() {
218
  return $this->lastStatusMsg;
219
  }
220
+ public function get_expire_date(){
221
+ if ($this->isLoggedIn){
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
  }
classes/class.bForm.php CHANGED
@@ -9,19 +9,35 @@ class BForm {
9
 
10
  public function __construct($fields) {
11
  $this->fields = $fields;
12
- ;
13
  $this->sanitized = array();
14
- foreach ($fields as $key => $value){
15
- $this->$key();
 
 
 
16
  }
17
  }
 
 
 
 
 
 
 
 
 
 
 
 
18
 
 
 
19
  protected function user_name() {
20
  global $wpdb;
21
  if (!empty($this->fields['user_name'])){return;}
22
  $user_name = filter_input(INPUT_POST, 'user_name',FILTER_SANITIZE_STRING);
23
  if (empty($user_name)) {
24
- $this->errors['user_name'] = 'User name is required';
25
  return;
26
  }
27
  $saned = sanitize_text_field($user_name);
@@ -30,7 +46,7 @@ class BForm {
30
  $result = $wpdb->get_var($query);
31
  if ($result > 0) {
32
  if ($saned != $this->fields['user_name']) {
33
- $this->errors['user_name'] = 'User name already exists.';
34
  return;
35
  }
36
  }
@@ -53,14 +69,14 @@ class BForm {
53
  $password = filter_input(INPUT_POST, 'password',FILTER_UNSAFE_RAW);
54
  $password_re = filter_input(INPUT_POST, 'password_re',FILTER_UNSAFE_RAW);
55
  if (empty($this->fields['password']) && empty($password)) {
56
- $this->errors['password'] = 'Password is required';
57
  return;
58
  }
59
  if (!empty($password)) {
60
  $saned = sanitize_text_field($password);
61
  $saned_re = sanitize_text_field($password_re);
62
  if ($saned != $saned_re){
63
- $this->errors['password'] = 'Password mismatch';
64
  }
65
  include_once(ABSPATH . WPINC . '/class-phpass.php');
66
  $wp_hasher = new PasswordHash(8, TRUE);
@@ -76,11 +92,11 @@ class BForm {
76
  }
77
  $email = filter_input(INPUT_POST, 'email', FILTER_UNSAFE_RAW);
78
  if (empty($email)) {
79
- $this->errors['email'] = 'Email is required';
80
  return;
81
  }
82
  if (!is_email($email)) {
83
- $this->errors['email'] = 'Email is invalid';
84
  return;
85
  }
86
  $saned = sanitize_email($email);
@@ -93,7 +109,7 @@ class BForm {
93
  $result = $wpdb->get_var($query);
94
  if ($result > 0) {
95
  if ($saned != $this->fields['email']) {
96
- $this->errors['email'] = 'Email is already used.';
97
  return;
98
  }
99
  }
@@ -103,14 +119,18 @@ class BForm {
103
  protected function phone() {
104
  $phone = filter_input(INPUT_POST, 'phone', FILTER_UNSAFE_RAW);
105
  if (empty($phone)) {return;}
106
- $saned = wp_kses($phone, array());
107
- $this->sanitized['phone'] = $saned;
108
- if (strlen($saned) > 9 && preg_match('/^((\+)?[1-9]{1,2})?([-\s\.])?((\(\d{1,4}\))|\d{1,4})(([-\s\.])?[0-9]{1,12}){1,2}$/', $saned)){
109
- $this->sanitized['phone'] = $saned;
110
- }
111
- else{
112
- $this->errors['phone'] = 'Phone number is invalid';
113
- }
 
 
 
 
114
  }
115
 
116
  protected function address_street() {
@@ -155,7 +175,7 @@ class BForm {
155
  $this->sanitized['member_since'] = sanitize_text_field($member_since);
156
  return;
157
  }
158
- $this->errors['member_since'] = 'Member since field is invalid';
159
 
160
  }
161
 
@@ -166,7 +186,7 @@ class BForm {
166
  $this->sanitized['subscription_starts'] = sanitize_text_field($subscription_starts);
167
  return;
168
  }
169
- $this->errors['subscription_starts'] = 'Subscription starts field is invalid';
170
  }
171
 
172
  protected function gender() {
@@ -176,7 +196,7 @@ class BForm {
176
  $this->sanitized['gender'] = $gender;
177
  }
178
  else{
179
- $this->errors['gender'] = 'Gender field is invalid';
180
  }
181
  }
182
 
@@ -187,7 +207,7 @@ class BForm {
187
  $this->sanitized['account_state'] = $account_state;
188
  }
189
  else{
190
- $this->errors['account_state'] = 'Account state field is invalid';
191
  }
192
  }
193
 
9
 
10
  public function __construct($fields) {
11
  $this->fields = $fields;
 
12
  $this->sanitized = array();
13
+ $this->validate_wp_user_email();
14
+ if ($this->is_valid()){
15
+ foreach ($fields as $key => $value){
16
+ $this->$key();
17
+ }
18
  }
19
  }
20
+ protected function validate_wp_user_email(){
21
+ $user_name = filter_input(INPUT_POST, 'user_name',FILTER_SANITIZE_STRING);
22
+ $email = filter_input(INPUT_POST, 'email', FILTER_UNSAFE_RAW);
23
+ if (empty($user_name)) {return;}
24
+ $user = get_user_by('login', $user_name);
25
+ if ($user && ($user->email != $email)){
26
+ $this->errors['wp_email'] = BUtils::_('Wordpress account exists with given user name. But given email doesn\'t match.');
27
+ return;
28
+ }
29
+ $user = get_user_by('email', $email);
30
+ if($user && ($user_name != $user->login)){
31
+ $this->errors['wp_user'] = BUtils::_('Wordpress account exists with given email. But given user name doesn\'t match.');
32
 
33
+ }
34
+ }
35
  protected function user_name() {
36
  global $wpdb;
37
  if (!empty($this->fields['user_name'])){return;}
38
  $user_name = filter_input(INPUT_POST, 'user_name',FILTER_SANITIZE_STRING);
39
  if (empty($user_name)) {
40
+ $this->errors['user_name'] = BUtils::_('User name is required');
41
  return;
42
  }
43
  $saned = sanitize_text_field($user_name);
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.');
50
  return;
51
  }
52
  }
69
  $password = filter_input(INPUT_POST, 'password',FILTER_UNSAFE_RAW);
70
  $password_re = filter_input(INPUT_POST, 'password_re',FILTER_UNSAFE_RAW);
71
  if (empty($this->fields['password']) && empty($password)) {
72
+ $this->errors['password'] = BUtils::_('Password is required');
73
  return;
74
  }
75
  if (!empty($password)) {
76
  $saned = sanitize_text_field($password);
77
  $saned_re = sanitize_text_field($password_re);
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);
92
  }
93
  $email = filter_input(INPUT_POST, 'email', FILTER_UNSAFE_RAW);
94
  if (empty($email)) {
95
+ $this->errors['email'] = BUtils::_('Email is required');
96
  return;
97
  }
98
  if (!is_email($email)) {
99
+ $this->errors['email'] = BUtils::_('Email is invalid');
100
  return;
101
  }
102
  $saned = sanitize_email($email);
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.');
113
  return;
114
  }
115
  }
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
+
126
+ // $saned = wp_kses($phone, array());
127
+ // $this->sanitized['phone'] = $saned;
128
+ // if (strlen($saned) > 9 && preg_match('/^((\+)?[1-9]{1,2})?([-\s\.])?((\(\d{1,4}\))|\d{1,4})(([-\s\.])?[0-9]{1,12}){1,2}$/', $saned)){
129
+ // $this->sanitized['phone'] = $saned;
130
+ // }
131
+ // else{
132
+ // $this->errors['phone'] = BUtils::_('Phone number is invalid');
133
+ // }
134
  }
135
 
136
  protected function address_street() {
175
  $this->sanitized['member_since'] = sanitize_text_field($member_since);
176
  return;
177
  }
178
+ $this->errors['member_since'] = BUtils::_('Member since field is invalid');
179
 
180
  }
181
 
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() {
196
  $this->sanitized['gender'] = $gender;
197
  }
198
  else{
199
+ $this->errors['gender'] = BUtils::_('Gender field is invalid');
200
  }
201
  }
202
 
207
  $this->sanitized['account_state'] = $account_state;
208
  }
209
  else{
210
+ $this->errors['account_state'] = BUtils::_('Account state field is invalid');
211
  }
212
  }
213
 
classes/class.bFrontRegistration.php CHANGED
@@ -6,7 +6,10 @@
6
  * @author nur
7
  */
8
  class BFrontRegistration extends BRegistration {
9
- protected static $__CLASS__ = __CLASS__;
 
 
 
10
  public function regigstration_ui(){
11
  $settings_configs = BSettings::get_instance();
12
  $is_free = BSettings::get_instance()->get_value('enable-free-membership');
@@ -22,7 +25,7 @@ class BFrontRegistration extends BRegistration {
22
  $query = $wpdb->prepare($query, $member_id, $code);
23
  $member = $wpdb->get_row($query);
24
  if (empty($member)){
25
- echo 'Error! Invalid Request. Could not find a match for the given security code and the user ID.';
26
  }
27
  $membership_level = $member->membership_level;
28
  }
@@ -33,11 +36,11 @@ class BFrontRegistration extends BRegistration {
33
  }
34
  if (empty($membership_level)) {
35
  $joinuspage_link = '<a href="' . $joinuspage_url . '">Join us</a>';
36
- $output = 'Free membership is disabled on this site. Please make a payment from the ' . $joinuspage_link . ' page to pay for a premium membership.';
37
- echo $output;
38
  return;
39
  }
40
-
 
41
  $query = "SELECT alias FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id = $membership_level";
42
  $result = $wpdb->get_row($query);
43
  if (empty($result)) {
@@ -48,15 +51,17 @@ class BFrontRegistration extends BRegistration {
48
  if (!empty($swpm_registration_submit)){
49
  $member = $_POST;
50
  }
 
51
  extract((array)$member, EXTR_SKIP);
52
- include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/add.php');
 
53
  }
54
  public function register() {
55
  if($this->create_swpm_user()&&$this->create_wp_user()&&$this->send_reg_email()){
56
  do_action('swpm_front_end_registration_complete');
57
 
58
  $login_page_url = BSettings::get_instance()->get_value('login-page-url');
59
- $after_rego_msg = '<p>Registration Successful. Please <a href="' . $login_page_url . '">Login</a></p>';
60
  $message = array('succeeded' => true, 'message' => $after_rego_msg);
61
  BTransfer::get_instance()->set('status', $message);
62
  return;
@@ -71,7 +76,7 @@ class BFrontRegistration extends BRegistration {
71
  $member_id = filter_input(INPUT_GET, 'member_id', FILTER_SANITIZE_NUMBER_INT);
72
  $code = filter_input(INPUT_GET, 'code', FILTER_SANITIZE_STRING);
73
  if (!$form->is_valid()) {
74
- $message = array('succeeded' => false, 'message' => 'Please correct the following',
75
  'extra' => $form->get_errors());
76
  BTransfer::get_instance()->set('status', $message);
77
  return false;
@@ -84,7 +89,7 @@ class BFrontRegistration extends BRegistration {
84
  $member_info['membership_level'] = $free_level;
85
  }
86
  else if (empty($member_id)){
87
- $message = array('succeeded' => false, 'message' => 'Membership Level Couldn\'t be found.');
88
  BTransfer::get_instance()->set('status', $message);
89
  return false;
90
  }
@@ -150,7 +155,7 @@ class BFrontRegistration extends BRegistration {
150
  $message = array('succeeded' => true, 'message' => 'Profile Updated.');
151
  BTransfer::get_instance()->set('status', $message);
152
  } else {
153
- $message = array('succeeded' => false, 'message' => 'Please correct the following',
154
  'extra' => $form->get_errors());
155
  BTransfer::get_instance()->set('status', $message);
156
  return;
@@ -160,7 +165,7 @@ class BFrontRegistration extends BRegistration {
160
  public function reset_password($email) {
161
  $email = sanitize_email($email);
162
  if (!is_email($email)) {
163
- $message = "Email Address Not Valid.";
164
  $message = array('succeeded' => false, 'message' => $message);
165
  BTransfer::get_instance()->set('status', $message);
166
  return;
@@ -171,7 +176,7 @@ class BFrontRegistration extends BRegistration {
171
  ' WHERE email = %s';
172
  $user = $wpdb->get_row($wpdb->prepare($query, $email));
173
  if (empty($user)) {
174
- $message = "User Not Found.";
175
  $message = array('succeeded' => false, 'message' => $message);
176
  BTransfer::get_instance()->set('status', $message);
177
  return;
@@ -191,7 +196,7 @@ class BFrontRegistration extends BRegistration {
191
  $from = $settings->get_value('email-from');
192
  $headers = "From: " . $from . "\r\n";
193
  wp_mail($email, $subject, $body, $headers);
194
- $message = "New password has been sent to your email address.";
195
  $message = array('succeeded' => false, 'message' => $message);
196
  BTransfer::get_instance()->set('status', $message);
197
  }
6
  * @author nur
7
  */
8
  class BFrontRegistration extends BRegistration {
9
+ public static function get_instance(){
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');
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
  }
36
  }
37
  if (empty($membership_level)) {
38
  $joinuspage_link = '<a href="' . $joinuspage_url . '">Join us</a>';
39
+ BUtils::e('Free membership is disabled on this site. Please make a payment from the ' . $joinuspage_link . ' page to pay for a premium membership.');
 
40
  return;
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)) {
51
  if (!empty($swpm_registration_submit)){
52
  $member = $_POST;
53
  }
54
+ ob_start();
55
  extract((array)$member, EXTR_SKIP);
56
+ include(SIMPLE_WP_MEMBERSHIP_PATH . 'views/add.php');
57
+ return ob_get_clean();
58
  }
59
  public function register() {
60
  if($this->create_swpm_user()&&$this->create_wp_user()&&$this->send_reg_email()){
61
  do_action('swpm_front_end_registration_complete');
62
 
63
  $login_page_url = BSettings::get_instance()->get_value('login-page-url');
64
+ $after_rego_msg = '<p>'. BUtils::_('Registration Successful. '). BUtils::_('Please').' <a href="' . $login_page_url . '">'.BUtils::_('Login').'</a></p>';
65
  $message = array('succeeded' => true, 'message' => $after_rego_msg);
66
  BTransfer::get_instance()->set('status', $message);
67
  return;
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;
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
  }
155
  $message = array('succeeded' => true, 'message' => 'Profile Updated.');
156
  BTransfer::get_instance()->set('status', $message);
157
  } else {
158
+ $message = array('succeeded' => false, 'message' => BUtils::_('Please correct the following'),
159
  'extra' => $form->get_errors());
160
  BTransfer::get_instance()->set('status', $message);
161
  return;
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
  ' 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;
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
  }
classes/class.bLevelForm.php CHANGED
@@ -13,10 +13,10 @@ class BLevelForm{
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;
@@ -24,21 +24,21 @@ class BLevelForm{
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'] = "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(){}
@@ -49,7 +49,7 @@ class BLevelForm{
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
  }
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;
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(){}
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
  }
classes/class.bMembers.php CHANGED
@@ -4,8 +4,8 @@ class BMembers extends WP_List_Table {
4
 
5
  function __construct() {
6
  parent::__construct(array(
7
- 'singular' => 'Member',
8
- 'plural' => 'Members',
9
  'ajax' => false
10
  ));
11
  }
@@ -13,14 +13,14 @@ class BMembers extends WP_List_Table {
13
  function get_columns() {
14
  return array(
15
  'cb' => '<input type="checkbox" />'
16
- , 'member_id' => 'ID'
17
- , 'user_name' => 'User Name'
18
- , 'first_name' => 'First Name'
19
- , 'last_name' => 'Last Name'
20
- , 'email' => 'Email'
21
- , 'alias' => 'Membership Level'
22
- , 'subscription_starts' => 'Subscription Starts'
23
- , 'account_state' => 'Account State'
24
  );
25
  }
26
 
@@ -32,7 +32,7 @@ class BMembers extends WP_List_Table {
32
 
33
  function get_bulk_actions() {
34
  $actions = array(
35
- 'bulk_delete' => 'Delete'
36
  );
37
  return $actions;
38
  }
@@ -61,8 +61,11 @@ 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 = '" . strip_tags($_POST['s']) . "' ";
 
 
 
66
  $orderby = !empty($_GET["orderby"]) ? mysql_real_escape_string($_GET["orderby"]) : 'ASC';
67
  $order = !empty($_GET["order"]) ? mysql_real_escape_string($_GET["order"]) : '';
68
  if (!empty($orderby) & !empty($order)) {
@@ -104,6 +107,8 @@ class BMembers extends WP_List_Table {
104
  }
105
 
106
  function add() {
 
 
107
  global $wpdb;
108
  $member = BTransfer::$default_fields;
109
  $member['member_since'] = date('Y-m-d');
4
 
5
  function __construct() {
6
  parent::__construct(array(
7
+ 'singular' => BUtils::_('Member'),
8
+ 'plural' => BUtils::_('Members'),
9
  'ajax' => false
10
  ));
11
  }
13
  function get_columns() {
14
  return array(
15
  'cb' => '<input type="checkbox" />'
16
+ , 'member_id' => BUtils::_('ID')
17
+ , 'user_name' => BUtils::_('User Name')
18
+ , 'first_name' => BUtils::_('First Name')
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
 
32
 
33
  function get_bulk_actions() {
34
  $actions = array(
35
+ 'bulk_delete' => BUtils::_('Delete')
36
  );
37
  return $actions;
38
  }
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)) {
107
  }
108
 
109
  function add() {
110
+ $form = apply_filters('swpm_admin_registration_form_override', '');
111
+ if (!empty($form)) {echo $form;return;}
112
  global $wpdb;
113
  $member = BTransfer::$default_fields;
114
  $member['member_since'] = date('Y-m-d');
classes/class.bMembershipLevel.php CHANGED
@@ -28,12 +28,12 @@ class BMembershipLevel {
28
  $id = $wpdb->insert_id;
29
  $custom = apply_filters('swpm_admin_add_membership_level', array());
30
  $this->save_custom_fields($id, $custom);
31
- $message = array('succeeded' => true, 'message' => 'Membership Level Creation Successful.');
32
  BTransfer::get_instance()->set('status', $message);
33
  wp_redirect('admin.php?page=simple_wp_membership_levels');
34
  return;
35
  }
36
- $message = array('succeeded' => false, 'message' => 'Please correct the following:', 'extra' => $form->get_errors());
37
  BTransfer::get_instance()->set('status', $message);
38
  }
39
 
@@ -47,11 +47,11 @@ class BMembershipLevel {
47
  //@todo meta table and collect all relevant info and pass as argument
48
  $custom = apply_filters('swpm_admin_edit_membership_level', array(), $id);
49
  $this->save_custom_fields($id, $custom);
50
- $message = array('succeeded' => true, 'message' => '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' => 'Please correct the following:', 'extra' => $form->get_errors());
55
  BTransfer::get_instance()->set('status', $message);
56
  }
57
  private function save_custom_fields($level_id, $data){
28
  $id = $wpdb->insert_id;
29
  $custom = apply_filters('swpm_admin_add_membership_level', array());
30
  $this->save_custom_fields($id, $custom);
31
+ $message = array('succeeded' => true, 'message' => BUtils::_('Membership Level Creation Successful.'));
32
  BTransfer::get_instance()->set('status', $message);
33
  wp_redirect('admin.php?page=simple_wp_membership_levels');
34
  return;
35
  }
36
+ $message = array('succeeded' => false, 'message' => BUtils::_('Please correct the following:'), 'extra' => $form->get_errors());
37
  BTransfer::get_instance()->set('status', $message);
38
  }
39
 
47
  //@todo meta table and collect all relevant info and pass as argument
48
  $custom = apply_filters('swpm_admin_edit_membership_level', array(), $id);
49
  $this->save_custom_fields($id, $custom);
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);
56
  }
57
  private function save_custom_fields($level_id, $data){
classes/class.bMembershipLevels.php CHANGED
@@ -5,18 +5,18 @@ if( ! class_exists( 'WP_List_Table' ) )
5
  class BMembershipLevels extends WP_List_Table{
6
  function __construct(){
7
  parent::__construct(array(
8
- 'singular'=>'Membership Level',
9
- 'plural' => 'Membership Levels',
10
  'ajax' => false
11
  ));
12
  }
13
  function get_columns(){
14
  return array(
15
  'cb' => '<input type="checkbox" />'
16
- ,'id'=>'ID'
17
- ,'alias'=>'Membership Level'
18
- ,'role'=>'Role'
19
- ,'valid_for'=>'Subscription Valid For'
20
  );
21
  }
22
  function get_sortable_columns(){
@@ -26,7 +26,7 @@ class BMembershipLevels extends WP_List_Table{
26
  }
27
  function get_bulk_actions() {
28
  $actions = array(
29
- 'bulk_delete' => 'Delete'
30
  );
31
  return $actions;
32
  }
@@ -84,58 +84,59 @@ class BMembershipLevels extends WP_List_Table{
84
  $this->items = $wpdb->get_results($query, ARRAY_A);
85
  }
86
  function no_items() {
87
- _e( 'No membership levels found.' );
88
  }
89
- function process_form_request(){
90
- if(isset($_REQUEST['id']))
91
- return $this->edit($_REQUEST['id']);
92
- return $this->add();
 
93
 
94
- }
95
- function add(){
96
- global $wpdb;
97
- $member = BTransfer::$default_fields;
98
- if(isset($_POST['createswpmlevel'])){
99
- $member = $_POST;
100
- }
101
- extract($member, EXTR_SKIP);
102
- include_once(SIMPLE_WP_MEMBERSHIP_PATH.'views/admin_add_level.php');
103
- return false;
104
- }
105
- function edit($id){
106
- global $wpdb;
107
- $id = absint($id);
108
- $query = "SELECT * FROM {$wpdb->prefix}swpm_membership_tbl WHERE id = $id";
109
- $member = $wpdb->get_row($query, ARRAY_A);
110
- extract($member, EXTR_SKIP);
111
- $noexpire = bUtils::calculate_subscription_period($subscription_period,$subscription_unit) == 'noexpire';
112
- include_once(SIMPLE_WP_MEMBERSHIP_PATH.'views/admin_edit_level.php');
113
- return false;
114
- }
115
- function delete(){
116
- global $wpdb;
117
- if(isset($_REQUEST['id'])){
118
- $id = absint($_REQUEST['id']);
119
- $query = "DELETE FROM " .$wpdb->prefix . "swpm_membership_tbl WHERE id = $id";
120
- $wpdb->query($query);
121
- }
122
- else if (isset($_REQUEST['ids'])){
123
- $members = $_REQUEST['ids'];
124
- if(!empty($members)){
125
- $members = array_map('absint', $members);
126
- $members = implode(',', $members);
127
- $query = "DELETE FROM " .$wpdb->prefix . "swpm_membership_tbl WHERE id IN (" . $members . ")";
128
- $wpdb->query($query);
129
- }
130
- }
131
- }
132
- function show(){
133
- $selected = 1;
134
- include_once(SIMPLE_WP_MEMBERSHIP_PATH.'views/admin_membership_levels.php');
135
- }
136
- function manage(){
137
- $selected = 2;
138
- include_once(SIMPLE_WP_MEMBERSHIP_PATH.'views/admin_membership_manage.php');
139
  }
 
 
 
 
 
 
 
 
 
140
  }
141
 
5
  class BMembershipLevels extends WP_List_Table{
6
  function __construct(){
7
  parent::__construct(array(
8
+ 'singular'=>BUtils::_('Membership Level'),
9
+ 'plural' => BUtils::_('Membership Levels'),
10
  'ajax' => false
11
  ));
12
  }
13
  function get_columns(){
14
  return array(
15
  'cb' => '<input type="checkbox" />'
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(){
26
  }
27
  function get_bulk_actions() {
28
  $actions = array(
29
+ 'bulk_delete' => BUtils::_('Delete')
30
  );
31
  return $actions;
32
  }
84
  $this->items = $wpdb->get_results($query, ARRAY_A);
85
  }
86
  function no_items() {
87
+ BUtils::e( 'No membership levels found.' );
88
  }
89
+ function process_form_request(){
90
+ if(isset($_REQUEST['id'])){
91
+ return $this->edit($_REQUEST['id']);
92
+ }
93
+ return $this->add();
94
 
95
+ }
96
+ function add(){
97
+ global $wpdb;
98
+ $member = BTransfer::$default_fields;
99
+ if(isset($_POST['createswpmlevel'])){
100
+ $member = $_POST;
101
+ }
102
+ extract($member, EXTR_SKIP);
103
+ include_once(SIMPLE_WP_MEMBERSHIP_PATH.'views/admin_add_level.php');
104
+ return false;
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);
127
+ $members = implode(',', $members);
128
+ $query = "DELETE FROM " .$wpdb->prefix . "swpm_membership_tbl WHERE id IN (" . $members . ")";
129
+ $wpdb->query($query);
130
+ }
 
 
 
 
 
 
 
 
 
131
  }
132
+ }
133
+ function show(){
134
+ $selected = 1;
135
+ include_once(SIMPLE_WP_MEMBERSHIP_PATH.'views/admin_membership_levels.php');
136
+ }
137
+ function manage(){
138
+ $selected = 2;
139
+ include_once(SIMPLE_WP_MEMBERSHIP_PATH.'views/admin_membership_manage.php');
140
+ }
141
  }
142
 
classes/class.bProtectionBase.php CHANGED
@@ -250,10 +250,11 @@ abstract class BProtectionBase {
250
  $wpdb->update($wpdb->prefix . "swpm_membership_tbl", $data, array('id' => $this->owning_level_id));
251
  }
252
 
253
- public function get($key) {
254
- if (isset($this->details[$key]))
255
  return $this->details[$key];
256
- return "";
 
257
  }
258
 
259
  }
250
  $wpdb->update($wpdb->prefix . "swpm_membership_tbl", $data, array('id' => $this->owning_level_id));
251
  }
252
 
253
+ public function get($key, $default = '') {
254
+ if (isset($this->details[$key])){
255
  return $this->details[$key];
256
+ }
257
+ return $default;
258
  }
259
 
260
  }
classes/class.bRegistration.php CHANGED
@@ -8,14 +8,7 @@
8
  abstract class BRegistration {
9
  protected $member_info = array();
10
  protected static $_intance = null;
11
- protected function __construct() {
12
- ;
13
- }
14
- public static function get_instance(){
15
- $cls = static::$__CLASS__;
16
- self::$_intance = empty(self::$_intance)? new $cls():self::$_intance;
17
- return self::$_intance;
18
- }
19
  protected function send_reg_email(){
20
  global $wpdb;
21
  if (empty($this->member_info)) {return false;}
@@ -31,9 +24,7 @@ abstract class BRegistration {
31
  $member_info['password'] = $member_info['plain_password'];
32
  $member_info['login_link'] = $login_link;
33
  $values = array_values($member_info);
34
- $keys = array_map(function($n) {
35
- return '{'.$n .'}';
36
- }, array_keys($member_info));
37
  $body = str_replace($keys, $values, $body);
38
  $email = sanitize_email(filter_input(INPUT_POST, 'email', FILTER_UNSAFE_RAW));
39
  wp_mail(trim($email), $subject, $body, $headers);
@@ -47,3 +38,6 @@ abstract class BRegistration {
47
  return true;
48
  }
49
  }
 
 
 
8
  abstract class BRegistration {
9
  protected $member_info = array();
10
  protected static $_intance = null;
11
+ //public abstract static function get_instance();
 
 
 
 
 
 
 
12
  protected function send_reg_email(){
13
  global $wpdb;
14
  if (empty($this->member_info)) {return false;}
24
  $member_info['password'] = $member_info['plain_password'];
25
  $member_info['login_link'] = $login_link;
26
  $values = array_values($member_info);
27
+ $keys = array_map('swpm_enclose_var', array_keys($member_info));
 
 
28
  $body = str_replace($keys, $values, $body);
29
  $email = sanitize_email(filter_input(INPUT_POST, 'email', FILTER_UNSAFE_RAW));
30
  wp_mail(trim($email), $subject, $body, $headers);
38
  return true;
39
  }
40
  }
41
+ function swpm_enclose_var($n){
42
+ return '{'.$n .'}';
43
+ }
classes/class.bSettings.php CHANGED
@@ -37,6 +37,10 @@ class BSettings {
37
  array(&$this, 'textfield_small_callback'), 'simple_wp_membership_settings', 'general-settings',
38
  array('item' => 'free-membership-id',
39
  'message'=> BUtils::_('Assign free membership level ID')));
 
 
 
 
40
  add_settings_field('hide-adminbar', BUtils::_('Hide Adminbar'),
41
  array(&$this, 'checkbox_callback'), 'simple_wp_membership_settings', 'general-settings',
42
  array('item' => 'hide-adminbar',
@@ -74,7 +78,7 @@ class BSettings {
74
  add_settings_field('enable-sandbox-testing', BUtils::_('Enable Sandbox Testing'),
75
  array(&$this, 'checkbox_callback'), 'simple_wp_membership_settings', 'debug-settings',
76
  array('item' => 'enable-sandbox-testing',
77
- 'message'=>'Enable this option if you want to do sandbox payment testing.'));
78
 
79
  }
80
 
@@ -92,7 +96,7 @@ class BSettings {
92
  add_settings_field('email-misc-from', BUtils::_('From Email Address'),
93
  array(&$this, 'textfield_callback'), 'simple_wp_membership_settings', 'email-misc-settings',
94
  array('item' => 'email-from',
95
- 'message'=>'field specific message.'));
96
 
97
  add_settings_section('reg-prompt-email-settings', BUtils::_('Email Settings (Prompt to Complete Registration )'),
98
  array(&$this, 'reg_prompt_email_settings_callback'), 'simple_wp_membership_settings');
@@ -238,6 +242,12 @@ class BSettings {
238
  else{
239
  $output['enable-free-membership'] = "";
240
  }
 
 
 
 
 
 
241
  if (isset($input['enable-debug'])){
242
  $output['enable-debug'] = esc_url($input['enable-debug']);
243
  }
@@ -323,7 +333,7 @@ class BSettings {
323
  return '<span style="color:red;">Simple Membership is not configured correctly.'
324
  . 'Please contact <a href="mailto:' . get_option('admin_email'). '">Admin</a>';
325
  }
326
- return 'Please <a href="' . $login . '">Login</a>. Not a Member? <a href="' . $joinus . '">Join Us</a>';
327
  }
328
 
329
  }
37
  array(&$this, 'textfield_small_callback'), 'simple_wp_membership_settings', 'general-settings',
38
  array('item' => 'free-membership-id',
39
  'message'=> BUtils::_('Assign free membership level ID')));
40
+ add_settings_field('enable-moretag', BUtils::_('Enable More Tag Protection'),
41
+ array(&$this, 'checkbox_callback'), 'simple_wp_membership_settings', 'general-settings',
42
+ array('item' => 'enable-moretag',
43
+ 'message'=> BUtils::_('Enables or disables "more" tag protection in the posts and pages. Anything after the More tag is protected. Anything before the more tag is teaser content.')));
44
  add_settings_field('hide-adminbar', BUtils::_('Hide Adminbar'),
45
  array(&$this, 'checkbox_callback'), 'simple_wp_membership_settings', 'general-settings',
46
  array('item' => 'hide-adminbar',
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',
81
+ 'message'=>BUtils::_('Enable this option if you want to do sandbox payment testing.')));
82
 
83
  }
84
 
96
  add_settings_field('email-misc-from', BUtils::_('From Email Address'),
97
  array(&$this, 'textfield_callback'), 'simple_wp_membership_settings', 'email-misc-settings',
98
  array('item' => 'email-from',
99
+ 'message'=>''));
100
 
101
  add_settings_section('reg-prompt-email-settings', BUtils::_('Email Settings (Prompt to Complete Registration )'),
102
  array(&$this, 'reg_prompt_email_settings_callback'), 'simple_wp_membership_settings');
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
  }
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
  }
classes/class.bTransfer.php CHANGED
@@ -50,13 +50,15 @@ class BTransfer {
50
  }
51
 
52
  public static function get_real_ip_addr() {
53
- if (!empty($_SERVER['HTTP_CLIENT_IP']))
54
  $ip = $_SERVER['HTTP_CLIENT_IP'];
55
- else if (!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
 
56
  $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
57
- else
 
58
  $ip = $_SERVER['REMOTE_ADDR'];
59
-
60
  return $ip;
61
  }
62
 
50
  }
51
 
52
  public static function get_real_ip_addr() {
53
+ if (!empty($_SERVER['HTTP_CLIENT_IP'])){
54
  $ip = $_SERVER['HTTP_CLIENT_IP'];
55
+ }
56
+ else if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
57
  $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
58
+ }
59
+ else{
60
  $ip = $_SERVER['REMOTE_ADDR'];
61
+ }
62
  return $ip;
63
  }
64
 
classes/class.bUtils.php CHANGED
@@ -28,13 +28,28 @@ 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
-
 
 
 
 
 
32
  public static function subscription_unit_dropdown($selected = 'days') {
33
  return '<option ' . ((strtolower($selected) == 'days') ? 'selected="selected"' : "") . ' value="days">Days</option>' .
34
  '<option ' . ((strtolower($selected) == 'weeks') ? 'selected="selected"' : "") . ' value="weeks">Weeks</option>' .
35
  '<option ' . ((strtolower($selected) == 'months') ? 'selected="selected"' : "") . ' value="months">Months</option>' .
36
  '<option ' . ((strtolower($selected) == 'years') ? 'selected="selected"' : "") . ' value="years">Years</option>';
37
  }
 
 
 
 
 
 
 
 
 
 
38
 
39
  public static function get_user_by_id($swpm_id) {
40
  global $wpdb;
@@ -160,6 +175,8 @@ class BUtils {
160
  $role = 'subscriber'; //TODO - add user as a subscriber first. The subsequent update user role function to update the role to the correct one
161
  add_user_to_blog($blog_id, $wp_user_id, $role);
162
  } else {//Single site install
 
 
163
  $wp_user_id = wp_create_user($wp_user_data['user_login'], $wp_user_data['password'], $wp_user_data['user_email']);
164
  }
165
  $wp_user_data['ID'] = $wp_user_id;
@@ -184,4 +201,39 @@ class BUtils {
184
  public static function e($msg){
185
  _e($msg, 'swpm');
186
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
187
  }
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;
175
  $role = 'subscriber'; //TODO - add user as a subscriber first. The subsequent update user role function to update the role to the correct one
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;
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
  }
classes/class.miscUtils.php CHANGED
@@ -48,7 +48,7 @@ class miscUtils
48
 
49
  //Create registration page
50
  $swpm_rego_page = array(
51
- 'post_title' => 'Registration',
52
  'post_name' => 'membership-registration',
53
  'post_content' => '[swpm_registration_form]',
54
  'post_parent' => $join_page_id,
@@ -71,7 +71,7 @@ class miscUtils
71
 
72
  //Create login page
73
  $swpm_login_page = array(
74
- 'post_title' => 'Member Login',
75
  'post_name' => 'membership-login',
76
  'post_content' => '[swpm_login_form]',
77
  'post_parent' => 0,
@@ -94,7 +94,7 @@ class miscUtils
94
 
95
  //Create profile page
96
  $swpm_profile_page = array(
97
- 'post_title' => 'Profile',
98
  'post_name' => 'membership-profile',
99
  'post_content' => '[swpm_profile_form]',
100
  'post_parent' => $login_page_id,
@@ -117,7 +117,7 @@ class miscUtils
117
 
118
  //Create reset page
119
  $swpm_reset_page = array(
120
- 'post_title' => 'Password Reset',
121
  'post_name' => 'password-reset',
122
  'post_content' => '[swpm_reset_form]',
123
  'post_parent' => $login_page_id,
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,
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,
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,
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,
classes/class.simple-wp-membership.php CHANGED
@@ -24,19 +24,26 @@ include_once('class.bMembershipLevelUtils.php');
24
 
25
  class SimpleWpMembership {
26
  public function __construct() {
27
- BAuth::get_instance();
28
  add_action('admin_menu', array(&$this, 'menu'));
29
  //add_action('admin_init', array(&$this, 'admin_init')); //This call has been moved inside 'init' function
 
30
  add_action('init', array(&$this, 'init'));
 
31
  add_filter('the_content', array(&$this, 'filter_content'));
 
32
  add_filter('show_admin_bar', array(&$this, 'hide_adminbar'));
33
- //add_filter( 'the_content_more_link', array(&$this, 'filter_moretag'), 10, 2 );
34
  add_filter('comment_text', array(&$this, 'filter_comment'));
35
- add_action('save_post', array(&$this, 'save_postdata'));
 
 
 
 
36
  add_shortcode("swpm_registration_form", array(&$this, 'registration_form'));
37
  add_shortcode('swpm_profile_form', array(&$this, 'profile_form'));
38
  add_shortcode('swpm_login_form', array(&$this, 'login'));
39
  add_shortcode('swpm_reset_form', array(&$this, 'reset'));
 
 
40
  add_action('admin_notices', array(&$this, 'notices'));
41
  add_action('wp_enqueue_scripts', array(&$this, 'front_library'));
42
  add_action('load-toplevel_page_simple_wp_membership', array(&$this, 'admin_library'));
@@ -53,10 +60,25 @@ class SimpleWpMembership {
53
  add_action('wp_ajax_nopriv_swpm_validate_user_name', 'BAjax::validate_user_name_ajax');
54
 
55
  //init is too early for settings api.
56
- add_action('admin_init', function (){BSettings::get_instance()->init_config_hooks();});
57
 
58
  }
 
 
 
 
 
 
 
 
 
 
 
 
59
  public function hide_adminbar(){
 
 
 
60
  $hide = BSettings::get_instance()->get_value('hide-adminbar');
61
  return $hide? FALSE: TRUE;
62
  }
@@ -115,36 +137,45 @@ class SimpleWpMembership {
115
  }
116
 
117
  public function login() {
 
118
  $auth = BAuth::get_instance();
119
  if ($auth->is_logged_in()){
120
- include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/loggedin.php');
121
  }
122
  else {
123
  $setting = BSettings::get_instance();
124
  $password_reset_url = $setting->get_value('reset-page-url');
125
  $join_url = $setting->get_value('join-us-page-url');
126
- include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/login.php');
 
 
127
  }
 
128
  }
129
 
130
  public function reset() {
131
  $succeeded = $this->notices();
132
  if($succeeded){
133
- return;
134
  }
135
- include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/forgot_password.php');
 
 
136
  }
137
  public function profile_form() {
138
  $auth = BAuth::get_instance();
139
  $this->notices();
140
  if ($auth->is_logged_in()) {
 
 
141
  $user_data = (array) $auth->userData;
142
- $user_data['membership_level_alias'] = $auth->userData->permitted->get('alias');
 
143
  extract($user_data, EXTR_SKIP);
144
- include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/edit.php');
145
- return;
146
  }
147
- echo 'You are not logged in.';
148
  }
149
 
150
  public function notices() {
@@ -175,7 +206,7 @@ class SimpleWpMembership {
175
  $post_types = get_post_types();
176
  foreach ($post_types as $post_type => $post_type){
177
  add_meta_box('swpm_sectionid',
178
- __('Simple WP Membership Protection', 'swpm_textdomain'),
179
  array(&$this, 'inner_custom_box'), $post_type, 'advanced');
180
  }
181
  } else {//older version doesn't have custom post type so modification isn't needed.
@@ -188,7 +219,7 @@ class SimpleWpMembership {
188
  echo '<div class="dbx-b-ox-wrapper">' . "\n";
189
  echo '<fieldset id="eMember_fieldsetid" class="dbx-box">' . "\n";
190
  echo '<div class="dbx-h-andle-wrapper"><h3 class="dbx-handle">' .
191
- __('Simple Membership Protection options', 'swpm_textdomain') . "</h3></div>";
192
  echo '<div class="dbx-c-ontent-wrapper"><div class="dbx-content">';
193
  // output editing form
194
  $this->inner_custom_box();
@@ -204,12 +235,12 @@ class SimpleWpMembership {
204
  echo '<input type="hidden" name="swpm_noncename" id="swpm_noncename" value="' .
205
  wp_create_nonce(plugin_basename(__FILE__)) . '" />';
206
  // The actual fields for data entry
207
- echo '<h4>' . __("Do you want to protect this content?", 'eMember_textdomain') . '</h4>';
208
  echo '<input type="radio" ' . ((!$is_protected) ? 'checked' : "") .
209
  ' name="swpm_protect_post" value="1" /> No, Do not protect this content. <br/>';
210
  echo '<input type="radio" ' . (($is_protected) ? 'checked' : "") .
211
  ' name="swpm_protect_post" value="2" /> Yes, Protect this content.<br/>';
212
- echo '<h4>' . __("Select the membership level that can access this content:", 'eMember_textdomain') . "</h4>";
213
  $query = "SELECT * FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id !=1 ";
214
  $levels = $wpdb->get_results($query, ARRAY_A);
215
  foreach ($levels as $level) {
@@ -281,7 +312,6 @@ class SimpleWpMembership {
281
  $acl = BAccessControl::get_instance();
282
  global $comment;
283
  return $acl->filter_post($comment->comment_post_ID, $content);
284
- //return $acl->filter_comment($comment->comment_ID, $content);
285
  }
286
 
287
  public function filter_content($content) {
@@ -291,8 +321,11 @@ class SimpleWpMembership {
291
  }
292
 
293
  public function filter_moretag($more_link, $more_link_text = "More") {
 
 
294
  $acl = BAccessControl::get_instance();
295
- //return $acl->filter_post_with_moretag($post->post_ID, $);
 
296
  }
297
 
298
  public function admin_init() {
@@ -317,6 +350,13 @@ class SimpleWpMembership {
317
  }
318
 
319
  public function init() {
 
 
 
 
 
 
 
320
  if (!isset($_COOKIE['swpm_session'])) { // give a unique ID to current session.
321
  $uid = md5(microtime());
322
  $_COOKIE['swpm_session'] = $uid; // fake it for current session/
@@ -348,7 +388,7 @@ class SimpleWpMembership {
348
  public function swpm_ipn_listener() {
349
  $swpm_process_ipn = filter_input(INPUT_GET, 'swpm_process_ipn');
350
  if ($swpm_process_ipn == '1') {
351
- include_once(SIMPLE_WP_MEMBERSHIP_PATH.'ipn/swpm_handle_pp_ipn.php');
352
  exit;
353
  }
354
  }
@@ -369,10 +409,10 @@ class SimpleWpMembership {
369
  echo $before_widget;
370
  echo $before_title . $widget_title . $after_title;
371
  if ($auth->is_logged_in()){
372
- include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/login_widget_logged.php');
373
  }
374
  else{
375
- include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/login_widget.php');
376
  }
377
  echo $after_widget;
378
  }
@@ -410,7 +450,7 @@ class SimpleWpMembership {
410
  if($succeeded){
411
  return;
412
  }
413
- BFrontRegistration::get_instance()->regigstration_ui();
414
  }
415
 
416
  private function register_member() {
@@ -421,15 +461,20 @@ class SimpleWpMembership {
421
  }
422
 
423
  public function menu() {
 
 
424
  add_menu_page(__("WP Membership", 'swpm'), __("WP Membership", 'swpm')
425
- , 'manage_options', 'simple_wp_membership', array(&$this, "admin_members")
426
  , SIMPLE_WP_MEMBERSHIP_URL . '/images/logo.png');
427
- add_submenu_page('simple_wp_membership', __("Members", 'swpm'), __('Members', 'swpm'),
428
- 'activate_plugins', 'simple_wp_membership', array(&$this, "admin_members"));
429
- add_submenu_page('simple_wp_membership', __("Membership Levels", 'swpm'), __("Membership Levels", 'swpm'),
430
- 'activate_plugins', 'simple_wp_membership_levels', array(&$this, "admin_membership_levels"));
431
- add_submenu_page('simple_wp_membership', __("Settings", 'swpm'), __("Settings", 'swpm'),
432
- 'activate_plugins', 'simple_wp_membership_settings', array(&$this, "admin_settings"));
 
 
 
433
  $this->meta_box();
434
  }
435
 
@@ -438,7 +483,7 @@ class SimpleWpMembership {
438
  $levels = new BMembershipLevels();
439
  $level_action = filter_input(INPUT_GET, 'level_action');
440
  $action2 = filter_input(INPUT_GET, 'action2');
441
- $action = $level_action ? : ($action2 ? : "");
442
  switch ($action) {
443
  case 'add':
444
  case 'edit':
@@ -460,6 +505,7 @@ class SimpleWpMembership {
460
  include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'classes/class.bMembers.php');
461
  $members = new BMembers();
462
  $action = filter_input(INPUT_GET, 'member_action');
 
463
  switch ($action) {
464
  case 'add':
465
  case 'edit':
@@ -482,13 +528,13 @@ class SimpleWpMembership {
482
  $member_id = filter_input(INPUT_POST, 'member_id',FILTER_SANITIZE_NUMBER_INT);
483
  $send_email = filter_input(INPUT_POST, 'swpm_reminder_email',FILTER_SANITIZE_NUMBER_INT);
484
  $links = BUtils::get_registration_link($link_for, $send_email, $member_id);
485
- include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_tools_settings.php');
486
  break;
487
  case 2:
488
- include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_payment_settings.php');
489
  break;
490
  default:
491
- include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_settings.php');
492
  break;
493
  }
494
  }
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'));
43
  add_shortcode('swpm_login_form', array(&$this, 'login'));
44
  add_shortcode('swpm_reset_form', array(&$this, 'reset'));
45
+
46
+ add_action('save_post', array(&$this, 'save_postdata'));
47
  add_action('admin_notices', array(&$this, 'notices'));
48
  add_action('wp_enqueue_scripts', array(&$this, 'front_library'));
49
  add_action('load-toplevel_page_simple_wp_membership', array(&$this, 'admin_library'));
60
  add_action('wp_ajax_nopriv_swpm_validate_user_name', 'BAjax::validate_user_name_ajax');
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;
81
+ }
82
  $hide = BSettings::get_instance()->get_value('hide-adminbar');
83
  return $hide? FALSE: TRUE;
84
  }
137
  }
138
 
139
  public function login() {
140
+ ob_start();
141
  $auth = BAuth::get_instance();
142
  if ($auth->is_logged_in()){
143
+ include(SIMPLE_WP_MEMBERSHIP_PATH . 'views/loggedin.php');
144
  }
145
  else {
146
  $setting = BSettings::get_instance();
147
  $password_reset_url = $setting->get_value('reset-page-url');
148
  $join_url = $setting->get_value('join-us-page-url');
149
+
150
+ include(SIMPLE_WP_MEMBERSHIP_PATH . 'views/login.php');
151
+
152
  }
153
+ return ob_get_clean();
154
  }
155
 
156
  public function reset() {
157
  $succeeded = $this->notices();
158
  if($succeeded){
159
+ return '';
160
  }
161
+ ob_start();
162
+ include(SIMPLE_WP_MEMBERSHIP_PATH . 'views/forgot_password.php');
163
+ return ob_get_clean();
164
  }
165
  public function profile_form() {
166
  $auth = BAuth::get_instance();
167
  $this->notices();
168
  if ($auth->is_logged_in()) {
169
+ $out = apply_filters('swpm_profile_form_override', '');
170
+ if (!empty($out)){return $out;}
171
  $user_data = (array) $auth->userData;
172
+ $user_data['membership_level_alias'] = $auth->get('alias');
173
+ ob_start();
174
  extract($user_data, EXTR_SKIP);
175
+ include(SIMPLE_WP_MEMBERSHIP_PATH . 'views/edit.php');
176
+ return ob_get_clean();
177
  }
178
+ return BUtils::_( 'You are not logged in.');
179
  }
180
 
181
  public function notices() {
206
  $post_types = get_post_types();
207
  foreach ($post_types as $post_type => $post_type){
208
  add_meta_box('swpm_sectionid',
209
+ __('Simple WP Membership Protection', 'swpm'),
210
  array(&$this, 'inner_custom_box'), $post_type, 'advanced');
211
  }
212
  } else {//older version doesn't have custom post type so modification isn't needed.
219
  echo '<div class="dbx-b-ox-wrapper">' . "\n";
220
  echo '<fieldset id="eMember_fieldsetid" class="dbx-box">' . "\n";
221
  echo '<div class="dbx-h-andle-wrapper"><h3 class="dbx-handle">' .
222
+ __('Simple Membership Protection options', 'swpm') . "</h3></div>";
223
  echo '<div class="dbx-c-ontent-wrapper"><div class="dbx-content">';
224
  // output editing form
225
  $this->inner_custom_box();
235
  echo '<input type="hidden" name="swpm_noncename" id="swpm_noncename" value="' .
236
  wp_create_nonce(plugin_basename(__FILE__)) . '" />';
237
  // The actual fields for data entry
238
+ echo '<h4>' . __("Do you want to protect this content?", 'swpm') . '</h4>';
239
  echo '<input type="radio" ' . ((!$is_protected) ? 'checked' : "") .
240
  ' name="swpm_protect_post" value="1" /> No, Do not protect this content. <br/>';
241
  echo '<input type="radio" ' . (($is_protected) ? 'checked' : "") .
242
  ' name="swpm_protect_post" value="2" /> Yes, Protect this content.<br/>';
243
+ echo '<h4>' . __("Select the membership level that can access this content:", 'swpm') . "</h4>";
244
  $query = "SELECT * FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id !=1 ";
245
  $levels = $wpdb->get_results($query, ARRAY_A);
246
  foreach ($levels as $level) {
312
  $acl = BAccessControl::get_instance();
313
  global $comment;
314
  return $acl->filter_post($comment->comment_post_ID, $content);
 
315
  }
316
 
317
  public function filter_content($content) {
321
  }
322
 
323
  public function filter_moretag($more_link, $more_link_text = "More") {
324
+ $moretag = BSettings::get_instance()->get_value('enable-moretag');
325
+ if (empty($moretag)) {return $more_link;}
326
  $acl = BAccessControl::get_instance();
327
+ global $post;
328
+ return $acl->filter_post_with_moretag($post->ID, $more_link, $more_link_text);
329
  }
330
 
331
  public function admin_init() {
350
  }
351
 
352
  public function init() {
353
+
354
+ //Set up localisation. First loaded ones will override strings present in later loaded file.
355
+ //Allows users to have a customized language in a different folder.
356
+ $locale = apply_filters( 'plugin_locale', get_locale(), 'swpm' );
357
+ load_textdomain( 'swpm', WP_LANG_DIR . "/swpm-$locale.mo" );
358
+ load_plugin_textdomain('swpm', false, SIMPLE_WP_MEMBERSHIP_DIRNAME. '/languages/');
359
+
360
  if (!isset($_COOKIE['swpm_session'])) { // give a unique ID to current session.
361
  $uid = md5(microtime());
362
  $_COOKIE['swpm_session'] = $uid; // fake it for current session/
388
  public function swpm_ipn_listener() {
389
  $swpm_process_ipn = filter_input(INPUT_GET, 'swpm_process_ipn');
390
  if ($swpm_process_ipn == '1') {
391
+ include(SIMPLE_WP_MEMBERSHIP_PATH.'ipn/swpm_handle_pp_ipn.php');
392
  exit;
393
  }
394
  }
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
  }
450
  if($succeeded){
451
  return;
452
  }
453
+ return BFrontRegistration::get_instance()->regigstration_ui();
454
  }
455
 
456
  private function register_member() {
461
  }
462
 
463
  public function menu() {
464
+ $menu_parent_slug = 'simple_wp_membership';
465
+
466
  add_menu_page(__("WP Membership", 'swpm'), __("WP Membership", 'swpm')
467
+ , 'manage_options', $menu_parent_slug, array(&$this, "admin_members")
468
  , SIMPLE_WP_MEMBERSHIP_URL . '/images/logo.png');
469
+ add_submenu_page($menu_parent_slug, __("Members", 'swpm'), __('Members', 'swpm'),
470
+ 'manage_options', 'simple_wp_membership', array(&$this, "admin_members"));
471
+ add_submenu_page($menu_parent_slug, __("Membership Levels", 'swpm'), __("Membership Levels", 'swpm'),
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();
479
  }
480
 
483
  $levels = new BMembershipLevels();
484
  $level_action = filter_input(INPUT_GET, 'level_action');
485
  $action2 = filter_input(INPUT_GET, 'action2');
486
+ $action = $level_action ? $level_action : ($action2 ? $action2 : "");
487
  switch ($action) {
488
  case 'add':
489
  case 'edit':
505
  include_once(SIMPLE_WP_MEMBERSHIP_PATH . 'classes/class.bMembers.php');
506
  $members = new BMembers();
507
  $action = filter_input(INPUT_GET, 'member_action');
508
+ $action = empty($action)? filter_input(INPUT_POST, 'action') : $action;
509
  switch ($action) {
510
  case 'add':
511
  case 'edit':
528
  $member_id = filter_input(INPUT_POST, 'member_id',FILTER_SANITIZE_NUMBER_INT);
529
  $send_email = filter_input(INPUT_POST, 'swpm_reminder_email',FILTER_SANITIZE_NUMBER_INT);
530
  $links = BUtils::get_registration_link($link_for, $send_email, $member_id);
531
+ include(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_tools_settings.php');
532
  break;
533
  case 2:
534
+ include(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_payment_settings.php');
535
  break;
536
  default:
537
+ include(SIMPLE_WP_MEMBERSHIP_PATH . 'views/admin_settings.php');
538
  break;
539
  }
540
  }
css/swpm.common.css CHANGED
@@ -1,3 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
1
  /* Login form CSS */
2
  .swpm-login-widget-form input,.swpm-login-widget-form checkbox{
3
  width: auto;
@@ -26,4 +37,4 @@ border: none;
26
  /* Registration form CSS */
27
  .swpm-registration-widget-form td{
28
  min-width: 100px;
29
- }
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;
37
  /* Registration form CSS */
38
  .swpm-registration-widget-form td{
39
  min-width: 100px;
40
+ }
languages/swpm-es_ES.mo ADDED
Binary file
languages/swpm-es_ES.po ADDED
@@ -0,0 +1,714 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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"
languages/swpm-fr_FR.mo ADDED
Binary file
languages/swpm-fr_FR.po ADDED
@@ -0,0 +1,895 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: swpm\n"
4
+ "POT-Creation-Date: 2014-07-08 14:22+1000\n"
5
+ "PO-Revision-Date: 2014-07-18 20:10+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.6\n"
12
+ "X-Poedit-KeywordsList: __;_e\n"
13
+ "X-Poedit-Basepath: .\n"
14
+ "Plural-Forms: nplurals=2; plural=(n > 1);\n"
15
+ "Language: fr_FR\n"
16
+ "X-Poedit-SearchPath-0: E:\\Portal\\Project Material\\NetBeans Workspace"
17
+ "\\simple-membership\\simple-membership\n"
18
+
19
+ #: E:\Portal\Project Material\NetBeans
20
+ #: Workspace\simple-membership\simple-membership/classes/class.bAdminRegistration.php:45
21
+ #: Workspace\simple-membership\simple-membership/classes/class.bFrontRegistration.php:58
22
+ msgid "Registration Successful."
23
+ msgstr "Enregistrement Réussi."
24
+
25
+ #: E:\Portal\Project Material\NetBeans
26
+ #: Workspace\simple-membership\simple-membership/classes/class.bAdminRegistration.php:50
27
+ #: Workspace\simple-membership\simple-membership/classes/class.bAdminRegistration.php:69
28
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembershipLevel.php:36
29
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembershipLevel.php:54
30
+ msgid "Please correct the following:"
31
+ msgstr "S'il vous plait, veuillez corriger ce qui suit :"
32
+
33
+ #: E:\Portal\Project Material\NetBeans
34
+ #: Workspace\simple-membership\simple-membership/classes/class.bAjax.php:16
35
+ #: Workspace\simple-membership\simple-membership/classes/class.bAjax.php:28
36
+ msgid "Aready taken"
37
+ msgstr "Déjà pris"
38
+
39
+ #: E:\Portal\Project Material\NetBeans
40
+ #: Workspace\simple-membership\simple-membership/classes/class.bAjax.php:29
41
+ msgid "Available"
42
+ msgstr "Disponible"
43
+
44
+ #: E:\Portal\Project Material\NetBeans
45
+ #: Workspace\simple-membership\simple-membership/classes/class.bAuth.php:47
46
+ #: Workspace\simple-membership\simple-membership/classes/class.bFrontRegistration.php:173
47
+ msgid "User Not Found."
48
+ msgstr "Utilisateur Introuvable"
49
+
50
+ #: E:\Portal\Project Material\NetBeans
51
+ #: Workspace\simple-membership\simple-membership/classes/class.bAuth.php:54
52
+ msgid "Password Empty or Invalid."
53
+ msgstr "Mot de passe Vide ou Invalide"
54
+
55
+ #: E:\Portal\Project Material\NetBeans
56
+ #: Workspace\simple-membership\simple-membership/classes/class.bAuth.php:78
57
+ msgid "Account is inactive."
58
+ msgstr "Le Compte est Inactif."
59
+
60
+ #: E:\Portal\Project Material\NetBeans
61
+ #: Workspace\simple-membership\simple-membership/classes/class.bAuth.php:88
62
+ msgid "You are logged in as:"
63
+ msgstr "Vous êtes connecté en tant que :"
64
+
65
+ #: E:\Portal\Project Material\NetBeans
66
+ #: Workspace\simple-membership\simple-membership/classes/class.bAuth.php:127
67
+ msgid "Logged Out Successfully."
68
+ msgstr "Déconnexion réussie"
69
+
70
+ #: E:\Portal\Project Material\NetBeans
71
+ #: Workspace\simple-membership\simple-membership/classes/class.bAuth.php:169
72
+ msgid "Session Expired."
73
+ msgstr "Session expirée"
74
+
75
+ #: E:\Portal\Project Material\NetBeans
76
+ #: Workspace\simple-membership\simple-membership/classes/class.bAuth.php:178
77
+ msgid "Invalid User Name"
78
+ msgstr "Nom d'Utilisateur Invalide"
79
+
80
+ #: E:\Portal\Project Material\NetBeans
81
+ #: Workspace\simple-membership\simple-membership/classes/class.bAuth.php:186
82
+ msgid "Bad Cookie Hash"
83
+ msgstr "Mauvais Hash Cookie"
84
+
85
+ #: E:\Portal\Project Material\NetBeans
86
+ #: Workspace\simple-membership\simple-membership/classes/class.bForm.php:26
87
+ msgid ""
88
+ "Wordpress account exists with given user name. But given email doesn't match."
89
+ msgstr ""
90
+ "Le compte WordPress existe avec ce prénom utilisateur. Mais l'email ne "
91
+ "correspond pas."
92
+
93
+ #: E:\Portal\Project Material\NetBeans
94
+ #: Workspace\simple-membership\simple-membership/classes/class.bForm.php:31
95
+ msgid ""
96
+ "Wordpress account exists with given email. But given user name doesn't match."
97
+ msgstr ""
98
+ "Le compte WordPress existe avec cet email utilisateur. Mais le nom ne "
99
+ "correspond pas."
100
+
101
+ #: E:\Portal\Project Material\NetBeans
102
+ #: Workspace\simple-membership\simple-membership/classes/class.bForm.php:40
103
+ msgid "User name is required"
104
+ msgstr "Un nom d'utilisateur est requis"
105
+
106
+ #: E:\Portal\Project Material\NetBeans
107
+ #: Workspace\simple-membership\simple-membership/classes/class.bForm.php:49
108
+ msgid "User name already exists."
109
+ msgstr "Le nom d'utilisateur existe déjà."
110
+
111
+ #: E:\Portal\Project Material\NetBeans
112
+ #: Workspace\simple-membership\simple-membership/classes/class.bForm.php:72
113
+ msgid "Password is required"
114
+ msgstr "Le mot de passe est demandé"
115
+
116
+ #: E:\Portal\Project Material\NetBeans
117
+ #: Workspace\simple-membership\simple-membership/classes/class.bForm.php:79
118
+ msgid "Password mismatch"
119
+ msgstr "Le mot de passe ne correspond pas"
120
+
121
+ #: E:\Portal\Project Material\NetBeans
122
+ #: Workspace\simple-membership\simple-membership/classes/class.bForm.php:95
123
+ msgid "Email is required"
124
+ msgstr "L'email est demandé"
125
+
126
+ #: E:\Portal\Project Material\NetBeans
127
+ #: Workspace\simple-membership\simple-membership/classes/class.bForm.php:99
128
+ msgid "Email is invalid"
129
+ msgstr "L'email est invalide"
130
+
131
+ #: E:\Portal\Project Material\NetBeans
132
+ #: Workspace\simple-membership\simple-membership/classes/class.bForm.php:112
133
+ msgid "Email is already used."
134
+ msgstr "L'email est déjà utilisé."
135
+
136
+ #: E:\Portal\Project Material\NetBeans
137
+ #: Workspace\simple-membership\simple-membership/classes/class.bForm.php:128
138
+ msgid "Phone number is invalid"
139
+ msgstr "Le numéro de téléphone est invalide"
140
+
141
+ #: E:\Portal\Project Material\NetBeans
142
+ #: Workspace\simple-membership\simple-membership/classes/class.bForm.php:174
143
+ msgid "Member since field is invalid"
144
+ msgstr "Le champ \"Membre depuis\" est invalide"
145
+
146
+ #: E:\Portal\Project Material\NetBeans
147
+ #: Workspace\simple-membership\simple-membership/classes/class.bForm.php:185
148
+ msgid "Subscription starts field is invalid"
149
+ msgstr "Le champ \"Inscription commence\" est invalide"
150
+
151
+ #: E:\Portal\Project Material\NetBeans
152
+ #: Workspace\simple-membership\simple-membership/classes/class.bForm.php:195
153
+ msgid "Gender field is invalid"
154
+ msgstr "Le champ \"Genre\" est invalide"
155
+
156
+ #: E:\Portal\Project Material\NetBeans
157
+ #: Workspace\simple-membership\simple-membership/classes/class.bForm.php:206
158
+ msgid "Account state field is invalid"
159
+ msgstr "Le champ \"Etat de l'abonné\" est invalide"
160
+
161
+ #: E:\Portal\Project Material\NetBeans
162
+ #: Workspace\simple-membership\simple-membership/classes/class.bFrontRegistration.php:58
163
+ msgid "Please"
164
+ msgstr "S'il vous plait,"
165
+
166
+ #: E:\Portal\Project Material\NetBeans
167
+ #: Workspace\simple-membership\simple-membership/classes/class.bFrontRegistration.php:58
168
+ #: Workspace\simple-membership\simple-membership/views/login.php:21
169
+ msgid "Login"
170
+ msgstr "Connexion"
171
+
172
+ #: E:\Portal\Project Material\NetBeans
173
+ #: Workspace\simple-membership\simple-membership/classes/class.bFrontRegistration.php:73
174
+ #: Workspace\simple-membership\simple-membership/classes/class.bFrontRegistration.php:152
175
+ msgid "Please correct the following"
176
+ msgstr "Veuillez corriger ce qui suit"
177
+
178
+ #: E:\Portal\Project Material\NetBeans
179
+ #: Workspace\simple-membership\simple-membership/classes/class.bFrontRegistration.php:86
180
+ msgid "Membership Level Couldn't be found."
181
+ msgstr "Le niveau d'abonnement est introuvable"
182
+
183
+ #: E:\Portal\Project Material\NetBeans
184
+ #: Workspace\simple-membership\simple-membership/classes/class.bFrontRegistration.php:162
185
+ msgid "Email Address Not Valid."
186
+ msgstr "Adresse Mail Invalide"
187
+
188
+ #: E:\Portal\Project Material\NetBeans
189
+ #: Workspace\simple-membership\simple-membership/classes/class.bFrontRegistration.php:193
190
+ msgid "New password has been sent to your email address."
191
+ msgstr "Le nouveau mot de passe été envoyé à votre adresse mail"
192
+
193
+ #: E:\Portal\Project Material\NetBeans
194
+ #: Workspace\simple-membership\simple-membership/classes/class.bLevelForm.php:31
195
+ msgid "Subscriptoin duration must be > 0."
196
+ msgstr "La durée de d'abonnement doit être > 0."
197
+
198
+ #: E:\Portal\Project Material\NetBeans
199
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembers.php:7
200
+ msgid "Member"
201
+ msgstr "Membre"
202
+
203
+ #: E:\Portal\Project Material\NetBeans
204
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembers.php:8
205
+ #: Workspace\simple-membership\simple-membership/classes/class.simple-wp-membership.php:437
206
+ msgid "Members"
207
+ msgstr "Membres"
208
+
209
+ #: E:\Portal\Project Material\NetBeans
210
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembers.php:16
211
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembershipLevels.php:16
212
+ msgid "ID"
213
+ msgstr "Identifiant"
214
+
215
+ #: E:\Portal\Project Material\NetBeans
216
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembers.php:17
217
+ #: Workspace\simple-membership\simple-membership/views/add.php:5
218
+ #: Workspace\simple-membership\simple-membership/views/edit.php:4
219
+ #: Workspace\simple-membership\simple-membership/views/login.php:5
220
+ msgid "User Name"
221
+ msgstr "Nom d'Utilisateur"
222
+
223
+ #: E:\Portal\Project Material\NetBeans
224
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembers.php:18
225
+ #: Workspace\simple-membership\simple-membership/views/add.php:21
226
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:2
227
+ #: Workspace\simple-membership\simple-membership/views/edit.php:20
228
+ msgid "First Name"
229
+ msgstr "Prénom"
230
+
231
+ #: E:\Portal\Project Material\NetBeans
232
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembers.php:19
233
+ #: Workspace\simple-membership\simple-membership/views/add.php:25
234
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:6
235
+ #: Workspace\simple-membership\simple-membership/views/edit.php:24
236
+ msgid "Last Name"
237
+ msgstr "Nom"
238
+
239
+ #: E:\Portal\Project Material\NetBeans
240
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembers.php:20
241
+ #: Workspace\simple-membership\simple-membership/views/add.php:9
242
+ #: Workspace\simple-membership\simple-membership/views/edit.php:8
243
+ msgid "Email"
244
+ msgstr "Email"
245
+
246
+ #: E:\Portal\Project Material\NetBeans
247
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembers.php:21
248
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembershipLevels.php:8
249
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembershipLevels.php:17
250
+ #: Workspace\simple-membership\simple-membership/views/add.php:64
251
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:55
252
+ #: Workspace\simple-membership\simple-membership/views/edit.php:52
253
+ msgid "Membership Level"
254
+ msgstr "Niveau d'Abonnement"
255
+
256
+ #: E:\Portal\Project Material\NetBeans
257
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembers.php:22
258
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:78
259
+ msgid "Subscription Starts"
260
+ msgstr "Inscription à partir de"
261
+
262
+ #: E:\Portal\Project Material\NetBeans
263
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembers.php:23
264
+ msgid "Account State"
265
+ msgstr "Etat de l'abonné"
266
+
267
+ #: E:\Portal\Project Material\NetBeans
268
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembers.php:35
269
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembershipLevels.php:29
270
+ msgid "Delete"
271
+ msgstr "Supprimer"
272
+
273
+ #: E:\Portal\Project Material\NetBeans
274
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembers.php:98
275
+ msgid "No Member found."
276
+ msgstr "Aucun Membre trouvé."
277
+
278
+ #: E:\Portal\Project Material\NetBeans
279
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembershipLevel.php:31
280
+ msgid "Membership Level Creation Successful."
281
+ msgstr "Création du Niveau d'Abonnement réussie"
282
+
283
+ #: E:\Portal\Project Material\NetBeans
284
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembershipLevel.php:50
285
+ msgid "Updated Successfully."
286
+ msgstr "Mise à jour Réussie"
287
+
288
+ #: E:\Portal\Project Material\NetBeans
289
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembershipLevels.php:9
290
+ #: Workspace\simple-membership\simple-membership/classes/class.simple-wp-membership.php:439
291
+ msgid "Membership Levels"
292
+ msgstr "Niveaux d'Abonnement"
293
+
294
+ #: E:\Portal\Project Material\NetBeans
295
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembershipLevels.php:18
296
+ msgid "Role"
297
+ msgstr "Rôle"
298
+
299
+ #: E:\Portal\Project Material\NetBeans
300
+ #: Workspace\simple-membership\simple-membership/classes/class.bMembershipLevels.php:19
301
+ msgid "Subscription Valid For"
302
+ msgstr "Inscription Valide pour"
303
+
304
+ #: E:\Portal\Project Material\NetBeans
305
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:28
306
+ msgid "Plugin Documentation"
307
+ msgstr "Plugin Documentation"
308
+
309
+ #: E:\Portal\Project Material\NetBeans
310
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:30
311
+ msgid "General Settings"
312
+ msgstr "Paramétrages"
313
+
314
+ #: E:\Portal\Project Material\NetBeans
315
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:32
316
+ msgid "Enable Free Membership"
317
+ msgstr "Activer l'Accès Gratuit"
318
+
319
+ #: E:\Portal\Project Material\NetBeans
320
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:35
321
+ msgid "Enable/disable registration for free membership level"
322
+ msgstr "Activer/Désactiver l'enregistrement pour l'accès gratuit"
323
+
324
+ #: E:\Portal\Project Material\NetBeans
325
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:36
326
+ msgid "Free Membership Level ID"
327
+ msgstr "ID du Niveau Accès Gratuit"
328
+
329
+ #: E:\Portal\Project Material\NetBeans
330
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:39
331
+ msgid "Assign free membership level ID"
332
+ msgstr "Attibuer un ID pour le Niveau Accès Gratuit"
333
+
334
+ #: E:\Portal\Project Material\NetBeans
335
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:40
336
+ msgid "Hide Adminbar"
337
+ msgstr "Cacher la barre d'Admin"
338
+
339
+ #: E:\Portal\Project Material\NetBeans
340
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:43
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
+ "WordPress montre une barre d'admin pour les utilisateurs connectés du site. "
346
+ "Cochez cette case si vous souhaitez masquer cette barre d'admin dans le "
347
+ "frontend de votre site."
348
+
349
+ #: E:\Portal\Project Material\NetBeans
350
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:45
351
+ msgid "Pages Settings"
352
+ msgstr "Page des paramétres"
353
+
354
+ #: E:\Portal\Project Material\NetBeans
355
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:47
356
+ msgid "Login Page URL"
357
+ msgstr "URL de connexion"
358
+
359
+ #: E:\Portal\Project Material\NetBeans
360
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:51
361
+ msgid "Registration Page URL"
362
+ msgstr "URL d'Enregistrement"
363
+
364
+ #: E:\Portal\Project Material\NetBeans
365
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:55
366
+ msgid "Join Us Page URL"
367
+ msgstr "URL \"Nous Rejoindre\""
368
+
369
+ #: E:\Portal\Project Material\NetBeans
370
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:59
371
+ msgid "Edit Profile Page URL"
372
+ msgstr "URL Edition du profil"
373
+
374
+ #: E:\Portal\Project Material\NetBeans
375
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:63
376
+ msgid "Password Reset Page URL"
377
+ msgstr "URL Modifier Mot de Passe"
378
+
379
+ #: E:\Portal\Project Material\NetBeans
380
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:68
381
+ msgid "Test & Debug Settings"
382
+ msgstr "Tests et Débugs"
383
+
384
+ #: E:\Portal\Project Material\NetBeans
385
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:74
386
+ msgid "Enable Sandbox Testing"
387
+ msgstr "Activer la SandBox"
388
+
389
+ #: E:\Portal\Project Material\NetBeans
390
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:77
391
+ msgid "Enable this option if you want to do sandbox payment testing."
392
+ msgstr "Activer cette option si vous voulez tester le paiement par la SandBox"
393
+
394
+ #: E:\Portal\Project Material\NetBeans
395
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:90
396
+ msgid "Email Misc. Settings"
397
+ msgstr "Paramètres Email"
398
+
399
+ #: E:\Portal\Project Material\NetBeans
400
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:92
401
+ msgid "From Email Address"
402
+ msgstr "De :"
403
+
404
+ #: E:\Portal\Project Material\NetBeans
405
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:97
406
+ msgid "Email Settings (Prompt to Complete Registration )"
407
+ msgstr "Paramètres Email (Indique une Inscription Complète)"
408
+
409
+ #: E:\Portal\Project Material\NetBeans
410
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:99
411
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:110
412
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:129
413
+ msgid "Email Subject"
414
+ msgstr "Sujet "
415
+
416
+ #: E:\Portal\Project Material\NetBeans
417
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:103
418
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:114
419
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:133
420
+ msgid "Email Body"
421
+ msgstr "Corps"
422
+
423
+ #: E:\Portal\Project Material\NetBeans
424
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:108
425
+ msgid "Email Settings (Registration Complete)"
426
+ msgstr "Paramètres Email (Inscription Complète)"
427
+
428
+ #: E:\Portal\Project Material\NetBeans
429
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:118
430
+ msgid "Send Notification To Admin"
431
+ msgstr "Envoie une Notification à l'Admin"
432
+
433
+ #: E:\Portal\Project Material\NetBeans
434
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:122
435
+ msgid "Send Email to Member When Added via Admin Dashboard"
436
+ msgstr "Envoie un Mail au Membre quand il est ajouté par le Tableau de Bord"
437
+
438
+ #: E:\Portal\Project Material\NetBeans
439
+ #: Workspace\simple-membership\simple-membership/classes/class.bSettings.php:127
440
+ msgid " Email Settings (Account Upgrade Notification)"
441
+ msgstr "Paramètres Email (Notification de mise à jour de Compte)"
442
+
443
+ #: E:\Portal\Project Material\NetBeans
444
+ #: Workspace\simple-membership\simple-membership/classes/class.miscUtils.php:51
445
+ msgid "Registration"
446
+ msgstr "Inscription"
447
+
448
+ #: E:\Portal\Project Material\NetBeans
449
+ #: Workspace\simple-membership\simple-membership/classes/class.miscUtils.php:74
450
+ msgid "Member Login"
451
+ msgstr "Nom du Membre Utilisateur"
452
+
453
+ #: E:\Portal\Project Material\NetBeans
454
+ #: Workspace\simple-membership\simple-membership/classes/class.miscUtils.php:97
455
+ msgid "Profile"
456
+ msgstr "Profil"
457
+
458
+ #: E:\Portal\Project Material\NetBeans
459
+ #: Workspace\simple-membership\simple-membership/classes/class.miscUtils.php:120
460
+ msgid "Password Reset"
461
+ msgstr "RAZ Mot de Passe"
462
+
463
+ #: E:\Portal\Project Material\NetBeans
464
+ #: Workspace\simple-membership\simple-membership/classes/class.simple-wp-membership.php:181
465
+ msgid "Simple WP Membership Protection"
466
+ msgstr "Simple WP Membership Protection"
467
+
468
+ #: E:\Portal\Project Material\NetBeans
469
+ #: Workspace\simple-membership\simple-membership/classes/class.simple-wp-membership.php:194
470
+ msgid "Simple Membership Protection options"
471
+ msgstr "Simple WP Membership Protection"
472
+
473
+ #: E:\Portal\Project Material\NetBeans
474
+ #: Workspace\simple-membership\simple-membership/classes/class.simple-wp-membership.php:210
475
+ msgid "Do you want to protect this content?"
476
+ msgstr "Voulez-vous protéger ce contenu ?"
477
+
478
+ #: E:\Portal\Project Material\NetBeans
479
+ #: Workspace\simple-membership\simple-membership/classes/class.simple-wp-membership.php:215
480
+ msgid "Select the membership level that can access this content:"
481
+ msgstr "Sélectionnez le niveau d'adhésion qui peut accéder à ce contenu :"
482
+
483
+ #: E:\Portal\Project Material\NetBeans
484
+ #: Workspace\simple-membership\simple-membership/classes/class.simple-wp-membership.php:347
485
+ msgid "Display SWPM Login."
486
+ msgstr "Display SWPM Login."
487
+
488
+ #: E:\Portal\Project Material\NetBeans
489
+ #: Workspace\simple-membership\simple-membership/classes/class.simple-wp-membership.php:349
490
+ msgid "SWPM Login"
491
+ msgstr "SWPM Login"
492
+
493
+ #: E:\Portal\Project Material\NetBeans
494
+ #: Workspace\simple-membership\simple-membership/classes/class.simple-wp-membership.php:434
495
+ msgid "WP Membership"
496
+ msgstr "Abonné WP"
497
+
498
+ #: E:\Portal\Project Material\NetBeans
499
+ #: Workspace\simple-membership\simple-membership/classes/class.simple-wp-membership.php:441
500
+ msgid "Settings"
501
+ msgstr "Paramètres"
502
+
503
+ #: E:\Portal\Project Material\NetBeans
504
+ #: Workspace\simple-membership\simple-membership/views/add.php:13
505
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:45
506
+ #: Workspace\simple-membership\simple-membership/views/edit.php:12
507
+ #: Workspace\simple-membership\simple-membership/views/login.php:11
508
+ msgid "Password"
509
+ msgstr "Mot de Passe"
510
+
511
+ #: E:\Portal\Project Material\NetBeans
512
+ #: Workspace\simple-membership\simple-membership/views/add.php:17
513
+ #: Workspace\simple-membership\simple-membership/views/edit.php:16
514
+ msgid "Repeat Password"
515
+ msgstr "Répétez le Mot de Passe"
516
+
517
+ #: E:\Portal\Project Material\NetBeans
518
+ #: Workspace\simple-membership\simple-membership/views/add.php:29
519
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:10
520
+ msgid "Gender"
521
+ msgstr "Genre"
522
+
523
+ #: E:\Portal\Project Material\NetBeans
524
+ #: Workspace\simple-membership\simple-membership/views/add.php:36
525
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:17
526
+ #: Workspace\simple-membership\simple-membership/views/edit.php:28
527
+ msgid "Phone"
528
+ msgstr "Téléphone"
529
+
530
+ #: E:\Portal\Project Material\NetBeans
531
+ #: Workspace\simple-membership\simple-membership/views/add.php:40
532
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:21
533
+ #: Workspace\simple-membership\simple-membership/views/edit.php:32
534
+ msgid "Street"
535
+ msgstr "Rue"
536
+
537
+ #: E:\Portal\Project Material\NetBeans
538
+ #: Workspace\simple-membership\simple-membership/views/add.php:44
539
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:25
540
+ #: Workspace\simple-membership\simple-membership/views/edit.php:36
541
+ msgid "City"
542
+ msgstr "Ville"
543
+
544
+ #: E:\Portal\Project Material\NetBeans
545
+ #: Workspace\simple-membership\simple-membership/views/add.php:48
546
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:29
547
+ #: Workspace\simple-membership\simple-membership/views/edit.php:40
548
+ msgid "State"
549
+ msgstr "Etat"
550
+
551
+ #: E:\Portal\Project Material\NetBeans
552
+ #: Workspace\simple-membership\simple-membership/views/add.php:52
553
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:33
554
+ #: Workspace\simple-membership\simple-membership/views/edit.php:44
555
+ msgid "Zipcode"
556
+ msgstr "Code postal"
557
+
558
+ #: E:\Portal\Project Material\NetBeans
559
+ #: Workspace\simple-membership\simple-membership/views/add.php:56
560
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:37
561
+ #: Workspace\simple-membership\simple-membership/views/edit.php:48
562
+ msgid "Country"
563
+ msgstr "Pays"
564
+
565
+ #: E:\Portal\Project Material\NetBeans
566
+ #: Workspace\simple-membership\simple-membership/views/add.php:60
567
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:41
568
+ msgid "Company"
569
+ msgstr "Entreprise"
570
+
571
+ #: E:\Portal\Project Material\NetBeans
572
+ #: Workspace\simple-membership\simple-membership/views/add.php:71
573
+ msgid "Register"
574
+ msgstr "Enregistrer"
575
+
576
+ #: E:\Portal\Project Material\NetBeans
577
+ #: Workspace\simple-membership\simple-membership/views/admin_add.php:6
578
+ msgid "Add Member"
579
+ msgstr "Ajouter un Membre"
580
+
581
+ #: E:\Portal\Project Material\NetBeans
582
+ #: Workspace\simple-membership\simple-membership/views/admin_add.php:7
583
+ msgid "Create a brand new user and add it to this site."
584
+ msgstr "Créer un nouveau utilisateur et l'ajouter à ce site."
585
+
586
+ #: E:\Portal\Project Material\NetBeans
587
+ #: Workspace\simple-membership\simple-membership/views/admin_add.php:11
588
+ msgid "User name"
589
+ msgstr "Nom d'Utilisateur"
590
+
591
+ #: E:\Portal\Project Material\NetBeans
592
+ #: Workspace\simple-membership\simple-membership/views/admin_add.php:11
593
+ #: Workspace\simple-membership\simple-membership/views/admin_add.php:15
594
+ #: Workspace\simple-membership\simple-membership/views/admin_add_level.php:11
595
+ #: Workspace\simple-membership\simple-membership/views/admin_add_level.php:15
596
+ #: Workspace\simple-membership\simple-membership/views/admin_add_level.php:19
597
+ #: Workspace\simple-membership\simple-membership/views/admin_edit.php:9
598
+ #: Workspace\simple-membership\simple-membership/views/admin_edit.php:13
599
+ #: Workspace\simple-membership\simple-membership/views/admin_edit_level.php:10
600
+ #: Workspace\simple-membership\simple-membership/views/admin_edit_level.php:14
601
+ #: Workspace\simple-membership\simple-membership/views/admin_edit_level.php:18
602
+ msgid "(required)"
603
+ msgstr "(requis)"
604
+
605
+ #: E:\Portal\Project Material\NetBeans
606
+ #: Workspace\simple-membership\simple-membership/views/admin_add.php:15
607
+ #: Workspace\simple-membership\simple-membership/views/admin_edit.php:13
608
+ msgid "E-mail"
609
+ msgstr "Email"
610
+
611
+ #: E:\Portal\Project Material\NetBeans
612
+ #: Workspace\simple-membership\simple-membership/views/admin_add.php:19
613
+ msgid "Add New Member "
614
+ msgstr "Ajouter un Nouveau Membre"
615
+
616
+ #: E:\Portal\Project Material\NetBeans
617
+ #: Workspace\simple-membership\simple-membership/views/admin_add_level.php:6
618
+ msgid "Create new membership level."
619
+ msgstr "Créer un nouveau niveau d'adhésion."
620
+
621
+ #: E:\Portal\Project Material\NetBeans
622
+ #: Workspace\simple-membership\simple-membership/views/admin_add_level.php:11
623
+ #: Workspace\simple-membership\simple-membership/views/admin_edit_level.php:10
624
+ msgid "Membership Level Name"
625
+ msgstr "Nom du Niveau d'Adhésion."
626
+
627
+ #: E:\Portal\Project Material\NetBeans
628
+ #: Workspace\simple-membership\simple-membership/views/admin_add_level.php:15
629
+ #: Workspace\simple-membership\simple-membership/views/admin_edit_level.php:14
630
+ msgid "Default WordPress Role"
631
+ msgstr "Rôle WordPress par défaut"
632
+
633
+ #: E:\Portal\Project Material\NetBeans
634
+ #: Workspace\simple-membership\simple-membership/views/admin_add_level.php:19
635
+ #: Workspace\simple-membership\simple-membership/views/admin_edit_level.php:18
636
+ msgid "Subscription Duration"
637
+ msgstr "Durée d'Inscription"
638
+
639
+ #: E:\Portal\Project Material\NetBeans
640
+ #: Workspace\simple-membership\simple-membership/views/admin_add_level.php:26
641
+ #: Workspace\simple-membership\simple-membership/views/admin_edit_level.php:27
642
+ msgid "No Expiry"
643
+ msgstr "Pas d'Expiration"
644
+
645
+ #: E:\Portal\Project Material\NetBeans
646
+ #: Workspace\simple-membership\simple-membership/views/admin_add_level.php:55
647
+ msgid "Add New Membership Level "
648
+ msgstr "Ajouter le Nouveau Niveau d'Adhésion"
649
+
650
+ #: E:\Portal\Project Material\NetBeans
651
+ #: Workspace\simple-membership\simple-membership/views/admin_edit.php:5
652
+ msgid "Edit Member"
653
+ msgstr "Editer le Membre"
654
+
655
+ #: E:\Portal\Project Material\NetBeans
656
+ #: Workspace\simple-membership\simple-membership/views/admin_edit.php:6
657
+ msgid "Edit existing member details."
658
+ msgstr "Editer les détails du membre existant."
659
+
660
+ #: E:\Portal\Project Material\NetBeans
661
+ #: Workspace\simple-membership\simple-membership/views/admin_edit.php:9
662
+ msgid "Username"
663
+ msgstr "Nom d'Utilisateur"
664
+
665
+ #: E:\Portal\Project Material\NetBeans
666
+ #: Workspace\simple-membership\simple-membership/views/admin_edit.php:17
667
+ msgid "Edit User "
668
+ msgstr "Editer l'Utilisateur"
669
+
670
+ #: E:\Portal\Project Material\NetBeans
671
+ #: Workspace\simple-membership\simple-membership/views/admin_edit_level.php:5
672
+ msgid "Edit membership level"
673
+ msgstr "Editer le Niveau d'Adhésion"
674
+
675
+ #: E:\Portal\Project Material\NetBeans
676
+ #: Workspace\simple-membership\simple-membership/views/admin_edit_level.php:6
677
+ msgid "Edit membership level."
678
+ msgstr "Editer le Niveau d'Adhésion."
679
+
680
+ #: E:\Portal\Project Material\NetBeans
681
+ #: Workspace\simple-membership\simple-membership/views/admin_edit_level.php:54
682
+ msgid "Edit Membership Level "
683
+ msgstr "Editer le Niveau d'Adhésion"
684
+
685
+ #: E:\Portal\Project Material\NetBeans
686
+ #: Workspace\simple-membership\simple-membership/views/admin_members.php:2
687
+ msgid "Simple WP Membership::Members"
688
+ msgstr "Simple WP Membership::Members"
689
+
690
+ #: E:\Portal\Project Material\NetBeans
691
+ #: Workspace\simple-membership\simple-membership/views/admin_members.php:3
692
+ #: Workspace\simple-membership\simple-membership/views/admin_members.php:19
693
+ #: Workspace\simple-membership\simple-membership/views/admin_membership_levels.php:21
694
+ msgid "Add New"
695
+ msgstr "Ajouter Nouveau"
696
+
697
+ #: E:\Portal\Project Material\NetBeans
698
+ #: Workspace\simple-membership\simple-membership/views/admin_members.php:9
699
+ #: Workspace\simple-membership\simple-membership/views/admin_membership_levels.php:11
700
+ msgid "search"
701
+ msgstr "recherche"
702
+
703
+ #: E:\Portal\Project Material\NetBeans
704
+ #: Workspace\simple-membership\simple-membership/views/admin_membership_levels.php:3
705
+ msgid "Simple WP Membership::Membership Levels"
706
+ msgstr "Simple WP Membership::Membership Levels"
707
+
708
+ #: E:\Portal\Project Material\NetBeans
709
+ #: Workspace\simple-membership\simple-membership/views/admin_membership_level_menu.php:2
710
+ msgid "Membership level"
711
+ msgstr "Niveau d'Adhésion"
712
+
713
+ #: E:\Portal\Project Material\NetBeans
714
+ #: Workspace\simple-membership\simple-membership/views/admin_membership_level_menu.php:3
715
+ msgid "Manage Content Production"
716
+ msgstr "Contrôler le Contenu"
717
+
718
+ #: E:\Portal\Project Material\NetBeans
719
+ #: Workspace\simple-membership\simple-membership/views/admin_membership_manage.php:17
720
+ msgid "Example Content Protection Settings"
721
+ msgstr "Exemple de Paramètres de Protection"
722
+
723
+ #: E:\Portal\Project Material\NetBeans
724
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:45
725
+ msgid "(twice, required)"
726
+ msgstr "(requis, deux fois)"
727
+
728
+ #: E:\Portal\Project Material\NetBeans
729
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:50
730
+ msgid "Strength indicator"
731
+ msgstr "Indicateur de sûreté"
732
+
733
+ #: E:\Portal\Project Material\NetBeans
734
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:51
735
+ msgid ""
736
+ "Hint: The password should be at least seven characters long. To make it "
737
+ "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
738
+ "$ % ^ &amp; )."
739
+ msgstr ""
740
+ "Remarque : Le mot de passe doit comporter au moins sept caractères. Pour le "
741
+ "rendre plus fort, utiliser des majuscules et des minuscules, des chiffres et "
742
+ "des symboles comme ! \" ? $ % ^)."
743
+
744
+ #: E:\Portal\Project Material\NetBeans
745
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:64
746
+ #: Workspace\simple-membership\simple-membership/views/loggedin.php:7
747
+ #: Workspace\simple-membership\simple-membership/views/login_widget_logged.php:6
748
+ msgid "Account Status"
749
+ msgstr "Statut du Compte"
750
+
751
+ #: E:\Portal\Project Material\NetBeans
752
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:66
753
+ msgid "Active"
754
+ msgstr "Actif"
755
+
756
+ #: E:\Portal\Project Material\NetBeans
757
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:67
758
+ msgid "Inactive"
759
+ msgstr "Inanctif"
760
+
761
+ #: E:\Portal\Project Material\NetBeans
762
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:68
763
+ msgid "Pending"
764
+ msgstr "En attente"
765
+
766
+ #: E:\Portal\Project Material\NetBeans
767
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:69
768
+ msgid "Expired"
769
+ msgstr "Expiré"
770
+
771
+ #: E:\Portal\Project Material\NetBeans
772
+ #: Workspace\simple-membership\simple-membership/views/admin_member_form_common_part.php:74
773
+ msgid "Member Since"
774
+ msgstr "Membre Depuis "
775
+
776
+ #: E:\Portal\Project Material\NetBeans
777
+ #: Workspace\simple-membership\simple-membership/views/admin_payment_settings.php:2
778
+ #: Workspace\simple-membership\simple-membership/views/admin_settings.php:2
779
+ #: Workspace\simple-membership\simple-membership/views/admin_tools_settings.php:2
780
+ msgid "Simple WP Membership::Settings"
781
+ msgstr "Simple WP Membership::Settings"
782
+
783
+ #: E:\Portal\Project Material\NetBeans
784
+ #: Workspace\simple-membership\simple-membership/views/admin_payment_settings.php:33
785
+ msgid "PayPal Integration Settings"
786
+ msgstr "PayPal Intégration"
787
+
788
+ #: E:\Portal\Project Material\NetBeans
789
+ #: Workspace\simple-membership\simple-membership/views/admin_payment_settings.php:36
790
+ msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
791
+ msgstr "Générer le \"Advanced Variables\" Code pour votre bouton PayPal"
792
+
793
+ #: E:\Portal\Project Material\NetBeans
794
+ #: Workspace\simple-membership\simple-membership/views/admin_payment_settings.php:39
795
+ msgid "Enter the Membership Level ID"
796
+ msgstr "Entrez l'ID de niveau d'adhésion"
797
+
798
+ #: E:\Portal\Project Material\NetBeans
799
+ #: Workspace\simple-membership\simple-membership/views/admin_payment_settings.php:41
800
+ msgid "Generate Code"
801
+ msgstr "Générer le Code"
802
+
803
+ #: E:\Portal\Project Material\NetBeans
804
+ #: Workspace\simple-membership\simple-membership/views/admin_tools_settings.php:9
805
+ msgid "Generate a Registration Completion link"
806
+ msgstr "Générer un lien d'achèvement d'enregistrement"
807
+
808
+ #: E:\Portal\Project Material\NetBeans
809
+ #: Workspace\simple-membership\simple-membership/views/admin_tools_settings.php:12
810
+ msgid ""
811
+ "You can manually generate a registration completion link here and give it to "
812
+ "your customer if they have missed the email that was automatically sent out "
813
+ "to them after the payment."
814
+ msgstr ""
815
+ "Vous pouvez manuellement générer un lien d'achèvement d'inscription ici et "
816
+ "le donner à vos clients si ils ont raté l'email qui leur est automatiquement "
817
+ "envoyé après le paiement."
818
+
819
+ #: E:\Portal\Project Material\NetBeans
820
+ #: Workspace\simple-membership\simple-membership/views/admin_tools_settings.php:17
821
+ msgid "Generate Registration Completion Link"
822
+ msgstr "Générer le lien de fin d'inscription"
823
+
824
+ #: E:\Portal\Project Material\NetBeans
825
+ #: Workspace\simple-membership\simple-membership/views/admin_tools_settings.php:20
826
+ msgid "OR"
827
+ msgstr "OU"
828
+
829
+ #: E:\Portal\Project Material\NetBeans
830
+ #: Workspace\simple-membership\simple-membership/views/admin_tools_settings.php:21
831
+ msgid "For All Pending Registrations"
832
+ msgstr "Pour Toutes Les Inscriptions en Attente"
833
+
834
+ #: E:\Portal\Project Material\NetBeans
835
+ #: Workspace\simple-membership\simple-membership/views/admin_tools_settings.php:24
836
+ msgid "Registration Completion Links Will Appear Below:"
837
+ msgstr "Les Liens d'Achèvement d'Enregistrement apparaissent ci-dessous :"
838
+
839
+ #: E:\Portal\Project Material\NetBeans
840
+ #: Workspace\simple-membership\simple-membership/views/admin_tools_settings.php:31
841
+ msgid "Send Registration Reminder Email too"
842
+ msgstr "Envoyer l'E-mail de rappel d'enregistrement aussi"
843
+
844
+ #: E:\Portal\Project Material\NetBeans
845
+ #: Workspace\simple-membership\simple-membership/views/admin_tools_settings.php:34
846
+ msgid "Submit"
847
+ msgstr "Soumettre"
848
+
849
+ #: E:\Portal\Project Material\NetBeans
850
+ #: Workspace\simple-membership\simple-membership/views/edit.php:58
851
+ msgid "Update"
852
+ msgstr "Mise à jour"
853
+
854
+ #: E:\Portal\Project Material\NetBeans
855
+ #: Workspace\simple-membership\simple-membership/views/forgot_password.php:5
856
+ msgid "Email Address"
857
+ msgstr "Adresse Email"
858
+
859
+ #: E:\Portal\Project Material\NetBeans
860
+ #: Workspace\simple-membership\simple-membership/views/forgot_password.php:12
861
+ msgid "Reset Password"
862
+ msgstr "RAZ Mot de Passe"
863
+
864
+ #: E:\Portal\Project Material\NetBeans
865
+ #: Workspace\simple-membership\simple-membership/views/loggedin.php:3
866
+ #: Workspace\simple-membership\simple-membership/views/login_widget_logged.php:3
867
+ msgid "Logged in as"
868
+ msgstr "Connecté en tant que "
869
+
870
+ #: E:\Portal\Project Material\NetBeans
871
+ #: Workspace\simple-membership\simple-membership/views/loggedin.php:11
872
+ #: Workspace\simple-membership\simple-membership/views/login_widget_logged.php:9
873
+ msgid "Membership"
874
+ msgstr "Adhésion"
875
+
876
+ #: E:\Portal\Project Material\NetBeans
877
+ #: Workspace\simple-membership\simple-membership/views/loggedin.php:15
878
+ #: Workspace\simple-membership\simple-membership/views/login_widget_logged.php:13
879
+ msgid "Logout"
880
+ msgstr "Déconnecter"
881
+
882
+ #: E:\Portal\Project Material\NetBeans
883
+ #: Workspace\simple-membership\simple-membership/views/login.php:17
884
+ msgid "Remember Me"
885
+ msgstr "Se Souvenir de Moi"
886
+
887
+ #: E:\Portal\Project Material\NetBeans
888
+ #: Workspace\simple-membership\simple-membership/views/login.php:26
889
+ msgid "Forgot Password"
890
+ msgstr "Mot de Passe Oublié"
891
+
892
+ #: E:\Portal\Project Material\NetBeans
893
+ #: Workspace\simple-membership\simple-membership/views/login.php:30
894
+ msgid "Join Us"
895
+ msgstr "Nous Rejoindre"
languages/swpm-pt_BR.mo ADDED
Binary file
languages/swpm-pt_BR.po ADDED
@@ -0,0 +1,711 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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-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"
15
+ "Language: pt_BR\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 "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
33
+ #: classes/class.bMembershipLevel.php:36 classes/class.bMembershipLevel.php:54
34
+ msgid "Please correct the following:"
35
+ 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."
47
+ 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."
55
+ msgstr "A conta está inativa."
56
+
57
+ #: classes/class.bAuth.php:89
58
+ msgid "You are logged in as:"
59
+ msgstr "Você está logado como:"
60
+
61
+ #: classes/class.bAuth.php:128
62
+ msgid "Logged Out Successfully."
63
+ 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."
97
+ msgstr "Nome do usuário já existe."
98
+
99
+ #: classes/class.bForm.php:72
100
+ msgid "Password is required"
101
+ 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"
129
+ 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
141
+ msgid "Login"
142
+ msgstr "Entrar"
143
+
144
+ #: classes/class.bFrontRegistration.php:79
145
+ #: classes/class.bFrontRegistration.php:158
146
+ msgid "Please correct the following"
147
+ msgstr "Corrija o seguinte"
148
+
149
+ #: classes/class.bFrontRegistration.php:92
150
+ msgid "Membership Level Couldn't be found."
151
+ 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."
159
+ 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"
167
+ msgstr "Usuário"
168
+
169
+ #: classes/class.bMembers.php:8 classes/class.simple-wp-membership.php:467
170
+ msgid "Members"
171
+ msgstr "Usuários"
172
+
173
+ #: classes/class.bMembers.php:16 classes/class.bMembershipLevels.php:16
174
+ msgid "ID"
175
+ msgstr ""
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 "Nome de Usuário"
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 "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
189
+ msgid "Last Name"
190
+ 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
198
+ #: views/admin_member_form_common_part.php:55 views/edit.php:52
199
+ msgid "Membership Level"
200
+ 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"
212
+ msgstr "Excluir"
213
+
214
+ #: classes/class.bMembers.php:100
215
+ msgid "No Member found."
216
+ 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
228
+ msgid "Membership Levels"
229
+ msgstr "Níveis de Associação"
230
+
231
+ #: classes/class.bMembershipLevels.php:18
232
+ msgid "Role"
233
+ msgstr "A função"
234
+
235
+ #: classes/class.bMembershipLevels.php:19
236
+ msgid "Subscription Valid For"
237
+ 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"
245
+ 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"
253
+ msgstr "Ativar / desativar o registro para o nível de adesão gratuita"
254
+
255
+ #: classes/class.bSettings.php:36
256
+ msgid "Free Membership Level ID"
257
+ msgstr "Associação Livre Nível ID"
258
+
259
+ #: classes/class.bSettings.php:39
260
+ msgid "Assign free membership level ID"
261
+ 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 ""
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 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"
302
+ msgstr "Configurações de teste e depuração"
303
+
304
+ #: classes/class.bSettings.php:74
305
+ msgid "Enable Sandbox Testing"
306
+ 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"
318
+ msgstr "De Endereço de Email"
319
+
320
+ #: classes/class.bSettings.php:97
321
+ msgid "Email Settings (Prompt to Complete Registration )"
322
+ msgstr ""
323
+
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)"
336
+ msgstr "Configurações de e-mail ( Registro Completo)"
337
+
338
+ #: classes/class.bSettings.php:118
339
+ msgid "Send Notification To Admin"
340
+ msgstr "Enviar uma notificação ao Administrador"
341
+
342
+ #: classes/class.bSettings.php:122
343
+ msgid "Send Email to Member When Added via Admin Dashboard"
344
+ msgstr ""
345
+ "Enviar e-mail para membros quando adicionada via Painel de Administração"
346
+
347
+ #: classes/class.bSettings.php:127
348
+ msgid " Email Settings (Account Upgrade Notification)"
349
+ 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"
357
+ msgstr "Junte-se a nós"
358
+
359
+ #: classes/class.bUtils.php:32 views/admin_member_form_common_part.php:66
360
+ msgid "Active"
361
+ 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"
369
+ 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"
381
+ 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"
389
+ msgstr "Perfil"
390
+
391
+ #: classes/class.miscUtils.php:120
392
+ msgid "Password Reset"
393
+ 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"
401
+ 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."
417
+ msgstr ""
418
+
419
+ #: classes/class.simple-wp-membership.php:377
420
+ msgid "SWPM Login"
421
+ msgstr ""
422
+
423
+ #: classes/class.simple-wp-membership.php:464
424
+ msgid "WP Membership"
425
+ 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
433
+ msgid "Password"
434
+ msgstr "Senha"
435
+
436
+ #: views/add.php:17 views/edit.php:16
437
+ msgid "Repeat Password"
438
+ msgstr "Repita a senha"
439
+
440
+ #: views/add.php:29 views/admin_member_form_common_part.php:10
441
+ msgid "Gender"
442
+ msgstr "Sexo"
443
+
444
+ #: views/add.php:36 views/admin_member_form_common_part.php:17
445
+ #: views/edit.php:28
446
+ msgid "Phone"
447
+ msgstr "telefone"
448
+
449
+ #: views/add.php:40 views/admin_member_form_common_part.php:21
450
+ #: views/edit.php:32
451
+ msgid "Street"
452
+ msgstr "Rua"
453
+
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
466
+ msgid "Zipcode"
467
+ msgstr "Cep"
468
+
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"
480
+ msgstr "Cadastre-se"
481
+
482
+ #: views/admin_add.php:6
483
+ msgid "Add Member"
484
+ msgstr "Adicionar membro"
485
+
486
+ #: views/admin_add.php:7
487
+ #, fuzzy
488
+ msgid "Create a brand new user and add it to this site."
489
+ msgstr "Crie um novo usuário e adicioná-lo a este site."
490
+
491
+ #: views/admin_add.php:11
492
+ msgid "User name"
493
+ msgstr ""
494
+
495
+ #: views/admin_add.php:11 views/admin_add.php:15 views/admin_add_level.php:11
496
+ #: views/admin_add_level.php:15 views/admin_add_level.php:19
497
+ #: views/admin_edit.php:9 views/admin_edit.php:13
498
+ #: views/admin_edit_level.php:10 views/admin_edit_level.php:14
499
+ #: views/admin_edit_level.php:18
500
+ msgid "(required)"
501
+ msgstr "(obrigatório)"
502
+
503
+ #: views/admin_add.php:15 views/admin_edit.php:13
504
+ msgid "E-mail"
505
+ 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"
529
+ 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"
537
+ msgstr "Editar Membro"
538
+
539
+ #: views/admin_edit.php:6
540
+ msgid "Edit existing member details."
541
+ 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"
553
+ msgstr "Editar Nível de Associação"
554
+
555
+ #: views/admin_edit_level.php:6
556
+ msgid "Edit membership level."
557
+ 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"
565
+ msgstr "Membership WP Simples :: Membros"
566
+
567
+ #: views/admin_members.php:3 views/admin_members.php:19
568
+ #: views/admin_membership_levels.php:21
569
+ msgid "Add New"
570
+ 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"
578
+ 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"
586
+ 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 ""
602
+ "Hint: The password should be at least seven characters long. To make it "
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"
616
+ msgstr "Cadastrado"
617
+
618
+ #: views/admin_payment_settings.php:2 views/admin_settings.php:2
619
+ #: views/admin_tools_settings.php:2
620
+ msgid "Simple WP Membership::Settings"
621
+ 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"
633
+ 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 ""
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
+ "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"
659
+ msgstr "OU"
660
+
661
+ #: views/admin_tools_settings.php:21
662
+ msgid "For All Pending Registrations"
663
+ 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"
671
+ msgstr "Enviar Inscrição Reminder Email demais"
672
+
673
+ #: views/admin_tools_settings.php:34
674
+ msgid "Submit"
675
+ 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"
687
+ msgstr "Redefinir senha"
688
+
689
+ #: views/loggedin.php:3 views/login_widget_logged.php:3
690
+ msgid "Logged in as"
691
+ 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"
703
+ 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"
711
+ msgstr "Esqueci minha senha"
languages/swpm-zh_CN.mo ADDED
Binary file
languages/swpm-zh_CN.po ADDED
@@ -0,0 +1,689 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: Simple WordPress Membership\n"
4
+ "POT-Creation-Date: 2014-07-30 17:30+0800\n"
5
+ "PO-Revision-Date: 2014-07-30 23:09+0800\n"
6
+ "Last-Translator: \n"
7
+ "Language-Team: \n"
8
+ "Language: zh_Hans\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.6.7\n"
13
+ "X-Poedit-Basepath: .\n"
14
+ "X-Poedit-SourceCharset: UTF-8\n"
15
+ "X-Poedit-KeywordsList: __;_e\n"
16
+ "Plural-Forms: nplurals=1; plural=0;\n"
17
+ "X-Poedit-SearchPath-0: .\n"
18
+
19
+ #: classes/class.bAdminRegistration.php:48
20
+ #: classes/class.bFrontRegistration.php:61
21
+ msgid "Registration Successful."
22
+ msgstr "注册成功"
23
+
24
+ #: classes/class.bAdminRegistration.php:53
25
+ #: classes/class.bAdminRegistration.php:72
26
+ #: classes/class.bMembershipLevel.php:36 classes/class.bMembershipLevel.php:54
27
+ msgid "Please correct the following:"
28
+ msgstr "请更改以下信息"
29
+
30
+ #: classes/class.bAjax.php:16 classes/class.bAjax.php:28
31
+ msgid "Aready taken"
32
+ msgstr "已被占用"
33
+
34
+ #: classes/class.bAjax.php:29
35
+ msgid "Available"
36
+ msgstr "可以使用"
37
+
38
+ #: classes/class.bAuth.php:47 classes/class.bFrontRegistration.php:176
39
+ msgid "User Not Found."
40
+ msgstr "找不到用户"
41
+
42
+ #: classes/class.bAuth.php:54
43
+ msgid "Password Empty or Invalid."
44
+ msgstr "密码空或者无效"
45
+
46
+ #: classes/class.bAuth.php:78
47
+ msgid "Account is inactive."
48
+ msgstr "账户未激活"
49
+
50
+ #: classes/class.bAuth.php:88
51
+ msgid "You are logged in as:"
52
+ msgstr "您已使用以下身份登陆"
53
+
54
+ #: classes/class.bAuth.php:127
55
+ msgid "Logged Out Successfully."
56
+ msgstr "成功退出登陆"
57
+
58
+ #: classes/class.bAuth.php:169
59
+ msgid "Session Expired."
60
+ msgstr "登陆超时"
61
+
62
+ #: classes/class.bAuth.php:178
63
+ msgid "Invalid User Name"
64
+ msgstr "无效的用户名"
65
+
66
+ #: classes/class.bAuth.php:186
67
+ msgid "Bad Cookie Hash"
68
+ msgstr "坏的Cookie"
69
+
70
+ #: classes/class.bForm.php:26
71
+ msgid ""
72
+ "Wordpress account exists with given user name. But given email doesn't match."
73
+ msgstr "用户名正确,但邮箱错误"
74
+
75
+ #: classes/class.bForm.php:31
76
+ msgid ""
77
+ "Wordpress account exists with given email. But given user name doesn't match."
78
+ msgstr "邮箱正确,但用户名错误"
79
+
80
+ #: classes/class.bForm.php:40
81
+ msgid "User name is required"
82
+ msgstr "请输入用户名"
83
+
84
+ #: classes/class.bForm.php:49
85
+ msgid "User name already exists."
86
+ msgstr "用户名已经存在"
87
+
88
+ #: classes/class.bForm.php:72
89
+ msgid "Password is required"
90
+ msgstr "请输入密码"
91
+
92
+ #: classes/class.bForm.php:79
93
+ msgid "Password mismatch"
94
+ msgstr "密码不符"
95
+
96
+ #: classes/class.bForm.php:95
97
+ msgid "Email is required"
98
+ msgstr "请输入邮箱地址"
99
+
100
+ #: classes/class.bForm.php:99
101
+ msgid "Email is invalid"
102
+ msgstr "邮箱无效"
103
+
104
+ #: classes/class.bForm.php:112
105
+ msgid "Email is already used."
106
+ msgstr "邮箱已经存在"
107
+
108
+ #: classes/class.bForm.php:128
109
+ msgid "Phone number is invalid"
110
+ msgstr "电话号码无效"
111
+
112
+ #: classes/class.bForm.php:174
113
+ msgid "Member since field is invalid"
114
+ msgstr "号码段无效"
115
+
116
+ #: classes/class.bForm.php:185
117
+ msgid "Subscription starts field is invalid"
118
+ msgstr "开始时间字段无效"
119
+
120
+ #: classes/class.bForm.php:195
121
+ msgid "Gender field is invalid"
122
+ msgstr "性别填写无效"
123
+
124
+ #: classes/class.bForm.php:206
125
+ msgid "Account state field is invalid"
126
+ msgstr "账户描述无效"
127
+
128
+ #: classes/class.bFrontRegistration.php:61
129
+ msgid "Please"
130
+ msgstr "请"
131
+
132
+ #: classes/class.bFrontRegistration.php:61 views/login.php:21
133
+ msgid "Login"
134
+ msgstr "登陆"
135
+
136
+ #: classes/class.bFrontRegistration.php:76
137
+ #: classes/class.bFrontRegistration.php:155
138
+ msgid "Please correct the following"
139
+ msgstr "请修改以下信息"
140
+
141
+ #: classes/class.bFrontRegistration.php:89
142
+ msgid "Membership Level Couldn't be found."
143
+ msgstr "会员等级不存在"
144
+
145
+ #: classes/class.bFrontRegistration.php:165
146
+ msgid "Email Address Not Valid."
147
+ msgstr "Email地址无效"
148
+
149
+ #: classes/class.bFrontRegistration.php:196
150
+ msgid "New password has been sent to your email address."
151
+ msgstr "新的密码已经发送到您的邮箱"
152
+
153
+ #: classes/class.bLevelForm.php:31
154
+ msgid "Subscriptoin duration must be > 0."
155
+ msgstr "过程必须大于0"
156
+
157
+ #: classes/class.bMembers.php:7
158
+ msgid "Member"
159
+ msgstr "会员"
160
+
161
+ #: classes/class.bMembers.php:8 classes/class.simple-wp-membership.php:439
162
+ msgid "Members"
163
+ msgstr "会员"
164
+
165
+ #: classes/class.bMembers.php:16 classes/class.bMembershipLevels.php:16
166
+ msgid "ID"
167
+ msgstr "ID"
168
+
169
+ #: classes/class.bMembers.php:17 views/add.php:5 views/edit.php:4
170
+ #: views/login.php:5
171
+ msgid "User Name"
172
+ msgstr "用户名"
173
+
174
+ #: classes/class.bMembers.php:18 views/add.php:21
175
+ #: views/admin_member_form_common_part.php:2 views/edit.php:20
176
+ msgid "First Name"
177
+ msgstr "名"
178
+
179
+ #: classes/class.bMembers.php:19 views/add.php:25
180
+ #: views/admin_member_form_common_part.php:6 views/edit.php:24
181
+ msgid "Last Name"
182
+ msgstr "姓"
183
+
184
+ #: classes/class.bMembers.php:20 views/add.php:9 views/edit.php:8
185
+ msgid "Email"
186
+ msgstr "Email"
187
+
188
+ #: classes/class.bMembers.php:21 classes/class.bMembershipLevels.php:8
189
+ #: classes/class.bMembershipLevels.php:17 views/add.php:64
190
+ #: views/admin_member_form_common_part.php:55 views/edit.php:52
191
+ msgid "Membership Level"
192
+ msgstr "会员等级"
193
+
194
+ #: classes/class.bMembers.php:22 views/admin_member_form_common_part.php:78
195
+ msgid "Subscription Starts"
196
+ msgstr "订阅开始于"
197
+
198
+ #: classes/class.bMembers.php:23
199
+ msgid "Account State"
200
+ msgstr "账户描述"
201
+
202
+ #: classes/class.bMembers.php:35 classes/class.bMembershipLevels.php:29
203
+ msgid "Delete"
204
+ msgstr "删除"
205
+
206
+ #: classes/class.bMembers.php:98
207
+ msgid "No Member found."
208
+ msgstr "会员不存在"
209
+
210
+ #: classes/class.bMembershipLevel.php:31
211
+ msgid "Membership Level Creation Successful."
212
+ msgstr "会员等级创建成功"
213
+
214
+ #: classes/class.bMembershipLevel.php:50
215
+ msgid "Updated Successfully."
216
+ msgstr "更新成功"
217
+
218
+ #: classes/class.bMembershipLevels.php:9
219
+ #: classes/class.simple-wp-membership.php:441
220
+ msgid "Membership Levels"
221
+ msgstr "会员等级"
222
+
223
+ #: classes/class.bMembershipLevels.php:18
224
+ msgid "Role"
225
+ msgstr "角色"
226
+
227
+ #: classes/class.bMembershipLevels.php:19
228
+ msgid "Subscription Valid For"
229
+ msgstr "订阅有效于"
230
+
231
+ #: classes/class.bSettings.php:28
232
+ msgid "Plugin Documentation"
233
+ msgstr "插件文件"
234
+
235
+ #: classes/class.bSettings.php:30
236
+ msgid "General Settings"
237
+ msgstr "总体设置"
238
+
239
+ #: classes/class.bSettings.php:32
240
+ msgid "Enable Free Membership"
241
+ msgstr "启用免费会员"
242
+
243
+ #: classes/class.bSettings.php:35
244
+ msgid "Enable/disable registration for free membership level"
245
+ msgstr "启用/不启用免费会员注册"
246
+
247
+ #: classes/class.bSettings.php:36
248
+ msgid "Free Membership Level ID"
249
+ msgstr "免费会员等级ID"
250
+
251
+ #: classes/class.bSettings.php:39
252
+ msgid "Assign free membership level ID"
253
+ msgstr "指定免费会员级别ID"
254
+
255
+ #: classes/class.bSettings.php:40
256
+ msgid "Hide Adminbar"
257
+ msgstr "隐藏管理栏"
258
+
259
+ #: classes/class.bSettings.php:43
260
+ msgid ""
261
+ "WordPress shows an admin toolbar to the logged in users of the site. Check "
262
+ "this box if you want to hide that admin toolbar in the fronend of your site."
263
+ msgstr ""
264
+ "WordPress对已经登陆的用户显示管理工具栏,如果你想在网站前端隐藏管理栏请勾选这"
265
+ "里"
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 "登陆页面URL"
274
+
275
+ #: classes/class.bSettings.php:51
276
+ msgid "Registration Page URL"
277
+ msgstr "注册页面URL"
278
+
279
+ #: classes/class.bSettings.php:55
280
+ msgid "Join Us Page URL"
281
+ msgstr "加入页面URL"
282
+
283
+ #: classes/class.bSettings.php:59
284
+ msgid "Edit Profile Page URL"
285
+ msgstr "修改会员信息页面URL"
286
+
287
+ #: classes/class.bSettings.php:63
288
+ msgid "Password Reset Page URL"
289
+ msgstr "更改密码页面URL"
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 "Email标题"
319
+
320
+ #: classes/class.bSettings.php:103 classes/class.bSettings.php:114
321
+ #: classes/class.bSettings.php:133
322
+ msgid "Email Body"
323
+ msgstr "Email内容"
324
+
325
+ #: classes/class.bSettings.php:108
326
+ msgid "Email Settings (Registration Complete)"
327
+ msgstr "Email设置(完成注册)"
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 "Email设置(账户更新信息通知)"
340
+
341
+ #: classes/class.miscUtils.php:51
342
+ msgid "Registration"
343
+ msgstr "注册"
344
+
345
+ #: classes/class.miscUtils.php:74
346
+ msgid "Member Login"
347
+ msgstr "会员登陆"
348
+
349
+ #: classes/class.miscUtils.php:97
350
+ msgid "Profile"
351
+ msgstr "个人资料"
352
+
353
+ #: classes/class.miscUtils.php:120
354
+ msgid "Password Reset"
355
+ msgstr "更改密码"
356
+
357
+ #: classes/class.simple-wp-membership.php:181
358
+ msgid "Simple WP Membership Protection"
359
+ msgstr "会员保护"
360
+
361
+ #: classes/class.simple-wp-membership.php:194
362
+ msgid "Simple Membership Protection options"
363
+ msgstr "会员保护选项"
364
+
365
+ #: classes/class.simple-wp-membership.php:210
366
+ msgid "Do you want to protect this content?"
367
+ msgstr "你是否需要保护这个内容"
368
+
369
+ #: classes/class.simple-wp-membership.php:215
370
+ msgid "Select the membership level that can access this content:"
371
+ msgstr "选择可以查看该内容的会员等级"
372
+
373
+ #: classes/class.simple-wp-membership.php:347
374
+ msgid "Display SWPM Login."
375
+ msgstr "显示SWPM登陆"
376
+
377
+ #: classes/class.simple-wp-membership.php:349
378
+ msgid "SWPM Login"
379
+ msgstr "SWPM登陆"
380
+
381
+ #: classes/class.simple-wp-membership.php:436
382
+ msgid "WP Membership"
383
+ msgstr "WP会员"
384
+
385
+ #: classes/class.simple-wp-membership.php:443
386
+ msgid "Settings"
387
+ msgstr "设置"
388
+
389
+ #: views/add.php:13 views/admin_member_form_common_part.php:45
390
+ #: views/edit.php:12 views/login.php:11
391
+ msgid "Password"
392
+ msgstr "密码"
393
+
394
+ #: views/add.php:17 views/edit.php:16
395
+ msgid "Repeat Password"
396
+ msgstr "重复密码"
397
+
398
+ #: views/add.php:29 views/admin_member_form_common_part.php:10
399
+ msgid "Gender"
400
+ msgstr "性别"
401
+
402
+ #: views/add.php:36 views/admin_member_form_common_part.php:17
403
+ #: views/edit.php:28
404
+ msgid "Phone"
405
+ msgstr "电话"
406
+
407
+ #: views/add.php:40 views/admin_member_form_common_part.php:21
408
+ #: views/edit.php:32
409
+ msgid "Street"
410
+ msgstr "街道"
411
+
412
+ #: views/add.php:44 views/admin_member_form_common_part.php:25
413
+ #: views/edit.php:36
414
+ msgid "City"
415
+ msgstr "城市"
416
+
417
+ #: views/add.php:48 views/admin_member_form_common_part.php:29
418
+ #: views/edit.php:40
419
+ msgid "State"
420
+ msgstr "省份"
421
+
422
+ #: views/add.php:52 views/admin_member_form_common_part.php:33
423
+ #: views/edit.php:44
424
+ msgid "Zipcode"
425
+ msgstr "邮编"
426
+
427
+ #: views/add.php:56 views/admin_member_form_common_part.php:37
428
+ #: views/edit.php:48
429
+ msgid "Country"
430
+ msgstr "国家"
431
+
432
+ #: views/add.php:60 views/admin_member_form_common_part.php:41
433
+ msgid "Company"
434
+ msgstr "公司"
435
+
436
+ #: views/add.php:71
437
+ msgid "Register"
438
+ msgstr "注册"
439
+
440
+ #: views/admin_add.php:6
441
+ msgid "Add Member"
442
+ msgstr "添加会员"
443
+
444
+ #: views/admin_add.php:7
445
+ msgid "Create a brand new user and add it to this site."
446
+ msgstr "给网站创建一个新用户"
447
+
448
+ #: views/admin_add.php:11
449
+ msgid "User name"
450
+ msgstr "用户名"
451
+
452
+ #: views/admin_add.php:11 views/admin_add.php:15 views/admin_add_level.php:11
453
+ #: views/admin_add_level.php:15 views/admin_add_level.php:19
454
+ #: views/admin_edit.php:9 views/admin_edit.php:13
455
+ #: views/admin_edit_level.php:10 views/admin_edit_level.php:14
456
+ #: views/admin_edit_level.php:18
457
+ msgid "(required)"
458
+ msgstr "必填"
459
+
460
+ #: views/admin_add.php:15 views/admin_edit.php:13
461
+ msgid "E-mail"
462
+ msgstr "E-mail"
463
+
464
+ #: views/admin_add.php:19
465
+ msgid "Add New Member "
466
+ msgstr "添加新会员"
467
+
468
+ #: views/admin_add_level.php:6
469
+ msgid "Create new membership level."
470
+ msgstr "创建新会员等级"
471
+
472
+ #: views/admin_add_level.php:11 views/admin_edit_level.php:10
473
+ msgid "Membership Level Name"
474
+ msgstr "会员等级名"
475
+
476
+ #: views/admin_add_level.php:15 views/admin_edit_level.php:14
477
+ msgid "Default WordPress Role"
478
+ msgstr "默认的WP角色"
479
+
480
+ #: views/admin_add_level.php:19 views/admin_edit_level.php:18
481
+ msgid "Subscription Duration"
482
+ msgstr "有效期"
483
+
484
+ #: views/admin_add_level.php:26 views/admin_edit_level.php:27
485
+ msgid "No Expiry"
486
+ msgstr "不失效"
487
+
488
+ #: views/admin_add_level.php:55
489
+ msgid "Add New Membership Level "
490
+ msgstr "添加新的会员等级"
491
+
492
+ #: views/admin_edit.php:5
493
+ msgid "Edit Member"
494
+ msgstr "修改会员"
495
+
496
+ #: views/admin_edit.php:6
497
+ msgid "Edit existing member details."
498
+ msgstr "修改已存在用户信息"
499
+
500
+ #: views/admin_edit.php:9
501
+ msgid "Username"
502
+ msgstr "用户名"
503
+
504
+ #: views/admin_edit.php:17
505
+ msgid "Edit User "
506
+ msgstr "修改用户"
507
+
508
+ #: views/admin_edit_level.php:5
509
+ msgid "Edit membership level"
510
+ msgstr "修改会员等级"
511
+
512
+ #: views/admin_edit_level.php:6
513
+ msgid "Edit membership level."
514
+ msgstr "修改会员等级"
515
+
516
+ #: views/admin_edit_level.php:54
517
+ msgid "Edit Membership Level "
518
+ msgstr "修改会员等级"
519
+
520
+ #. translators: password input field
521
+ #: views/admin_member_form_common_part.php:45
522
+ msgid "(twice, required)"
523
+ msgstr "2次,必填"
524
+
525
+ #: views/admin_member_form_common_part.php:50
526
+ msgid "Strength indicator"
527
+ msgstr "强度指示器"
528
+
529
+ #: views/admin_member_form_common_part.php:51
530
+ msgid ""
531
+ "Hint: The password should be at least seven characters long. To make it "
532
+ "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
533
+ "$ % ^ &amp; )."
534
+ msgstr ""
535
+ "密码最少7个字符,为保证密码强度,请使用大小写字母,数字和例如! \" ? $ % ^ "
536
+ "&amp的符号"
537
+
538
+ #: views/admin_member_form_common_part.php:64 views/loggedin.php:7
539
+ #: views/login_widget_logged.php:6
540
+ msgid "Account Status"
541
+ msgstr "账户状态"
542
+
543
+ #: views/admin_member_form_common_part.php:66
544
+ msgid "Active"
545
+ msgstr "激活"
546
+
547
+ #: views/admin_member_form_common_part.php:67
548
+ msgid "Inactive"
549
+ msgstr "未激活"
550
+
551
+ #: views/admin_member_form_common_part.php:68
552
+ msgid "Pending"
553
+ msgstr "待定"
554
+
555
+ #: views/admin_member_form_common_part.php:69
556
+ msgid "Expired"
557
+ msgstr "失效"
558
+
559
+ #: views/admin_member_form_common_part.php:74
560
+ msgid "Member Since"
561
+ msgstr "会员自"
562
+
563
+ #: views/admin_members.php:2
564
+ msgid "Simple WP Membership::Members"
565
+ msgstr "会员等级:会员"
566
+
567
+ #: views/admin_members.php:3 views/admin_members.php:19
568
+ #: views/admin_membership_levels.php:21
569
+ msgid "Add New"
570
+ msgstr "添加新的"
571
+
572
+ #: views/admin_members.php:9 views/admin_membership_levels.php:11
573
+ msgid "search"
574
+ msgstr "搜索"
575
+
576
+ #: views/admin_membership_level_menu.php:2
577
+ msgid "Membership level"
578
+ msgstr "会员等级"
579
+
580
+ #: views/admin_membership_level_menu.php:3
581
+ msgid "Manage Content Production"
582
+ msgstr "管理内容制作"
583
+
584
+ #: views/admin_membership_levels.php:3
585
+ msgid "Simple WP Membership::Membership Levels"
586
+ msgstr "会员:会员等级"
587
+
588
+ #: views/admin_membership_levels.php:4
589
+ msgctxt "Level"
590
+ msgid "Add New"
591
+ msgstr "添加新等级"
592
+
593
+ #: views/admin_membership_manage.php:17
594
+ msgid "Example Content Protection Settings"
595
+ msgstr "内容保护设置例子"
596
+
597
+ #: views/admin_payment_settings.php:2 views/admin_settings.php:2
598
+ #: views/admin_tools_settings.php:2
599
+ msgid "Simple WP Membership::Settings"
600
+ msgstr "会员:设置"
601
+
602
+ #: views/admin_payment_settings.php:33
603
+ msgid "PayPal Integration Settings"
604
+ msgstr "Paypal集成设置"
605
+
606
+ #: views/admin_payment_settings.php:36
607
+ msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
608
+ msgstr "您的PayPal按钮产生高级变量代码"
609
+
610
+ #: views/admin_payment_settings.php:39
611
+ msgid "Enter the Membership Level ID"
612
+ msgstr "输入会员等级ID"
613
+
614
+ #: views/admin_payment_settings.php:41
615
+ msgid "Generate Code"
616
+ msgstr "生成代码"
617
+
618
+ #: views/admin_tools_settings.php:9
619
+ msgid "Generate a Registration Completion link"
620
+ msgstr "生成注册完成链接"
621
+
622
+ #: views/admin_tools_settings.php:12
623
+ msgid ""
624
+ "You can manually generate a registration completion link here and give it to "
625
+ "your customer if they have missed the email that was automatically sent out "
626
+ "to them after the payment."
627
+ msgstr ""
628
+ "如果你的用户在完成付款后没收到自动生成的邮件,那么你可以在这里手动生成注册完"
629
+ "成链接,并发送给你的用户"
630
+
631
+ #: views/admin_tools_settings.php:17
632
+ msgid "Generate Registration Completion Link"
633
+ msgstr "生成注册完成链接"
634
+
635
+ #: views/admin_tools_settings.php:20
636
+ msgid "OR"
637
+ msgstr "或者"
638
+
639
+ #: views/admin_tools_settings.php:21
640
+ msgid "For All Pending Registrations"
641
+ msgstr "对于所有待定的注册"
642
+
643
+ #: views/admin_tools_settings.php:24
644
+ msgid "Registration Completion Links Will Appear Below:"
645
+ msgstr "注册完成链接会出现在:"
646
+
647
+ #: views/admin_tools_settings.php:31
648
+ msgid "Send Registration Reminder Email too"
649
+ msgstr "同时发送注册提醒邮件"
650
+
651
+ #: views/admin_tools_settings.php:34
652
+ msgid "Submit"
653
+ msgstr "提交"
654
+
655
+ #: views/edit.php:58
656
+ msgid "Update"
657
+ msgstr "更新"
658
+
659
+ #: views/forgot_password.php:5
660
+ msgid "Email Address"
661
+ msgstr "Email地址"
662
+
663
+ #: views/forgot_password.php:12
664
+ msgid "Reset Password"
665
+ msgstr "重置密码"
666
+
667
+ #: views/loggedin.php:3 views/login_widget_logged.php:3
668
+ msgid "Logged in as"
669
+ msgstr "以以下身份登陆"
670
+
671
+ #: views/loggedin.php:11 views/login_widget_logged.php:9
672
+ msgid "Membership"
673
+ msgstr "会员"
674
+
675
+ #: views/loggedin.php:15 views/login_widget_logged.php:13
676
+ msgid "Logout"
677
+ msgstr "退出登陆"
678
+
679
+ #: views/login.php:17
680
+ msgid "Remember Me"
681
+ msgstr "记住这个身份"
682
+
683
+ #: views/login.php:26
684
+ msgid "Forgot Password"
685
+ msgstr "忘记密码"
686
+
687
+ #: views/login.php:30
688
+ msgid "Join Us"
689
+ msgstr "加入会员"
languages/swpm-zh_Hans.mo ADDED
Binary file
languages/swpm-zh_Hans.po ADDED
@@ -0,0 +1,689 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: Simple WordPress Membership\n"
4
+ "POT-Creation-Date: 2014-07-30 17:30+0800\n"
5
+ "PO-Revision-Date: 2014-07-30 23:09+0800\n"
6
+ "Last-Translator: \n"
7
+ "Language-Team: \n"
8
+ "Language: zh_Hans\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.6.7\n"
13
+ "X-Poedit-Basepath: .\n"
14
+ "X-Poedit-SourceCharset: UTF-8\n"
15
+ "X-Poedit-KeywordsList: __;_e\n"
16
+ "Plural-Forms: nplurals=1; plural=0;\n"
17
+ "X-Poedit-SearchPath-0: .\n"
18
+
19
+ #: classes/class.bAdminRegistration.php:48
20
+ #: classes/class.bFrontRegistration.php:61
21
+ msgid "Registration Successful."
22
+ msgstr "注册成功"
23
+
24
+ #: classes/class.bAdminRegistration.php:53
25
+ #: classes/class.bAdminRegistration.php:72
26
+ #: classes/class.bMembershipLevel.php:36 classes/class.bMembershipLevel.php:54
27
+ msgid "Please correct the following:"
28
+ msgstr "请更改以下信息"
29
+
30
+ #: classes/class.bAjax.php:16 classes/class.bAjax.php:28
31
+ msgid "Aready taken"
32
+ msgstr "已被占用"
33
+
34
+ #: classes/class.bAjax.php:29
35
+ msgid "Available"
36
+ msgstr "可以使用"
37
+
38
+ #: classes/class.bAuth.php:47 classes/class.bFrontRegistration.php:176
39
+ msgid "User Not Found."
40
+ msgstr "找不到用户"
41
+
42
+ #: classes/class.bAuth.php:54
43
+ msgid "Password Empty or Invalid."
44
+ msgstr "密码空或者无效"
45
+
46
+ #: classes/class.bAuth.php:78
47
+ msgid "Account is inactive."
48
+ msgstr "账户未激活"
49
+
50
+ #: classes/class.bAuth.php:88
51
+ msgid "You are logged in as:"
52
+ msgstr "您已使用以下身份登陆"
53
+
54
+ #: classes/class.bAuth.php:127
55
+ msgid "Logged Out Successfully."
56
+ msgstr "成功退出登陆"
57
+
58
+ #: classes/class.bAuth.php:169
59
+ msgid "Session Expired."
60
+ msgstr "登陆超时"
61
+
62
+ #: classes/class.bAuth.php:178
63
+ msgid "Invalid User Name"
64
+ msgstr "无效的用户名"
65
+
66
+ #: classes/class.bAuth.php:186
67
+ msgid "Bad Cookie Hash"
68
+ msgstr "坏的Cookie"
69
+
70
+ #: classes/class.bForm.php:26
71
+ msgid ""
72
+ "Wordpress account exists with given user name. But given email doesn't match."
73
+ msgstr "用户名正确,但邮箱错误"
74
+
75
+ #: classes/class.bForm.php:31
76
+ msgid ""
77
+ "Wordpress account exists with given email. But given user name doesn't match."
78
+ msgstr "邮箱正确,但用户名错误"
79
+
80
+ #: classes/class.bForm.php:40
81
+ msgid "User name is required"
82
+ msgstr "请输入用户名"
83
+
84
+ #: classes/class.bForm.php:49
85
+ msgid "User name already exists."
86
+ msgstr "用户名已经存在"
87
+
88
+ #: classes/class.bForm.php:72
89
+ msgid "Password is required"
90
+ msgstr "请输入密码"
91
+
92
+ #: classes/class.bForm.php:79
93
+ msgid "Password mismatch"
94
+ msgstr "密码不符"
95
+
96
+ #: classes/class.bForm.php:95
97
+ msgid "Email is required"
98
+ msgstr "请输入邮箱地址"
99
+
100
+ #: classes/class.bForm.php:99
101
+ msgid "Email is invalid"
102
+ msgstr "邮箱无效"
103
+
104
+ #: classes/class.bForm.php:112
105
+ msgid "Email is already used."
106
+ msgstr "邮箱已经存在"
107
+
108
+ #: classes/class.bForm.php:128
109
+ msgid "Phone number is invalid"
110
+ msgstr "电话号码无效"
111
+
112
+ #: classes/class.bForm.php:174
113
+ msgid "Member since field is invalid"
114
+ msgstr "号码段无效"
115
+
116
+ #: classes/class.bForm.php:185
117
+ msgid "Subscription starts field is invalid"
118
+ msgstr "开始时间字段无效"
119
+
120
+ #: classes/class.bForm.php:195
121
+ msgid "Gender field is invalid"
122
+ msgstr "性别填写无效"
123
+
124
+ #: classes/class.bForm.php:206
125
+ msgid "Account state field is invalid"
126
+ msgstr "账户描述无效"
127
+
128
+ #: classes/class.bFrontRegistration.php:61
129
+ msgid "Please"
130
+ msgstr "请"
131
+
132
+ #: classes/class.bFrontRegistration.php:61 views/login.php:21
133
+ msgid "Login"
134
+ msgstr "登陆"
135
+
136
+ #: classes/class.bFrontRegistration.php:76
137
+ #: classes/class.bFrontRegistration.php:155
138
+ msgid "Please correct the following"
139
+ msgstr "请修改以下信息"
140
+
141
+ #: classes/class.bFrontRegistration.php:89
142
+ msgid "Membership Level Couldn't be found."
143
+ msgstr "会员等级不存在"
144
+
145
+ #: classes/class.bFrontRegistration.php:165
146
+ msgid "Email Address Not Valid."
147
+ msgstr "Email地址无效"
148
+
149
+ #: classes/class.bFrontRegistration.php:196
150
+ msgid "New password has been sent to your email address."
151
+ msgstr "新的密码已经发送到您的邮箱"
152
+
153
+ #: classes/class.bLevelForm.php:31
154
+ msgid "Subscriptoin duration must be > 0."
155
+ msgstr "过程必须大于0"
156
+
157
+ #: classes/class.bMembers.php:7
158
+ msgid "Member"
159
+ msgstr "会员"
160
+
161
+ #: classes/class.bMembers.php:8 classes/class.simple-wp-membership.php:439
162
+ msgid "Members"
163
+ msgstr "会员"
164
+
165
+ #: classes/class.bMembers.php:16 classes/class.bMembershipLevels.php:16
166
+ msgid "ID"
167
+ msgstr "ID"
168
+
169
+ #: classes/class.bMembers.php:17 views/add.php:5 views/edit.php:4
170
+ #: views/login.php:5
171
+ msgid "User Name"
172
+ msgstr "用户名"
173
+
174
+ #: classes/class.bMembers.php:18 views/add.php:21
175
+ #: views/admin_member_form_common_part.php:2 views/edit.php:20
176
+ msgid "First Name"
177
+ msgstr "名"
178
+
179
+ #: classes/class.bMembers.php:19 views/add.php:25
180
+ #: views/admin_member_form_common_part.php:6 views/edit.php:24
181
+ msgid "Last Name"
182
+ msgstr "姓"
183
+
184
+ #: classes/class.bMembers.php:20 views/add.php:9 views/edit.php:8
185
+ msgid "Email"
186
+ msgstr "Email"
187
+
188
+ #: classes/class.bMembers.php:21 classes/class.bMembershipLevels.php:8
189
+ #: classes/class.bMembershipLevels.php:17 views/add.php:64
190
+ #: views/admin_member_form_common_part.php:55 views/edit.php:52
191
+ msgid "Membership Level"
192
+ msgstr "会员等级"
193
+
194
+ #: classes/class.bMembers.php:22 views/admin_member_form_common_part.php:78
195
+ msgid "Subscription Starts"
196
+ msgstr "订阅开始于"
197
+
198
+ #: classes/class.bMembers.php:23
199
+ msgid "Account State"
200
+ msgstr "账户描述"
201
+
202
+ #: classes/class.bMembers.php:35 classes/class.bMembershipLevels.php:29
203
+ msgid "Delete"
204
+ msgstr "删除"
205
+
206
+ #: classes/class.bMembers.php:98
207
+ msgid "No Member found."
208
+ msgstr "会员不存在"
209
+
210
+ #: classes/class.bMembershipLevel.php:31
211
+ msgid "Membership Level Creation Successful."
212
+ msgstr "会员等级创建成功"
213
+
214
+ #: classes/class.bMembershipLevel.php:50
215
+ msgid "Updated Successfully."
216
+ msgstr "更新成功"
217
+
218
+ #: classes/class.bMembershipLevels.php:9
219
+ #: classes/class.simple-wp-membership.php:441
220
+ msgid "Membership Levels"
221
+ msgstr "会员等级"
222
+
223
+ #: classes/class.bMembershipLevels.php:18
224
+ msgid "Role"
225
+ msgstr "角色"
226
+
227
+ #: classes/class.bMembershipLevels.php:19
228
+ msgid "Subscription Valid For"
229
+ msgstr "订阅有效于"
230
+
231
+ #: classes/class.bSettings.php:28
232
+ msgid "Plugin Documentation"
233
+ msgstr "插件文件"
234
+
235
+ #: classes/class.bSettings.php:30
236
+ msgid "General Settings"
237
+ msgstr "总体设置"
238
+
239
+ #: classes/class.bSettings.php:32
240
+ msgid "Enable Free Membership"
241
+ msgstr "启用免费会员"
242
+
243
+ #: classes/class.bSettings.php:35
244
+ msgid "Enable/disable registration for free membership level"
245
+ msgstr "启用/不启用免费会员注册"
246
+
247
+ #: classes/class.bSettings.php:36
248
+ msgid "Free Membership Level ID"
249
+ msgstr "免费会员等级ID"
250
+
251
+ #: classes/class.bSettings.php:39
252
+ msgid "Assign free membership level ID"
253
+ msgstr "指定免费会员级别ID"
254
+
255
+ #: classes/class.bSettings.php:40
256
+ msgid "Hide Adminbar"
257
+ msgstr "隐藏管理栏"
258
+
259
+ #: classes/class.bSettings.php:43
260
+ msgid ""
261
+ "WordPress shows an admin toolbar to the logged in users of the site. Check "
262
+ "this box if you want to hide that admin toolbar in the fronend of your site."
263
+ msgstr ""
264
+ "WordPress对已经登陆的用户显示管理工具栏,如果你想在网站前端隐藏管理栏请勾选这"
265
+ "里"
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 "登陆页面URL"
274
+
275
+ #: classes/class.bSettings.php:51
276
+ msgid "Registration Page URL"
277
+ msgstr "注册页面URL"
278
+
279
+ #: classes/class.bSettings.php:55
280
+ msgid "Join Us Page URL"
281
+ msgstr "加入页面URL"
282
+
283
+ #: classes/class.bSettings.php:59
284
+ msgid "Edit Profile Page URL"
285
+ msgstr "修改会员信息页面URL"
286
+
287
+ #: classes/class.bSettings.php:63
288
+ msgid "Password Reset Page URL"
289
+ msgstr "更改密码页面URL"
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 "Email标题"
319
+
320
+ #: classes/class.bSettings.php:103 classes/class.bSettings.php:114
321
+ #: classes/class.bSettings.php:133
322
+ msgid "Email Body"
323
+ msgstr "Email内容"
324
+
325
+ #: classes/class.bSettings.php:108
326
+ msgid "Email Settings (Registration Complete)"
327
+ msgstr "Email设置(完成注册)"
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 "Email设置(账户更新信息通知)"
340
+
341
+ #: classes/class.miscUtils.php:51
342
+ msgid "Registration"
343
+ msgstr "注册"
344
+
345
+ #: classes/class.miscUtils.php:74
346
+ msgid "Member Login"
347
+ msgstr "会员登陆"
348
+
349
+ #: classes/class.miscUtils.php:97
350
+ msgid "Profile"
351
+ msgstr "个人资料"
352
+
353
+ #: classes/class.miscUtils.php:120
354
+ msgid "Password Reset"
355
+ msgstr "更改密码"
356
+
357
+ #: classes/class.simple-wp-membership.php:181
358
+ msgid "Simple WP Membership Protection"
359
+ msgstr "会员保护"
360
+
361
+ #: classes/class.simple-wp-membership.php:194
362
+ msgid "Simple Membership Protection options"
363
+ msgstr "会员保护选项"
364
+
365
+ #: classes/class.simple-wp-membership.php:210
366
+ msgid "Do you want to protect this content?"
367
+ msgstr "你是否需要保护这个内容"
368
+
369
+ #: classes/class.simple-wp-membership.php:215
370
+ msgid "Select the membership level that can access this content:"
371
+ msgstr "选择可以查看该内容的会员等级"
372
+
373
+ #: classes/class.simple-wp-membership.php:347
374
+ msgid "Display SWPM Login."
375
+ msgstr "显示SWPM登陆"
376
+
377
+ #: classes/class.simple-wp-membership.php:349
378
+ msgid "SWPM Login"
379
+ msgstr "SWPM登陆"
380
+
381
+ #: classes/class.simple-wp-membership.php:436
382
+ msgid "WP Membership"
383
+ msgstr "WP会员"
384
+
385
+ #: classes/class.simple-wp-membership.php:443
386
+ msgid "Settings"
387
+ msgstr "设置"
388
+
389
+ #: views/add.php:13 views/admin_member_form_common_part.php:45
390
+ #: views/edit.php:12 views/login.php:11
391
+ msgid "Password"
392
+ msgstr "密码"
393
+
394
+ #: views/add.php:17 views/edit.php:16
395
+ msgid "Repeat Password"
396
+ msgstr "重复密码"
397
+
398
+ #: views/add.php:29 views/admin_member_form_common_part.php:10
399
+ msgid "Gender"
400
+ msgstr "性别"
401
+
402
+ #: views/add.php:36 views/admin_member_form_common_part.php:17
403
+ #: views/edit.php:28
404
+ msgid "Phone"
405
+ msgstr "电话"
406
+
407
+ #: views/add.php:40 views/admin_member_form_common_part.php:21
408
+ #: views/edit.php:32
409
+ msgid "Street"
410
+ msgstr "街道"
411
+
412
+ #: views/add.php:44 views/admin_member_form_common_part.php:25
413
+ #: views/edit.php:36
414
+ msgid "City"
415
+ msgstr "城市"
416
+
417
+ #: views/add.php:48 views/admin_member_form_common_part.php:29
418
+ #: views/edit.php:40
419
+ msgid "State"
420
+ msgstr "省份"
421
+
422
+ #: views/add.php:52 views/admin_member_form_common_part.php:33
423
+ #: views/edit.php:44
424
+ msgid "Zipcode"
425
+ msgstr "邮编"
426
+
427
+ #: views/add.php:56 views/admin_member_form_common_part.php:37
428
+ #: views/edit.php:48
429
+ msgid "Country"
430
+ msgstr "国家"
431
+
432
+ #: views/add.php:60 views/admin_member_form_common_part.php:41
433
+ msgid "Company"
434
+ msgstr "公司"
435
+
436
+ #: views/add.php:71
437
+ msgid "Register"
438
+ msgstr "注册"
439
+
440
+ #: views/admin_add.php:6
441
+ msgid "Add Member"
442
+ msgstr "添加会员"
443
+
444
+ #: views/admin_add.php:7
445
+ msgid "Create a brand new user and add it to this site."
446
+ msgstr "给网站创建一个新用户"
447
+
448
+ #: views/admin_add.php:11
449
+ msgid "User name"
450
+ msgstr "用户名"
451
+
452
+ #: views/admin_add.php:11 views/admin_add.php:15 views/admin_add_level.php:11
453
+ #: views/admin_add_level.php:15 views/admin_add_level.php:19
454
+ #: views/admin_edit.php:9 views/admin_edit.php:13
455
+ #: views/admin_edit_level.php:10 views/admin_edit_level.php:14
456
+ #: views/admin_edit_level.php:18
457
+ msgid "(required)"
458
+ msgstr "必填"
459
+
460
+ #: views/admin_add.php:15 views/admin_edit.php:13
461
+ msgid "E-mail"
462
+ msgstr "E-mail"
463
+
464
+ #: views/admin_add.php:19
465
+ msgid "Add New Member "
466
+ msgstr "添加新会员"
467
+
468
+ #: views/admin_add_level.php:6
469
+ msgid "Create new membership level."
470
+ msgstr "创建新会员等级"
471
+
472
+ #: views/admin_add_level.php:11 views/admin_edit_level.php:10
473
+ msgid "Membership Level Name"
474
+ msgstr "会员等级名"
475
+
476
+ #: views/admin_add_level.php:15 views/admin_edit_level.php:14
477
+ msgid "Default WordPress Role"
478
+ msgstr "默认的WP角色"
479
+
480
+ #: views/admin_add_level.php:19 views/admin_edit_level.php:18
481
+ msgid "Subscription Duration"
482
+ msgstr "有效期"
483
+
484
+ #: views/admin_add_level.php:26 views/admin_edit_level.php:27
485
+ msgid "No Expiry"
486
+ msgstr "不失效"
487
+
488
+ #: views/admin_add_level.php:55
489
+ msgid "Add New Membership Level "
490
+ msgstr "添加新的会员等级"
491
+
492
+ #: views/admin_edit.php:5
493
+ msgid "Edit Member"
494
+ msgstr "修改会员"
495
+
496
+ #: views/admin_edit.php:6
497
+ msgid "Edit existing member details."
498
+ msgstr "修改已存在用户信息"
499
+
500
+ #: views/admin_edit.php:9
501
+ msgid "Username"
502
+ msgstr "用户名"
503
+
504
+ #: views/admin_edit.php:17
505
+ msgid "Edit User "
506
+ msgstr "修改用户"
507
+
508
+ #: views/admin_edit_level.php:5
509
+ msgid "Edit membership level"
510
+ msgstr "修改会员等级"
511
+
512
+ #: views/admin_edit_level.php:6
513
+ msgid "Edit membership level."
514
+ msgstr "修改会员等级"
515
+
516
+ #: views/admin_edit_level.php:54
517
+ msgid "Edit Membership Level "
518
+ msgstr "修改会员等级"
519
+
520
+ #. translators: password input field
521
+ #: views/admin_member_form_common_part.php:45
522
+ msgid "(twice, required)"
523
+ msgstr "2次,必填"
524
+
525
+ #: views/admin_member_form_common_part.php:50
526
+ msgid "Strength indicator"
527
+ msgstr "强度指示器"
528
+
529
+ #: views/admin_member_form_common_part.php:51
530
+ msgid ""
531
+ "Hint: The password should be at least seven characters long. To make it "
532
+ "stronger, use upper and lower case letters, numbers and symbols like ! \" ? "
533
+ "$ % ^ &amp; )."
534
+ msgstr ""
535
+ "密码最少7个字符,为保证密码强度,请使用大小写字母,数字和例如! \" ? $ % ^ "
536
+ "&amp的符号"
537
+
538
+ #: views/admin_member_form_common_part.php:64 views/loggedin.php:7
539
+ #: views/login_widget_logged.php:6
540
+ msgid "Account Status"
541
+ msgstr "账户状态"
542
+
543
+ #: views/admin_member_form_common_part.php:66
544
+ msgid "Active"
545
+ msgstr "激活"
546
+
547
+ #: views/admin_member_form_common_part.php:67
548
+ msgid "Inactive"
549
+ msgstr "未激活"
550
+
551
+ #: views/admin_member_form_common_part.php:68
552
+ msgid "Pending"
553
+ msgstr "待定"
554
+
555
+ #: views/admin_member_form_common_part.php:69
556
+ msgid "Expired"
557
+ msgstr "失效"
558
+
559
+ #: views/admin_member_form_common_part.php:74
560
+ msgid "Member Since"
561
+ msgstr "会员自"
562
+
563
+ #: views/admin_members.php:2
564
+ msgid "Simple WP Membership::Members"
565
+ msgstr "会员等级:会员"
566
+
567
+ #: views/admin_members.php:3 views/admin_members.php:19
568
+ #: views/admin_membership_levels.php:21
569
+ msgid "Add New"
570
+ msgstr "添加新的"
571
+
572
+ #: views/admin_members.php:9 views/admin_membership_levels.php:11
573
+ msgid "search"
574
+ msgstr "搜索"
575
+
576
+ #: views/admin_membership_level_menu.php:2
577
+ msgid "Membership level"
578
+ msgstr "会员等级"
579
+
580
+ #: views/admin_membership_level_menu.php:3
581
+ msgid "Manage Content Production"
582
+ msgstr "管理内容制作"
583
+
584
+ #: views/admin_membership_levels.php:3
585
+ msgid "Simple WP Membership::Membership Levels"
586
+ msgstr "会员:会员等级"
587
+
588
+ #: views/admin_membership_levels.php:4
589
+ msgctxt "Level"
590
+ msgid "Add New"
591
+ msgstr "添加新等级"
592
+
593
+ #: views/admin_membership_manage.php:17
594
+ msgid "Example Content Protection Settings"
595
+ msgstr "内容保护设置例子"
596
+
597
+ #: views/admin_payment_settings.php:2 views/admin_settings.php:2
598
+ #: views/admin_tools_settings.php:2
599
+ msgid "Simple WP Membership::Settings"
600
+ msgstr "会员:设置"
601
+
602
+ #: views/admin_payment_settings.php:33
603
+ msgid "PayPal Integration Settings"
604
+ msgstr "Paypal集成设置"
605
+
606
+ #: views/admin_payment_settings.php:36
607
+ msgid "Generate the \"Advanced Variables\" Code for your PayPal button"
608
+ msgstr "您的PayPal按钮产生高级变量代码"
609
+
610
+ #: views/admin_payment_settings.php:39
611
+ msgid "Enter the Membership Level ID"
612
+ msgstr "输入会员等级ID"
613
+
614
+ #: views/admin_payment_settings.php:41
615
+ msgid "Generate Code"
616
+ msgstr "生成代码"
617
+
618
+ #: views/admin_tools_settings.php:9
619
+ msgid "Generate a Registration Completion link"
620
+ msgstr "生成注册完成链接"
621
+
622
+ #: views/admin_tools_settings.php:12
623
+ msgid ""
624
+ "You can manually generate a registration completion link here and give it to "
625
+ "your customer if they have missed the email that was automatically sent out "
626
+ "to them after the payment."
627
+ msgstr ""
628
+ "如果你的用户在完成付款后没收到自动生成的邮件,那么你可以在这里手动生成注册完"
629
+ "成链接,并发送给你的用户"
630
+
631
+ #: views/admin_tools_settings.php:17
632
+ msgid "Generate Registration Completion Link"
633
+ msgstr "生成注册完成链接"
634
+
635
+ #: views/admin_tools_settings.php:20
636
+ msgid "OR"
637
+ msgstr "或者"
638
+
639
+ #: views/admin_tools_settings.php:21
640
+ msgid "For All Pending Registrations"
641
+ msgstr "对于所有待定的注册"
642
+
643
+ #: views/admin_tools_settings.php:24
644
+ msgid "Registration Completion Links Will Appear Below:"
645
+ msgstr "注册完成链接会出现在:"
646
+
647
+ #: views/admin_tools_settings.php:31
648
+ msgid "Send Registration Reminder Email too"
649
+ msgstr "同时发送注册提醒邮件"
650
+
651
+ #: views/admin_tools_settings.php:34
652
+ msgid "Submit"
653
+ msgstr "提交"
654
+
655
+ #: views/edit.php:58
656
+ msgid "Update"
657
+ msgstr "更新"
658
+
659
+ #: views/forgot_password.php:5
660
+ msgid "Email Address"
661
+ msgstr "Email地址"
662
+
663
+ #: views/forgot_password.php:12
664
+ msgid "Reset Password"
665
+ msgstr "重置密码"
666
+
667
+ #: views/loggedin.php:3 views/login_widget_logged.php:3
668
+ msgid "Logged in as"
669
+ msgstr "以以下身份登陆"
670
+
671
+ #: views/loggedin.php:11 views/login_widget_logged.php:9
672
+ msgid "Membership"
673
+ msgstr "会员"
674
+
675
+ #: views/loggedin.php:15 views/login_widget_logged.php:13
676
+ msgid "Logout"
677
+ msgstr "退出登陆"
678
+
679
+ #: views/login.php:17
680
+ msgid "Remember Me"
681
+ msgstr "记住这个身份"
682
+
683
+ #: views/login.php:26
684
+ msgid "Forgot Password"
685
+ msgstr "忘记密码"
686
+
687
+ #: views/login.php:30
688
+ msgid "Join Us"
689
+ msgstr "加入会员"
languages/swpm.pot ADDED
@@ -0,0 +1,695 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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"
9
+ "Content-Type: text/plain; charset=UTF-8\n"
10
+ "Content-Transfer-Encoding: 8bit\n"
11
+ "X-Generator: Poedit 1.5.7\n"
12
+ "X-Poedit-KeywordsList: __;_e\n"
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 ""
readme.txt CHANGED
@@ -1,14 +1,14 @@
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 protection, paypal, restrict access, Restrict content, admin
5
  Requires at least: 3.3
6
- Tested up to: 3.9.1
7
- Stable tag: 1.5.1
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
11
- Simple membership plugin can add membership functionality to your site. Protect members only content using content protection easily.
12
 
13
  == Description ==
14
 
@@ -29,28 +29,45 @@ 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
  = Documentation =
33
 
34
- Read the [setup documentation](https://simple-membership-plugin.com/wp-content/uploads/documentation/simple-membership/membership-basic-setup-and-configuration.pdf) after you install the plugin to get started.
35
 
36
  = Plugin Support =
37
 
38
- If you have any issue with this plugin, please post it on the support forum here:
39
- https://simple-membership-plugin.com/forums/
40
 
41
- You can create a free forum user account and ask your question in the above forum.
42
 
43
  = Miscellaneous =
44
 
45
  * Works with any WordPress theme.
46
  * Ability to protect photo galleries.
 
47
  * Comments on your protected posts will also be protected automatically.
48
  * There is an option to enable debug logging so you can troubleshoot membership payment related issues easily (if any).
49
  * Membership management side is handled by the plugin.
 
50
  * Can be translated to any language.
51
  * Hide the admin toolbar from the frontend of your site.
52
  * The login and registration widgets will be responsive if you are using a responsive theme.
53
 
 
 
 
 
 
 
 
 
 
 
 
 
54
  == Installation ==
55
 
56
  Do the following to install the membership plugin:
@@ -69,6 +86,58 @@ https://simple-membership-plugin.com/
69
 
70
  == Changelog ==
71
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
72
  = 1.6 =
73
  - Added comment protection. Comments on your protected posts will also be protected automatically.
74
  - Added a new feature to hide the admin toolbar for logged in users of the site.
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
 
11
+ Simple membership plugin adds membership functionality to your site. Protect members only content using content protection easily.
12
 
13
  == Description ==
14
 
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
+
35
  = Documentation =
36
 
37
+ Read the [setup documentation](https://simple-membership-plugin.com/simple-membership-documentation/) after you install the plugin to get started.
38
 
39
  = Plugin Support =
40
 
41
+ If you have any issue with this plugin, please visit the plugin site and post it on the support forum or send us a contact:
42
+ https://simple-membership-plugin.com/
43
 
44
+ You can create a free forum user account and ask your questions.
45
 
46
  = Miscellaneous =
47
 
48
  * Works with any WordPress theme.
49
  * Ability to protect photo galleries.
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
+
61
+ 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
+
71
  == Installation ==
72
 
73
  Do the following to install the membership plugin:
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.
92
+ - Added cookiehash definition check (in case it is not defined already).
93
+
94
+ = 1.7.9 =
95
+ - Added Spanish language translation to the plugin. The translation was submitted by David Sanchez.
96
+ - Removed some hardcoded path from the auth class.
97
+ - WordPress 4.0 compatibility
98
+
99
+ = 1.7.8 =
100
+ - Architecture improvement for the [WP User import addon](https://simple-membership-plugin.com/import-existing-wordpress-users-simple-membership-plugin/)
101
+ - Updated the POT file with the new translation strings
102
+
103
+ = 1.7.7 =
104
+ - The plugin will now show the member account expiry date in the login widget (when a user is logged into the site).
105
+ - Added a couple of filters to the plugin.
106
+
107
+ = 1.7.6 =
108
+ - Fixed an issue with hiding the admin-bar. It will never be shown to non-members.
109
+ - Renamed the chinese language file to correct the name.
110
+ - Removed a lot of fields from the front-end registration form (after user feedback). The membership registration form is now a lot simpler with just a few fields.
111
+ - Fixed a bug with the member search option in the admin dashboard.
112
+ - Added a few new action hooks and filters.
113
+ - Fixed a bug with the media attachment protection.
114
+
115
+ = 1.7.5 =
116
+ - Fixed an issue with language file loading.
117
+
118
+ = 1.7.4 =
119
+ - Added capability to use any of the shortcodes (example: Login widget) in the sidebar text widget.
120
+
121
+ = 1.7.3 =
122
+ - Added french language translation to the plugin. The translation was submitted by Zeb.
123
+ - Fixed a few language textdomain issue.
124
+ - Fixed an issue with the the registration and login page shortcode (On some sites the registration form wasn't visible.)
125
+ - Added simplified Chinese language translation to the plugin. The translation was submitted by Ben.
126
+
127
+ = 1.7.2 =
128
+ - Added a new hook after the plugin's admin menu is rendered so addons can hook into the main plugin menu.
129
+ - Fixed another PHP 5.2 code compatibility issue.
130
+ - Fixed an issue with the bulk member delete functionality.
131
+
132
+ = 1.7.1 =
133
+ - Fixed another PHP 5.2 code compatibility issue.
134
+ - Updated the plugin's language file template.
135
+
136
+ = 1.7 =
137
+ - Tweaked code to make it compatible with PHP 5.2 (previously PHP 5.3 was the requirement).
138
+ - Added checks for checking if a WP user account already exists with the chosen username (when a member registers).
139
+ - Fixed a few translation strings.
140
+
141
  = 1.6 =
142
  - Added comment protection. Comments on your protected posts will also be protected automatically.
143
  - Added a new feature to hide the admin toolbar for logged in users of the site.
simple-wp-membership.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
  /*
3
  Plugin Name: Simple WordPress Membership
4
- Version: v1.6
5
  Plugin URI: https://simple-membership-plugin.com/
6
  Author: smp7, wp.insider
7
  Author URI: https://simple-membership-plugin.com/
@@ -10,22 +10,27 @@ Description: A flexible, well-supported, and easy-to-use WordPress membership pl
10
 
11
  //Direct access to this file is not permitted
12
  if (realpath (__FILE__) === realpath ($_SERVER["SCRIPT_FILENAME"])){
13
- exit("Do not access this file directly.");
14
  }
15
 
16
  include_once('classes/class.simple-wp-membership.php');
17
 
 
18
  define('SIMPLE_WP_MEMBERSHIP_SITE_HOME_URL', home_url());
19
- define('SIMPLE_WP_MEMBERSHIP_VER', '1.6');
20
  define('SIMPLE_WP_MEMBERSHIP_PATH', dirname(__FILE__) . '/');
21
  define('SIMPLE_WP_MEMBERSHIP_URL', plugins_url('',__FILE__));
 
 
22
  define('SIMPLE_WP_MEMBERSHIP_AUTH', 'simple_wp_membership_'. COOKIEHASH);
23
  define('SIMPLE_WP_MEMBERSHIP_SEC_AUTH', 'simple_wp_membership_sec_'. COOKIEHASH);
 
24
  register_activation_hook( SIMPLE_WP_MEMBERSHIP_PATH .'simple-wp-membership.php', 'SimpleWpMembership::activate' );
25
  register_deactivation_hook( SIMPLE_WP_MEMBERSHIP_PATH . 'simple-wp-membership.php', 'SimpleWpMembership::deactivate' );
26
  add_action('swpm_login','SimpleWpMembership::swpm_login', 10,3);
27
- add_action('plugins_loaded', function(){new SimpleWpMembership();});
28
-
 
 
29
  //Add settings link in plugins listing page
30
  function swpm_add_settings_link($links, $file) {
31
  if ($file == plugin_basename(__FILE__)) {
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/
10
 
11
  //Direct access to this file is not permitted
12
  if (realpath (__FILE__) === realpath ($_SERVER["SCRIPT_FILENAME"])){
13
+ exit("Do not access this file directly.");
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__));
22
+ define('SIMPLE_WP_MEMBERSHIP_DIRNAME', dirname(plugin_basename(__FILE__)));
23
+ if (!defined('COOKIEHASH')) {define('COOKIEHASH', md5(get_site_option( 'siteurl' )));}
24
  define('SIMPLE_WP_MEMBERSHIP_AUTH', 'simple_wp_membership_'. COOKIEHASH);
25
  define('SIMPLE_WP_MEMBERSHIP_SEC_AUTH', 'simple_wp_membership_sec_'. COOKIEHASH);
26
+
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__)) {
views/add.php CHANGED
@@ -2,73 +2,73 @@
2
  <form id="swpm-registration-form" name="swpm-registration-form" method="post" action="">
3
  <table>
4
  <tr>
5
- <td><label for="user_name">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">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">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">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">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">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"><?php _e('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">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">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">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">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">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">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"><?php _e('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">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="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>
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>
views/admin_add.php CHANGED
@@ -3,20 +3,20 @@
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>Add Member</h3>
7
- <p><?php _e('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 _e('Username'); ?> <span class="description"><?php _e('(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"><?php _e('E-mail'); ?> <span class="description"><?php _e('(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( __( 'Add New Member '), 'primary', 'createswpmuser', true, array( 'id' => 'createswpmusersub' ) ); ?>
20
  </form>
21
  </div>
22
  <script>
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>
22
  <script>
views/admin_add_level.php CHANGED
@@ -3,55 +3,56 @@
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 _e('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 _e('Membership Level Name'); ?> <span class="description"><?php _e('(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 _e('Default WordPress Role'); ?> <span class="description"><?php _e('(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"><?php _e('Subscription Duration'); ?> <span class="description"><?php _e('(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><tr>
25
- <td style="width: 60px;"><b>No Expiry</b></td>
26
- </tr>
27
- </tbody></table>
 
28
  </div>
29
  </td>
30
  </tr>
31
  <tr>
32
  <th></th>
33
  <td>
34
- <div class="color-option"><input name="subscript_duration_type" id="subscript_duration_expire" type="radio" value="1" class="tog">
35
- <table class="color-palette">
36
- <tbody><tr>
37
- <td style="background-color: #d1e5ee" title="fresh"><input type="text" class="validate[required]" size="3" id="subscription_period" name="subscription_period" value=""></td>
38
- <td style="background-color: #cfdfe9" title="fresh">
39
- <select id="subscription_unit" name="subscription_unit">
40
- <option value="Days">Days</option>
41
- <option value="Weeks">Weeks</option>
42
- <option value="Months">Months</option>
43
- <option value="Years">Years</option>
44
- </select>
45
- </td>
46
- </tr>
47
- </tbody></table>
48
  </div>
49
  </td>
50
  </tr>
51
  <?= apply_filters('swpm_admin_add_membership_level_ui', '');?>
52
  </tbody>
53
  </table>
54
- <?php submit_button( __( 'Add New Membership Level '), 'primary', 'createswpmlevel', true, array( 'id' => 'createswpmlevelsub' ) ); ?>
55
  </form>
56
  </div>
57
  <script>
@@ -59,9 +60,9 @@ jQuery(document).ready(function($){
59
  $('.tog:radio').on('update_deps click',function(){
60
  if($(this).attr('checked')){
61
  $("#swpm-create-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-create-level").validationEngine('attach');
67
  }
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' ) ); ?>
56
  </form>
57
  </div>
58
  <script>
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
  }
views/admin_edit.php CHANGED
@@ -2,19 +2,20 @@
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>Edit Member</h3>
6
- <p><?php _e('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 _e('Username'); ?> <span class="description"><?php _e('(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"><?php _e('E-mail'); ?> <span class="description"><?php _e('(required)'); ?></span></label></th>
14
  <td><?php echo esc_attr($email); ?></td>
15
  </tr>
16
  <?php include('admin_member_form_common_part.php');?>
17
- <?php submit_button( __( ' Edit User '), 'primary', 'editswpmuser', true, array( 'id' => 'createswpmusersub' ) ); ?>
 
18
  </form>
19
  </div>
20
  <script>
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>
views/admin_edit_level.php CHANGED
@@ -2,20 +2,20 @@
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><?= _e('Edit membership level'); ?></h3>
6
- <p><?= _e('Edit membership level.'); ?></p>
7
  <table class="form-table">
8
  <tbody>
9
  <tr>
10
- <th scope="row"><label for="alias"><?php _e('Membership Level Name'); ?> <span class="description"><?php _e('(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 _e('Default WordPress Role'); ?> <span class="description"><?php _e('(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"><?php _e('Subscription Duration'); ?> <span class="description"><?php _e('(required)'); ?></span></label>
19
  </th>
20
  <td>
21
  <fieldset>
@@ -24,7 +24,7 @@
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>No Expiry</b></td>
28
  </tr>
29
  </tbody></table>
30
  </div>
@@ -51,7 +51,7 @@
51
  <?= apply_filters('swpm_admin_edit_membership_level_ui', '', $id);?>
52
  </tbody>
53
  </table>
54
- <?php submit_button( __( 'Edit Membership Level '), 'primary', 'editswpmlevel', true, array( 'id' => 'editswpmlevelsub' ) ); ?>
55
  </form>
56
  </div>
57
  <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><?= 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>
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>
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' ) ); ?>
55
  </form>
56
  </div>
57
  <script>
views/admin_member_form_common_part.php CHANGED
@@ -1,58 +1,58 @@
1
  <tr>
2
- <th scope="row"><label for="first_name"><?php _e('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"><?php _e('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"><?php _e('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"><?php _e('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"><?php _e('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"><?php _e('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"><?php _e('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"><?php _e('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"><?php _e('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"><?php _e('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"><?php _e('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"><?php _e('Strength indicator'); ?></div>
51
- <p class="description indicator-hint"><?php _e('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"><?php _e('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>
@@ -61,21 +61,21 @@
61
  </td>
62
  </tr>
63
  <tr>
64
- <th scope="row"><label for="account_state"><?php _e('Account Status'); ?></label></th>
65
  <td><select class="regular-text" name="account_state" id="account_state">
66
- <option value="active">Active</option>
67
- <option value="inactive">Inactive</option>
68
- <option value="pending">Pending</option>
69
- <option value="expired">Expired</option>
70
  </select>
71
  </td>
72
  </tr>
73
  <tr>
74
- <th scope="row"><label for="member_since"><?php _e('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"><?php _e('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>
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>
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>
views/admin_members.php CHANGED
@@ -1,21 +1,21 @@
1
  <div class="wrap">
2
- <h2><?php screen_icon('users'); ?>Simple WP Membership::Members
3
- <a href="admin.php?page=simple_wp_membership&member_action=add" class="add-new-h2"><?php echo "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="search" />
10
  <input type="hidden" name="page" value="my_list_test" />
11
  </p>
12
  </form>
13
- <?php $this->prepare_items(); ?>
14
  <form method="post">
15
  <?php $this->display(); ?>
16
  </form>
17
 
18
  <p>
19
- <a href="admin.php?page=simple_wp_membership&member_action=add" class="button-primary"><?php echo "Add New"; ?></a>
20
- </p>
21
  </div><!-- end of wrap -->
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(); ?>
14
  <form method="post">
15
  <?php $this->display(); ?>
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 -->
views/admin_membership_level_menu.php CHANGED
@@ -1,4 +1,4 @@
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">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">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"><?= 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>
views/admin_membership_levels.php CHANGED
@@ -1,24 +1,24 @@
1
  <div class="wrap">
2
-
3
- <h2><?php screen_icon('users'); ?>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">
7
  <p class="search-box">
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="search" />
12
  <input type="hidden" name="page" value="my_list_test" />
13
  </p>
14
  </form>
15
- <?php $this->prepare_items(); ?>
16
  <form method="post">
17
  <?php $this->display(); ?>
18
  </form>
19
 
20
  <p>
21
- <a href="admin.php?page=simple_wp_membership_levels&level_action=add" class="button-primary">Add New</a>
22
  </p>
23
 
24
  </div><!-- end of .wrap -->
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">
7
  <p class="search-box">
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(); ?>
16
  <form method="post">
17
  <?php $this->display(); ?>
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 -->
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>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><?= 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>Simple WP Membership::Settings</h1>
3
  <div class="wrap">
4
 
5
  <?php do_action("swpm-draw-tab"); ?>
@@ -13,7 +13,6 @@ 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
-
17
  $query = "SELECT * FROM " . $wpdb->prefix . "swpm_membership_tbl WHERE id =". $mem_level;
18
  $membership_level_resultset = $wpdb->get_row($query);
19
  if($membership_level_resultset){
@@ -25,21 +24,21 @@ if(isset($_POST['swpm_generate_adv_code']))
25
  }
26
  else{
27
  echo '<div id="message" class="updated fade"><p><strong>';
28
- echo 'Error! The membership level ID ('.$mem_level.') you specified is incorrect. Please check this value again.';
29
  echo '</strong></p></div>';
30
  }
31
  }
32
  ?>
33
  <div class="postbox">
34
- <h3><label for="title">PayPal Integration Settings</label></h3>
35
  <div class="inside">
36
 
37
- <p><strong>Generate the "Advanced Variables" Code for your PayPal button</strong></p>
38
 
39
  <form action="" method="post">
40
- Enter the Membership Level ID
41
  <input type="text" value="" size="4" name="swpm_paypal_adv_member_level">
42
- <input type="submit" value="Generate Code" class="button-primary" name="swpm_generate_adv_code">
43
  </form>
44
 
45
  </div></div>
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
  {
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){
24
  }
25
  else{
26
  echo '<div id="message" class="updated fade"><p><strong>';
27
+ BUtils::e( 'Error! The membership level ID ('.$mem_level.') you specified is incorrect. Please check this value again.');
28
  echo '</strong></p></div>';
29
  }
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>
views/admin_settings.php CHANGED
@@ -1,5 +1,5 @@
1
  <?php screen_icon( 'options-general' );?>
2
- <h1>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><?= 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>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">Generate a Registration Completion link</label></h3>
10
  <div class="inside">
11
 
12
- <p><strong>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
- 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> OR </strong>
21
- <br /><input type="radio" checked="checked" value="all" name="swpm_link_for" /> For All Pending Registrations
22
  </tr>
23
  <tr>
24
- <td>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>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="Submit" /></td>
35
  </tr>
36
  </table>
37
  </form>
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>
views/edit.php CHANGED
@@ -1,61 +1,61 @@
1
  <form id="swpm-editprofile-form" name="swpm-editprofile-form" method="post" action="">
2
- <table>
3
- <tr>
4
- <td><label for="user_name">User Name</label></td>
5
- <td><?= $user_name?></td>
6
- </tr>
7
- <tr>
8
- <td><label for="email">Email</label></td>
9
- <td><?= $email;?></td>
10
- </tr>
11
- <tr>
12
- <td><label for="password">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">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">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">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">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">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">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">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">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">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">Membership Level</label></td>
53
- <td>
54
- <?= $membership_level_alias;?>
55
- </td>
56
- </tr>
57
- </table>
58
- <p align="center"><input type="submit" value="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"><?= 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>
views/forgot_password.php CHANGED
@@ -1,16 +1,16 @@
1
  <div class="swpm-password-reset-widget-form">
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">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="Reset Password"/>
13
- </td>
14
  </tr>
15
  </table>
16
  </form>
1
  <div class="swpm-password-reset-widget-form">
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>
16
  </form>
views/loggedin.php CHANGED
@@ -1,17 +1,21 @@
1
  <table>
2
  <tr>
3
- <td>Logged in as</td>
4
- <td><b><?php echo $auth->userData->user_name;?><b></td>
5
  </tr>
6
  <tr>
7
- <td>Account Status</td>
8
- <td><b><?php echo ucfirst($auth->userData->account_state);?></b></td>
9
  </tr>
10
  <tr>
11
- <td>Membership</td>
12
- <td><b><?php echo $auth->userData->permitted->get('alias');?></b></td>
13
  </tr>
14
  <tr>
15
- <td colspan="2"><a href="?swpm-logout=true">Logout</a></td>
 
 
 
 
16
  </tr>
17
  </table>
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>
views/login.php CHANGED
@@ -1,34 +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">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">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'"> Remember Me</td>
18
  </tr>
19
  <tr>
20
  <td colspan="2">
21
- <input type="submit" name="swpm-login" value="Login"/>
22
- </td>
23
  </tr>
24
- <tr>
25
- <td colspan="2">
26
- <a id="forgot_pass" href="<?php echo $password_reset_url;?>">Forgot Password?</a>
27
  </td>
28
  </tr>
29
- <tr>
30
- <td colspan="2"><a id="register" class="register_link" href="<?php echo $join_url; ?>">Join Us</a></td>
31
- </tr>
32
  <tr>
33
  <td colspan="2"><span> <?php echo $auth->get_message();?> </span></td>
34
  </tr>
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>
views/login_widget_logged.php CHANGED
@@ -1,15 +1,18 @@
1
 
2
  <ul class="xoxo">
3
- <li id="text-1" class="widget widget_text"><h3 class="widgettitle">Logged in as</h3>
4
- <div class="textwidget"><b><?php echo $auth->userData->user_name;?><b></div>
5
  </li>
6
- <li id="text-2" class="widget widget_text"><h3 class="widgettitle">Account Status</h3>
7
- <div class="textwidget"><b><?php echo ucfirst($auth->userData->account_state);?></b></div>
8
  </li>
9
- <li id="text-2" class="widget widget_text"><h3 class="widgettitle">Membership</h3>
10
- <div class="textwidget"><b><?php echo $auth->userData->permitted->get('alias');?></b></div>
 
 
 
11
  </li>
12
  <li id="text-2" class="widget widget_text">
13
- <a href="?swpm-logout=true">Logout</a>
14
  </li>
15
  </ul>
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>