WP Security Audit Log - Version 4.3.4

Version Description

(2022-01-05) =

Release notes: WP Activity Log 4.3.4: paving the way for 4.4

New features * See a user's activity log with one-click from the WordPress users page. * Added "Custom User Field" as criterion in the notifications trigger builder.

Improvements * User's role is reported in the list of logged in users. * Added PHP Opcache flush during plugin upgrade (needed for updating to 4.4). * Made more JS strings in the plugin translatable. * Added the URL metadata in the CSV activity log reports.

Bug fixes * In some code the premium plugin trial was 7 days - changed to 14 days. * Fixed: cannot set up a third party service integration on WordPress earlier than 5.6. * Fixed some typos in some of the events' text.

Refer to the complete plugin changelog for more detailed information about what was new, improved and fixed in previous versions of the WP Activity Log plugin.

Download this release

Release Info

Developer WPWhiteSecurity
Plugin Icon 128x128 WP Security Audit Log
Version 4.3.4
Comparing to
See all releases

Code changes from version 4.3.3.1 to 4.3.4

classes/Adapters/MySQL/OccurrenceAdapter.php CHANGED
@@ -144,9 +144,9 @@ class WSAL_Adapters_MySQL_Occurrence extends WSAL_Adapters_MySQL_ActiveRecord im
144
  * @return WSAL_Models_Meta The meta item, be sure to checked if it was loaded successfully.
145
  */
146
  public function GetNamedMeta( $occurence, $name ) {
147
- $meta = new WSAL_Adapters_MySQL_Meta( $this->connection );
148
- $this->_meta = $meta->Load( 'occurrence_id = %d AND name = %s', array( $occurence->id, $name ) );
149
- return $this->_meta;
150
  }
151
 
152
  /**
144
  * @return WSAL_Models_Meta The meta item, be sure to checked if it was loaded successfully.
145
  */
146
  public function GetNamedMeta( $occurence, $name ) {
147
+ $meta = new WSAL_Adapters_MySQL_Meta( $this->connection );
148
+
149
+ return $meta->LoadByNameAndOccurrenceId( $name, $occurence->id );
150
  }
151
 
152
  /**
classes/AlertFormatter.php CHANGED
@@ -94,7 +94,7 @@ final class WSAL_AlertFormatter {
94
 
95
  case '%PostUrlIfPlublished%' === $expression:
96
  $post_id = null;
97
- if ( $occurrence_id === 0 && is_array( $metadata ) && array_key_exists( 'PostID', $metadata ) ) {
98
  $post_id = $metadata['PostID'];
99
  } else {
100
  $post_id = $this->get_occurrence_meta_item( $occurrence_id, 'PostID' );
94
 
95
  case '%PostUrlIfPlublished%' === $expression:
96
  $post_id = null;
97
+ if ( is_array( $metadata ) && array_key_exists( 'PostID', $metadata ) ) {
98
  $post_id = $metadata['PostID'];
99
  } else {
100
  $post_id = $this->get_occurrence_meta_item( $occurrence_id, 'PostID' );
classes/AuditLogGridView.php CHANGED
@@ -422,14 +422,7 @@ class WSAL_AuditLogGridView extends WP_List_Table {
422
  $uhtml = '<a class="tooltip" data-tooltip="' . esc_attr( $tooltip ) . '" data-user="' . $user->user_login . '" href="' . $user_edit_link . '" target="_blank">' . esc_html( $display_name ) . '</a>';
423
 
424
 
425
- $roles = $item->GetUserRoles( $this->item_meta[ $item->getId() ] );
426
- if ( is_array( $roles ) && count( $roles ) ) {
427
- $roles = esc_html( ucwords( implode( ', ', $roles ) ) );
428
- } elseif ( is_string( $roles ) && '' != $roles ) {
429
- $roles = esc_html( ucwords( str_replace( array( '"', '[', ']' ), ' ', $roles ) ) );
430
- } else {
431
- $roles = '<i>' . __( 'Unknown', 'wp-security-audit-log' ) . '</i>';
432
- }
433
  } elseif ( 'Plugin' == $username ) {
434
  $uhtml = '<i>' . __( 'Plugin', 'wp-security-audit-log' ) . '</i>';
435
  $roles = '';
@@ -459,7 +452,7 @@ class WSAL_AuditLogGridView extends WP_List_Table {
459
 
460
 
461
 
462
- $scip = $item->GetSourceIP( $this->item_meta[ $item->getId() ] );
463
  if ( is_string( $scip ) ) {
464
  $scip = str_replace( array( '"', '[', ']' ), '', $scip );
465
  }
422
  $uhtml = '<a class="tooltip" data-tooltip="' . esc_attr( $tooltip ) . '" data-user="' . $user->user_login . '" href="' . $user_edit_link . '" target="_blank">' . esc_html( $display_name ) . '</a>';
423
 
424
 
425
+ $roles = WSAL_Utilities_UsersUtils::get_roles_label( $item->GetUserRoles() );
 
 
 
 
 
 
 
426
  } elseif ( 'Plugin' == $username ) {
427
  $uhtml = '<i>' . __( 'Plugin', 'wp-security-audit-log' ) . '</i>';
428
  $roles = '';
452
 
453
 
454
 
455
+ $scip = $item->GetSourceIP();
456
  if ( is_string( $scip ) ) {
457
  $scip = str_replace( array( '"', '[', ']' ), '', $scip );
458
  }
classes/AuditLogListView.php CHANGED
@@ -431,14 +431,7 @@ class WSAL_AuditLogListView extends WP_List_Table {
431
  $uhtml = '<a class="tooltip" data-tooltip="' . esc_attr( $tooltip ) . '" data-user="' . $user->user_login . '" href="' . $user_edit_link . '" target="_blank">' . esc_html( $display_name ) . '</a>';
432
 
433
 
434
- $roles = $item->GetUserRoles( $this->item_meta[ $item->getId() ] );
435
- if ( is_array( $roles ) && count( $roles ) ) {
436
- $roles = esc_html( ucwords( implode( ', ', $roles ) ) );
437
- } elseif ( is_string( $roles ) && '' != $roles ) {
438
- $roles = esc_html( ucwords( str_replace( array( '"', '[', ']' ), ' ', $roles ) ) );
439
- } else {
440
- $roles = '<i>' . __( 'Unknown', 'wp-security-audit-log' ) . '</i>';
441
- }
442
  } elseif ( 'Plugin' == $username ) {
443
  $uhtml = '<i>' . __( 'Plugin', 'wp-security-audit-log' ) . '</i>';
444
  } elseif ( 'Plugins' == $username ) {
@@ -462,7 +455,7 @@ class WSAL_AuditLogListView extends WP_List_Table {
462
  */
463
  return apply_filters( 'wsal_auditlog_row_user_data', $row_user_data, $this->current_alert_id );
464
  case 'scip':
465
- $scip = $item->GetSourceIP( $this->item_meta[ $item->getId() ] );
466
  if ( is_string( $scip ) ) {
467
  $scip = str_replace( array( '"', '[', ']' ), '', $scip );
468
  }
431
  $uhtml = '<a class="tooltip" data-tooltip="' . esc_attr( $tooltip ) . '" data-user="' . $user->user_login . '" href="' . $user_edit_link . '" target="_blank">' . esc_html( $display_name ) . '</a>';
432
 
433
 
434
+ $roles = WSAL_Utilities_UsersUtils::get_roles_label( $item->GetUserRoles() );
 
 
 
 
 
 
 
435
  } elseif ( 'Plugin' == $username ) {
436
  $uhtml = '<i>' . __( 'Plugin', 'wp-security-audit-log' ) . '</i>';
437
  } elseif ( 'Plugins' == $username ) {
455
  */
456
  return apply_filters( 'wsal_auditlog_row_user_data', $row_user_data, $this->current_alert_id );
457
  case 'scip':
458
+ $scip = $item->GetSourceIP();
459
  if ( is_string( $scip ) ) {
460
  $scip = str_replace( array( '"', '[', ']' ), '', $scip );
461
  }
classes/Utilities/OpCacheUtils.php ADDED
@@ -0,0 +1,109 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Utility class for opcache clearing.
4
+ *
5
+ * @package wsal
6
+ * @subpacage utilities
7
+ * @since 4.3.4
8
+ */
9
+
10
+ // Exit if accessed directly.
11
+ if ( ! defined( 'ABSPATH' ) ) {
12
+ exit;
13
+ }
14
+
15
+ /**
16
+ * Utility class for opcache clearing.
17
+ *
18
+ * @package wsal
19
+ * @subpacage utilities
20
+ * @since 4.3.4
21
+ */
22
+ class WSAL_Utilities_OpCacheUtils {
23
+
24
+ /**
25
+ * Clears PHP code caches before a plugin installation or update. This is to avoid various plugin files to be out of
26
+ * sync.
27
+ *
28
+ * @param bool|WP_Error $response Response.
29
+ * @param array $hook_extra Extra arguments passed to hooked filters.
30
+ *
31
+ * @since 4.3.4
32
+ */
33
+ public static function clear_caches( $response, array $hook_extra ) {
34
+ if ( ( array_key_exists( 'type', $hook_extra ) && 'plugin' === $hook_extra['type'] )
35
+ || array_key_exists( 'plugin', $hook_extra ) ) {
36
+ if ( self::is_iis() ) {
37
+ self::clear_iis_wincache();
38
+ } else {
39
+ return self::clear_php_opcache();
40
+ }
41
+ }
42
+
43
+ return $response;
44
+ }
45
+
46
+ /**
47
+ * Checks if the web server is running IIS software.
48
+ *
49
+ * @return bool
50
+ */
51
+ public static function is_iis() {
52
+ $software = strtolower( $_SERVER["SERVER_SOFTWARE"] );
53
+ if ( false !== strpos( $software, "microsoft-iis" ) ) {
54
+ return true;
55
+ } else {
56
+ return false;
57
+ }
58
+ }
59
+
60
+ /**
61
+ * Clears the IIS cache.
62
+ *
63
+ * @return bool|void
64
+ */
65
+ public static function clear_iis_wincache() {
66
+ if ( ! function_exists( 'wincache_ucache_get' ) ) {
67
+ return;
68
+ }
69
+ if ( ! wincache_ucache_clear() ) {
70
+ return false;
71
+ } else {
72
+ return true;
73
+ }
74
+ }
75
+
76
+ /**
77
+ * Clears the PHP opcache.
78
+ *
79
+ * @return bool|void
80
+ */
81
+ public static function clear_php_opcache() {
82
+ if ( ! extension_loaded( 'Zend OPcache' ) ) {
83
+ return;
84
+ }
85
+ $opcache_status = opcache_get_status();
86
+ if ( false === $opcache_status["opcache_enabled"] ) {
87
+ // extension loaded but OPcache not enabled
88
+ return;
89
+ }
90
+ if ( ! opcache_reset() ) {
91
+ return false;
92
+ } else {
93
+ /**
94
+ * opcache_reset() is performed, now try to clear the
95
+ * file cache.
96
+ * Please note: http://stackoverflow.com/a/23587079/1297898
97
+ * "Opcache does not evict invalid items from memory - they
98
+ * stay there until the pool is full at which point the
99
+ * memory is completely cleared"
100
+ */
101
+ foreach ( $opcache_status['scripts'] as $key => $data ) {
102
+ $dirs[ dirname( $key ) ][ basename( $key ) ] = $data;
103
+ opcache_invalidate( $data['full_path'], true );
104
+ }
105
+
106
+ return true;
107
+ }
108
+ }
109
+ }
classes/Utilities/UserUtils.php CHANGED
@@ -13,6 +13,8 @@ if ( ! defined( 'ABSPATH' ) ) {
13
  */
14
  class WSAL_Utilities_UsersUtils {
15
 
 
 
16
  /**
17
  * Local static cache for the value of setting determining the prefered user data to display as label.
18
  *
@@ -78,7 +80,7 @@ class WSAL_Utilities_UsersUtils {
78
  *
79
  * @return string HTML representing a tooltip with user's details.
80
  *
81
- * @since latest.
82
  */
83
  public static function get_tooltip_user_content( $user ) {
84
 
@@ -94,4 +96,57 @@ class WSAL_Utilities_UsersUtils {
94
 
95
  return $tooltip;
96
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
97
  }
13
  */
14
  class WSAL_Utilities_UsersUtils {
15
 
16
+ private static $cached_users = array();
17
+
18
  /**
19
  * Local static cache for the value of setting determining the prefered user data to display as label.
20
  *
80
  *
81
  * @return string HTML representing a tooltip with user's details.
82
  *
83
+ * @since 4.3.4.
84
  */
85
  public static function get_tooltip_user_content( $user ) {
86
 
96
 
97
  return $tooltip;
98
  }
99
+
100
+ /**
101
+ * Retrieves user ID using either the username of user ID.
102
+ *
103
+ * @param int|string $user_login
104
+ *
105
+ * @return int|null
106
+ */
107
+ public static function swap_login_for_id( $user_login ) {
108
+
109
+ if ( isset( self::$cached_users[ $user_login ] ) ) {
110
+ return self::$cached_users[ $user_login ];
111
+ }
112
+
113
+ global $wpdb;
114
+ $user_id = $wpdb->get_var(
115
+ $wpdb->prepare(
116
+ "SELECT ID FROM $wpdb->users WHERE user_login = %s OR ID = %d;",
117
+ $user_login,
118
+ $user_login
119
+ )
120
+ );
121
+
122
+ if ( false === $user_id || 0 === strlen( $user_id ) ) {
123
+ return null;
124
+
125
+ }
126
+
127
+ self::$cached_users[ $user_login ] = intval( $user_id );
128
+
129
+ return self::$cached_users[ $user_login ];
130
+ }
131
+
132
+ /**
133
+ * Populates the label showing user roles in audit log, sessions list, etc.
134
+ *
135
+ * @param string|string[] $roles User roles.
136
+ *
137
+ * @return string
138
+ * @since 4.3.4
139
+ */
140
+ public static function get_roles_label( $roles ) {
141
+ if ( is_array( $roles ) && count( $roles ) ) {
142
+ return esc_html( ucwords( implode( ', ', $roles ) ) );
143
+ }
144
+
145
+ if ( is_string( $roles ) && '' != $roles ) {
146
+ return esc_html( ucwords( str_replace( array( '"', '[', ']' ), ' ', $roles ) ) );
147
+ }
148
+
149
+ return '<i>' . esc_html__( 'Unknown', 'wp-security-audit-log' ) . '</i>';
150
+
151
+ }
152
  }
classes/Views/AuditLog.php CHANGED
@@ -95,8 +95,8 @@ class WSAL_Views_AuditLog extends WSAL_AbstractView {
95
  // Set adverts array.
96
  $this->adverts = array(
97
  0 => array(
98
- 'head' => __( 'Get instantly alerted of critical changes via SMS & email, search the activity log, generate user reports, see who is logged in and more!', 'wp-security-audit-log' ),
99
- 'desc' => __( 'Upgrade to premium to unlock these powerful activity log features & more!', 'wp-security-audit-log' ),
100
  ),
101
  1 => array(
102
  'head' => __( 'Instant SMS & email alerts, search & filters, reports, users sessions management and much more!', 'wp-security-audit-log' ),
@@ -126,18 +126,28 @@ class WSAL_Views_AuditLog extends WSAL_AbstractView {
126
 
127
  // Check if any of the extensions is activated.
128
  if (
129
- ! class_exists( 'WSAL_NP_Plugin' )
130
- && ! class_exists( 'WSAL_Ext_Plugin' )
131
- && ! class_exists( 'WSAL_Rep_Plugin' )
132
- && ! class_exists( 'WSAL_SearchExtension' )
133
- && ! class_exists( 'WSAL_UserSessions_Plugin' )
134
- && 'anonymous' !== $this->_plugin->GetGlobalSetting( 'freemius_state', 'anonymous' ) // Anonymous mode option.
135
  ) {
136
  $get_transient_fn = $this->_plugin->IsMultisite() ? 'get_site_transient' : 'get_transient'; // Check for multisite.
137
  $wsal_is_advert_dismissed = $get_transient_fn( 'wsal-is-advert-dismissed' ); // Check if advert has been dismissed.
138
  $wsal_premium_advert = $this->_plugin->GetGlobalSetting( 'premium-advert', false ); // Get the advert to display.
139
  $wsal_premium_advert = false !== $wsal_premium_advert ? (int) $wsal_premium_advert : 0; // Set the default.
140
 
 
 
 
 
 
 
 
 
 
 
141
  if ( current_user_can( 'manage_options' ) && $is_current_view && ! $wsal_is_advert_dismissed ) : ?>
142
  <div class="updated wsal_notice">
143
  <div class="wsal_notice__wrapper">
@@ -145,47 +155,38 @@ class WSAL_Views_AuditLog extends WSAL_AbstractView {
145
  <img src="<?php echo esc_url( WSAL_BASE_URL ); ?>img/wsal-logo@2x.png">
146
  <p>
147
  <strong><?php echo isset( $this->adverts[ $wsal_premium_advert ]['head'] ) ? esc_html( $this->adverts[ $wsal_premium_advert ]['head'] ) : false; ?></strong><br>
148
- <?php echo isset( $this->adverts[ $wsal_premium_advert ]['desc'] ) ? esc_html( $this->adverts[ $wsal_premium_advert ]['desc'] ) : false; ?>
149
  </p>
150
  </div>
151
  <!-- /.wsal_notice__content -->
152
  <div class="wsal_notice__btns">
153
  <?php
154
  // Trial link arguments.
155
- $trial_args = array(
156
- 'page' => 'wsal-auditlog-pricing',
157
- 'billing_cycle' => 'annual',
158
- 'trial' => 'true',
 
 
 
 
159
  );
160
 
161
  // Buy Now button link.
162
- $buy_now = add_query_arg( 'page', 'wsal-auditlog-pricing', admin_url( 'admin.php' ) );
163
- $trial_link = add_query_arg( $trial_args, admin_url( 'admin.php' ) );
164
-
165
- // If user is not super admin and website is multisite then change the URL.
166
- if ( $this->_plugin->IsMultisite() && ! is_super_admin() ) {
167
- $buy_now = 'https://wpactivitylog.com/pricing/';
168
- $trial_link = 'https://wpactivitylog.com/pricing/';
169
- } elseif ( $this->_plugin->IsMultisite() && is_super_admin() ) {
170
- $buy_now = add_query_arg( 'page', 'wsal-auditlog-pricing', network_admin_url( 'admin.php' ) );
171
- $trial_link = add_query_arg( $trial_args, network_admin_url( 'admin.php' ) );
172
- }
173
-
174
- $more_info = add_query_arg(
175
  array(
176
  'utm_source' => 'plugin',
177
- 'utm_medium' => 'referral',
178
  'utm_campaign' => 'WSAL',
179
- 'utm_content' => 'tell+me+more',
180
  ),
181
- 'https://wpactivitylog.com/features/'
182
  );
183
  ?>
184
  <?php wp_nonce_field( 'wsal_dismiss_advert', 'wsal-dismiss-advert', false, true ); ?>
185
- <a href="<?php echo esc_url( $buy_now ); ?>" class="button button-primary wsal_notice__btn"><?php esc_html_e( 'UPGRADE NOW', 'wp-security-audit-log' ); ?></a>
186
- <a href="<?php echo esc_url( $trial_link ); ?>" class="button button-primary"><?php esc_html_e( 'Start Free Trial', 'wp-security-audit-log' ); ?></a>
187
- <a href="<?php echo esc_url( $more_info ); ?>" target="_blank"><?php esc_html_e( 'Tell me more', 'wp-security-audit-log' ); ?></a>
188
  <br>
 
189
  <a href="javascript:;" data-advert="<?php echo esc_attr( $wsal_premium_advert ); ?>" onclick="wsal_dismiss_advert(this)" class="wsal_notice__btn_dismiss" title="<?php esc_attr_e( 'Dismiss the banner', 'wp-security-audit-log' ); ?>"><?php esc_html_e( 'Close', 'wp-security-audit-log' ); ?></a>
190
  </div>
191
  <!-- /.wsal_notice__btns -->
@@ -200,11 +201,11 @@ class WSAL_Views_AuditLog extends WSAL_AbstractView {
200
  // Check anonymous mode.
201
  if ( 'anonymous' === $this->_plugin->GetGlobalSetting( 'freemius_state', 'anonymous' ) ) { // If user manually opt-out then don't show the notice.
202
  if (
203
- wsal_freemius()->is_anonymous() // Anonymous mode option.
204
- && wsal_freemius()->is_not_paying() // Not paying customer.
205
- && wsal_freemius()->has_api_connectivity() // Check API connectivity.
206
- && $is_current_view
207
- && $this->_plugin->settings()->CurrentUserCan( 'edit' ) // Have permission to edit plugin settings.
208
  ) {
209
  if ( ! is_multisite() || ( is_multisite() && is_network_admin() ) ) :
210
  ?>
95
  // Set adverts array.
96
  $this->adverts = array(
97
  0 => array(
98
+ 'head' => __( 'Get email notifications about website changes, view logged-in users, do granular log searches, create detailed reports, and more.', 'wp-security-audit-log' ),
99
+ 'desc' => __( 'Upgrade to premium today and get more out of your activity logs!', 'wp-security-audit-log' ),
100
  ),
101
  1 => array(
102
  'head' => __( 'Instant SMS & email alerts, search & filters, reports, users sessions management and much more!', 'wp-security-audit-log' ),
126
 
127
  // Check if any of the extensions is activated.
128
  if (
129
+ ! class_exists( 'WSAL_NP_Plugin' )
130
+ && ! class_exists( 'WSAL_Ext_Plugin' )
131
+ && ! class_exists( 'WSAL_Rep_Plugin' )
132
+ && ! class_exists( 'WSAL_SearchExtension' )
133
+ && ! class_exists( 'WSAL_UserSessions_Plugin' )
134
+ && 'anonymous' !== $this->_plugin->GetGlobalSetting( 'freemius_state', 'anonymous' ) // Anonymous mode option.
135
  ) {
136
  $get_transient_fn = $this->_plugin->IsMultisite() ? 'get_site_transient' : 'get_transient'; // Check for multisite.
137
  $wsal_is_advert_dismissed = $get_transient_fn( 'wsal-is-advert-dismissed' ); // Check if advert has been dismissed.
138
  $wsal_premium_advert = $this->_plugin->GetGlobalSetting( 'premium-advert', false ); // Get the advert to display.
139
  $wsal_premium_advert = false !== $wsal_premium_advert ? (int) $wsal_premium_advert : 0; // Set the default.
140
 
141
+ $more_info = add_query_arg(
142
+ array(
143
+ 'utm_source' => 'plugin',
144
+ 'utm_medium' => 'banner',
145
+ 'utm_campaign' => 'WSAL',
146
+ 'utm_content' => 'tell+me+more',
147
+ ),
148
+ 'https://wpactivitylog.com/features/'
149
+ );
150
+
151
  if ( current_user_can( 'manage_options' ) && $is_current_view && ! $wsal_is_advert_dismissed ) : ?>
152
  <div class="updated wsal_notice">
153
  <div class="wsal_notice__wrapper">
155
  <img src="<?php echo esc_url( WSAL_BASE_URL ); ?>img/wsal-logo@2x.png">
156
  <p>
157
  <strong><?php echo isset( $this->adverts[ $wsal_premium_advert ]['head'] ) ? esc_html( $this->adverts[ $wsal_premium_advert ]['head'] ) : false; ?></strong><br>
158
+ <?php echo isset( $this->adverts[ $wsal_premium_advert ]['desc'] ) ? esc_html( $this->adverts[ $wsal_premium_advert ]['desc'] ) : false; ?> - <a href="<?php echo esc_url( $more_info ); ?>" target="_blank"><?php esc_html_e( 'Learn more', 'wp-security-audit-log' ); ?></a>
159
  </p>
160
  </div>
161
  <!-- /.wsal_notice__content -->
162
  <div class="wsal_notice__btns">
163
  <?php
164
  // Trial link arguments.
165
+ $trial_link = add_query_arg(
166
+ array(
167
+ 'utm_source' => 'plugin',
168
+ 'utm_medium' => 'banner',
169
+ 'utm_campaign' => 'WSAL',
170
+ 'utm_content' => 'get+trial',
171
+ ),
172
+ 'https://wpactivitylog.com/trial-premium-edition-plugin/'
173
  );
174
 
175
  // Buy Now button link.
176
+ $buy_now = add_query_arg(
 
 
 
 
 
 
 
 
 
 
 
 
177
  array(
178
  'utm_source' => 'plugin',
179
+ 'utm_medium' => 'banner',
180
  'utm_campaign' => 'WSAL',
181
+ 'utm_content' => 'upgrade+now',
182
  ),
183
+ 'https://wpactivitylog.com/pricing/'
184
  );
185
  ?>
186
  <?php wp_nonce_field( 'wsal_dismiss_advert', 'wsal-dismiss-advert', false, true ); ?>
187
+ <a href="<?php echo esc_url( $buy_now ); ?>" class="button button-primary wsal_notice__btn notice-cta" target="_blank"><?php esc_html_e( 'UPGRADE NOW', 'wp-security-audit-log' ); ?></a>
 
 
188
  <br>
189
+ <a href="<?php echo esc_url( $trial_link ); ?>" class="start-trial-link" target="_blank"><?php esc_html_e( 'Start Free Trial', 'wp-security-audit-log' ); ?></a>
190
  <a href="javascript:;" data-advert="<?php echo esc_attr( $wsal_premium_advert ); ?>" onclick="wsal_dismiss_advert(this)" class="wsal_notice__btn_dismiss" title="<?php esc_attr_e( 'Dismiss the banner', 'wp-security-audit-log' ); ?>"><?php esc_html_e( 'Close', 'wp-security-audit-log' ); ?></a>
191
  </div>
192
  <!-- /.wsal_notice__btns -->
201
  // Check anonymous mode.
202
  if ( 'anonymous' === $this->_plugin->GetGlobalSetting( 'freemius_state', 'anonymous' ) ) { // If user manually opt-out then don't show the notice.
203
  if (
204
+ wsal_freemius()->is_anonymous() // Anonymous mode option.
205
+ && wsal_freemius()->is_not_paying() // Not paying customer.
206
+ && wsal_freemius()->has_api_connectivity() // Check API connectivity.
207
+ && $is_current_view
208
+ && $this->_plugin->settings()->CurrentUserCan( 'edit' ) // Have permission to edit plugin settings.
209
  ) {
210
  if ( ! is_multisite() || ( is_multisite() && is_network_admin() ) ) :
211
  ?>
classes/Views/EmailNotifications.php CHANGED
@@ -46,11 +46,12 @@ class WSAL_Views_EmailNotifications extends WSAL_ExtensionPlaceholderView {
46
  * Page View.
47
  */
48
  public function Render() {
49
- $title = __( 'SMS & Email Notifications', 'wp-security-audit-log' );
50
- $description = __( 'Get instantly alerted of important changes on your site via SMS and email notifications. Upgrade to premium and:', 'wp-security-audit-log' );
51
  $addon_img = trailingslashit( WSAL_BASE_URL ) . 'img/' . $this->GetSafeViewName() . '.jpg';
52
  $premium_list = array(
53
- __( 'Configure any type of SMS & email notifications', 'wp-security-audit-log' ),
 
54
  __( 'Receive notifications for when users login, change their password or change content', 'wp-security-audit-log' ),
55
  __( 'Get alerted of site changes like plugin installs, theme changes etc', 'wp-security-audit-log' ),
56
  __( 'Enable built-in security email notifications of suspicious user activity', 'wp-security-audit-log' ),
46
  * Page View.
47
  */
48
  public function Render() {
49
+ $title = __( 'Email & SMS Notifications', 'wp-security-audit-log' );
50
+ $description = __( 'Get instantly alerted of important changes on your site via email notifications & SMS messages. Upgrade to premium and:', 'wp-security-audit-log' );
51
  $addon_img = trailingslashit( WSAL_BASE_URL ) . 'img/' . $this->GetSafeViewName() . '.jpg';
52
  $premium_list = array(
53
+ __( 'Configure any type of email notification', 'wp-security-audit-log' ),
54
+ __( 'Configure SMS messages for instant critical alerts', 'wp-security-audit-log' ),
55
  __( 'Receive notifications for when users login, change their password or change content', 'wp-security-audit-log' ),
56
  __( 'Get alerted of site changes like plugin installs, theme changes etc', 'wp-security-audit-log' ),
57
  __( 'Enable built-in security email notifications of suspicious user activity', 'wp-security-audit-log' ),
classes/Views/addons/html-view.php CHANGED
@@ -15,19 +15,19 @@ $utm_params = array(
15
  'utm_campaign' => 'WSAL',
16
  );
17
  switch ( $this->hook_suffix ) {
18
- case 'audit-log_page_wsal-loginusers':
19
- $utm_params['utm_content'] = 'users+sessions';
20
  break;
21
- case 'audit-log_page_wsal-reports':
22
  $utm_params['utm_content'] = 'reports';
23
  break;
24
- case 'audit-log_page_wsal-emailnotifications':
25
  $utm_params['utm_content'] = 'notifications';
26
  break;
27
- case 'audit-log_page_wsal-externaldb':
28
- $utm_params['utm_content'] = 'db+integrations';
29
  break;
30
- case 'audit-log_page_wsal-search':
31
  $utm_params['utm_content'] = 'search';
32
  break;
33
  default:
@@ -37,14 +37,14 @@ switch ( $this->hook_suffix ) {
37
  // Links.
38
  $more_info = add_query_arg(
39
  $utm_params,
40
- 'https://wpactivitylog.com/premium-features/'
41
  );
42
 
43
  // Trial link arguments.
44
  $trial_args = array(
45
  'page' => 'wsal-auditlog-pricing',
46
  'billing_cycle' => 'annual',
47
- 'trial' => 'true',
48
  );
49
 
50
  // Buy Now button link.
15
  'utm_campaign' => 'WSAL',
16
  );
17
  switch ( $this->hook_suffix ) {
18
+ case 'wp-activity-log_page_wsal-loginusers':
19
+ $utm_params['utm_content'] = 'sessions';
20
  break;
21
+ case 'wp-activity-log_page_wsal-reports':
22
  $utm_params['utm_content'] = 'reports';
23
  break;
24
+ case 'wp-activity-log_page_wsal-emailnotifications':
25
  $utm_params['utm_content'] = 'notifications';
26
  break;
27
+ case 'wp-activity-log_page_wsal-externaldb':
28
+ $utm_params['utm_content'] = 'integrations';
29
  break;
30
+ case 'wp-activity-log_page_wsal-search':
31
  $utm_params['utm_content'] = 'search';
32
  break;
33
  default:
37
  // Links.
38
  $more_info = add_query_arg(
39
  $utm_params,
40
+ 'https://wpactivitylog.com/features/'
41
  );
42
 
43
  // Trial link arguments.
44
  $trial_args = array(
45
  'page' => 'wsal-auditlog-pricing',
46
  'billing_cycle' => 'annual',
47
+ 'trial' => 'true'
48
  );
49
 
50
  // Buy Now button link.
css/admin-notices.css CHANGED
@@ -36,15 +36,15 @@ div.wsal_notice__wrapper p {
36
  }
37
 
38
  .wsal_notice__btns a.wsal_notice__btn {
39
- background: #00ad50;
40
- border-color: #00ad50 #009344 #009344 #009344;
41
- box-shadow: 0 1px 0 #00ad50;
42
  text-shadow: none;
43
  }
44
 
45
  .wsal_notice__btns a.wsal_notice__btn:hover {
46
- background: #00b353;
47
- border-color: #00ad50 #009344 #009344 #009344;
48
  }
49
 
50
  .wsal_notice__btns a.button-primary {
@@ -89,3 +89,8 @@ div.wsal_notice__wrapper p {
89
  .notice-addon-available .notice-dismiss {
90
  margin-top: 5px;
91
  }
 
 
 
 
 
36
  }
37
 
38
  .wsal_notice__btns a.wsal_notice__btn {
39
+ background: #049443;
40
+ border-color: #049443;
41
+ box-shadow: 0 1px 0 #049443;
42
  text-shadow: none;
43
  }
44
 
45
  .wsal_notice__btns a.wsal_notice__btn:hover {
46
+ background: #035c2a;
47
+ border-color: #035c2a;
48
  }
49
 
50
  .wsal_notice__btns a.button-primary {
89
  .notice-addon-available .notice-dismiss {
90
  margin-top: 5px;
91
  }
92
+
93
+ .updated.wsal_notice {
94
+ border: 3px solid #049443;
95
+ overflow: hidden;
96
+ }
defaults.php CHANGED
@@ -2163,7 +2163,7 @@ function wsaldefaults_wsal_init() {
2163
  __( 'Changed the Automatic updates setting for a plugin.', 'wp-security-audit-log' ),
2164
  __( 'Changed the Automatic updates setting for the plugin %name%.', 'wp-security-audit-log' ),
2165
  [
2166
- __( 'Install location:', 'wp-security-audit-log' ) => '%install_directory%',
2167
  ],
2168
  [],
2169
  'wp-activity-log',
@@ -2176,7 +2176,7 @@ function wsaldefaults_wsal_init() {
2176
  __( 'Changed the Automatic updates setting for a theme.', 'wp-security-audit-log' ),
2177
  __( 'Changed the Automatic updates setting for the theme %name%.', 'wp-security-audit-log' ),
2178
  [
2179
- __( 'Install location:', 'wp-security-audit-log' ) => '%install_directory%',
2180
  ],
2181
  [],
2182
  'wp-activity-log',
2163
  __( 'Changed the Automatic updates setting for a plugin.', 'wp-security-audit-log' ),
2164
  __( 'Changed the Automatic updates setting for the plugin %name%.', 'wp-security-audit-log' ),
2165
  [
2166
+ __( 'Install location', 'wp-security-audit-log' ) => '%install_directory%',
2167
  ],
2168
  [],
2169
  'wp-activity-log',
2176
  __( 'Changed the Automatic updates setting for a theme.', 'wp-security-audit-log' ),
2177
  __( 'Changed the Automatic updates setting for the theme %name%.', 'wp-security-audit-log' ),
2178
  [
2179
+ __( 'Install location', 'wp-security-audit-log' ) => '%install_directory%',
2180
  ],
2181
  [],
2182
  'wp-activity-log',
languages/wp-security-audit-log.pot CHANGED
@@ -1,4 +1,4 @@
1
- # Copyright (C) 2021 wp-security-audit-log
2
  # This file is distributed under the same license as the wp-security-audit-log package.
3
  msgid ""
4
  msgstr ""
@@ -80,7 +80,7 @@ msgstr ""
80
  msgid "Login blocked because other session(s) already exist for this user."
81
  msgstr ""
82
 
83
- #: defaults.php:238, extensions/email-notifications/classes/Common.php:1110
84
  msgid "IP address"
85
  msgstr ""
86
 
@@ -1640,7 +1640,7 @@ msgstr ""
1640
  msgid "Plugins & Themes"
1641
  msgstr ""
1642
 
1643
- #: defaults.php:2063, classes/AuditLogGridView.php:437, classes/AuditLogListView.php:445
1644
  msgid "Plugins"
1645
  msgstr ""
1646
 
@@ -1656,7 +1656,7 @@ msgstr ""
1656
  msgid "Version"
1657
  msgstr ""
1658
 
1659
- #: defaults.php:2071, defaults.php:2084, defaults.php:2097, defaults.php:2110, defaults.php:2123, defaults.php:2206, defaults.php:2219, defaults.php:2232, defaults.php:2245, defaults.php:2271, defaults.php:2284
1660
  msgid "Install location"
1661
  msgstr ""
1662
 
@@ -1704,7 +1704,7 @@ msgstr ""
1704
  msgid "The plugin created the post %PostTitle%."
1705
  msgstr ""
1706
 
1707
- #: defaults.php:2138, defaults.php:2153, classes/AlertManager.php:1071, classes/AuditLogGridView.php:434, classes/AuditLogListView.php:443
1708
  msgid "Plugin"
1709
  msgstr ""
1710
 
@@ -1724,10 +1724,6 @@ msgstr ""
1724
  msgid "Changed the Automatic updates setting for the plugin %name%."
1725
  msgstr ""
1726
 
1727
- #: defaults.php:2166, defaults.php:2179
1728
- msgid "Install location:"
1729
- msgstr ""
1730
-
1731
  #: defaults.php:2176
1732
  msgid "Changed the Automatic updates setting for a theme."
1733
  msgstr ""
@@ -1816,7 +1812,7 @@ msgstr ""
1816
  msgid "WordPress & System"
1817
  msgstr ""
1818
 
1819
- #: defaults.php:2294, classes/AlertManager.php:1070, classes/AlertManager.php:1760, classes/AuditLogGridView.php:443, classes/AuditLogListView.php:449, extensions/email-notifications/classes/DailyNotification.php:243, extensions/email-notifications/classes/Notifier.php:647, extensions/reports/classes/Common.php:1178
1820
  msgid "System"
1821
  msgstr ""
1822
 
@@ -2702,151 +2698,151 @@ msgstr ""
2702
 
2703
  #. translators: User's first name
2704
  #. translators: User's first name
2705
- #: wp-security-audit-log.php:938, wp-security-audit-log.php:966
2706
  msgid "Hey %s"
2707
  msgstr ""
2708
 
2709
- #: wp-security-audit-log.php:942
2710
  msgid "Never miss an important update! Opt-in to our security and feature updates notifications, and non-sensitive diagnostic tracking with freemius.com."
2711
  msgstr ""
2712
 
2713
- #: wp-security-audit-log.php:943, wp-security-audit-log.php:978
2714
  msgid "Note: "
2715
  msgstr ""
2716
 
2717
- #: wp-security-audit-log.php:944, wp-security-audit-log.php:979
2718
  msgid "NO ACTIVITY LOG ACTIVITY & DATA IS SENT BACK TO OUR SERVERS."
2719
  msgstr ""
2720
 
2721
  #. translators: 1: Plugin name. 2: Plugin name. 2: Freemius link. 4: Plugin name.
2722
- #: wp-security-audit-log.php:972
2723
  msgid "Please help us improve %1$s! If you opt-in, some non-sensitive data about your usage of %2$s will be sent to %3$s, a diagnostic tracking service we use. If you skip this, that's okay! %2$s will still work just fine."
2724
  msgstr ""
2725
 
2726
- #: wp-security-audit-log.php:1024
2727
  msgid "You need to activate the licence key to use WP Activity Log Premium. %2$s"
2728
  msgstr ""
2729
 
2730
- #: wp-security-audit-log.php:1025
2731
  msgid "Activate the licence key now"
2732
  msgstr ""
2733
 
2734
  #. translators: Number of sites
2735
- #: wp-security-audit-log.php:1047
2736
  msgid "The license is limited to %s sub-sites. You need to upgrade your license to cover all the sub-sites on this network."
2737
  msgstr ""
2738
 
2739
- #: wp-security-audit-log.php:1043
2740
  msgid "%s You need to renew your license to continue using premium features."
2741
  msgstr ""
2742
 
2743
- #: wp-security-audit-log.php:1145
2744
  msgid "Error: You do not have sufficient permissions to disable this custom field."
2745
  msgstr ""
2746
 
2747
  #. translators: name of meta field (in bold)
2748
- #: wp-security-audit-log.php:1193
2749
  msgid "Custom field %s is no longer being monitored."
2750
  msgstr ""
2751
 
2752
  #. translators: setting tab name "Excluded Objects"
2753
- #: wp-security-audit-log.php:1198
2754
  msgid "Enable the monitoring of this custom field again from the %s tab in the plugin settings."
2755
  msgstr ""
2756
 
2757
- #: wp-security-audit-log.php:1199
2758
  msgid "Excluded Objects"
2759
  msgstr ""
2760
 
2761
- #: wp-security-audit-log.php:1212
2762
  msgid "Error: You do not have sufficient permissions to disable this alert."
2763
  msgstr ""
2764
 
2765
- #: wp-security-audit-log.php:1236
2766
  msgid "Alert %1$s is no longer being monitored.<br /> %2$s"
2767
  msgstr ""
2768
 
2769
- #: wp-security-audit-log.php:1236
2770
  msgid "You can enable this alert again from the Enable/Disable Alerts node in the plugin menu."
2771
  msgstr ""
2772
 
2773
- #: wp-security-audit-log.php:1261, classes/Views/SetupWizard.php:270
2774
  msgid "Installing, please wait"
2775
  msgstr ""
2776
 
2777
- #: wp-security-audit-log.php:1262, classes/Views/SetupWizard.php:271
2778
  msgid "Already installed"
2779
  msgstr ""
2780
 
2781
- #: wp-security-audit-log.php:1263, classes/Utilities/PluginInstallAndActivate.php:108, classes/Views/SetupWizard.php:272, classes/Views/SetupWizard.php:841
2782
  msgid "Extension installed"
2783
  msgstr ""
2784
 
2785
- #: wp-security-audit-log.php:1264, classes/Views/SetupWizard.php:273
2786
  msgid "Extension activated"
2787
  msgstr ""
2788
 
2789
- #: wp-security-audit-log.php:1265, classes/Views/SetupWizard.php:274
2790
  msgid "Install failed"
2791
  msgstr ""
2792
 
2793
  #. translators: %s: PHP Version
2794
- #: wp-security-audit-log.php:1317
2795
  msgid "You are using a version of PHP that is older than %s, which is no longer supported."
2796
  msgstr ""
2797
 
2798
- #: wp-security-audit-log.php:1319
2799
  msgid "Contact us on <a href=\"mailto:plugins@wpwhitesecurity.com\">plugins@wpwhitesecurity.com</a> to help you switch the version of PHP you are using."
2800
  msgstr ""
2801
 
2802
  #. translators: %s: Activity Log for MainWP plugin hyperlink
2803
- #: wp-security-audit-log.php:1324
2804
  msgid "Please install the %s plugin on the MainWP dashboard."
2805
  msgstr ""
2806
 
2807
- #: wp-security-audit-log.php:1324
2808
  msgid "Activity Log for MainWP"
2809
  msgstr ""
2810
 
2811
  #. translators: %s: Getting started guide hyperlink
2812
- #: wp-security-audit-log.php:1326
2813
  msgid "The WP Activity Log should be installed on the child sites only. Refer to the %s for more information."
2814
  msgstr ""
2815
 
2816
- #: wp-security-audit-log.php:1326
2817
  msgid "getting started guide"
2818
  msgstr ""
2819
 
2820
- #: wp-security-audit-log.php:1808
2821
  msgid "For security and auditing purposes, a record of all of your logged-in actions and changes within the WordPress dashboard will be recorded in an activity log with the <a href=\"https://wpactivitylog.com/\" target=\"_blank\">WP Activity Log plugin</a>. The audit log also includes the IP address where you accessed this site from."
2822
  msgstr ""
2823
 
2824
- #: wp-security-audit-log.php:1827
2825
  msgid "Every 6 hours"
2826
  msgstr ""
2827
 
2828
- #: wp-security-audit-log.php:1831
2829
  msgid "Every 45 minutes"
2830
  msgstr ""
2831
 
2832
- #: wp-security-audit-log.php:1835
2833
  msgid "Every 30 minutes"
2834
  msgstr ""
2835
 
2836
- #: wp-security-audit-log.php:1839
2837
  msgid "Every 15 minutes"
2838
  msgstr ""
2839
 
2840
- #: wp-security-audit-log.php:1843
2841
  msgid "Every 10 minutes"
2842
  msgstr ""
2843
 
2844
- #: wp-security-audit-log.php:1847
2845
  msgid "Every 1 minute"
2846
  msgstr ""
2847
 
2848
  #. translators: 1. Deprecated method name 2. Version since deprecated
2849
- #: wp-security-audit-log.php:1861
2850
  msgid "Method %1$s is deprecated since version %2$s!"
2851
  msgstr ""
2852
 
@@ -2957,7 +2953,7 @@ msgstr ""
2957
  msgid "Multisite Network"
2958
  msgstr ""
2959
 
2960
- #: classes/AlertManager.php:1090, extensions/email-notifications/classes/Common.php:1140, extensions/search/classes/Filters/IpFilter.php:88, extensions/user-sessions/classes/View/Sessions.php:325
2961
  msgid "IP Address"
2962
  msgstr ""
2963
 
@@ -3121,7 +3117,7 @@ msgstr ""
3121
  msgid "— End of Activity Log —"
3122
  msgstr ""
3123
 
3124
- #: classes/AuditLogGridView.php:211, classes/AuditLogListView.php:209, classes/Views/AuditLog.php:588, extensions/reports/inc/wsal-reporting-view.inc.php:711
3125
  msgid "All Sites"
3126
  msgstr ""
3127
 
@@ -3133,11 +3129,11 @@ msgstr ""
3133
  msgid "Info"
3134
  msgstr ""
3135
 
3136
- #: classes/AuditLogGridView.php:278, classes/AuditLogListView.php:280, classes/AuditLogListView.php:312, extensions/email-notifications/classes/Common.php:1138, extensions/email-notifications/classes/Common.php:1199, extensions/search/classes/Filters/SiteFilter.php:29
3137
  msgid "Site"
3138
  msgstr ""
3139
 
3140
- #: classes/AuditLogGridView.php:281, classes/AuditLogGridView.php:304, classes/AuditLogListView.php:283, classes/AuditLogListView.php:321, extensions/email-notifications/classes/Common.php:1143, extensions/email-notifications/classes/Common.php:1173, extensions/reports/classes/CsvReportGenerator.php:86, extensions/reports/classes/HtmlReportGenerator.php:250
3141
  msgid "Message"
3142
  msgstr ""
3143
 
@@ -3153,23 +3149,23 @@ msgstr ""
3153
  msgid "Message:"
3154
  msgstr ""
3155
 
3156
- #: classes/AuditLogGridView.php:401, classes/AuditLogGridView.php:405, classes/AuditLogGridView.php:431, classes/AuditLogListView.php:413, classes/AuditLogListView.php:440
3157
  msgid "Unknown"
3158
  msgstr ""
3159
 
3160
- #: classes/AuditLogGridView.php:440, classes/AuditLogListView.php:447
3161
  msgid "Unregistered user"
3162
  msgstr ""
3163
 
3164
- #: classes/AuditLogGridView.php:477, classes/AuditLogGridView.php:490, classes/AuditLogListView.php:480, classes/AuditLogListView.php:493
3165
  msgid "Show me all activity originating from this IP Address"
3166
  msgstr ""
3167
 
3168
- #: classes/AuditLogGridView.php:547, classes/AuditLogListView.php:525
3169
  msgid "View all details of this change"
3170
  msgstr ""
3171
 
3172
- #: classes/AuditLogGridView.php:548, classes/AuditLogListView.php:526
3173
  msgid "Alert Data Inspector"
3174
  msgstr ""
3175
 
@@ -3181,11 +3177,11 @@ msgstr ""
3181
  msgid "IP"
3182
  msgstr ""
3183
 
3184
- #: classes/AuditLogListView.php:274, classes/AuditLogListView.php:315, classes/WidgetManager.php:77, extensions/email-notifications/classes/Common.php:1111, extensions/search/classes/Filters/ObjectFilter.php:29, extensions/search/classes/Filters/ObjectFilter.php:53
3185
  msgid "Object"
3186
  msgstr ""
3187
 
3188
- #: classes/AuditLogListView.php:275, classes/AuditLogListView.php:318, classes/WidgetManager.php:78, extensions/email-notifications/classes/Common.php:1055, extensions/email-notifications/classes/Common.php:1112, extensions/reports/classes/CsvReportGenerator.php:85, extensions/reports/classes/HtmlReportGenerator.php:249, extensions/search/classes/Filters/EventTypeFilter.php:29, extensions/search/classes/Filters/EventTypeFilter.php:53
3189
  msgid "Event Type"
3190
  msgstr ""
3191
 
@@ -3401,32 +3397,32 @@ msgstr ""
3401
  msgid "Tried to install a zip or slug that was not in the allowed list"
3402
  msgstr ""
3403
 
3404
- #: classes/Utilities/UserUtils.php:89
3405
  msgid "Username: "
3406
  msgstr ""
3407
 
3408
- #: classes/Utilities/UserUtils.php:90
3409
  msgid "First name: "
3410
  msgstr ""
3411
 
3412
- #: classes/Utilities/UserUtils.php:91
3413
  msgid "Last Name: "
3414
  msgstr ""
3415
 
3416
- #: classes/Utilities/UserUtils.php:92
3417
  msgid "Email: "
3418
  msgstr ""
3419
 
3420
- #: classes/Utilities/UserUtils.php:93
3421
  msgid "Nickname: "
3422
  msgstr ""
3423
 
3424
  #: classes/Views/AuditLog.php:98
3425
- msgid "Get instantly alerted of critical changes via SMS & email, search the activity log, generate user reports, see who is logged in and more!"
3426
  msgstr ""
3427
 
3428
  #: classes/Views/AuditLog.php:99
3429
- msgid "Upgrade to premium to unlock these powerful activity log features & more!"
3430
  msgstr ""
3431
 
3432
  #: classes/Views/AuditLog.php:102
@@ -3445,132 +3441,132 @@ msgstr ""
3445
  msgid "Unlock these and other powerful features with WP Activity Log Premium."
3446
  msgstr ""
3447
 
3448
- #: classes/Views/AuditLog.php:185
3449
- msgid "UPGRADE NOW"
3450
- msgstr ""
3451
-
3452
- #: classes/Views/AuditLog.php:186
3453
- msgid "Start Free Trial"
3454
  msgstr ""
3455
 
3456
  #: classes/Views/AuditLog.php:187
3457
- msgid "Tell me more"
3458
  msgstr ""
3459
 
3460
  #: classes/Views/AuditLog.php:189
 
 
 
 
3461
  msgid "Dismiss the banner"
3462
  msgstr ""
3463
 
3464
- #: classes/Views/AuditLog.php:189
3465
  msgid "Close"
3466
  msgstr ""
3467
 
3468
- #: classes/Views/AuditLog.php:212
3469
  msgid "Help WP Activity Log improve."
3470
  msgstr ""
3471
 
3472
- #: classes/Views/AuditLog.php:213
3473
  msgid "You can help us improve the plugin by opting in to share non-sensitive data about the plugin usage. The technical data will be shared over a secure channel. Activity log data will never be shared. When you opt-in, you also subscribe to our announcement and newsletter (you can opt-out at any time). If you would rather not opt-in, we will not collect any data."
3474
  msgstr ""
3475
 
3476
- #: classes/Views/AuditLog.php:213
3477
  msgid "Read more about what data we collect and how."
3478
  msgstr ""
3479
 
3480
- #: classes/Views/AuditLog.php:215
3481
  msgid "Sure, opt-in"
3482
  msgstr ""
3483
 
3484
- #: classes/Views/AuditLog.php:216
3485
  msgid "No, thank you"
3486
  msgstr ""
3487
 
3488
- #: classes/Views/AuditLog.php:271
3489
  msgid "We noticed you have"
3490
  msgstr ""
3491
 
3492
- #: classes/Views/AuditLog.php:273
3493
  msgid "installed."
3494
  msgstr ""
3495
 
3496
- #: classes/Views/AuditLog.php:275
3497
  msgid "Install extension"
3498
  msgstr ""
3499
 
3500
- #: classes/Views/AuditLog.php:320
3501
  msgid "Activity Log Viewer"
3502
  msgstr ""
3503
 
3504
- #: classes/Views/AuditLog.php:347
3505
  msgid "Log Viewer"
3506
  msgstr ""
3507
 
3508
- #: classes/Views/AuditLog.php:504, classes/Views/Settings.php:324, classes/Views/ToggleAlerts.php:109, extensions/email-notifications/classes/AddNotification.php:224, extensions/email-notifications/classes/AddNotification.php:257, extensions/email-notifications/classes/EditNotification.php:226, extensions/email-notifications/classes/EditNotification.php:234, extensions/email-notifications/classes/EditNotification.php:230, extensions/email-notifications/classes/EditNotification.php:239, extensions/email-notifications/classes/EditNotification.php:267, extensions/external-db/classes/Settings.php:234
3509
  msgid "You do not have sufficient permissions to access this page."
3510
  msgstr ""
3511
 
3512
- #: classes/Views/AuditLog.php:553
3513
  msgid "Thank you for installing WP Activity Log. Do you want to run the wizard to configure the basic plugin settings?"
3514
  msgstr ""
3515
 
3516
- #: classes/Views/AuditLog.php:555, classes/Views/Settings.php:532, classes/Views/Settings.php:559, classes/Views/Settings.php:625, classes/Views/Settings.php:683, classes/Views/Settings.php:1118, classes/Views/Settings.php:1402, classes/Views/Settings.php:1443, classes/Views/Settings.php:1474, classes/Views/SetupWizard.php:562
3517
  msgid "Yes"
3518
  msgstr ""
3519
 
3520
- #: classes/Views/AuditLog.php:556, classes/Views/Settings.php:537, classes/Views/Settings.php:564, classes/Views/Settings.php:655, classes/Views/Settings.php:693, classes/Views/Settings.php:1123, classes/Views/Settings.php:1409, classes/Views/Settings.php:1450, classes/Views/Settings.php:1475, classes/Views/SetupWizard.php:567
3521
  msgid "No"
3522
  msgstr ""
3523
 
3524
- #: classes/Views/AuditLog.php:587
3525
  msgid "Please enter the number of alerts you would like to see on one page:"
3526
  msgstr ""
3527
 
3528
- #: classes/Views/AuditLog.php:589
3529
  msgid "No Results"
3530
  msgstr ""
3531
 
3532
- #: classes/Views/AuditLog.php:726, classes/Views/AuditLog.php:769, classes/Views/AuditLog.php:1047, classes/Views/AuditLog.php:1109, classes/Views/AuditLog.php:1162, classes/Views/Settings.php:239, classes/Views/Settings.php:1759, classes/Views/SetupWizard.php:96, extensions/search/search-init.php:398, extensions/search/search-init.php:446, extensions/email-notifications/classes/Notifications.php:559, extensions/external-db/classes/Connections.php:862, extensions/external-db/classes/Connections.php:887, extensions/external-db/classes/Connections.php:1018, extensions/external-db/classes/Mirroring.php:763, extensions/external-db/classes/Mirroring.php:818, extensions/external-db/classes/Settings.php:657, extensions/external-db/classes/Settings.php:833, extensions/external-db/classes/Settings.php:853, extensions/user-sessions/classes/Views.php:525, extensions/reports/classes/Views/Main.php:739
3533
  msgid "Nonce verification failed."
3534
  msgstr ""
3535
 
3536
- #: classes/Views/AuditLog.php:744
3537
  msgid "No users found."
3538
  msgstr ""
3539
 
3540
- #: classes/Views/AuditLog.php:816
3541
  msgid "Freemius opt choice not found."
3542
  msgstr ""
3543
 
3544
- #: classes/Views/AuditLog.php:809
3545
  msgid "Freemius opt choice selected."
3546
  msgstr ""
3547
 
3548
  #. translators: 1 - an opening link tag, 2 - the closing tag.
3549
- #: classes/Views/AuditLog.php:912
3550
  msgid "<br>An error occurred when trying to install and activate the plugin. Please try install it again from the %1$sevent settings%2$s page."
3551
  msgstr ""
3552
 
3553
- #: classes/Views/AuditLog.php:1011
3554
  msgid "WordPress Activity Log"
3555
  msgstr ""
3556
 
3557
- #: classes/Views/AuditLog.php:1012
3558
  msgid "When a user makes a change on your website the plugin will keep a record of that event here. Right now there is nothing because this is a new install."
3559
  msgstr ""
3560
 
3561
- #: classes/Views/AuditLog.php:1013
3562
  msgid "Thank you for using WP Activity Log"
3563
  msgstr ""
3564
 
3565
- #: classes/Views/AuditLog.php:1036, classes/Views/AuditLog.php:1146
3566
  msgid "You do not have sufficient permissions to dismiss this notice."
3567
  msgstr ""
3568
 
3569
- #: classes/Views/AuditLog.php:1104
3570
  msgid "Access Denied"
3571
  msgstr ""
3572
 
3573
- #: classes/Views/AuditLog.php:1199
3574
  msgid "Install the activity log extension for %1$s for more detailed logging of changes done in %2$s."
3575
  msgstr ""
3576
 
@@ -3583,54 +3579,58 @@ msgid "Notifications &#8682;"
3583
  msgstr ""
3584
 
3585
  #: classes/Views/EmailNotifications.php:49
3586
- msgid "SMS & Email Notifications"
3587
  msgstr ""
3588
 
3589
  #: classes/Views/EmailNotifications.php:50
3590
- msgid "Get instantly alerted of important changes on your site via SMS and email notifications. Upgrade to premium and:"
3591
  msgstr ""
3592
 
3593
  #: classes/Views/EmailNotifications.php:53
3594
- msgid "Configure any type of SMS & email notifications"
3595
  msgstr ""
3596
 
3597
  #: classes/Views/EmailNotifications.php:54
3598
- msgid "Receive notifications for when users login, change their password or change content"
3599
  msgstr ""
3600
 
3601
  #: classes/Views/EmailNotifications.php:55
3602
- msgid "Get alerted of site changes like plugin installs, theme changes etc"
3603
  msgstr ""
3604
 
3605
  #: classes/Views/EmailNotifications.php:56
3606
- msgid "Enable built-in security email notifications of suspicious user activity"
3607
  msgstr ""
3608
 
3609
  #: classes/Views/EmailNotifications.php:57
3610
- msgid "Personalize all email and SMS templates"
3611
  msgstr ""
3612
 
3613
  #: classes/Views/EmailNotifications.php:58
 
 
 
 
3614
  msgid "Use the trigger builder to configure any type of notification criteria!"
3615
  msgstr ""
3616
 
3617
- #: classes/Views/EmailNotifications.php:60
3618
  msgid "Getting started is really easy. You can use one of the plugin’s built-in notifications or create your own using the easy to use trigger builder."
3619
  msgstr ""
3620
 
3621
- #: classes/Views/EmailNotifications.php:63
3622
  msgid "Email and SMS notifications instantly alert you of important changes on your WordPress site."
3623
  msgstr ""
3624
 
3625
- #: classes/Views/EmailNotifications.php:67
3626
  msgid "Easily enable any of the built-in security and user management notifications."
3627
  msgstr ""
3628
 
3629
- #: classes/Views/EmailNotifications.php:71
3630
  msgid "Use the trigger builder to configure any type of email and SMS notification to get instantly alerted of site changes that are important to you and your business."
3631
  msgstr ""
3632
 
3633
- #: classes/Views/EmailNotifications.php:75
3634
  msgid "All email and SMS templates are configurable, allowing you to personalize them."
3635
  msgstr ""
3636
 
@@ -4338,7 +4338,7 @@ msgstr ""
4338
  msgid "Date & Time"
4339
  msgstr ""
4340
 
4341
- #: classes/Views/Settings.php:1080, extensions/email-notifications/classes/Common.php:1105, extensions/email-notifications/classes/Common.php:1141, extensions/email-notifications/classes/Common.php:1170, extensions/search/classes/Filters/AlertFilter.php:26, extensions/search/classes/Filters/AlertFilter.php:51
4342
  msgid "Event ID"
4343
  msgstr ""
4344
 
@@ -5132,7 +5132,7 @@ msgstr ""
5132
 
5133
  #. translators: Upgrade now hyperlink.
5134
  #: extensions/settings-import-export/settings-import-export.php:129
5135
- msgid "Settigns import/export is available in the Professional and Business Plans. %s to configure and receive this feature."
5136
  msgstr ""
5137
 
5138
  #: extensions/settings-import-export/settings-import-export.php:139
@@ -5363,155 +5363,155 @@ msgstr ""
5363
  msgid "A trigger's condition must not be longer than 50 characters."
5364
  msgstr ""
5365
 
5366
- #: extensions/email-notifications/classes/Common.php:934
5367
  msgid "Email or Username is not valid."
5368
  msgstr ""
5369
 
5370
- #: extensions/email-notifications/classes/Common.php:941
5371
  msgid "Mobile number is not valid."
5372
  msgstr ""
5373
 
5374
- #: extensions/email-notifications/classes/Common.php:928
5375
  msgid "Email or Username is required."
5376
  msgstr ""
5377
 
5378
- #: extensions/email-notifications/classes/Common.php:929
5379
  msgid "Mobile number is required."
5380
  msgstr ""
5381
 
5382
- #: extensions/email-notifications/classes/Common.php:996, extensions/email-notifications/classes/Notifications.php:610
5383
  msgid "Notification could not be saved."
5384
  msgstr ""
5385
 
5386
- #: extensions/email-notifications/classes/Common.php:1019, extensions/email-notifications/classes/Notifications.php:696
5387
  msgid "Notification successfully saved."
5388
  msgstr ""
5389
 
5390
- #: extensions/email-notifications/classes/Common.php:1041
5391
  msgid "Notification Title"
5392
  msgstr ""
5393
 
5394
- #: extensions/email-notifications/classes/Common.php:1042
5395
  msgid "Website Name"
5396
  msgstr ""
5397
 
5398
- #: extensions/email-notifications/classes/Common.php:1043
5399
  msgid "User Login Name"
5400
  msgstr ""
5401
 
5402
- #: extensions/email-notifications/classes/Common.php:1044
5403
  msgid "User First Name"
5404
  msgstr ""
5405
 
5406
- #: extensions/email-notifications/classes/Common.php:1045
5407
  msgid "User Last Name"
5408
  msgstr ""
5409
 
5410
- #: extensions/email-notifications/classes/Common.php:1046
5411
  msgid "Role(s) of the User"
5412
  msgstr ""
5413
 
5414
- #: extensions/email-notifications/classes/Common.php:1047
5415
  msgid "Event generated on Date and Time"
5416
  msgstr ""
5417
 
5418
- #: extensions/email-notifications/classes/Common.php:1048
5419
  msgid "Event Code"
5420
  msgstr ""
5421
 
5422
- #: extensions/email-notifications/classes/Common.php:1049
5423
  msgid "Event Severity"
5424
  msgstr ""
5425
 
5426
- #: extensions/email-notifications/classes/Common.php:1050, extensions/email-notifications/classes/Common.php:1113
5427
  msgid "Event Message"
5428
  msgstr ""
5429
 
5430
- #: extensions/email-notifications/classes/Common.php:1051
5431
  msgid "Event Metadata"
5432
  msgstr ""
5433
 
5434
- #: extensions/email-notifications/classes/Common.php:1052
5435
  msgid "Event Links"
5436
  msgstr ""
5437
 
5438
- #: extensions/email-notifications/classes/Common.php:1053
5439
  msgid "Client IP Address"
5440
  msgstr ""
5441
 
5442
- #: extensions/email-notifications/classes/Common.php:1054
5443
  msgid "Event Object"
5444
  msgstr ""
5445
 
5446
- #: extensions/email-notifications/classes/Common.php:1101, extensions/email-notifications/classes/Common.php:1167
5447
  msgid "Notification {title} on website {site} triggered"
5448
  msgstr ""
5449
 
5450
- #: extensions/email-notifications/classes/Common.php:1102, extensions/email-notifications/classes/Common.php:1168
5451
  msgid "Notification <strong>{title}</strong> was triggered. Below are the notification details:"
5452
  msgstr ""
5453
 
5454
- #: extensions/email-notifications/classes/Common.php:1104
5455
  msgid "Website"
5456
  msgstr ""
5457
 
5458
- #: extensions/email-notifications/classes/Common.php:1106, extensions/email-notifications/classes/Common.php:1171, extensions/reports/classes/CsvReportGenerator.php:80, extensions/reports/classes/CsvReportGenerator.php:64, extensions/reports/classes/CsvReportGenerator.php:197, extensions/reports/classes/HtmlReportGenerator.php:244, extensions/reports/classes/HtmlReportGenerator.php:220, extensions/reports/classes/HtmlReportGenerator.php:358, extensions/search/classes/FilterManager.php:475, extensions/user-sessions/classes/View/Sessions.php:156, extensions/user-sessions/classes/View/Sessions.php:321
5459
  msgid "Username"
5460
  msgstr ""
5461
 
5462
- #: extensions/email-notifications/classes/Common.php:1107
5463
  msgid "User first name"
5464
  msgstr ""
5465
 
5466
- #: extensions/email-notifications/classes/Common.php:1108
5467
  msgid "User last name"
5468
  msgstr ""
5469
 
5470
- #: extensions/email-notifications/classes/Common.php:1109
5471
  msgid "User role"
5472
  msgstr ""
5473
 
5474
- #: extensions/email-notifications/classes/Common.php:1114
5475
  msgid "Event generated on"
5476
  msgstr ""
5477
 
5478
- #: extensions/email-notifications/classes/Common.php:1116
5479
  msgid "These email notifications are sent with <a href=\"http://wpactivitylog.com\">WP Activity Log</a>, the most comprehensive WordPress activity log plugin solution."
5480
  msgstr ""
5481
 
5482
- #: extensions/email-notifications/classes/Common.php:1139, extensions/email-notifications/classes/Common.php:1200
5483
  msgid "User/Role"
5484
  msgstr ""
5485
 
5486
- #: extensions/email-notifications/classes/Common.php:1142
5487
  msgid "Event type"
5488
  msgstr ""
5489
 
5490
- #: extensions/email-notifications/classes/Common.php:1172, extensions/search/classes/FilterManager.php:487, extensions/search/classes/Filters/userrolefilter.php:49, extensions/search/classes/Filters/userrolefilter.php:87, extensions/user-sessions/classes/View/Sessions.php:326
5491
  msgid "User Role"
5492
  msgstr ""
5493
 
5494
- #: extensions/email-notifications/classes/Common.php:1174
5495
  msgid "Generated On"
5496
  msgstr ""
5497
 
5498
- #: extensions/email-notifications/classes/Common.php:1176
5499
  msgid "Monitoring of WordPress and Email Notifications provided by <a href=\"http://wpactivitylog.com\">WP Activity Log, WordPress most comprehensive audit trail plugin</a>."
5500
  msgstr ""
5501
 
5502
- #: extensions/email-notifications/classes/Common.php:1201
5503
  msgid "Event"
5504
  msgstr ""
5505
 
5506
- #: extensions/email-notifications/classes/Common.php:1216
5507
  msgid "Subject "
5508
  msgstr ""
5509
 
5510
- #: extensions/email-notifications/classes/Common.php:1225
5511
  msgid "Body "
5512
  msgstr ""
5513
 
5514
- #: extensions/email-notifications/classes/Common.php:1228
5515
  msgid "HTML is accepted. Available template tags:"
5516
  msgstr ""
5517
 
@@ -8172,7 +8172,7 @@ msgstr ""
8172
  msgid "Last Event"
8173
  msgstr ""
8174
 
8175
- #: extensions/user-sessions/classes/View/Sessions.php:165, extensions/user-sessions/classes/View/Sessions.php:493
8176
  msgid "Actions"
8177
  msgstr ""
8178
 
@@ -8213,19 +8213,19 @@ msgstr ""
8213
  msgid "Network-wide Logins"
8214
  msgstr ""
8215
 
8216
- #: extensions/user-sessions/classes/View/Sessions.php:467
8217
  msgid "Session ID: "
8218
  msgstr ""
8219
 
8220
- #: extensions/user-sessions/classes/View/Sessions.php:484
8221
  msgid "Click the button above to retrieve the users' last event."
8222
  msgstr ""
8223
 
8224
- #: extensions/user-sessions/classes/View/Sessions.php:504
8225
  msgid "Show me this user's events"
8226
  msgstr ""
8227
 
8228
- #: extensions/user-sessions/classes/View/Sessions.php:520
8229
  msgid "Terminate Session"
8230
  msgstr ""
8231
 
@@ -8237,7 +8237,7 @@ msgstr ""
8237
  msgid "No logged in sessions meet your search criteria."
8238
  msgstr ""
8239
 
8240
- #: extensions/user-sessions/classes/View/Sessions.php:698
8241
  msgid "User sessions do not exist."
8242
  msgstr ""
8243
 
1
+ # Copyright (C) 2022 wp-security-audit-log
2
  # This file is distributed under the same license as the wp-security-audit-log package.
3
  msgid ""
4
  msgstr ""
80
  msgid "Login blocked because other session(s) already exist for this user."
81
  msgstr ""
82
 
83
+ #: defaults.php:238, extensions/email-notifications/classes/Common.php:1115
84
  msgid "IP address"
85
  msgstr ""
86
 
1640
  msgid "Plugins & Themes"
1641
  msgstr ""
1642
 
1643
+ #: defaults.php:2063, classes/AuditLogGridView.php:430, classes/AuditLogListView.php:438
1644
  msgid "Plugins"
1645
  msgstr ""
1646
 
1656
  msgid "Version"
1657
  msgstr ""
1658
 
1659
+ #: defaults.php:2071, defaults.php:2084, defaults.php:2097, defaults.php:2110, defaults.php:2123, defaults.php:2166, defaults.php:2179, defaults.php:2206, defaults.php:2219, defaults.php:2232, defaults.php:2245, defaults.php:2271, defaults.php:2284
1660
  msgid "Install location"
1661
  msgstr ""
1662
 
1704
  msgid "The plugin created the post %PostTitle%."
1705
  msgstr ""
1706
 
1707
+ #: defaults.php:2138, defaults.php:2153, classes/AlertManager.php:1071, classes/AuditLogGridView.php:427, classes/AuditLogListView.php:436
1708
  msgid "Plugin"
1709
  msgstr ""
1710
 
1724
  msgid "Changed the Automatic updates setting for the plugin %name%."
1725
  msgstr ""
1726
 
 
 
 
 
1727
  #: defaults.php:2176
1728
  msgid "Changed the Automatic updates setting for a theme."
1729
  msgstr ""
1812
  msgid "WordPress & System"
1813
  msgstr ""
1814
 
1815
+ #: defaults.php:2294, classes/AlertManager.php:1070, classes/AlertManager.php:1760, classes/AuditLogGridView.php:436, classes/AuditLogListView.php:442, extensions/email-notifications/classes/DailyNotification.php:243, extensions/email-notifications/classes/Notifier.php:657, extensions/reports/classes/Common.php:1178
1816
  msgid "System"
1817
  msgstr ""
1818
 
2698
 
2699
  #. translators: User's first name
2700
  #. translators: User's first name
2701
+ #: wp-security-audit-log.php:943, wp-security-audit-log.php:971
2702
  msgid "Hey %s"
2703
  msgstr ""
2704
 
2705
+ #: wp-security-audit-log.php:947
2706
  msgid "Never miss an important update! Opt-in to our security and feature updates notifications, and non-sensitive diagnostic tracking with freemius.com."
2707
  msgstr ""
2708
 
2709
+ #: wp-security-audit-log.php:948, wp-security-audit-log.php:983
2710
  msgid "Note: "
2711
  msgstr ""
2712
 
2713
+ #: wp-security-audit-log.php:949, wp-security-audit-log.php:984
2714
  msgid "NO ACTIVITY LOG ACTIVITY & DATA IS SENT BACK TO OUR SERVERS."
2715
  msgstr ""
2716
 
2717
  #. translators: 1: Plugin name. 2: Plugin name. 2: Freemius link. 4: Plugin name.
2718
+ #: wp-security-audit-log.php:977
2719
  msgid "Please help us improve %1$s! If you opt-in, some non-sensitive data about your usage of %2$s will be sent to %3$s, a diagnostic tracking service we use. If you skip this, that's okay! %2$s will still work just fine."
2720
  msgstr ""
2721
 
2722
+ #: wp-security-audit-log.php:1029
2723
  msgid "You need to activate the licence key to use WP Activity Log Premium. %2$s"
2724
  msgstr ""
2725
 
2726
+ #: wp-security-audit-log.php:1030
2727
  msgid "Activate the licence key now"
2728
  msgstr ""
2729
 
2730
  #. translators: Number of sites
2731
+ #: wp-security-audit-log.php:1052
2732
  msgid "The license is limited to %s sub-sites. You need to upgrade your license to cover all the sub-sites on this network."
2733
  msgstr ""
2734
 
2735
+ #: wp-security-audit-log.php:1048
2736
  msgid "%s You need to renew your license to continue using premium features."
2737
  msgstr ""
2738
 
2739
+ #: wp-security-audit-log.php:1150
2740
  msgid "Error: You do not have sufficient permissions to disable this custom field."
2741
  msgstr ""
2742
 
2743
  #. translators: name of meta field (in bold)
2744
+ #: wp-security-audit-log.php:1198
2745
  msgid "Custom field %s is no longer being monitored."
2746
  msgstr ""
2747
 
2748
  #. translators: setting tab name "Excluded Objects"
2749
+ #: wp-security-audit-log.php:1203
2750
  msgid "Enable the monitoring of this custom field again from the %s tab in the plugin settings."
2751
  msgstr ""
2752
 
2753
+ #: wp-security-audit-log.php:1204
2754
  msgid "Excluded Objects"
2755
  msgstr ""
2756
 
2757
+ #: wp-security-audit-log.php:1217
2758
  msgid "Error: You do not have sufficient permissions to disable this alert."
2759
  msgstr ""
2760
 
2761
+ #: wp-security-audit-log.php:1241
2762
  msgid "Alert %1$s is no longer being monitored.<br /> %2$s"
2763
  msgstr ""
2764
 
2765
+ #: wp-security-audit-log.php:1241
2766
  msgid "You can enable this alert again from the Enable/Disable Alerts node in the plugin menu."
2767
  msgstr ""
2768
 
2769
+ #: wp-security-audit-log.php:1266, classes/Views/SetupWizard.php:270
2770
  msgid "Installing, please wait"
2771
  msgstr ""
2772
 
2773
+ #: wp-security-audit-log.php:1267, classes/Views/SetupWizard.php:271
2774
  msgid "Already installed"
2775
  msgstr ""
2776
 
2777
+ #: wp-security-audit-log.php:1268, classes/Utilities/PluginInstallAndActivate.php:108, classes/Views/SetupWizard.php:272, classes/Views/SetupWizard.php:841
2778
  msgid "Extension installed"
2779
  msgstr ""
2780
 
2781
+ #: wp-security-audit-log.php:1269, classes/Views/SetupWizard.php:273
2782
  msgid "Extension activated"
2783
  msgstr ""
2784
 
2785
+ #: wp-security-audit-log.php:1270, classes/Views/SetupWizard.php:274
2786
  msgid "Install failed"
2787
  msgstr ""
2788
 
2789
  #. translators: %s: PHP Version
2790
+ #: wp-security-audit-log.php:1322
2791
  msgid "You are using a version of PHP that is older than %s, which is no longer supported."
2792
  msgstr ""
2793
 
2794
+ #: wp-security-audit-log.php:1324
2795
  msgid "Contact us on <a href=\"mailto:plugins@wpwhitesecurity.com\">plugins@wpwhitesecurity.com</a> to help you switch the version of PHP you are using."
2796
  msgstr ""
2797
 
2798
  #. translators: %s: Activity Log for MainWP plugin hyperlink
2799
+ #: wp-security-audit-log.php:1329
2800
  msgid "Please install the %s plugin on the MainWP dashboard."
2801
  msgstr ""
2802
 
2803
+ #: wp-security-audit-log.php:1329
2804
  msgid "Activity Log for MainWP"
2805
  msgstr ""
2806
 
2807
  #. translators: %s: Getting started guide hyperlink
2808
+ #: wp-security-audit-log.php:1331
2809
  msgid "The WP Activity Log should be installed on the child sites only. Refer to the %s for more information."
2810
  msgstr ""
2811
 
2812
+ #: wp-security-audit-log.php:1331
2813
  msgid "getting started guide"
2814
  msgstr ""
2815
 
2816
+ #: wp-security-audit-log.php:1813
2817
  msgid "For security and auditing purposes, a record of all of your logged-in actions and changes within the WordPress dashboard will be recorded in an activity log with the <a href=\"https://wpactivitylog.com/\" target=\"_blank\">WP Activity Log plugin</a>. The audit log also includes the IP address where you accessed this site from."
2818
  msgstr ""
2819
 
2820
+ #: wp-security-audit-log.php:1832
2821
  msgid "Every 6 hours"
2822
  msgstr ""
2823
 
2824
+ #: wp-security-audit-log.php:1836
2825
  msgid "Every 45 minutes"
2826
  msgstr ""
2827
 
2828
+ #: wp-security-audit-log.php:1840
2829
  msgid "Every 30 minutes"
2830
  msgstr ""
2831
 
2832
+ #: wp-security-audit-log.php:1844
2833
  msgid "Every 15 minutes"
2834
  msgstr ""
2835
 
2836
+ #: wp-security-audit-log.php:1848
2837
  msgid "Every 10 minutes"
2838
  msgstr ""
2839
 
2840
+ #: wp-security-audit-log.php:1852
2841
  msgid "Every 1 minute"
2842
  msgstr ""
2843
 
2844
  #. translators: 1. Deprecated method name 2. Version since deprecated
2845
+ #: wp-security-audit-log.php:1866
2846
  msgid "Method %1$s is deprecated since version %2$s!"
2847
  msgstr ""
2848
 
2953
  msgid "Multisite Network"
2954
  msgstr ""
2955
 
2956
+ #: classes/AlertManager.php:1090, extensions/email-notifications/classes/Common.php:1145, extensions/search/classes/Filters/IpFilter.php:88, extensions/user-sessions/classes/View/Sessions.php:325
2957
  msgid "IP Address"
2958
  msgstr ""
2959
 
3117
  msgid "— End of Activity Log —"
3118
  msgstr ""
3119
 
3120
+ #: classes/AuditLogGridView.php:211, classes/AuditLogListView.php:209, classes/Views/AuditLog.php:589, extensions/reports/inc/wsal-reporting-view.inc.php:711
3121
  msgid "All Sites"
3122
  msgstr ""
3123
 
3129
  msgid "Info"
3130
  msgstr ""
3131
 
3132
+ #: classes/AuditLogGridView.php:278, classes/AuditLogListView.php:280, classes/AuditLogListView.php:312, extensions/email-notifications/classes/Common.php:1143, extensions/email-notifications/classes/Common.php:1204, extensions/search/classes/Filters/SiteFilter.php:29
3133
  msgid "Site"
3134
  msgstr ""
3135
 
3136
+ #: classes/AuditLogGridView.php:281, classes/AuditLogGridView.php:304, classes/AuditLogListView.php:283, classes/AuditLogListView.php:321, extensions/email-notifications/classes/Common.php:1148, extensions/email-notifications/classes/Common.php:1178, extensions/reports/classes/CsvReportGenerator.php:86, extensions/reports/classes/HtmlReportGenerator.php:250
3137
  msgid "Message"
3138
  msgstr ""
3139
 
3149
  msgid "Message:"
3150
  msgstr ""
3151
 
3152
+ #: classes/AuditLogGridView.php:401, classes/AuditLogGridView.php:405, classes/AuditLogListView.php:413, classes/Utilities/UserUtils.php:149
3153
  msgid "Unknown"
3154
  msgstr ""
3155
 
3156
+ #: classes/AuditLogGridView.php:433, classes/AuditLogListView.php:440
3157
  msgid "Unregistered user"
3158
  msgstr ""
3159
 
3160
+ #: classes/AuditLogGridView.php:470, classes/AuditLogGridView.php:483, classes/AuditLogListView.php:473, classes/AuditLogListView.php:486
3161
  msgid "Show me all activity originating from this IP Address"
3162
  msgstr ""
3163
 
3164
+ #: classes/AuditLogGridView.php:540, classes/AuditLogListView.php:518
3165
  msgid "View all details of this change"
3166
  msgstr ""
3167
 
3168
+ #: classes/AuditLogGridView.php:541, classes/AuditLogListView.php:519
3169
  msgid "Alert Data Inspector"
3170
  msgstr ""
3171
 
3177
  msgid "IP"
3178
  msgstr ""
3179
 
3180
+ #: classes/AuditLogListView.php:274, classes/AuditLogListView.php:315, classes/WidgetManager.php:77, extensions/email-notifications/classes/Common.php:1116, extensions/search/classes/Filters/ObjectFilter.php:29, extensions/search/classes/Filters/ObjectFilter.php:53
3181
  msgid "Object"
3182
  msgstr ""
3183
 
3184
+ #: classes/AuditLogListView.php:275, classes/AuditLogListView.php:318, classes/WidgetManager.php:78, extensions/email-notifications/classes/Common.php:1060, extensions/email-notifications/classes/Common.php:1117, extensions/reports/classes/CsvReportGenerator.php:85, extensions/reports/classes/HtmlReportGenerator.php:249, extensions/search/classes/Filters/EventTypeFilter.php:29, extensions/search/classes/Filters/EventTypeFilter.php:53
3185
  msgid "Event Type"
3186
  msgstr ""
3187
 
3397
  msgid "Tried to install a zip or slug that was not in the allowed list"
3398
  msgstr ""
3399
 
3400
+ #: classes/Utilities/UserUtils.php:91
3401
  msgid "Username: "
3402
  msgstr ""
3403
 
3404
+ #: classes/Utilities/UserUtils.php:92
3405
  msgid "First name: "
3406
  msgstr ""
3407
 
3408
+ #: classes/Utilities/UserUtils.php:93
3409
  msgid "Last Name: "
3410
  msgstr ""
3411
 
3412
+ #: classes/Utilities/UserUtils.php:94
3413
  msgid "Email: "
3414
  msgstr ""
3415
 
3416
+ #: classes/Utilities/UserUtils.php:95
3417
  msgid "Nickname: "
3418
  msgstr ""
3419
 
3420
  #: classes/Views/AuditLog.php:98
3421
+ msgid "Get email notifications about website changes, view logged-in users, do granular log searches, create detailed reports, and more."
3422
  msgstr ""
3423
 
3424
  #: classes/Views/AuditLog.php:99
3425
+ msgid "Upgrade to premium today and get more out of your activity logs!"
3426
  msgstr ""
3427
 
3428
  #: classes/Views/AuditLog.php:102
3441
  msgid "Unlock these and other powerful features with WP Activity Log Premium."
3442
  msgstr ""
3443
 
3444
+ #: classes/Views/AuditLog.php:158
3445
+ msgid "Learn more"
 
 
 
 
3446
  msgstr ""
3447
 
3448
  #: classes/Views/AuditLog.php:187
3449
+ msgid "UPGRADE NOW"
3450
  msgstr ""
3451
 
3452
  #: classes/Views/AuditLog.php:189
3453
+ msgid "Start Free Trial"
3454
+ msgstr ""
3455
+
3456
+ #: classes/Views/AuditLog.php:190
3457
  msgid "Dismiss the banner"
3458
  msgstr ""
3459
 
3460
+ #: classes/Views/AuditLog.php:190
3461
  msgid "Close"
3462
  msgstr ""
3463
 
3464
+ #: classes/Views/AuditLog.php:213
3465
  msgid "Help WP Activity Log improve."
3466
  msgstr ""
3467
 
3468
+ #: classes/Views/AuditLog.php:214
3469
  msgid "You can help us improve the plugin by opting in to share non-sensitive data about the plugin usage. The technical data will be shared over a secure channel. Activity log data will never be shared. When you opt-in, you also subscribe to our announcement and newsletter (you can opt-out at any time). If you would rather not opt-in, we will not collect any data."
3470
  msgstr ""
3471
 
3472
+ #: classes/Views/AuditLog.php:214
3473
  msgid "Read more about what data we collect and how."
3474
  msgstr ""
3475
 
3476
+ #: classes/Views/AuditLog.php:216
3477
  msgid "Sure, opt-in"
3478
  msgstr ""
3479
 
3480
+ #: classes/Views/AuditLog.php:217
3481
  msgid "No, thank you"
3482
  msgstr ""
3483
 
3484
+ #: classes/Views/AuditLog.php:272
3485
  msgid "We noticed you have"
3486
  msgstr ""
3487
 
3488
+ #: classes/Views/AuditLog.php:274
3489
  msgid "installed."
3490
  msgstr ""
3491
 
3492
+ #: classes/Views/AuditLog.php:276
3493
  msgid "Install extension"
3494
  msgstr ""
3495
 
3496
+ #: classes/Views/AuditLog.php:321
3497
  msgid "Activity Log Viewer"
3498
  msgstr ""
3499
 
3500
+ #: classes/Views/AuditLog.php:348
3501
  msgid "Log Viewer"
3502
  msgstr ""
3503
 
3504
+ #: classes/Views/AuditLog.php:505, classes/Views/Settings.php:324, classes/Views/ToggleAlerts.php:109, extensions/email-notifications/classes/AddNotification.php:224, extensions/email-notifications/classes/AddNotification.php:257, extensions/email-notifications/classes/EditNotification.php:226, extensions/email-notifications/classes/EditNotification.php:234, extensions/email-notifications/classes/EditNotification.php:230, extensions/email-notifications/classes/EditNotification.php:239, extensions/email-notifications/classes/EditNotification.php:267, extensions/external-db/classes/Settings.php:234
3505
  msgid "You do not have sufficient permissions to access this page."
3506
  msgstr ""
3507
 
3508
+ #: classes/Views/AuditLog.php:554
3509
  msgid "Thank you for installing WP Activity Log. Do you want to run the wizard to configure the basic plugin settings?"
3510
  msgstr ""
3511
 
3512
+ #: classes/Views/AuditLog.php:556, classes/Views/Settings.php:532, classes/Views/Settings.php:559, classes/Views/Settings.php:625, classes/Views/Settings.php:683, classes/Views/Settings.php:1118, classes/Views/Settings.php:1402, classes/Views/Settings.php:1443, classes/Views/Settings.php:1474, classes/Views/SetupWizard.php:562
3513
  msgid "Yes"
3514
  msgstr ""
3515
 
3516
+ #: classes/Views/AuditLog.php:557, classes/Views/Settings.php:537, classes/Views/Settings.php:564, classes/Views/Settings.php:655, classes/Views/Settings.php:693, classes/Views/Settings.php:1123, classes/Views/Settings.php:1409, classes/Views/Settings.php:1450, classes/Views/Settings.php:1475, classes/Views/SetupWizard.php:567
3517
  msgid "No"
3518
  msgstr ""
3519
 
3520
+ #: classes/Views/AuditLog.php:588
3521
  msgid "Please enter the number of alerts you would like to see on one page:"
3522
  msgstr ""
3523
 
3524
+ #: classes/Views/AuditLog.php:590
3525
  msgid "No Results"
3526
  msgstr ""
3527
 
3528
+ #: classes/Views/AuditLog.php:727, classes/Views/AuditLog.php:770, classes/Views/AuditLog.php:1048, classes/Views/AuditLog.php:1110, classes/Views/AuditLog.php:1163, classes/Views/Settings.php:239, classes/Views/Settings.php:1759, classes/Views/SetupWizard.php:96, extensions/search/search-init.php:398, extensions/search/search-init.php:446, extensions/email-notifications/classes/Notifications.php:559, extensions/external-db/classes/Connections.php:862, extensions/external-db/classes/Connections.php:887, extensions/external-db/classes/Connections.php:1018, extensions/external-db/classes/Mirroring.php:763, extensions/external-db/classes/Mirroring.php:818, extensions/external-db/classes/Settings.php:657, extensions/external-db/classes/Settings.php:833, extensions/external-db/classes/Settings.php:853, extensions/user-sessions/classes/Views.php:525, extensions/reports/classes/Views/Main.php:739
3529
  msgid "Nonce verification failed."
3530
  msgstr ""
3531
 
3532
+ #: classes/Views/AuditLog.php:745
3533
  msgid "No users found."
3534
  msgstr ""
3535
 
3536
+ #: classes/Views/AuditLog.php:817
3537
  msgid "Freemius opt choice not found."
3538
  msgstr ""
3539
 
3540
+ #: classes/Views/AuditLog.php:810
3541
  msgid "Freemius opt choice selected."
3542
  msgstr ""
3543
 
3544
  #. translators: 1 - an opening link tag, 2 - the closing tag.
3545
+ #: classes/Views/AuditLog.php:913
3546
  msgid "<br>An error occurred when trying to install and activate the plugin. Please try install it again from the %1$sevent settings%2$s page."
3547
  msgstr ""
3548
 
3549
+ #: classes/Views/AuditLog.php:1012
3550
  msgid "WordPress Activity Log"
3551
  msgstr ""
3552
 
3553
+ #: classes/Views/AuditLog.php:1013
3554
  msgid "When a user makes a change on your website the plugin will keep a record of that event here. Right now there is nothing because this is a new install."
3555
  msgstr ""
3556
 
3557
+ #: classes/Views/AuditLog.php:1014
3558
  msgid "Thank you for using WP Activity Log"
3559
  msgstr ""
3560
 
3561
+ #: classes/Views/AuditLog.php:1037, classes/Views/AuditLog.php:1147
3562
  msgid "You do not have sufficient permissions to dismiss this notice."
3563
  msgstr ""
3564
 
3565
+ #: classes/Views/AuditLog.php:1105
3566
  msgid "Access Denied"
3567
  msgstr ""
3568
 
3569
+ #: classes/Views/AuditLog.php:1200
3570
  msgid "Install the activity log extension for %1$s for more detailed logging of changes done in %2$s."
3571
  msgstr ""
3572
 
3579
  msgstr ""
3580
 
3581
  #: classes/Views/EmailNotifications.php:49
3582
+ msgid "Email & SMS Notifications"
3583
  msgstr ""
3584
 
3585
  #: classes/Views/EmailNotifications.php:50
3586
+ msgid "Get instantly alerted of important changes on your site via email notifications & SMS messages. Upgrade to premium and:"
3587
  msgstr ""
3588
 
3589
  #: classes/Views/EmailNotifications.php:53
3590
+ msgid "Configure any type of email notification"
3591
  msgstr ""
3592
 
3593
  #: classes/Views/EmailNotifications.php:54
3594
+ msgid "Configure SMS messages for instant critical alerts"
3595
  msgstr ""
3596
 
3597
  #: classes/Views/EmailNotifications.php:55
3598
+ msgid "Receive notifications for when users login, change their password or change content"
3599
  msgstr ""
3600
 
3601
  #: classes/Views/EmailNotifications.php:56
3602
+ msgid "Get alerted of site changes like plugin installs, theme changes etc"
3603
  msgstr ""
3604
 
3605
  #: classes/Views/EmailNotifications.php:57
3606
+ msgid "Enable built-in security email notifications of suspicious user activity"
3607
  msgstr ""
3608
 
3609
  #: classes/Views/EmailNotifications.php:58
3610
+ msgid "Personalize all email and SMS templates"
3611
+ msgstr ""
3612
+
3613
+ #: classes/Views/EmailNotifications.php:59
3614
  msgid "Use the trigger builder to configure any type of notification criteria!"
3615
  msgstr ""
3616
 
3617
+ #: classes/Views/EmailNotifications.php:61
3618
  msgid "Getting started is really easy. You can use one of the plugin’s built-in notifications or create your own using the easy to use trigger builder."
3619
  msgstr ""
3620
 
3621
+ #: classes/Views/EmailNotifications.php:64
3622
  msgid "Email and SMS notifications instantly alert you of important changes on your WordPress site."
3623
  msgstr ""
3624
 
3625
+ #: classes/Views/EmailNotifications.php:68
3626
  msgid "Easily enable any of the built-in security and user management notifications."
3627
  msgstr ""
3628
 
3629
+ #: classes/Views/EmailNotifications.php:72
3630
  msgid "Use the trigger builder to configure any type of email and SMS notification to get instantly alerted of site changes that are important to you and your business."
3631
  msgstr ""
3632
 
3633
+ #: classes/Views/EmailNotifications.php:76
3634
  msgid "All email and SMS templates are configurable, allowing you to personalize them."
3635
  msgstr ""
3636
 
4338
  msgid "Date & Time"
4339
  msgstr ""
4340
 
4341
+ #: classes/Views/Settings.php:1080, extensions/email-notifications/classes/Common.php:1110, extensions/email-notifications/classes/Common.php:1146, extensions/email-notifications/classes/Common.php:1175, extensions/search/classes/Filters/AlertFilter.php:26, extensions/search/classes/Filters/AlertFilter.php:51
4342
  msgid "Event ID"
4343
  msgstr ""
4344
 
5132
 
5133
  #. translators: Upgrade now hyperlink.
5134
  #: extensions/settings-import-export/settings-import-export.php:129
5135
+ msgid "Settings import/export is available in the Professional and Business Plans. %s to configure and receive this feature."
5136
  msgstr ""
5137
 
5138
  #: extensions/settings-import-export/settings-import-export.php:139
5363
  msgid "A trigger's condition must not be longer than 50 characters."
5364
  msgstr ""
5365
 
5366
+ #: extensions/email-notifications/classes/Common.php:939
5367
  msgid "Email or Username is not valid."
5368
  msgstr ""
5369
 
5370
+ #: extensions/email-notifications/classes/Common.php:946
5371
  msgid "Mobile number is not valid."
5372
  msgstr ""
5373
 
5374
+ #: extensions/email-notifications/classes/Common.php:933
5375
  msgid "Email or Username is required."
5376
  msgstr ""
5377
 
5378
+ #: extensions/email-notifications/classes/Common.php:934
5379
  msgid "Mobile number is required."
5380
  msgstr ""
5381
 
5382
+ #: extensions/email-notifications/classes/Common.php:1001, extensions/email-notifications/classes/Notifications.php:610
5383
  msgid "Notification could not be saved."
5384
  msgstr ""
5385
 
5386
+ #: extensions/email-notifications/classes/Common.php:1024, extensions/email-notifications/classes/Notifications.php:696
5387
  msgid "Notification successfully saved."
5388
  msgstr ""
5389
 
5390
+ #: extensions/email-notifications/classes/Common.php:1046
5391
  msgid "Notification Title"
5392
  msgstr ""
5393
 
5394
+ #: extensions/email-notifications/classes/Common.php:1047
5395
  msgid "Website Name"
5396
  msgstr ""
5397
 
5398
+ #: extensions/email-notifications/classes/Common.php:1048
5399
  msgid "User Login Name"
5400
  msgstr ""
5401
 
5402
+ #: extensions/email-notifications/classes/Common.php:1049
5403
  msgid "User First Name"
5404
  msgstr ""
5405
 
5406
+ #: extensions/email-notifications/classes/Common.php:1050
5407
  msgid "User Last Name"
5408
  msgstr ""
5409
 
5410
+ #: extensions/email-notifications/classes/Common.php:1051
5411
  msgid "Role(s) of the User"
5412
  msgstr ""
5413
 
5414
+ #: extensions/email-notifications/classes/Common.php:1052
5415
  msgid "Event generated on Date and Time"
5416
  msgstr ""
5417
 
5418
+ #: extensions/email-notifications/classes/Common.php:1053
5419
  msgid "Event Code"
5420
  msgstr ""
5421
 
5422
+ #: extensions/email-notifications/classes/Common.php:1054
5423
  msgid "Event Severity"
5424
  msgstr ""
5425
 
5426
+ #: extensions/email-notifications/classes/Common.php:1055, extensions/email-notifications/classes/Common.php:1118
5427
  msgid "Event Message"
5428
  msgstr ""
5429
 
5430
+ #: extensions/email-notifications/classes/Common.php:1056
5431
  msgid "Event Metadata"
5432
  msgstr ""
5433
 
5434
+ #: extensions/email-notifications/classes/Common.php:1057
5435
  msgid "Event Links"
5436
  msgstr ""
5437
 
5438
+ #: extensions/email-notifications/classes/Common.php:1058
5439
  msgid "Client IP Address"
5440
  msgstr ""
5441
 
5442
+ #: extensions/email-notifications/classes/Common.php:1059
5443
  msgid "Event Object"
5444
  msgstr ""
5445
 
5446
+ #: extensions/email-notifications/classes/Common.php:1106, extensions/email-notifications/classes/Common.php:1172
5447
  msgid "Notification {title} on website {site} triggered"
5448
  msgstr ""
5449
 
5450
+ #: extensions/email-notifications/classes/Common.php:1107, extensions/email-notifications/classes/Common.php:1173
5451
  msgid "Notification <strong>{title}</strong> was triggered. Below are the notification details:"
5452
  msgstr ""
5453
 
5454
+ #: extensions/email-notifications/classes/Common.php:1109
5455
  msgid "Website"
5456
  msgstr ""
5457
 
5458
+ #: extensions/email-notifications/classes/Common.php:1111, extensions/email-notifications/classes/Common.php:1176, extensions/reports/classes/CsvReportGenerator.php:80, extensions/reports/classes/CsvReportGenerator.php:64, extensions/reports/classes/CsvReportGenerator.php:197, extensions/reports/classes/HtmlReportGenerator.php:244, extensions/reports/classes/HtmlReportGenerator.php:220, extensions/reports/classes/HtmlReportGenerator.php:358, extensions/search/classes/FilterManager.php:475, extensions/user-sessions/classes/View/Sessions.php:156, extensions/user-sessions/classes/View/Sessions.php:321
5459
  msgid "Username"
5460
  msgstr ""
5461
 
5462
+ #: extensions/email-notifications/classes/Common.php:1112
5463
  msgid "User first name"
5464
  msgstr ""
5465
 
5466
+ #: extensions/email-notifications/classes/Common.php:1113
5467
  msgid "User last name"
5468
  msgstr ""
5469
 
5470
+ #: extensions/email-notifications/classes/Common.php:1114
5471
  msgid "User role"
5472
  msgstr ""
5473
 
5474
+ #: extensions/email-notifications/classes/Common.php:1119
5475
  msgid "Event generated on"
5476
  msgstr ""
5477
 
5478
+ #: extensions/email-notifications/classes/Common.php:1121
5479
  msgid "These email notifications are sent with <a href=\"http://wpactivitylog.com\">WP Activity Log</a>, the most comprehensive WordPress activity log plugin solution."
5480
  msgstr ""
5481
 
5482
+ #: extensions/email-notifications/classes/Common.php:1144, extensions/email-notifications/classes/Common.php:1205
5483
  msgid "User/Role"
5484
  msgstr ""
5485
 
5486
+ #: extensions/email-notifications/classes/Common.php:1147
5487
  msgid "Event type"
5488
  msgstr ""
5489
 
5490
+ #: extensions/email-notifications/classes/Common.php:1177, extensions/search/classes/FilterManager.php:487, extensions/search/classes/Filters/userrolefilter.php:49, extensions/search/classes/Filters/userrolefilter.php:87, extensions/user-sessions/classes/View/Sessions.php:326
5491
  msgid "User Role"
5492
  msgstr ""
5493
 
5494
+ #: extensions/email-notifications/classes/Common.php:1179
5495
  msgid "Generated On"
5496
  msgstr ""
5497
 
5498
+ #: extensions/email-notifications/classes/Common.php:1181
5499
  msgid "Monitoring of WordPress and Email Notifications provided by <a href=\"http://wpactivitylog.com\">WP Activity Log, WordPress most comprehensive audit trail plugin</a>."
5500
  msgstr ""
5501
 
5502
+ #: extensions/email-notifications/classes/Common.php:1206
5503
  msgid "Event"
5504
  msgstr ""
5505
 
5506
+ #: extensions/email-notifications/classes/Common.php:1221
5507
  msgid "Subject "
5508
  msgstr ""
5509
 
5510
+ #: extensions/email-notifications/classes/Common.php:1230
5511
  msgid "Body "
5512
  msgstr ""
5513
 
5514
+ #: extensions/email-notifications/classes/Common.php:1233
5515
  msgid "HTML is accepted. Available template tags:"
5516
  msgstr ""
5517
 
8172
  msgid "Last Event"
8173
  msgstr ""
8174
 
8175
+ #: extensions/user-sessions/classes/View/Sessions.php:165, extensions/user-sessions/classes/View/Sessions.php:482
8176
  msgid "Actions"
8177
  msgstr ""
8178
 
8213
  msgid "Network-wide Logins"
8214
  msgstr ""
8215
 
8216
+ #: extensions/user-sessions/classes/View/Sessions.php:456
8217
  msgid "Session ID: "
8218
  msgstr ""
8219
 
8220
+ #: extensions/user-sessions/classes/View/Sessions.php:473
8221
  msgid "Click the button above to retrieve the users' last event."
8222
  msgstr ""
8223
 
8224
+ #: extensions/user-sessions/classes/View/Sessions.php:493
8225
  msgid "Show me this user's events"
8226
  msgstr ""
8227
 
8228
+ #: extensions/user-sessions/classes/View/Sessions.php:509
8229
  msgid "Terminate Session"
8230
  msgstr ""
8231
 
8237
  msgid "No logged in sessions meet your search criteria."
8238
  msgstr ""
8239
 
8240
+ #: extensions/user-sessions/classes/View/Sessions.php:687
8241
  msgid "User sessions do not exist."
8242
  msgstr ""
8243
 
readme.txt CHANGED
@@ -4,9 +4,9 @@ Plugin URI: https://wpactivitylog.com
4
  License: GPLv3
5
  License URI: https://www.gnu.org/licenses/gpl.html
6
  Tags: activity log, wordpress activity logs, security audit log, audit log, user tracking, security event log, audit trail, wordpress security monitor, wordpress admin, wordpress admin monitoring, user activity, admin, multisite, SMS alerts, wordpress monitoring, email notification, wordpress email alerts, tracking, user tracking, user activity report, wordpress audit trail
7
- Requires at least: 4.4
8
- Tested up to: 5.8
9
- Stable tag: 4.3.1.1
10
  Requires PHP: 7.0
11
 
12
  The #1 user-rated activity log plugin. Keep a comprehensive log of the changes that happen on your site with this easy to use plugin.
@@ -208,75 +208,23 @@ Please refer to our [support pages](https://wpactivitylog.com/support/?utm_sourc
208
 
209
  == Changelog ==
210
 
211
- = 4.3.3.1 (2021-10-13) =
212
 
213
- **Bug fixes**
214
- * Fixed critical error with PHP 7.2.
215
-
216
- = 4.3.3 (2021-10-13) =
217
-
218
- Release notes: [WP Activity Log 4.3.3: Plugin setting importer & exporter & support for REST API](https://wpactivitylog.com/wsal-4-3-0/)
219
-
220
- **New activity log event IDs**
221
- * ID 5028: Enabled or disabled automatic updates for a plugin.
222
- * ID 5029: Enabled or disabled automatic updates for a theme.
223
-
224
- **New activity log event IDs for notifications in the plugin**
225
- * ID 6310: Changed the status of the "Daily activity log summary email".
226
- * ID 6311: Modified the list of recepients of the "Daily activity log summary email".
227
- * ID 6312: Changed the status of a built in notification.
228
- * ID 6313: Changed the recepient(s) of a built in notification.
229
- * ID 6314: Added a new custom notification.
230
- * ID 6315: Modified a custom notification.
231
- * ID 6316: Changed the status of a custom notification.
232
- * ID 6317: Deleted a custom notification.
233
- * ID 6318: Modified the default notification template.
234
-
235
- **New activity log event IDs for integrations & activity log mirrors**
236
- * ID 6320: Added a new integration connection.
237
- * ID 6321: Modified an integration connection.
238
- * ID 6322: Deleted an integration connection.
239
- * ID 6323: Added a new activity log mirror.
240
- * ID 6324: Modified an activity log mirror.
241
- * ID 6325: Changed the status of an activity log morror (disabled/enabled).
242
- * ID 6326: Deleted an activity log mirror.
243
- * ID 6327: Changed the statues of the setting "Logging events to database".
244
 
245
  **New features**
 
 
246
 
247
- * Plugin settings exporter & importer: easily export and import the plugin's settings configuration for backups, migration etc.
248
- * Options to delete specific data from the activity log, such as all events about a user, or an IP address.
249
- * Plugin keeps log of authenticated user changes done to the website via the REST API.
250
- * New button to only terminate the users' sessions that match the search criteria in Logged in users' session.
251
- * Added the new {first_name} and {last_name} tags to the custom notifications template.
252
- * New hook to [edit the activity log event data before it is sent to mirrors](https://wpactivitylog.com/support/kb/list-hooks/#wsal_event_data_before_mirror).
253
-
254
  **Improvements**
 
 
 
 
255
 
256
- * Logs from subsites on multisite networks can be mirrored to AWS Cloudwatch as individual log streams.
257
- * [Activity log retention policy](https://wpactivitylog.com/support/kb/activity-log-retention-policies/) can now be specified by the number of days.
258
- * Plugin now reports user role changes done via the "Members" plugin (by Memberpress).
259
- * Event ID 2010 (user uploaded a file) now includes a link to the uploaded attachment.
260
- * Added "Blog ID" and "Site URL" to mirrored activity log events.
261
- * Hover over prompt for users entries in activity log viewer now displays more information about the user.
262
- * Improved the handling of post meta changes ([support ticket](https://wordpress.org/support/topic/issue-with-hook-name-and-param-callback/)).
263
- * Renamed menu entry "BD & Integrations" to "Integrations" to better reflect its purpose.
264
- * Contact us link in install wizard now points to contact us page on website instead of homepage.
265
- * Auto complete filters in Reports now check up to 100 records.
266
- * Added additional database checks to ensure all data is removed from database upon uninstall on a multisite network.
267
- * Improved coverage for the Members plugin - plugin now reports user role changes done via the Members plugin.
268
- * Updated the "Help" link in the first time install wizard.
269
- * change the "wsal_inactive_sessions_test" database override to a filter.
270
- * Improved in-context help messages in plugin settings and ensured all titles are uniform.
271
-
272
  **Bug fixes**
273
- * Fixed a PHP warning which happened when visiting the plugin's settings pages ([support ticket](https://wordpress.org/support/topic/version-4-3-2-php-warning/)).
274
- * Fixed PHP notice which happened when visiting an archive page ([support ticket](https://wordpress.org/support/topic/undefined-index-posturl-on-a-page-type-post/)).
275
- * Event IDs for "integration connections" changes wrongly reported for changes in "activity log mirroring connection" changes.
276
- * Fixed: Activity log retention policies appearing twice in some scenarios.
277
- * Fixed: Activity log retention settings and archive settings popup logic.
278
- * Added the missing argument in a multisite network that were creating a PHP error during plugin uninstall.
279
- * Setting the setting "Remove all data on uninstall" to "No" no longer leaves no option selected.
280
-
281
-
282
- Refer to the [complete plugin changelog](https://wpactivitylog.com/support/kb/plugin-changelog/?utm_source=wordpress.org&utm_medium=referral&utm_campaign=WSAL&utm_content=plugin+repos+description) for more detailed information about what was new, improved and fixed in previous versions of the WP Activity Log plugin.
4
  License: GPLv3
5
  License URI: https://www.gnu.org/licenses/gpl.html
6
  Tags: activity log, wordpress activity logs, security audit log, audit log, user tracking, security event log, audit trail, wordpress security monitor, wordpress admin, wordpress admin monitoring, user activity, admin, multisite, SMS alerts, wordpress monitoring, email notification, wordpress email alerts, tracking, user tracking, user activity report, wordpress audit trail
7
+ Requires at least: 5.0
8
+ Tested up to: 5.9
9
+ Stable tag: 4.3.4
10
  Requires PHP: 7.0
11
 
12
  The #1 user-rated activity log plugin. Keep a comprehensive log of the changes that happen on your site with this easy to use plugin.
208
 
209
  == Changelog ==
210
 
211
+ = 4.3.4 (2022-01-05) =
212
 
213
+ Release notes: [WP Activity Log 4.3.4: paving the way for 4.4](https://wpactivitylog.com/wsal-4-3-4/)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
214
 
215
  **New features**
216
+ * See a user's activity log with one-click from the WordPress users page.
217
+ * Added "Custom User Field" as criterion in the notifications trigger builder.
218
 
 
 
 
 
 
 
 
219
  **Improvements**
220
+ * User's role is reported in the list of logged in users.
221
+ * Added PHP Opcache flush during plugin upgrade (needed for updating to 4.4).
222
+ * Made more JS strings in the plugin translatable.
223
+ * Added the URL metadata in the CSV activity log reports.
224
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
225
  **Bug fixes**
226
+ * In some code the premium plugin trial was 7 days - changed to 14 days.
227
+ * Fixed: cannot set up a third party service integration on WordPress earlier than 5.6.
228
+ * Fixed some typos in some of the events' text.
229
+
230
+ Refer to the [complete plugin changelog](https://wpactivitylog.com/support/kb/plugin-changelog/?utm_source=wordpress.org&utm_medium=referral&utm_campaign=WSAL&utm_content=plugin+repos+description) for more detailed information about what was new, improved and fixed in previous versions of the WP Activity Log plugin.
 
 
 
 
 
wp-security-audit-log.php CHANGED
@@ -4,7 +4,7 @@
4
  * Plugin URI: https://wpactivitylog.com/
5
  * Description: Identify WordPress security issues before they become a problem. Keep track of everything happening on your WordPress including WordPress users activity. Similar to Windows Event Log and Linux Syslog, WP Activity Log generates a security alert for everything that happens on your WordPress blogs and websites. Use the Activity log viewer included in the plugin to see all the security alerts.
6
  * Author: WP White Security
7
- * Version: 4.3.3.1
8
  * Text Domain: wp-security-audit-log
9
  * Author URI: https://www.wpwhitesecurity.com/
10
  * License: GPL2
@@ -17,7 +17,7 @@
17
 
18
  /*
19
  WP Activity Log
20
- Copyright(c) 2021 WP White Security (email : info@wpwhitesecurity.com)
21
 
22
  This program is free software; you can redistribute it and/or modify
23
  it under the terms of the GNU General Public License, version 2, as
@@ -49,7 +49,7 @@ if ( ! function_exists( 'wsal_freemius' ) ) {
49
  *
50
  * @var string
51
  */
52
- public $version = '4.3.3.1';
53
 
54
  /**
55
  * Plugin constants.
@@ -322,6 +322,9 @@ if ( ! function_exists( 'wsal_freemius' ) ) {
322
  return;
323
  }
324
 
 
 
 
325
  $this->define_constants();
326
  $this->set_allowed_html_tags();
327
  $this->includes();
@@ -523,8 +526,10 @@ if ( ! function_exists( 'wsal_freemius' ) ) {
523
 
524
  // Dequeue conflicting scripts.
525
  add_action( 'wp_print_scripts', array( $this, 'dequeue_conflicting_scripts' ) );
 
526
  }
527
 
 
528
  /**
529
  * Whether the current page is the login screen.
530
  *
@@ -958,7 +963,7 @@ if ( ! function_exists( 'wsal_freemius' ) ) {
958
  *
959
  * @return string
960
  *
961
- * @since latest
962
  */
963
  public static function wsal_freemius_update_connect_message( $message, $user_first_name, $plugin_title, $user_login, $site_link, $_freemius_link ) {
964
  $result = sprintf(
4
  * Plugin URI: https://wpactivitylog.com/
5
  * Description: Identify WordPress security issues before they become a problem. Keep track of everything happening on your WordPress including WordPress users activity. Similar to Windows Event Log and Linux Syslog, WP Activity Log generates a security alert for everything that happens on your WordPress blogs and websites. Use the Activity log viewer included in the plugin to see all the security alerts.
6
  * Author: WP White Security
7
+ * Version: 4.3.4
8
  * Text Domain: wp-security-audit-log
9
  * Author URI: https://www.wpwhitesecurity.com/
10
  * License: GPL2
17
 
18
  /*
19
  WP Activity Log
20
+ Copyright(c) 2022 WP White Security (email : info@wpwhitesecurity.com)
21
 
22
  This program is free software; you can redistribute it and/or modify
23
  it under the terms of the GNU General Public License, version 2, as
49
  *
50
  * @var string
51
  */
52
+ public $version = '4.3.4';
53
 
54
  /**
55
  * Plugin constants.
322
  return;
323
  }
324
 
325
+ require_once 'classes/Utilities/OpCacheUtils.php';
326
+ add_filter( 'upgrader_pre_install', array( 'WSAL_Utilities_OpCacheUtils', 'clear_caches' ), 10, 2 );
327
+
328
  $this->define_constants();
329
  $this->set_allowed_html_tags();
330
  $this->includes();
526
 
527
  // Dequeue conflicting scripts.
528
  add_action( 'wp_print_scripts', array( $this, 'dequeue_conflicting_scripts' ) );
529
+
530
  }
531
 
532
+
533
  /**
534
  * Whether the current page is the login screen.
535
  *
963
  *
964
  * @return string
965
  *
966
+ * @since 4.3.4
967
  */
968
  public static function wsal_freemius_update_connect_message( $message, $user_first_name, $plugin_title, $user_login, $site_link, $_freemius_link ) {
969
  $result = sprintf(