Activity Log - Version 2.3.4

Version Description

  • Tweak! - Change Guest user to "N/A"
Download this release

Release Info

Developer KingYes
Plugin Icon 128x128 Activity Log
Version 2.3.4
Comparing to
See all releases

Code changes from version 2.2.3 to 2.3.4

Files changed (68) hide show
  1. aryo-activity-log.php +14 -11
  2. {trunk/assets → assets}/images/elementor-logo.png +0 -0
  3. classes/class-aal-activity-log-list-table.php +63 -60
  4. classes/class-aal-admin-ui.php +143 -3
  5. classes/class-aal-api.php +1 -2
  6. classes/class-aal-help.php +5 -4
  7. classes/class-aal-maintenance.php +1 -1
  8. classes/class-aal-notifications.php +42 -25
  9. classes/class-aal-settings.php +37 -34
  10. hooks/class-aal-hook-posts.php +27 -21
  11. {trunk/i18n → i18n}/strings.php +0 -0
  12. language/aryo-aal-da_DK.mo +0 -0
  13. language/aryo-aal-da_DK.po +0 -496
  14. language/aryo-aal-de_DE.mo +0 -0
  15. language/aryo-aal-de_DE.po +0 -173
  16. language/aryo-aal-he_IL.mo +0 -0
  17. language/aryo-aal-he_IL.po +0 -666
  18. language/aryo-aal-hy_AM.mo +0 -0
  19. language/aryo-aal-hy_AM.po +0 -493
  20. language/aryo-aal-nl_NL.mo +0 -0
  21. language/aryo-aal-nl_NL.po +0 -693
  22. language/aryo-aal-pl_PL.mo +0 -0
  23. language/aryo-aal-pl_PL.po +0 -736
  24. language/aryo-aal-pt_BR.mo +0 -0
  25. language/aryo-aal-pt_BR.po +0 -712
  26. language/aryo-aal-ru_RU.mo +0 -0
  27. language/aryo-aal-ru_RU.po +0 -724
  28. language/aryo-aal-sr_RS.mo +0 -0
  29. language/aryo-aal-sr_RS.po +0 -173
  30. language/aryo-aal-tr_TR.mo +0 -0
  31. language/aryo-aal-tr_TR.po +0 -494
  32. language/aryo-aal.pot +0 -712
  33. language/strings.php +0 -141
  34. notifications/abstract-class-aal-notification-base.php +10 -10
  35. notifications/class-aal-notification-email.php +8 -8
  36. readme.txt +75 -16
  37. trunk/aryo-activity-log.php +0 -139
  38. trunk/assets/css/settings.css +0 -10
  39. trunk/assets/js/settings.js +0 -126
  40. trunk/classes/class-aal-activity-log-list-table.php +0 -493
  41. trunk/classes/class-aal-admin-ui.php +0 -240
  42. trunk/classes/class-aal-api.php +0 -169
  43. trunk/classes/class-aal-help.php +0 -31
  44. trunk/classes/class-aal-hooks.php +0 -38
  45. trunk/classes/class-aal-integration-woocommerce.php +0 -51
  46. trunk/classes/class-aal-maintenance.php +0 -108
  47. trunk/classes/class-aal-notifications.php +0 -297
  48. trunk/classes/class-aal-settings.php +0 -507
  49. trunk/hooks/abstract-class-aal-hook-base.php +0 -13
  50. trunk/hooks/class-aal-hook-attachment.php +0 -38
  51. trunk/hooks/class-aal-hook-comments.php +0 -74
  52. trunk/hooks/class-aal-hook-core.php +0 -31
  53. trunk/hooks/class-aal-hook-export.php +0 -23
  54. trunk/hooks/class-aal-hook-menu.php +0 -40
  55. trunk/hooks/class-aal-hook-options.php +0 -102
  56. trunk/hooks/class-aal-hook-plugins.php +0 -121
  57. trunk/hooks/class-aal-hook-posts.php +0 -84
  58. trunk/hooks/class-aal-hook-taxonomy.php +0 -44
  59. trunk/hooks/class-aal-hook-theme.php +0 -150
  60. trunk/hooks/class-aal-hook-user.php +0 -81
  61. trunk/hooks/class-aal-hook-widgets.php +0 -51
  62. trunk/notifications/abstract-class-aal-notification-base.php +0 -134
  63. trunk/notifications/class-aal-notification-email.php +0 -91
  64. trunk/readme.txt +0 -311
  65. trunk/screenshot-1.png +0 -0
  66. trunk/screenshot-2.png +0 -0
  67. trunk/screenshot-3.png +0 -0
  68. trunk/screenshot-4.png +0 -0
aryo-activity-log.php CHANGED
@@ -5,9 +5,8 @@ Plugin URI: http://wordpress.org/plugins/aryo-activity-log/
5
  Description: Get aware of any activities that are taking place on your dashboard! Imagine it like a black-box for your WordPress site. e.g. post was deleted, plugin was activated, user logged in or logged out - it's all these for you to see.
6
  Author: Yakir Sitbon, Maor Chasen, Ariel Klikstein
7
  Author URI: http://pojo.me/
8
- Version: 2.2.3
9
- Text Domain: aryo-aal
10
- Domain Path: /language/
11
  License: GPLv2 or later
12
 
13
 
@@ -75,14 +74,20 @@ final class AAL_Main {
75
  * @since 2.0.5
76
  */
77
  public $api;
78
-
 
 
 
79
  public function load_textdomain() {
80
- load_plugin_textdomain( 'aryo-aal', false, basename( dirname( __FILE__ ) ) . '/language' );
81
  }
82
 
 
 
 
83
  protected function __construct() {
84
  global $wpdb;
85
-
86
  $this->ui = new AAL_Admin_Ui();
87
  $this->hooks = new AAL_Hooks();
88
  $this->settings = new AAL_Settings();
@@ -107,7 +112,7 @@ final class AAL_Main {
107
  */
108
  public function __clone() {
109
  // Cloning instances of the class is forbidden
110
- _doing_it_wrong( __FUNCTION__, __( 'Cheatin’ huh?', 'aryo-aal' ), '2.0.7' );
111
  }
112
 
113
  /**
@@ -118,7 +123,7 @@ final class AAL_Main {
118
  */
119
  public function __wakeup() {
120
  // Unserializing instances of the class is forbidden
121
- _doing_it_wrong( __FUNCTION__, __( 'Cheatin’ huh?', 'aryo-aal' ), '2.0.7' );
122
  }
123
 
124
  /**
@@ -129,8 +134,6 @@ final class AAL_Main {
129
  self::$_instance = new AAL_Main();
130
  return self::$_instance;
131
  }
132
-
133
  }
134
- AAL_Main::instance();
135
 
136
- // EOF
5
  Description: Get aware of any activities that are taking place on your dashboard! Imagine it like a black-box for your WordPress site. e.g. post was deleted, plugin was activated, user logged in or logged out - it's all these for you to see.
6
  Author: Yakir Sitbon, Maor Chasen, Ariel Klikstein
7
  Author URI: http://pojo.me/
8
+ Version: 2.3.4
9
+ Text Domain: aryo-activity-log
 
10
  License: GPLv2 or later
11
 
12
 
74
  * @since 2.0.5
75
  */
76
  public $api;
77
+
78
+ /**
79
+ * Load text domain
80
+ */
81
  public function load_textdomain() {
82
+ load_plugin_textdomain( 'aryo-activity-log' );
83
  }
84
 
85
+ /**
86
+ * Construct
87
+ */
88
  protected function __construct() {
89
  global $wpdb;
90
+
91
  $this->ui = new AAL_Admin_Ui();
92
  $this->hooks = new AAL_Hooks();
93
  $this->settings = new AAL_Settings();
112
  */
113
  public function __clone() {
114
  // Cloning instances of the class is forbidden
115
+ _doing_it_wrong( __FUNCTION__, __( 'Cheatin’ huh?', 'aryo-activity-log' ), '2.0.7' );
116
  }
117
 
118
  /**
123
  */
124
  public function __wakeup() {
125
  // Unserializing instances of the class is forbidden
126
+ _doing_it_wrong( __FUNCTION__, __( 'Cheatin’ huh?', 'aryo-activity-log' ), '2.0.7' );
127
  }
128
 
129
  /**
134
  self::$_instance = new AAL_Main();
135
  return self::$_instance;
136
  }
 
137
  }
 
138
 
139
+ AAL_Main::instance();
{trunk/assets → assets}/images/elementor-logo.png RENAMED
File without changes
classes/class-aal-activity-log-list-table.php CHANGED
@@ -65,6 +65,10 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
65
 
66
  return 'AND (' . implode( ' OR ', $where ) . ') AND (' . implode( ' OR ', $where_caps ) . ')';
67
  }
 
 
 
 
68
 
69
  public function __construct( $args = array() ) {
70
  parent::__construct(
@@ -97,7 +101,7 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
97
  'per_page',
98
  array(
99
  'default' => 50,
100
- 'label' => __( 'Activities', 'aryo-aal' ),
101
  'option' => 'edit_aal_logs_per_page',
102
  )
103
  );
@@ -108,13 +112,13 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
108
 
109
  public function get_columns() {
110
  $columns = array(
111
- 'date' => __( 'Date', 'aryo-aal' ),
112
- 'author' => __( 'Author', 'aryo-aal' ),
113
- 'ip' => __( 'IP', 'aryo-aal' ),
114
- 'type' => __( 'Type', 'aryo-aal' ),
115
- 'label' => __( 'Label', 'aryo-aal' ),
116
- 'action' => __( 'Action', 'aryo-aal' ),
117
- 'description' => __( 'Description', 'aryo-aal' ),
118
  );
119
 
120
  return $columns;
@@ -122,6 +126,7 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
122
 
123
  public function get_sortable_columns() {
124
  return array(
 
125
  'date' => array( 'hist_time', true ),
126
  );
127
  }
@@ -131,12 +136,12 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
131
 
132
  switch ( $column_name ) {
133
  case 'action' :
134
- $return = ucwords( str_replace( '_', ' ', __( $item->action, 'aryo-aal' ) ) );
135
  break;
136
  case 'date' :
137
- $return = sprintf( '<strong>' . __( '%s ago', 'aryo-aal' ) . '</strong>', human_time_diff( $item->hist_time, current_time( 'timestamp' ) ) );
138
  $return .= '<br />' . date( 'd/m/Y', $item->hist_time );
139
- $return .= '<br />' . date( 'H:i', $item->hist_time );
140
  break;
141
  case 'ip' :
142
  $return = $item->hist_ip;
@@ -163,18 +168,18 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
163
  get_edit_user_link( $user->ID ),
164
  get_avatar( $user->ID, 40 ),
165
  $user->display_name,
166
- isset( $user->roles[0] ) && isset( $wp_roles->role_names[ $user->roles[0] ] ) ? $wp_roles->role_names[ $user->roles[0] ] : __( 'Unknown', 'aryo-aal' )
167
  );
168
  }
169
  }
170
  return sprintf(
171
  '<span class="aal-author-name">%s</span>',
172
- __( 'Guest', 'aryo-aal' )
173
  );
174
  }
175
 
176
  public function column_type( $item ) {
177
- $return = __( $item->object_type, 'aryo-aal' );
178
 
179
  $return = apply_filters( 'aal_table_list_column_type', $return, $item );
180
  return $return;
@@ -212,7 +217,7 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
212
 
213
  case 'Export' :
214
  if ( 'all' === $item->object_name ) {
215
- $return = __( 'All', 'aryo-aal' );
216
  } else {
217
  $pt = get_post_type_object( $item->object_name );
218
  $return = ! empty( $pt->label ) ? $pt->label : $item->object_name;
@@ -221,7 +226,7 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
221
 
222
  case 'Options' :
223
  case 'Core' :
224
- $return = __( $item->object_name, 'aryo-aal' );
225
  break;
226
  }
227
 
@@ -232,7 +237,7 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
232
 
233
  public function display_tablenav( $which ) {
234
  if ( 'top' == $which )
235
- $this->search_box( __( 'Search', 'aryo-aal' ), 'aal-search' );
236
  wp_nonce_field( 'bulk-' . $this->_args['plural'] );
237
  ?>
238
  <div class="tablenav <?php echo esc_attr( $which ); ?>">
@@ -264,18 +269,49 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
264
  $wpdb->activity_log
265
  ) );
266
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
267
  if ( $users ) {
268
  if ( ! isset( $_REQUEST['capshow'] ) )
269
  $_REQUEST['capshow'] = '';
270
 
271
  $output = array();
272
  foreach ( $this->_get_allow_caps() as $cap ) {
273
- $output[ $cap ] = __( ucwords( $cap ), 'aryo-aal' );
274
  }
275
 
276
  if ( ! empty( $output ) ) {
277
  echo '<select name="capshow" id="hs-filter-capshow">';
278
- printf( '<option value="">%s</option>', __( 'All Roles', 'aryo-aal' ) );
279
  foreach ( $output as $key => $value ) {
280
  printf( '<option value="%s"%s>%s</option>', $key, selected( $_REQUEST['capshow'], $key, false ), $value );
281
  }
@@ -288,7 +324,7 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
288
  $output = array();
289
  foreach ( $users as $_user ) {
290
  if ( 0 === (int) $_user->user_id ) {
291
- $output[0] = __( 'Guest', 'aryo-aal' );
292
  continue;
293
  }
294
 
@@ -299,7 +335,7 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
299
 
300
  if ( ! empty( $output ) ) {
301
  echo '<select name="usershow" id="hs-filter-usershow">';
302
- printf( '<option value="">%s</option>', __( 'All Users', 'aryo-aal' ) );
303
  foreach ( $output as $key => $value ) {
304
  printf( '<option value="%s"%s>%s</option>', $key, selected( $_REQUEST['usershow'], $key, false ), $value );
305
  }
@@ -307,27 +343,16 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
307
  }
308
  }
309
 
310
- $types = $wpdb->get_results( $wpdb->prepare(
311
- 'SELECT DISTINCT %1$s FROM `%2$s`
312
- WHERE 1 = 1
313
- ' . $this->_get_where_by_role() . '
314
- GROUP BY `%1$s`
315
- ORDER BY `%1$s`
316
- ;',
317
- 'object_type',
318
- $wpdb->activity_log
319
- ) );
320
-
321
  if ( $types ) {
322
  if ( ! isset( $_REQUEST['typeshow'] ) )
323
  $_REQUEST['typeshow'] = '';
324
 
325
  $output = array();
326
  foreach ( $types as $type )
327
- $output[] = sprintf( '<option value="%1$s"%2$s>%3$s</option>', $type->object_type, selected( $_REQUEST['typeshow'], $type->object_type, false ), __( $type->object_type, 'aryo-aal' ) );
328
 
329
  echo '<select name="typeshow" id="hs-filter-typeshow">';
330
- printf( '<option value="">%s</option>', __( 'All Types', 'aryo-aal' ) );
331
  echo implode( '', $output );
332
  echo '</select>';
333
  }
@@ -350,34 +375,14 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
350
 
351
  $output = array();
352
  foreach ( $actions as $type )
353
- $output[] = sprintf( '<option value="%1$s"%2$s>%1$s</option>', $type->action, selected( $_REQUEST['showaction'], $type->action, false ) );
354
 
355
  echo '<select name="showaction" id="hs-filter-showaction">';
356
- printf( '<option value="">%s</option>', __( 'All Actions', 'aryo-aal' ) );
357
  echo implode( '', $output );
358
  echo '</select>';
359
  }
360
 
361
- // Make sure we get items for filter.
362
- if ( $users || $types ) {
363
- if ( ! isset( $_REQUEST['dateshow'] ) )
364
- $_REQUEST['dateshow'] = '';
365
-
366
- $date_options = array(
367
- '' => __( 'All Time', 'aryo-aal' ),
368
- 'today' => __( 'Today', 'aryo-aal' ),
369
- 'yesterday' => __( 'Yesterday', 'aryo-aal' ),
370
- 'week' => __( 'Week', 'aryo-aal' ),
371
- 'month' => __( 'Month', 'aryo-aal' ),
372
- );
373
- echo '<select name="dateshow" id="hs-filter-date">';
374
- foreach ( $date_options as $key => $value )
375
- printf( '<option value="%1$s"%2$s>%3$s</option>', $key, selected( $_REQUEST['dateshow'], $key, false ), $value );
376
- echo '</select>';
377
-
378
- submit_button( __( 'Filter', 'aryo-aal' ), 'button', false, false, array( 'id' => 'activity-query-submit' ) );
379
- }
380
-
381
  echo '</div>';
382
  }
383
 
@@ -391,7 +396,7 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
391
  if ( ! isset( $_REQUEST['order'] ) || ! in_array( $_REQUEST['order'], array( 'desc', 'asc' ) ) ) {
392
  $_REQUEST['order'] = 'DESC';
393
  }
394
- if ( ! isset( $_REQUEST['orderby'] ) || ! in_array( $_REQUEST['orderby'], array( 'hist_time' ) ) ) {
395
  $_REQUEST['orderby'] = 'hist_time';
396
  }
397
 
@@ -474,17 +479,15 @@ class AAL_Activity_Log_List_Table extends WP_List_Table {
474
  }
475
 
476
  public function search_box( $text, $input_id ) {
477
-
478
  $search_data = isset( $_REQUEST['s'] ) ? sanitize_text_field( $_REQUEST['s'] ) : '';
479
 
480
  $input_id = $input_id . '-search-input';
481
  ?>
482
  <p class="search-box">
483
  <label class="screen-reader-text" for="<?php echo $input_id ?>"><?php echo $text; ?>:</label>
484
- <input type="search" id="<?php echo $input_id ?>" name="s" value="<?php echo $search_data; ?>" />
485
  <?php submit_button( $text, 'button', false, false, array('id' => 'search-submit') ); ?>
486
  </p>
487
  <?php
488
  }
489
-
490
  }
65
 
66
  return 'AND (' . implode( ' OR ', $where ) . ') AND (' . implode( ' OR ', $where_caps ) . ')';
67
  }
68
+
69
+ protected function _get_action_label( $action ) {
70
+ return ucwords( str_replace( '_', ' ', __( $action, 'aryo-activity-log' ) ) );
71
+ }
72
 
73
  public function __construct( $args = array() ) {
74
  parent::__construct(
101
  'per_page',
102
  array(
103
  'default' => 50,
104
+ 'label' => __( 'Activities', 'aryo-activity-log' ),
105
  'option' => 'edit_aal_logs_per_page',
106
  )
107
  );
112
 
113
  public function get_columns() {
114
  $columns = array(
115
+ 'date' => __( 'Date', 'aryo-activity-log' ),
116
+ 'author' => __( 'Author', 'aryo-activity-log' ),
117
+ 'ip' => __( 'IP', 'aryo-activity-log' ),
118
+ 'type' => __( 'Type', 'aryo-activity-log' ),
119
+ 'label' => __( 'Label', 'aryo-activity-log' ),
120
+ 'action' => __( 'Action', 'aryo-activity-log' ),
121
+ 'description' => __( 'Description', 'aryo-activity-log' ),
122
  );
123
 
124
  return $columns;
126
 
127
  public function get_sortable_columns() {
128
  return array(
129
+ 'ip' => 'hist_ip',
130
  'date' => array( 'hist_time', true ),
131
  );
132
  }
136
 
137
  switch ( $column_name ) {
138
  case 'action' :
139
+ $return = $this->_get_action_label( $item->action );
140
  break;
141
  case 'date' :
142
+ $return = sprintf( '<strong>' . __( '%s ago', 'aryo-activity-log' ) . '</strong>', human_time_diff( $item->hist_time, current_time( 'timestamp' ) ) );
143
  $return .= '<br />' . date( 'd/m/Y', $item->hist_time );
144
+ $return .= '<br />' . date( 'H:i:s', $item->hist_time );
145
  break;
146
  case 'ip' :
147
  $return = $item->hist_ip;
168
  get_edit_user_link( $user->ID ),
169
  get_avatar( $user->ID, 40 ),
170
  $user->display_name,
171
+ isset( $user->roles[0] ) && isset( $wp_roles->role_names[ $user->roles[0] ] ) ? $wp_roles->role_names[ $user->roles[0] ] : __( 'Unknown', 'aryo-activity-log' )
172
  );
173
  }
174
  }
175
  return sprintf(
176
  '<span class="aal-author-name">%s</span>',
177
+ __( 'N/A', 'aryo-activity-log' )
178
  );
179
  }
180
 
181
  public function column_type( $item ) {
182
+ $return = __( $item->object_type, 'aryo-activity-log' );
183
 
184
  $return = apply_filters( 'aal_table_list_column_type', $return, $item );
185
  return $return;
217
 
218
  case 'Export' :
219
  if ( 'all' === $item->object_name ) {
220
+ $return = __( 'All', 'aryo-activity-log' );
221
  } else {
222
  $pt = get_post_type_object( $item->object_name );
223
  $return = ! empty( $pt->label ) ? $pt->label : $item->object_name;
226
 
227
  case 'Options' :
228
  case 'Core' :
229
+ $return = __( $item->object_name, 'aryo-activity-log' );
230
  break;
231
  }
232
 
237
 
238
  public function display_tablenav( $which ) {
239
  if ( 'top' == $which )
240
+ $this->search_box( __( 'Search', 'aryo-activity-log' ), 'aal-search' );
241
  wp_nonce_field( 'bulk-' . $this->_args['plural'] );
242
  ?>
243
  <div class="tablenav <?php echo esc_attr( $which ); ?>">
269
  $wpdb->activity_log
270
  ) );
271
 
272
+ $types = $wpdb->get_results( $wpdb->prepare(
273
+ 'SELECT DISTINCT %1$s FROM `%2$s`
274
+ WHERE 1 = 1
275
+ ' . $this->_get_where_by_role() . '
276
+ GROUP BY `%1$s`
277
+ ORDER BY `%1$s`
278
+ ;',
279
+ 'object_type',
280
+ $wpdb->activity_log
281
+ ) );
282
+
283
+ // Make sure we get items for filter.
284
+ if ( $users || $types ) {
285
+ if ( ! isset( $_REQUEST['dateshow'] ) )
286
+ $_REQUEST['dateshow'] = '';
287
+
288
+ $date_options = array(
289
+ '' => __( 'All Time', 'aryo-activity-log' ),
290
+ 'today' => __( 'Today', 'aryo-activity-log' ),
291
+ 'yesterday' => __( 'Yesterday', 'aryo-activity-log' ),
292
+ 'week' => __( 'Week', 'aryo-activity-log' ),
293
+ 'month' => __( 'Month', 'aryo-activity-log' ),
294
+ );
295
+ echo '<select name="dateshow" id="hs-filter-date">';
296
+ foreach ( $date_options as $key => $value )
297
+ printf( '<option value="%1$s"%2$s>%3$s</option>', $key, selected( $_REQUEST['dateshow'], $key, false ), $value );
298
+ echo '</select>';
299
+
300
+ submit_button( __( 'Filter', 'aryo-activity-log' ), 'button', false, false, array( 'id' => 'activity-query-submit' ) );
301
+ }
302
+
303
  if ( $users ) {
304
  if ( ! isset( $_REQUEST['capshow'] ) )
305
  $_REQUEST['capshow'] = '';
306
 
307
  $output = array();
308
  foreach ( $this->_get_allow_caps() as $cap ) {
309
+ $output[ $cap ] = __( ucwords( $cap ), 'aryo-activity-log' );
310
  }
311
 
312
  if ( ! empty( $output ) ) {
313
  echo '<select name="capshow" id="hs-filter-capshow">';
314
+ printf( '<option value="">%s</option>', __( 'All Roles', 'aryo-activity-log' ) );
315
  foreach ( $output as $key => $value ) {
316
  printf( '<option value="%s"%s>%s</option>', $key, selected( $_REQUEST['capshow'], $key, false ), $value );
317
  }
324
  $output = array();
325
  foreach ( $users as $_user ) {
326
  if ( 0 === (int) $_user->user_id ) {
327
+ $output[0] = __( 'N/A', 'aryo-activity-log' );
328
  continue;
329
  }
330
 
335
 
336
  if ( ! empty( $output ) ) {
337
  echo '<select name="usershow" id="hs-filter-usershow">';
338
+ printf( '<option value="">%s</option>', __( 'All Users', 'aryo-activity-log' ) );
339
  foreach ( $output as $key => $value ) {
340
  printf( '<option value="%s"%s>%s</option>', $key, selected( $_REQUEST['usershow'], $key, false ), $value );
341
  }
343
  }
344
  }
345
 
 
 
 
 
 
 
 
 
 
 
 
346
  if ( $types ) {
347
  if ( ! isset( $_REQUEST['typeshow'] ) )
348
  $_REQUEST['typeshow'] = '';
349
 
350
  $output = array();
351
  foreach ( $types as $type )
352
+ $output[] = sprintf( '<option value="%1$s"%2$s>%3$s</option>', $type->object_type, selected( $_REQUEST['typeshow'], $type->object_type, false ), __( $type->object_type, 'aryo-activity-log' ) );
353
 
354
  echo '<select name="typeshow" id="hs-filter-typeshow">';
355
+ printf( '<option value="">%s</option>', __( 'All Types', 'aryo-activity-log' ) );
356
  echo implode( '', $output );
357
  echo '</select>';
358
  }
375
 
376
  $output = array();
377
  foreach ( $actions as $type )
378
+ $output[] = sprintf( '<option value="%s"%s>%s</option>', $type->action, selected( $_REQUEST['showaction'], $type->action, false ), $this->_get_action_label( $type->action ) );
379
 
380
  echo '<select name="showaction" id="hs-filter-showaction">';
381
+ printf( '<option value="">%s</option>', __( 'All Actions', 'aryo-activity-log' ) );
382
  echo implode( '', $output );
383
  echo '</select>';
384
  }
385
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
386
  echo '</div>';
387
  }
388
 
396
  if ( ! isset( $_REQUEST['order'] ) || ! in_array( $_REQUEST['order'], array( 'desc', 'asc' ) ) ) {
397
  $_REQUEST['order'] = 'DESC';
398
  }
399
+ if ( ! isset( $_REQUEST['orderby'] ) || ! in_array( $_REQUEST['orderby'], array( 'hist_time', 'hist_ip' ) ) ) {
400
  $_REQUEST['orderby'] = 'hist_time';
401
  }
402
 
479
  }
480
 
481
  public function search_box( $text, $input_id ) {
 
482
  $search_data = isset( $_REQUEST['s'] ) ? sanitize_text_field( $_REQUEST['s'] ) : '';
483
 
484
  $input_id = $input_id . '-search-input';
485
  ?>
486
  <p class="search-box">
487
  <label class="screen-reader-text" for="<?php echo $input_id ?>"><?php echo $text; ?>:</label>
488
+ <input type="search" id="<?php echo $input_id ?>" name="s" value="<?php echo esc_attr( $search_data ); ?>" />
489
  <?php submit_button( $text, 'button', false, false, array('id' => 'search-submit') ); ?>
490
  </p>
491
  <?php
492
  }
 
493
  }
classes/class-aal-admin-ui.php CHANGED
@@ -13,7 +13,7 @@ class AAL_Admin_Ui {
13
  public function create_admin_menu() {
14
  $menu_capability = current_user_can( 'view_all_aryo_activity_log' ) ? 'view_all_aryo_activity_log' : 'edit_pages';
15
 
16
- $this->_screens['main'] = add_menu_page( __( 'Activity Log', 'aryo-aal' ), __( 'Activity Log', 'aryo-aal' ), $menu_capability, 'activity_log_page', array( &$this, 'activity_log_page_func' ), '', '2.1' );
17
 
18
  // Just make sure we are create instance.
19
  add_action( 'load-' . $this->_screens['main'], array( &$this, 'get_list_table' ) );
@@ -23,10 +23,10 @@ class AAL_Admin_Ui {
23
  $this->get_list_table()->prepare_items();
24
  ?>
25
  <div class="wrap">
26
- <h2 class="aal-page-title"><?php _e( 'Activity Log', 'aryo-aal' ); ?></h2>
27
 
28
  <form id="activity-filter" method="get">
29
- <input type="hidden" name="page" value="<?php echo $_REQUEST['page'] ?>" />
30
  <?php $this->get_list_table()->display(); ?>
31
  </form>
32
  </div>
@@ -83,9 +83,149 @@ class AAL_Admin_Ui {
83
  <?php
84
  }
85
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
86
  public function __construct() {
87
  add_action( 'admin_menu', array( &$this, 'create_admin_menu' ), 20 );
88
  add_action( 'admin_head', array( &$this, 'admin_header' ) );
 
 
 
 
 
 
 
 
 
89
  }
90
 
91
  /**
13
  public function create_admin_menu() {
14
  $menu_capability = current_user_can( 'view_all_aryo_activity_log' ) ? 'view_all_aryo_activity_log' : 'edit_pages';
15
 
16
+ $this->_screens['main'] = add_menu_page( __( 'Activity Log', 'aryo-activity-log' ), __( 'Activity Log', 'aryo-activity-log' ), $menu_capability, 'activity_log_page', array( &$this, 'activity_log_page_func' ), '', '2.1' );
17
 
18
  // Just make sure we are create instance.
19
  add_action( 'load-' . $this->_screens['main'], array( &$this, 'get_list_table' ) );
23
  $this->get_list_table()->prepare_items();
24
  ?>
25
  <div class="wrap">
26
+ <h1 class="aal-page-title"><?php _e( 'Activity Log', 'aryo-activity-log' ); ?></h1>
27
 
28
  <form id="activity-filter" method="get">
29
+ <input type="hidden" name="page" value="<?php echo esc_attr( $_REQUEST['page'] ); ?>" />
30
  <?php $this->get_list_table()->display(); ?>
31
  </form>
32
  </div>
83
  <?php
84
  }
85
 
86
+ public function ajax_aal_install_elementor_set_admin_notice_viewed() {
87
+ update_user_meta( get_current_user_id(), '_aal_elementor_install_notice', 'true' );
88
+ }
89
+
90
+ public function admin_notices() {
91
+ if ( ! current_user_can( 'install_plugins' ) || $this->_is_elementor_installed() )
92
+ return;
93
+
94
+
95
+ if ( 'true' === get_user_meta( get_current_user_id(), '_aal_elementor_install_notice', true ) )
96
+ return;
97
+
98
+ if ( ! in_array( get_current_screen()->id, array( 'toplevel_page_activity_log_page', 'dashboard', 'plugins', 'plugins-network' ) ) ) {
99
+ return;
100
+ }
101
+
102
+ add_action( 'admin_footer', array( &$this, 'print_js' ) );
103
+
104
+ $install_url = self_admin_url( 'plugin-install.php?tab=search&s=elementor' );
105
+ ?>
106
+ <style>
107
+ .notice.aal-notice {
108
+ border-left-color: #9b0a46 !important;
109
+ padding: 20px;
110
+ }
111
+ .rtl .notice.aal-notice {
112
+ border-right-color: #9b0a46 !important;
113
+ }
114
+ .notice.aal-notice .aal-notice-inner {
115
+ display: table;
116
+ width: 100%;
117
+ }
118
+ .notice.aal-notice .aal-notice-inner .aal-notice-icon,
119
+ .notice.aal-notice .aal-notice-inner .aal-notice-content,
120
+ .notice.aal-notice .aal-notice-inner .aal-install-now {
121
+ display: table-cell;
122
+ vertical-align: middle;
123
+ }
124
+ .notice.aal-notice .aal-notice-icon {
125
+ color: #9b0a46;
126
+ font-size: 50px;
127
+ width: 50px;
128
+ }
129
+ .notice.aal-notice .aal-notice-content {
130
+ padding: 0 20px;
131
+ }
132
+ .notice.aal-notice p {
133
+ padding: 0;
134
+ margin: 0;
135
+ }
136
+ .notice.aal-notice h3 {
137
+ margin: 0 0 5px;
138
+ }
139
+ .notice.aal-notice .aal-install-now {
140
+ text-align: center;
141
+ }
142
+ .notice.aal-notice .aal-install-now .aal-install-button {
143
+ background-color: #9b0a46;
144
+ color: #fff;
145
+ border-color: #7c1337;
146
+ box-shadow: 0 1px 0 #7c1337;
147
+ padding: 5px 30px;
148
+ height: auto;
149
+ line-height: 20px;
150
+ text-transform: capitalize;
151
+ }
152
+ .notice.aal-notice .aal-install-now .aal-install-button i {
153
+ padding-right: 5px;
154
+ }
155
+ .rtl .notice.aal-notice .aal-install-now .aal-install-button i {
156
+ padding-right: 0;
157
+ padding-left: 5px;
158
+ }
159
+ .notice.aal-notice .aal-install-now .aal-install-button:hover {
160
+ background-color: #a0124a;
161
+ }
162
+ .notice.aal-notice .aal-install-now .aal-install-button:active {
163
+ box-shadow: inset 0 1px 0 #7c1337;
164
+ transform: translateY(1px);
165
+ }
166
+ @media (max-width: 767px) {
167
+ .notice.aal-notice {
168
+ padding: 10px;
169
+ }
170
+ .notice.aal-notice .aal-notice-inner {
171
+ display: block;
172
+ }
173
+ .notice.aal-notice .aal-notice-inner .aal-notice-content {
174
+ display: block;
175
+ padding: 0;
176
+ }
177
+ .notice.aal-notice .aal-notice-inner .aal-notice-icon,
178
+ .notice.aal-notice .aal-notice-inner .aal-install-now {
179
+ display: none;
180
+ }
181
+ }
182
+ </style>
183
+ <div class="notice updated is-dismissible aal-notice aal-install-elementor">
184
+ <div class="aal-notice-inner">
185
+ <div class="aal-notice-icon">
186
+ <img src="<?php echo plugins_url( 'assets/images/elementor-logo.png', ACTIVITY_LOG__FILE__ ); ?>" alt="Elementor Logo" />
187
+ </div>
188
+
189
+ <div class="aal-notice-content">
190
+ <h3><?php _e( 'Do You Like Activity Log? You\'ll Love Elementor!', 'aryo-activity-log' ); ?></h3>
191
+ <p><?php _e( 'Create high-end, pixel perfect websites at record speeds. Any theme, any page, any design. The most advanced frontend drag & drop page builder.', 'aryo-activity-log' ); ?>
192
+ <a href="https://go.elementor.com/learn/" target="_blank"><?php _e( 'Learn more about Elementor', 'aryo-activity-log' ); ?></a>.</p>
193
+ </div>
194
+
195
+ <div class="aal-install-now">
196
+ <a class="button aal-install-button" href="<?php echo $install_url; ?>"><i class="dashicons dashicons-download"></i><?php _e( 'Install Now For Free!', 'aryo-activity-log' ); ?></a>
197
+ </div>
198
+ </div>
199
+ </div>
200
+ <?php
201
+ }
202
+
203
+ public function print_js() {
204
+ ?>
205
+ <script>jQuery( function( $ ) {
206
+ $( 'div.notice.aal-install-elementor' ).on( 'click', 'button.notice-dismiss', function( event ) {
207
+ event.preventDefault();
208
+
209
+ $.post( ajaxurl, {
210
+ action: 'aal_install_elementor_set_admin_notice_viewed'
211
+ } );
212
+ } );
213
+ } );</script>
214
+ <?php
215
+ }
216
+
217
  public function __construct() {
218
  add_action( 'admin_menu', array( &$this, 'create_admin_menu' ), 20 );
219
  add_action( 'admin_head', array( &$this, 'admin_header' ) );
220
+ add_action( 'admin_notices', array( &$this, 'admin_notices' ) );
221
+ add_action( 'wp_ajax_aal_install_elementor_set_admin_notice_viewed', array( &$this, 'ajax_aal_install_elementor_set_admin_notice_viewed' ) );
222
+ }
223
+
224
+ private function _is_elementor_installed() {
225
+ $file_path = 'elementor/elementor.php';
226
+ $installed_plugins = get_plugins();
227
+
228
+ return isset( $installed_plugins[ $file_path ] );
229
  }
230
 
231
  /**
classes/class-aal-api.php CHANGED
@@ -44,7 +44,7 @@ class AAL_API {
44
  );
45
 
46
  foreach ( $server_ip_keys as $key ) {
47
- if ( isset( $_SERVER[ $key ] ) ) {
48
  return $_SERVER[ $key ];
49
  }
50
  }
@@ -154,7 +154,6 @@ class AAL_API {
154
  $this->_delete_old_items();
155
  do_action( 'aal_insert_log', $args );
156
  }
157
-
158
  }
159
 
160
  /**
44
  );
45
 
46
  foreach ( $server_ip_keys as $key ) {
47
+ if ( isset( $_SERVER[ $key ] ) && filter_var( $_SERVER[ $key ], FILTER_VALIDATE_IP ) ) {
48
  return $_SERVER[ $key ];
49
  }
50
  }
154
  $this->_delete_old_items();
155
  do_action( 'aal_insert_log', $args );
156
  }
 
157
  }
158
 
159
  /**
classes/class-aal-help.php CHANGED
@@ -7,6 +7,7 @@ if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
7
  * Class AAL_Help
8
  */
9
  class AAL_Help {
 
10
  public function __construct() {
11
  add_action( 'in_admin_header', array( $this, 'contextual_help' ) );
12
  }
@@ -17,14 +18,14 @@ class AAL_Help {
17
  switch ( $screen->id ) {
18
  case 'activity-log_page_activity-log-settings':
19
  $screen->add_help_tab( array(
20
- 'title' => __( 'Overview', 'aryo-aal' ),
21
  'id' => 'aal-overview',
22
  'content' => '
23
- <h3>' . __( 'Notifications', 'aryo-aal' ) . '</h3>
24
  <p>' . __( 'This screen lets you control what will happen once a user on your site does something you define. For instance, let us assume that you have created a user on your site
25
- for your content editor. Now, let\'s say that every time that user updates a post, you want to know about it. You can easily do it from this page.', 'aryo-aal' ) . '</p>',
26
  ) );
27
  break;
28
  }
29
  }
30
- }
7
  * Class AAL_Help
8
  */
9
  class AAL_Help {
10
+
11
  public function __construct() {
12
  add_action( 'in_admin_header', array( $this, 'contextual_help' ) );
13
  }
18
  switch ( $screen->id ) {
19
  case 'activity-log_page_activity-log-settings':
20
  $screen->add_help_tab( array(
21
+ 'title' => __( 'Overview', 'aryo-activity-log' ),
22
  'id' => 'aal-overview',
23
  'content' => '
24
+ <h3>' . __( 'Notifications', 'aryo-activity-log' ) . '</h3>
25
  <p>' . __( 'This screen lets you control what will happen once a user on your site does something you define. For instance, let us assume that you have created a user on your site
26
+ for your content editor. Now, let\'s say that every time that user updates a post, you want to know about it. You can easily do it from this page.', 'aryo-activity-log' ) . '</p>',
27
  ) );
28
  break;
29
  }
30
  }
31
+ }
classes/class-aal-maintenance.php CHANGED
@@ -92,7 +92,7 @@ class AAL_Maintenance {
92
  $wpdb->query( "DROP TABLE IF EXISTS `{$wpdb->prefix}aryo_activity_log`;" );
93
 
94
  $admin_role = get_role( 'administrator' );
95
- if ( $admin_role->has_cap( 'view_all_aryo_activity_log' ) )
96
  $admin_role->remove_cap( 'view_all_aryo_activity_log' );
97
 
98
  delete_option( 'activity_log_db_version' );
92
  $wpdb->query( "DROP TABLE IF EXISTS `{$wpdb->prefix}aryo_activity_log`;" );
93
 
94
  $admin_role = get_role( 'administrator' );
95
+ if ( $admin_role && $admin_role->has_cap( 'view_all_aryo_activity_log' ) )
96
  $admin_role->remove_cap( 'view_all_aryo_activity_log' );
97
 
98
  delete_option( 'activity_log_db_version' );
classes/class-aal-notifications.php CHANGED
@@ -59,40 +59,57 @@ class AAL_Notifications {
59
  }
60
 
61
  public function get_object_types() {
62
- // TODO: include filter?
63
- $opts = array(
64
- 'Attachment',
65
- 'Menu',
66
- 'Options',
67
- 'Plugin',
68
- 'Post',
69
- 'Taxonomy',
70
- 'Theme',
71
- 'User',
72
- 'Widget',
 
 
 
 
 
 
73
  );
 
74
  return array_combine( $opts, $opts );
75
  }
76
 
77
  public function get_actions() {
78
- $opts = array(
79
- 'created',
80
- 'deleted',
81
- 'updated',
82
- 'added',
83
- 'activated',
84
- 'deactivated',
85
- 'accessed',
86
- 'file_updated',
87
- 'logged_in',
88
- 'logged_out',
89
- 'wrong_password',
 
 
 
 
 
 
 
 
 
 
90
  );
91
  $ready = array();
92
 
93
  // make key => value pairs (where slug in key)
94
  foreach ( $opts as $opt ) {
95
- $ready[ $opt ] = ucwords( str_replace( '_', ' ', __( $opt, 'aryo-aal' ) ) );
96
  }
97
 
98
  return $ready;
@@ -270,7 +287,7 @@ class AAL_Notifications {
270
  */
271
  public function register_handler( $classname ) {
272
  if ( ! class_exists( $classname ) ) {
273
- trigger_error( __( 'The AAL notification handler you are trying to register does not exist.', 'aryo-aal' ) );
274
  return false;
275
  }
276
 
59
  }
60
 
61
  public function get_object_types() {
62
+ // TODO: It's need to be integration from the plugin
63
+ $opts = apply_filters(
64
+ 'aal_notification_get_object_types',
65
+ array(
66
+ 'Core',
67
+ 'Export',
68
+ 'Post',
69
+ 'Taxonomy',
70
+ 'User',
71
+ 'Options',
72
+ 'Attachment',
73
+ 'Plugin',
74
+ 'Widget',
75
+ 'Theme',
76
+ 'Menu',
77
+ 'Comments',
78
+ )
79
  );
80
+
81
  return array_combine( $opts, $opts );
82
  }
83
 
84
  public function get_actions() {
85
+ // TODO: It's need to be integration from the plugin
86
+ $opts = apply_filters(
87
+ 'aal_notification_get_actions',
88
+ array(
89
+ 'created',
90
+ 'deleted',
91
+ 'updated',
92
+ 'trashed',
93
+ 'untrashed',
94
+ 'spammed',
95
+ 'unspammed',
96
+ 'downloaded',
97
+ 'installed',
98
+ 'added',
99
+ 'activated',
100
+ 'deactivated',
101
+ 'accessed',
102
+ 'file_updated',
103
+ 'logged_in',
104
+ 'logged_out',
105
+ 'wrong_password',
106
+ )
107
  );
108
  $ready = array();
109
 
110
  // make key => value pairs (where slug in key)
111
  foreach ( $opts as $opt ) {
112
+ $ready[ $opt ] = ucwords( str_replace( '_', ' ', __( $opt, 'aryo-activity-log' ) ) );
113
  }
114
 
115
  return $ready;
287
  */
288
  public function register_handler( $classname ) {
289
  if ( ! class_exists( $classname ) ) {
290
+ trigger_error( __( 'The AAL notification handler you are trying to register does not exist.', 'aryo-activity-log' ) );
291
  return false;
292
  }
293
 
classes/class-aal-settings.php CHANGED
@@ -23,10 +23,10 @@ class AAL_Settings {
23
  }
24
 
25
  public function plugin_action_links( $links ) {
26
- $settings_link = sprintf( '<a href="%s" target="_blank">%s</a>', 'https://github.com/KingYes/wordpress-aryo-activity-log', __( 'GitHub', 'aryo-aal' ) );
27
  array_unshift( $links, $settings_link );
28
 
29
- $settings_link = sprintf( '<a href="%s">%s</a>', admin_url( 'admin.php?page=activity-log-settings' ), __( 'Settings', 'aryo-aal' ) );
30
  array_unshift( $links, $settings_link );
31
 
32
  return $links;
@@ -40,8 +40,8 @@ class AAL_Settings {
40
  public function action_admin_menu() {
41
  $this->hook = add_submenu_page(
42
  'activity_log_page',
43
- __( 'Activity Log Settings', 'aryo-aal' ), // <title> tag
44
- __( 'Settings', 'aryo-aal' ), // menu label
45
  'manage_options', // required cap to view this page
46
  $this->slug, // page slug
47
  array( &$this, 'display_settings_page' ) // callback
@@ -79,14 +79,14 @@ class AAL_Settings {
79
  // First, we register a section. This is necessary since all future options must belong to a
80
  add_settings_section(
81
  'general_settings_section', // ID used to identify this section and with which to register options
82
- __( 'Display Options', 'aryo-aal' ), // Title to be displayed on the administration page
83
  array( 'AAL_Settings_Fields', 'general_settings_section_header' ), // Callback used to render the description of the section
84
  $this->slug // Page on which to add this section of options
85
  );
86
 
87
  add_settings_field(
88
  'logs_lifespan',
89
- __( 'Keep logs for', 'aryo-aal' ),
90
  array( 'AAL_Settings_Fields', 'number_field' ),
91
  $this->slug,
92
  'general_settings_section',
@@ -95,24 +95,24 @@ class AAL_Settings {
95
  'page' => $this->slug,
96
  'classes' => array( 'small-text' ),
97
  'type' => 'number',
98
- 'sub_desc' => __( 'days.', 'aryo-aal' ),
99
- 'desc' => __( 'Maximum number of days to keep activity log. Leave blank to keep activity log forever (not recommended).', 'aryo-aal' ),
100
  )
101
  );
102
 
103
  if ( apply_filters( 'aal_allow_option_erase_logs', true ) ) {
104
  add_settings_field(
105
  'raw_delete_log_activities',
106
- __( 'Delete Log Activities', 'aryo-aal' ),
107
  array( 'AAL_Settings_Fields', 'raw_html' ),
108
  $this->slug,
109
  'general_settings_section',
110
  array(
111
- 'html' => sprintf( __( '<a href="%s" id="%s">Reset Database</a>', 'aryo-aal' ), add_query_arg( array(
112
  'action' => 'aal_reset_items',
113
  '_nonce' => wp_create_nonce( 'aal_reset_items' ),
114
  ), admin_url( 'admin-ajax.php' ) ), 'aal-delete-log-activities' ),
115
- 'desc' => __( 'Warning: Clicking this will delete all activities from the database.', 'aryo-aal' ),
116
  )
117
  );
118
  }
@@ -122,21 +122,21 @@ class AAL_Settings {
122
  // Email Notifications Settings
123
  add_settings_section(
124
  'email_notifications', // ID used to identify this section and with which to register options
125
- __( 'Notifications', 'aryo-aal' ), // Title to be displayed on the administration page
126
  array( 'AAL_Settings_Fields', 'email_notifications_section_header' ), // Callback used to render the description of the section
127
  $this->slug // Page on which to add this section of options
128
  );
129
 
130
  add_settings_field(
131
  'notification_rules',
132
- __( 'Notification Events', 'aryo-aal' ),
133
  array( 'AAL_Settings_Fields', 'email_notification_buffer_field' ),
134
  $this->slug,
135
  'email_notifications',
136
  array(
137
  'id' => 'notification_rules',
138
  'page' => $this->slug,
139
- 'desc' => __( 'Maximum number of days to keep activity log. Leave blank to keep activity log forever (not recommended).', 'aryo-aal' ),
140
  )
141
  );
142
 
@@ -157,7 +157,7 @@ class AAL_Settings {
157
 
158
  add_settings_field(
159
  "notification_handler_{$handler_id}_enabled",
160
- __( 'Enable?', 'aryo-aal' ),
161
  array( $handler_obj, '_settings_enabled_field_callback' ),
162
  $this->slug,
163
  "notification_$handler_id",
@@ -193,8 +193,8 @@ class AAL_Settings {
193
  private function menu_print_tabs() {
194
  $current_section = $this->get_setup_section();
195
  $sections = array(
196
- 'general' => __( 'General', 'aryo-aal' ),
197
- 'notifications' => __( 'Notifications', 'aryo-aal' ),
198
  );
199
 
200
  $sections = apply_filters( 'aal_setup_sections', $sections );
@@ -222,9 +222,8 @@ class AAL_Settings {
222
  ?>
223
  <!-- Create a header in the default WordPress 'wrap' container -->
224
  <div class="wrap">
225
-
226
- <div id="icon-themes" class="icon32"></div>
227
- <h2 class="aal-page-title"><?php _e( 'Activity Log Settings', 'aryo-aal' ); ?></h2>
228
  <?php settings_errors(); ?>
229
  <h2 class="nav-tab-wrapper"><?php $this->menu_print_tabs(); ?></h2>
230
 
@@ -243,7 +242,7 @@ class AAL_Settings {
243
  public function admin_notices() {
244
  switch ( filter_input( INPUT_GET, 'message' ) ) {
245
  case 'data_erased':
246
- printf( '<div class="updated"><p>%s</p></div>', __( 'All activities have been successfully deleted.', 'aryo-aal' ) );
247
  break;
248
  }
249
  }
@@ -254,7 +253,7 @@ class AAL_Settings {
254
  <script type="text/javascript">
255
  jQuery( document ).ready( function( $ ) {
256
  $( '#aal-delete-log-activities' ).on( 'click', function( e ) {
257
- if ( ! confirm( '<?php echo __( 'Are you sure you want to do this action?', 'aryo-aal' ); ?>' ) ) {
258
  e.preventDefault();
259
  }
260
  } );
@@ -265,7 +264,7 @@ class AAL_Settings {
265
 
266
  public function ajax_aal_reset_items() {
267
  if ( ! check_ajax_referer( 'aal_reset_items', '_nonce', false ) || ! current_user_can( 'manage_options' ) ) {
268
- wp_die( __( 'You do not have sufficient permissions to access this page.', 'aryo-aal' ) );
269
  }
270
 
271
  AAL_Main::instance()->api->erase_all_items();
@@ -278,6 +277,10 @@ class AAL_Settings {
278
  }
279
 
280
  public function ajax_aal_get_properties() {
 
 
 
 
281
  $action_category = isset( $_REQUEST['action_category'] ) ? $_REQUEST['action_category'] : false;
282
 
283
  $options = AAL_Main::instance()->notifications->get_settings_dropdown_values( $action_category );
@@ -318,13 +321,13 @@ final class AAL_Settings_Fields {
318
 
319
  public static function general_settings_section_header() {
320
  ?>
321
- <p><?php _e( 'These are some basic settings for Activity Log.', 'aryo-aal' ); ?></p>
322
  <?php
323
  }
324
 
325
  public static function email_notifications_section_header() {
326
  ?>
327
- <p><?php _e( 'Serve yourself with custom-tailored notifications. First, define your conditions. Then, choose how the notifications will be sent.', 'aryo-aal' ); ?></p>
328
  <?php
329
  }
330
 
@@ -423,8 +426,8 @@ final class AAL_Settings_Fields {
423
  extract( $args, EXTR_SKIP );
424
 
425
  ?>
426
- <label class="tix-yes-no description"><input type="radio" name="<?php echo esc_attr( $name ); ?>" value="1" <?php checked( $value, true ); ?>> <?php _e( 'Yes', 'aryo-aal' ); ?></label>
427
- <label class="tix-yes-no description"><input type="radio" name="<?php echo esc_attr( $name ); ?>" value="0" <?php checked( $value, false ); ?>> <?php _e( 'No', 'aryo-aal' ); ?></label>
428
 
429
  <?php if ( isset( $args['description'] ) ) : ?>
430
  <p class="description"><?php echo $args['description']; ?></p>
@@ -441,14 +444,14 @@ final class AAL_Settings_Fields {
441
 
442
  // available action categories
443
  $keys = array(
444
- 'user' => __( 'User', 'aryo-aal' ),
445
- 'action-type' => __( 'Action Type', 'aryo-aal' ),
446
- 'action-value' => __( 'Action Performed', 'aryo-aal' ),
447
  );
448
  // available condition types
449
  $conditions = array(
450
- 'equals' => __( 'equals to', 'aryo-aal' ),
451
- 'not_equals' => __( 'not equals to', 'aryo-aal' ),
452
  );
453
 
454
  $common_name = sprintf( '%s[%s]', esc_attr( $args['page'] ), esc_attr( $args['id'] ) );
@@ -458,7 +461,7 @@ final class AAL_Settings_Fields {
458
  // if empty, reset to one element with the key of 1
459
  $rows = empty( $rows ) ? array( array( 'key' => 1 ) ) : $rows;
460
  ?>
461
- <p class="description"><?php _e( 'A notification will be sent upon a successful match with the following conditions:', 'aryo-aal' ); ?></p>
462
  <div class="aal-notifier-settings">
463
  <ul>
464
  <?php foreach ( $rows as $rid => $row ) :
@@ -501,4 +504,4 @@ final class AAL_Settings_Fields {
501
  $args['value'] = AAL_Main::instance()->settings->get_option( $args['id'] );
502
  }
503
  }
504
- }
23
  }
24
 
25
  public function plugin_action_links( $links ) {
26
+ $settings_link = sprintf( '<a href="%s" target="_blank">%s</a>', 'https://github.com/KingYes/wordpress-aryo-activity-log', __( 'GitHub', 'aryo-activity-log' ) );
27
  array_unshift( $links, $settings_link );
28
 
29
+ $settings_link = sprintf( '<a href="%s">%s</a>', admin_url( 'admin.php?page=activity-log-settings' ), __( 'Settings', 'aryo-activity-log' ) );
30
  array_unshift( $links, $settings_link );
31
 
32
  return $links;
40
  public function action_admin_menu() {
41
  $this->hook = add_submenu_page(
42
  'activity_log_page',
43
+ __( 'Activity Log Settings', 'aryo-activity-log' ), // <title> tag
44
+ __( 'Settings', 'aryo-activity-log' ), // menu label
45
  'manage_options', // required cap to view this page
46
  $this->slug, // page slug
47
  array( &$this, 'display_settings_page' ) // callback
79
  // First, we register a section. This is necessary since all future options must belong to a
80
  add_settings_section(
81
  'general_settings_section', // ID used to identify this section and with which to register options
82
+ __( 'Display Options', 'aryo-activity-log' ), // Title to be displayed on the administration page
83
  array( 'AAL_Settings_Fields', 'general_settings_section_header' ), // Callback used to render the description of the section
84
  $this->slug // Page on which to add this section of options
85
  );
86
 
87
  add_settings_field(
88
  'logs_lifespan',
89
+ __( 'Keep logs for', 'aryo-activity-log' ),
90
  array( 'AAL_Settings_Fields', 'number_field' ),
91
  $this->slug,
92
  'general_settings_section',
95
  'page' => $this->slug,
96
  'classes' => array( 'small-text' ),
97
  'type' => 'number',
98
+ 'sub_desc' => __( 'days.', 'aryo-activity-log' ),
99
+ 'desc' => __( 'Maximum number of days to keep activity log. Leave blank to keep activity log forever (not recommended).', 'aryo-activity-log' ),
100
  )
101
  );
102
 
103
  if ( apply_filters( 'aal_allow_option_erase_logs', true ) ) {
104
  add_settings_field(
105
  'raw_delete_log_activities',
106
+ __( 'Delete Log Activities', 'aryo-activity-log' ),
107
  array( 'AAL_Settings_Fields', 'raw_html' ),
108
  $this->slug,
109
  'general_settings_section',
110
  array(
111
+ 'html' => sprintf( __( '<a href="%s" id="%s">Reset Database</a>', 'aryo-activity-log' ), add_query_arg( array(
112
  'action' => 'aal_reset_items',
113
  '_nonce' => wp_create_nonce( 'aal_reset_items' ),
114
  ), admin_url( 'admin-ajax.php' ) ), 'aal-delete-log-activities' ),
115
+ 'desc' => __( 'Warning: Clicking this will delete all activities from the database.', 'aryo-activity-log' ),
116
  )
117
  );
118
  }
122
  // Email Notifications Settings
123
  add_settings_section(
124
  'email_notifications', // ID used to identify this section and with which to register options
125
+ __( 'Notifications', 'aryo-activity-log' ), // Title to be displayed on the administration page
126
  array( 'AAL_Settings_Fields', 'email_notifications_section_header' ), // Callback used to render the description of the section
127
  $this->slug // Page on which to add this section of options
128
  );
129
 
130
  add_settings_field(
131
  'notification_rules',
132
+ __( 'Notification Events', 'aryo-activity-log' ),
133
  array( 'AAL_Settings_Fields', 'email_notification_buffer_field' ),
134
  $this->slug,
135
  'email_notifications',
136
  array(
137
  'id' => 'notification_rules',
138
  'page' => $this->slug,
139
+ 'desc' => __( 'Maximum number of days to keep activity log. Leave blank to keep activity log forever (not recommended).', 'aryo-activity-log' ),
140
  )
141
  );
142
 
157
 
158
  add_settings_field(
159
  "notification_handler_{$handler_id}_enabled",
160
+ __( 'Enable?', 'aryo-activity-log' ),
161
  array( $handler_obj, '_settings_enabled_field_callback' ),
162
  $this->slug,
163
  "notification_$handler_id",
193
  private function menu_print_tabs() {
194
  $current_section = $this->get_setup_section();
195
  $sections = array(
196
+ 'general' => __( 'General', 'aryo-activity-log' ),
197
+ 'notifications' => __( 'Notifications', 'aryo-activity-log' ),
198
  );
199
 
200
  $sections = apply_filters( 'aal_setup_sections', $sections );
222
  ?>
223
  <!-- Create a header in the default WordPress 'wrap' container -->
224
  <div class="wrap">
225
+
226
+ <h1 class="aal-page-title"><?php _e( 'Activity Log Settings', 'aryo-activity-log' ); ?></h1>
 
227
  <?php settings_errors(); ?>
228
  <h2 class="nav-tab-wrapper"><?php $this->menu_print_tabs(); ?></h2>
229
 
242
  public function admin_notices() {
243
  switch ( filter_input( INPUT_GET, 'message' ) ) {
244
  case 'data_erased':
245
+ printf( '<div class="updated"><p>%s</p></div>', __( 'All activities have been successfully deleted.', 'aryo-activity-log' ) );
246
  break;
247
  }
248
  }
253
  <script type="text/javascript">
254
  jQuery( document ).ready( function( $ ) {
255
  $( '#aal-delete-log-activities' ).on( 'click', function( e ) {
256
+ if ( ! confirm( '<?php echo __( 'Are you sure you want to do this action?', 'aryo-activity-log' ); ?>' ) ) {
257
  e.preventDefault();
258
  }
259
  } );
264
 
265
  public function ajax_aal_reset_items() {
266
  if ( ! check_ajax_referer( 'aal_reset_items', '_nonce', false ) || ! current_user_can( 'manage_options' ) ) {
267
+ wp_die( __( 'You do not have sufficient permissions to access this page.', 'aryo-activity-log' ) );
268
  }
269
 
270
  AAL_Main::instance()->api->erase_all_items();
277
  }
278
 
279
  public function ajax_aal_get_properties() {
280
+ if ( ! current_user_can( 'manage_options' ) ) {
281
+ wp_send_json_error();
282
+ }
283
+
284
  $action_category = isset( $_REQUEST['action_category'] ) ? $_REQUEST['action_category'] : false;
285
 
286
  $options = AAL_Main::instance()->notifications->get_settings_dropdown_values( $action_category );
321
 
322
  public static function general_settings_section_header() {
323
  ?>
324
+ <p><?php _e( 'These are some basic settings for Activity Log.', 'aryo-activity-log' ); ?></p>
325
  <?php
326
  }
327
 
328
  public static function email_notifications_section_header() {
329
  ?>
330
+ <p><?php _e( 'Serve yourself with custom-tailored notifications. First, define your conditions. Then, choose how the notifications will be sent.', 'aryo-activity-log' ); ?></p>
331
  <?php
332
  }
333
 
426
  extract( $args, EXTR_SKIP );
427
 
428
  ?>
429
+ <label class="tix-yes-no description"><input type="radio" name="<?php echo esc_attr( $name ); ?>" value="1" <?php checked( $value, true ); ?>> <?php _e( 'Yes', 'aryo-activity-log' ); ?></label>
430
+ <label class="tix-yes-no description"><input type="radio" name="<?php echo esc_attr( $name ); ?>" value="0" <?php checked( $value, false ); ?>> <?php _e( 'No', 'aryo-activity-log' ); ?></label>
431
 
432
  <?php if ( isset( $args['description'] ) ) : ?>
433
  <p class="description"><?php echo $args['description']; ?></p>
444
 
445
  // available action categories
446
  $keys = array(
447
+ 'user' => __( 'User', 'aryo-activity-log' ),
448
+ 'action-type' => __( 'Action Type', 'aryo-activity-log' ),
449
+ 'action-value' => __( 'Action Performed', 'aryo-activity-log' ),
450
  );
451
  // available condition types
452
  $conditions = array(
453
+ 'equals' => __( 'equals to', 'aryo-activity-log' ),
454
+ 'not_equals' => __( 'not equals to', 'aryo-activity-log' ),
455
  );
456
 
457
  $common_name = sprintf( '%s[%s]', esc_attr( $args['page'] ), esc_attr( $args['id'] ) );
461
  // if empty, reset to one element with the key of 1
462
  $rows = empty( $rows ) ? array( array( 'key' => 1 ) ) : $rows;
463
  ?>
464
+ <p class="description"><?php _e( 'A notification will be sent upon a successful match with the following conditions:', 'aryo-activity-log' ); ?></p>
465
  <div class="aal-notifier-settings">
466
  <ul>
467
  <?php foreach ( $rows as $rid => $row ) :
504
  $args['value'] = AAL_Main::instance()->settings->get_option( $args['id'] );
505
  }
506
  }
507
+ }
hooks/class-aal-hook-posts.php CHANGED
@@ -5,14 +5,14 @@ class AAL_Hook_Posts extends AAL_Hook_Base {
5
 
6
  protected function _draft_or_post_title( $post = 0 ) {
7
  $title = get_the_title( $post );
 
8
  if ( empty( $title ) )
9
- $title = __( '(no title)', 'aryo-aal' );
 
10
  return $title;
11
  }
12
 
13
  public function hooks_transition_post_status( $new_status, $old_status, $post ) {
14
- $action = '';
15
-
16
  if ( 'auto-draft' === $old_status && ( 'auto-draft' !== $new_status && 'inherit' !== $new_status ) ) {
17
  // page created
18
  $action = 'created';
@@ -23,10 +23,13 @@ class AAL_Hook_Posts extends AAL_Hook_Base {
23
  }
24
  elseif ( 'trash' === $new_status ) {
25
  // page was deleted.
26
- $action = 'deleted';
 
 
 
27
  }
28
  else {
29
- // page updated. i guess.
30
  $action = 'updated';
31
  }
32
 
@@ -37,13 +40,15 @@ class AAL_Hook_Posts extends AAL_Hook_Base {
37
  if ( 'nav_menu_item' === get_post_type( $post->ID ) )
38
  return;
39
 
40
- aal_insert_log( array(
41
- 'action' => $action,
42
- 'object_type' => 'Post',
43
- 'object_subtype' => $post->post_type,
44
- 'object_id' => $post->ID,
45
- 'object_name' => $this->_draft_or_post_title( $post->ID ),
46
- ) );
 
 
47
  }
48
 
49
  public function hooks_delete_post( $post_id ) {
@@ -59,13 +64,15 @@ class AAL_Hook_Posts extends AAL_Hook_Base {
59
  if ( 'nav_menu_item' === get_post_type( $post->ID ) )
60
  return;
61
 
62
- aal_insert_log( array(
63
- 'action' => 'deleted',
64
- 'object_type' => 'Post',
65
- 'object_subtype' => $post->post_type,
66
- 'object_id' => $post->ID,
67
- 'object_name' => $this->_draft_or_post_title( $post->ID ),
68
- ) );
 
 
69
  }
70
 
71
  public function __construct() {
@@ -74,5 +81,4 @@ class AAL_Hook_Posts extends AAL_Hook_Base {
74
 
75
  parent::__construct();
76
  }
77
-
78
- }
5
 
6
  protected function _draft_or_post_title( $post = 0 ) {
7
  $title = get_the_title( $post );
8
+
9
  if ( empty( $title ) )
10
+ $title = __( '(no title)', 'aryo-activity-log' );
11
+
12
  return $title;
13
  }
14
 
15
  public function hooks_transition_post_status( $new_status, $old_status, $post ) {
 
 
16
  if ( 'auto-draft' === $old_status && ( 'auto-draft' !== $new_status && 'inherit' !== $new_status ) ) {
17
  // page created
18
  $action = 'created';
23
  }
24
  elseif ( 'trash' === $new_status ) {
25
  // page was deleted.
26
+ $action = 'trashed';
27
+ }
28
+ elseif ( 'trash' === $old_status ) {
29
+ $action = 'restored';
30
  }
31
  else {
32
+ // page updated. I guess.
33
  $action = 'updated';
34
  }
35
 
40
  if ( 'nav_menu_item' === get_post_type( $post->ID ) )
41
  return;
42
 
43
+ aal_insert_log(
44
+ array(
45
+ 'action' => $action,
46
+ 'object_type' => 'Post',
47
+ 'object_subtype' => $post->post_type,
48
+ 'object_id' => $post->ID,
49
+ 'object_name' => $this->_draft_or_post_title( $post->ID ),
50
+ )
51
+ );
52
  }
53
 
54
  public function hooks_delete_post( $post_id ) {
64
  if ( 'nav_menu_item' === get_post_type( $post->ID ) )
65
  return;
66
 
67
+ aal_insert_log(
68
+ array(
69
+ 'action' => 'deleted',
70
+ 'object_type' => 'Post',
71
+ 'object_subtype' => $post->post_type,
72
+ 'object_id' => $post->ID,
73
+ 'object_name' => $this->_draft_or_post_title( $post->ID ),
74
+ )
75
+ );
76
  }
77
 
78
  public function __construct() {
81
 
82
  parent::__construct();
83
  }
84
+ }
 
{trunk/i18n → i18n}/strings.php RENAMED
File without changes
language/aryo-aal-da_DK.mo DELETED
Binary file
language/aryo-aal-da_DK.po DELETED
@@ -1,496 +0,0 @@
1
- # Copyright (C) 2013
2
- # This file is distributed under the same license as the package.
3
- msgid ""
4
- msgstr ""
5
- "Project-Id-Version: ARYO Activity Log\n"
6
- "Report-Msgid-Bugs-To: http://wordpress.org/tag/activity-log\n"
7
- "POT-Creation-Date: 2014-02-17 19:21-0000\n"
8
- "PO-Revision-Date: 2014-02-25 22:56-0000\n"
9
- "Last-Translator: Morten Dalgaard Johansen <support@iosoftgame.com>\n"
10
- "Language-Team: Morten Dalgaard Johansen <support@iosoftgame.com>\n"
11
- "MIME-Version: 1.0\n"
12
- "Content-Type: text/plain; charset=UTF-8\n"
13
- "Content-Transfer-Encoding: 8bit\n"
14
- "Plural-Forms: nplurals=2; plural=n != 1;\n"
15
- "X-Generator: Poedit 1.6.4\n"
16
- "X-Poedit-SourceCharset: UTF-8\n"
17
- "X-Poedit-KeywordsList: _;gettext;gettext_noop;__;_e;_x;_n:1,2;_c,_nc:4c,1,2\n"
18
- "X-Poedit-Basepath: .\n"
19
- "Language: da_DK\n"
20
- "X-Poedit-SearchPath-0: ..\n"
21
-
22
- #: ../classes/class-aal-activity-log-list-table.php:82
23
- msgid "Activities"
24
- msgstr "Aktiviteter"
25
-
26
- #: ../classes/class-aal-activity-log-list-table.php:92
27
- msgid "Date"
28
- msgstr "Dato"
29
-
30
- #: ../classes/class-aal-activity-log-list-table.php:93
31
- msgid "Author"
32
- msgstr "Forfatter"
33
-
34
- #: ../classes/class-aal-activity-log-list-table.php:94
35
- msgid "IP"
36
- msgstr "IP"
37
-
38
- #: ../classes/class-aal-activity-log-list-table.php:95
39
- msgid "Type"
40
- msgstr "Type"
41
-
42
- #: ../classes/class-aal-activity-log-list-table.php:96
43
- msgid "Label"
44
- msgstr "Etikette"
45
-
46
- #: ../classes/class-aal-activity-log-list-table.php:97
47
- msgid "Action"
48
- msgstr "Handling"
49
-
50
- #: ../classes/class-aal-activity-log-list-table.php:98
51
- msgid "Description"
52
- msgstr "Beskrivelse"
53
-
54
- #: ../classes/class-aal-activity-log-list-table.php:118
55
- #, php-format
56
- msgid "%s ago"
57
- msgstr "%s siden"
58
-
59
- #: ../classes/class-aal-activity-log-list-table.php:145
60
- msgid "Unknown"
61
- msgstr "Ukendt"
62
-
63
- #: ../classes/class-aal-activity-log-list-table.php:151
64
- #: ../classes/class-aal-activity-log-list-table.php:229
65
- msgid "Guest"
66
- msgstr "Gæst"
67
-
68
- #: ../classes/class-aal-activity-log-list-table.php:240
69
- msgid "All Users"
70
- msgstr "Alle brugere"
71
-
72
- #: ../classes/class-aal-activity-log-list-table.php:267
73
- msgid "All Types"
74
- msgstr "Alle typer"
75
-
76
- #: ../classes/class-aal-activity-log-list-table.php:278
77
- msgid "All Time"
78
- msgstr "Alle tider"
79
-
80
- #: ../classes/class-aal-activity-log-list-table.php:279
81
- msgid "Today"
82
- msgstr "I dag"
83
-
84
- #: ../classes/class-aal-activity-log-list-table.php:280
85
- msgid "Yesterday"
86
- msgstr "I går"
87
-
88
- #: ../classes/class-aal-activity-log-list-table.php:281
89
- msgid "Week"
90
- msgstr "Uge"
91
-
92
- #: ../classes/class-aal-activity-log-list-table.php:282
93
- msgid "Month"
94
- msgstr "Måned"
95
-
96
- #: ../classes/class-aal-activity-log-list-table.php:289
97
- msgid "Filter"
98
- msgstr "Filtre"
99
-
100
- #: ../classes/class-aal-admin-ui.php:17 ../classes/class-aal-admin-ui.php:27
101
- msgid "Activity Log"
102
- msgstr "Aktivitetslog"
103
-
104
- #: ../classes/class-aal-settings.php:21
105
- msgid "GitHub"
106
- msgstr "GitHub"
107
-
108
- #: ../classes/class-aal-settings.php:24 ../classes/class-aal-settings.php:39
109
- msgid "Settings"
110
- msgstr "Indstillinger"
111
-
112
- #: ../classes/class-aal-settings.php:38 ../classes/class-aal-settings.php:106
113
- msgid "Activity Log Settings"
114
- msgstr "Aktivitetslog indstillinger"
115
-
116
- #: ../classes/class-aal-settings.php:59
117
- msgid "Display Options"
118
- msgstr "Visningsindstillinger"
119
-
120
- #: ../classes/class-aal-settings.php:66
121
- msgid "Keep logs for"
122
- msgstr "Før log for"
123
-
124
- #: ../classes/class-aal-settings.php:75
125
- msgid "days."
126
- msgstr "dage."
127
-
128
- #: ../classes/class-aal-settings.php:76
129
- msgid ""
130
- "Maximum number of days to keep activity log. Leave blank to keep activity "
131
- "log forever (not recommended)."
132
- msgstr ""
133
- "Maksimalt antal dage at huske aktivitetsloggen . Lad felet stå tomt for at "
134
- "holde aktiviteten log evigt (anbefales ikke)."
135
-
136
- #: ../classes/class-aal-settings.php:83
137
- msgid "Delete Log Activities"
138
- msgstr "Slet logaktiviteter"
139
-
140
- #: ../classes/class-aal-settings.php:88
141
- #, php-format
142
- msgid "<a href=\"%s\" id=\"%s\">Reset Database</a>"
143
- msgstr "<a href=\"%s\" id=\"%s\">Nulstil database</a>"
144
-
145
- #: ../classes/class-aal-settings.php:92
146
- msgid "Warning: Clicking this will delete all activities from the database."
147
- msgstr ""
148
- "Advarsel: Hvis du klikker dette vil det slette alle aktiviteter fra "
149
- "databasen."
150
-
151
- #: ../classes/class-aal-settings.php:124
152
- msgid "All activities have been successfully deleted."
153
- msgstr "Alle aktiviteter er blevet slettet."
154
-
155
- #: ../classes/class-aal-settings.php:135
156
- msgid "Are you sure you want to do this action?"
157
- msgstr "Er du sikker på at du ønsker at foretage denne handling?"
158
-
159
- #: ../classes/class-aal-settings.php:169
160
- msgid "These are some basic settings for Activity Log."
161
- msgstr "Disse er nogle grundlæggende indstillinger for Activity Log."
162
-
163
- #: ../language/strings.php:2
164
- msgid "ARYO Activity Log"
165
- msgstr "ARYO Activity Log"
166
-
167
- #: ../language/strings.php:3
168
- msgid ""
169
- "Get aware of any activities that are taking place on your dashboard! Imagine "
170
- "it like a black-box for your WordPress site. e.g. post was deleted, plugin "
171
- "was activated, user logged in or logged out - it’s all these for you to see."
172
- msgstr ""
173
- "Bliv opmærksom på aktiviteter, der finder sted i kontrolpanelet! Forestil "
174
- "dig det som en sort boks til dit WordPress site f.eks indlæg blev slettet, "
175
- "plugin blev aktiveret, bruger logget ind eller logget ud - det er alt dette "
176
- "som du kan se ."
177
-
178
- #: ../language/strings.php:6
179
- msgid "Post"
180
- msgstr "Indlæg"
181
-
182
- #: ../language/strings.php:7
183
- msgid "created"
184
- msgstr "oprettet"
185
-
186
- #: ../language/strings.php:8
187
- msgid "updated"
188
- msgstr "opdateret"
189
-
190
- #: ../language/strings.php:9
191
- msgid "deleted"
192
- msgstr "slettet"
193
-
194
- #: ../language/strings.php:12
195
- msgid "Attachment"
196
- msgstr "Vedhæftning"
197
-
198
- #: ../language/strings.php:13
199
- msgid "added"
200
- msgstr "tilføjet"
201
-
202
- #: ../language/strings.php:16
203
- msgid "User"
204
- msgstr "Bruger"
205
-
206
- #: ../language/strings.php:17
207
- msgid "logged_out"
208
- msgstr "logget_ud"
209
-
210
- #: ../language/strings.php:18
211
- msgid "logged_in"
212
- msgstr "logget_ind"
213
-
214
- #: ../language/strings.php:19
215
- msgid "wrong_password"
216
- msgstr "forkert_adgangskode"
217
-
218
- #: ../language/strings.php:22
219
- msgid "Plugin"
220
- msgstr "Plugin"
221
-
222
- #: ../language/strings.php:23
223
- msgid "activated"
224
- msgstr "aktiveret"
225
-
226
- #: ../language/strings.php:24
227
- msgid "deactivated"
228
- msgstr "deaktiveret"
229
-
230
- #: ../language/strings.php:27
231
- msgid "Theme"
232
- msgstr "Tema"
233
-
234
- #: ../language/strings.php:28
235
- msgid "Theme Customizer"
236
- msgstr "Tematilpasning"
237
-
238
- #: ../language/strings.php:31
239
- msgid "Widget"
240
- msgstr "Widget"
241
-
242
- #: ../language/strings.php:34
243
- msgid "Options"
244
- msgstr "Indstillinger"
245
-
246
- #: ../language/strings.php:37
247
- msgid "Menu"
248
- msgstr "Menu"
249
-
250
- #: ../language/strings.php:40
251
- msgid "Taxonomy"
252
- msgstr "Taksonomi"
253
-
254
- #: ../language/strings.php:45
255
- msgid "blogname"
256
- msgstr "blognavn"
257
-
258
- #: ../language/strings.php:46
259
- msgid "blogdescription"
260
- msgstr "blogbeskrivelse"
261
-
262
- #: ../language/strings.php:47
263
- msgid "siteurl"
264
- msgstr ""
265
-
266
- #: ../language/strings.php:48
267
- msgid "home"
268
- msgstr ""
269
-
270
- #: ../language/strings.php:49
271
- msgid "admin_email"
272
- msgstr ""
273
-
274
- #: ../language/strings.php:50
275
- msgid "users_can_register"
276
- msgstr ""
277
-
278
- #: ../language/strings.php:51
279
- msgid "default_role"
280
- msgstr ""
281
-
282
- #: ../language/strings.php:52
283
- msgid "timezone_string"
284
- msgstr ""
285
-
286
- #: ../language/strings.php:53
287
- msgid "date_format"
288
- msgstr ""
289
-
290
- #: ../language/strings.php:54
291
- msgid "time_format"
292
- msgstr ""
293
-
294
- #: ../language/strings.php:55
295
- msgid "start_of_week"
296
- msgstr ""
297
-
298
- #: ../language/strings.php:58
299
- msgid "use_smilies"
300
- msgstr ""
301
-
302
- #: ../language/strings.php:59
303
- msgid "use_balanceTags"
304
- msgstr ""
305
-
306
- #: ../language/strings.php:60
307
- msgid "default_category"
308
- msgstr ""
309
-
310
- #: ../language/strings.php:61
311
- msgid "default_post_format"
312
- msgstr ""
313
-
314
- #: ../language/strings.php:62
315
- msgid "mailserver_url"
316
- msgstr ""
317
-
318
- #: ../language/strings.php:63
319
- msgid "mailserver_login"
320
- msgstr ""
321
-
322
- #: ../language/strings.php:64
323
- msgid "mailserver_pass"
324
- msgstr ""
325
-
326
- #: ../language/strings.php:65
327
- msgid "default_email_category"
328
- msgstr ""
329
-
330
- #: ../language/strings.php:66
331
- msgid "ping_sites"
332
- msgstr ""
333
-
334
- #: ../language/strings.php:69
335
- msgid "show_on_front"
336
- msgstr ""
337
-
338
- #: ../language/strings.php:70
339
- msgid "page_on_front"
340
- msgstr ""
341
-
342
- #: ../language/strings.php:71
343
- msgid "page_for_posts"
344
- msgstr ""
345
-
346
- #: ../language/strings.php:72
347
- msgid "posts_per_page"
348
- msgstr ""
349
-
350
- #: ../language/strings.php:73
351
- msgid "posts_per_rss"
352
- msgstr ""
353
-
354
- #: ../language/strings.php:74
355
- msgid "rss_use_excerpt"
356
- msgstr ""
357
-
358
- #: ../language/strings.php:75
359
- msgid "blog_public"
360
- msgstr ""
361
-
362
- #: ../language/strings.php:78
363
- msgid "default_pingback_flag"
364
- msgstr ""
365
-
366
- #: ../language/strings.php:79
367
- msgid "default_ping_status"
368
- msgstr ""
369
-
370
- #: ../language/strings.php:80
371
- msgid "default_comment_status"
372
- msgstr ""
373
-
374
- #: ../language/strings.php:81
375
- msgid "require_name_email"
376
- msgstr ""
377
-
378
- #: ../language/strings.php:82
379
- msgid "comment_registration"
380
- msgstr ""
381
-
382
- #: ../language/strings.php:83
383
- msgid "close_comments_for_old_posts"
384
- msgstr ""
385
-
386
- #: ../language/strings.php:84
387
- msgid "close_comments_days_old"
388
- msgstr ""
389
-
390
- #: ../language/strings.php:85
391
- msgid "thread_comments"
392
- msgstr ""
393
-
394
- #: ../language/strings.php:86
395
- msgid "thread_comments_depth"
396
- msgstr ""
397
-
398
- #: ../language/strings.php:87
399
- msgid "page_comments"
400
- msgstr ""
401
-
402
- #: ../language/strings.php:88
403
- msgid "comments_per_page"
404
- msgstr ""
405
-
406
- #: ../language/strings.php:89
407
- msgid "default_comments_page"
408
- msgstr ""
409
-
410
- #: ../language/strings.php:90
411
- msgid "comment_order"
412
- msgstr ""
413
-
414
- #: ../language/strings.php:91
415
- msgid "comments_notify"
416
- msgstr ""
417
-
418
- #: ../language/strings.php:92
419
- msgid "moderation_notify"
420
- msgstr ""
421
-
422
- #: ../language/strings.php:93
423
- msgid "comment_moderation"
424
- msgstr ""
425
-
426
- #: ../language/strings.php:94
427
- msgid "comment_whitelist"
428
- msgstr ""
429
-
430
- #: ../language/strings.php:95
431
- msgid "comment_max_links"
432
- msgstr ""
433
-
434
- #: ../language/strings.php:96
435
- msgid "moderation_keys"
436
- msgstr ""
437
-
438
- #: ../language/strings.php:97
439
- msgid "blacklist_keys"
440
- msgstr ""
441
-
442
- #: ../language/strings.php:98
443
- msgid "show_avatars"
444
- msgstr ""
445
-
446
- #: ../language/strings.php:99
447
- msgid "avatar_rating"
448
- msgstr ""
449
-
450
- #: ../language/strings.php:100
451
- msgid "avatar_default"
452
- msgstr ""
453
-
454
- #: ../language/strings.php:103
455
- msgid "thumbnail_size_w"
456
- msgstr ""
457
-
458
- #: ../language/strings.php:104
459
- msgid "thumbnail_size_h"
460
- msgstr ""
461
-
462
- #: ../language/strings.php:105
463
- msgid "thumbnail_crop"
464
- msgstr ""
465
-
466
- #: ../language/strings.php:106
467
- msgid "medium_size_w"
468
- msgstr ""
469
-
470
- #: ../language/strings.php:107
471
- msgid "medium_size_h"
472
- msgstr ""
473
-
474
- #: ../language/strings.php:108
475
- msgid "large_size_w"
476
- msgstr ""
477
-
478
- #: ../language/strings.php:109
479
- msgid "large_size_h"
480
- msgstr ""
481
-
482
- #: ../language/strings.php:110
483
- msgid "uploads_use_yearmonth_folders"
484
- msgstr ""
485
-
486
- #: ../language/strings.php:113
487
- msgid "permalink_structure"
488
- msgstr ""
489
-
490
- #: ../language/strings.php:114
491
- msgid "category_base"
492
- msgstr ""
493
-
494
- #: ../language/strings.php:115
495
- msgid "tag_base"
496
- msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
language/aryo-aal-de_DE.mo DELETED
Binary file
language/aryo-aal-de_DE.po DELETED
@@ -1,173 +0,0 @@
1
- # Copyright (C) 2013
2
- # This file is distributed under the same license as the package.
3
- msgid ""
4
- msgstr ""
5
- "Project-Id-Version: ARYO Activity Log\n"
6
- "Report-Msgid-Bugs-To: http://wordpress.org/tag/activity-log\n"
7
- "POT-Creation-Date: 2013-08-16 01:53+0200\n"
8
- "PO-Revision-Date: 2013-08-16 01:55+0200\n"
9
- "Last-Translator: Yakir Sitbon <kingyes1@gmail.com>\n"
10
- "Language-Team: Robert Harm <LL@li.org>\n"
11
- "Language: de_DE\n"
12
- "MIME-Version: 1.0\n"
13
- "Content-Type: text/plain; charset=UTF-8\n"
14
- "Content-Transfer-Encoding: 8bit\n"
15
- "X-Generator: Poedit 1.5.5\n"
16
-
17
- #: ../classes/class-aal-activity-log-list-table.php:82
18
- msgid "Type"
19
- msgstr "Typ"
20
-
21
- #: ../classes/class-aal-activity-log-list-table.php:83
22
- msgid "Name"
23
- msgstr "Name"
24
-
25
- #: ../classes/class-aal-activity-log-list-table.php:84
26
- msgid "Action"
27
- msgstr "Aktion"
28
-
29
- #: ../classes/class-aal-activity-log-list-table.php:85
30
- msgid "Date"
31
- msgstr "Datum"
32
-
33
- #: ../classes/class-aal-activity-log-list-table.php:99
34
- #, php-format
35
- msgid "%s ago"
36
- msgstr "vor %s"
37
-
38
- #: ../classes/class-aal-activity-log-list-table.php:120
39
- msgid "by "
40
- msgstr "von"
41
-
42
- #: ../classes/class-aal-activity-log-list-table.php:127
43
- #: ../classes/class-aal-activity-log-list-table.php:176
44
- msgid "Guest"
45
- msgstr "Gast"
46
-
47
- #: ../classes/class-aal-activity-log-list-table.php:187
48
- msgid "All Users"
49
- msgstr "Alle Benutzer"
50
-
51
- #: ../classes/class-aal-activity-log-list-table.php:214
52
- msgid "All Types"
53
- msgstr "Alle Typen"
54
-
55
- #: ../classes/class-aal-activity-log-list-table.php:220
56
- msgid "Filter"
57
- msgstr "Filter"
58
-
59
- #: ../classes/class-aal-admin-ui.php:8 ../classes/class-aal-admin-ui.php:18
60
- #: ../classes/class-aal-settings.php:30
61
- msgid "Activity Log"
62
- msgstr "Aktivitätslog"
63
-
64
- #: ../classes/class-aal-settings.php:17
65
- msgid "Settings"
66
- msgstr ""
67
-
68
- #: ../classes/class-aal-settings.php:29
69
- msgid "Activity Log Settings"
70
- msgstr "Aktivitätslog-Einstellungen"
71
-
72
- #: ../classes/class-aal-settings.php:51
73
- msgid "Display Options"
74
- msgstr "Anzeigeoptionen"
75
-
76
- #: ../classes/class-aal-settings.php:58
77
- msgid "Keep logs for"
78
- msgstr "Logs aufbewahren für"
79
-
80
- #: ../classes/class-aal-settings.php:66
81
- msgid "Forever"
82
- msgstr "Für immer"
83
-
84
- #: ../classes/class-aal-settings.php:67
85
- msgid "A year"
86
- msgstr "1 Jahr"
87
-
88
- #: ../classes/class-aal-settings.php:68
89
- msgid "6 months"
90
- msgstr "6 Monate"
91
-
92
- #: ../classes/class-aal-settings.php:69
93
- msgid "A month"
94
- msgstr "1 Monat"
95
-
96
- #: ../classes/class-aal-settings.php:83
97
- msgid "ARYO Activity Log Settings"
98
- msgstr "ARYO Aktivitätslog-Einstellungen"
99
-
100
- #: ../classes/class-aal-settings.php:109
101
- msgid "These are some basic settings for Activity Log."
102
- msgstr "Basis-Einstellungen für das Aktivitätslog"
103
-
104
- #: ../language/strings.php:4
105
- msgid "Post"
106
- msgstr "Beitrag"
107
-
108
- #: ../language/strings.php:5
109
- msgid "created"
110
- msgstr "erstellt"
111
-
112
- #: ../language/strings.php:6
113
- msgid "updated"
114
- msgstr "aktualisiert"
115
-
116
- #: ../language/strings.php:7
117
- msgid "deleted"
118
- msgstr "gelöscht"
119
-
120
- #: ../language/strings.php:10
121
- msgid "Attachment"
122
- msgstr "Anhang"
123
-
124
- #: ../language/strings.php:11
125
- msgid "added"
126
- msgstr "hinzugefügt"
127
-
128
- #: ../language/strings.php:14
129
- msgid "User"
130
- msgstr "Benutzer"
131
-
132
- #: ../language/strings.php:15
133
- msgid "logged_out"
134
- msgstr "ausgeloggt"
135
-
136
- #: ../language/strings.php:16
137
- msgid "logged_in"
138
- msgstr "eingeloggt"
139
-
140
- #: ../language/strings.php:17
141
- msgid "wrong_password"
142
- msgstr "falsches_Passwort"
143
-
144
- #: ../language/strings.php:20
145
- msgid "Plugin"
146
- msgstr "Plugin"
147
-
148
- #: ../language/strings.php:21
149
- msgid "activated"
150
- msgstr "aktiviert"
151
-
152
- #: ../language/strings.php:22
153
- msgid "deactivated"
154
- msgstr "deaktiviert"
155
-
156
- #: ../language/strings.php:25
157
- msgid "Widget"
158
- msgstr "Widget"
159
-
160
- #: ../language/strings.php:28
161
- msgid "Options"
162
- msgstr "Anzeigeoptionen"
163
-
164
- #: ../language/strings.php:31
165
- msgid "Menu"
166
- msgstr "Menü"
167
-
168
- #: ../language/strings.php:34
169
- msgid "Taxonomy"
170
- msgstr "Taxonomie"
171
-
172
- #~ msgid "was "
173
- #~ msgstr "war"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
language/aryo-aal-he_IL.mo DELETED
Binary file
language/aryo-aal-he_IL.po DELETED
@@ -1,666 +0,0 @@
1
- # Copyright (C) 2013
2
- # This file is distributed under the same license as the package.
3
- msgid ""
4
- msgstr ""
5
- "Project-Id-Version: Activity Log\n"
6
- "Report-Msgid-Bugs-To: http://wordpress.org/tag/activity-log\n"
7
- "POT-Creation-Date: 2014-04-26 21:46+0200\n"
8
- "PO-Revision-Date: 2015-05-18 09:24+0200\n"
9
- "Last-Translator: Yakir Sitbon <yakir@pojo.me>\n"
10
- "Language-Team: Pojo Team <team@pojo.me>\n"
11
- "Language: he_IL\n"
12
- "MIME-Version: 1.0\n"
13
- "Content-Type: text/plain; charset=UTF-8\n"
14
- "Content-Transfer-Encoding: 8bit\n"
15
- "Plural-Forms: nplurals=2; plural=n != 1;\n"
16
- "X-Generator: Poedit 1.7.5\n"
17
- "X-Poedit-SourceCharset: UTF-8\n"
18
- "X-Poedit-KeywordsList: _;gettext;gettext_noop;__;_e;_x;_n:1,2;_c,_nc:4c,1,2\n"
19
- "X-Poedit-Basepath: .\n"
20
- "X-Poedit-SearchPath-0: ..\n"
21
-
22
- #: ../aryo-activity-log.php:110 ../aryo-activity-log.php:121
23
- msgid "Cheatin&#8217; huh?"
24
- msgstr "מרמה, אה?"
25
-
26
- #: ../classes/class-aal-activity-log-list-table.php:82
27
- msgid "Activities"
28
- msgstr "פעילויות"
29
-
30
- #: ../classes/class-aal-activity-log-list-table.php:92
31
- msgid "Date"
32
- msgstr "תאריך"
33
-
34
- #: ../classes/class-aal-activity-log-list-table.php:93
35
- msgid "Author"
36
- msgstr "משתמש"
37
-
38
- #: ../classes/class-aal-activity-log-list-table.php:94
39
- msgid "IP"
40
- msgstr ""
41
-
42
- #: ../classes/class-aal-activity-log-list-table.php:95
43
- msgid "Type"
44
- msgstr "סוג"
45
-
46
- #: ../classes/class-aal-activity-log-list-table.php:96
47
- msgid "Label"
48
- msgstr "תוית"
49
-
50
- #: ../classes/class-aal-activity-log-list-table.php:97
51
- msgid "Action"
52
- msgstr "פעולה"
53
-
54
- #: ../classes/class-aal-activity-log-list-table.php:98
55
- msgid "Description"
56
- msgstr "תיאור"
57
-
58
- #: ../classes/class-aal-activity-log-list-table.php:118
59
- #, php-format
60
- msgid "%s ago"
61
- msgstr "לפני %s"
62
-
63
- #: ../classes/class-aal-activity-log-list-table.php:145
64
- msgid "Unknown"
65
- msgstr "לא ידוע"
66
-
67
- #: ../classes/class-aal-activity-log-list-table.php:151
68
- #: ../classes/class-aal-activity-log-list-table.php:229
69
- msgid "Guest"
70
- msgstr "אורח"
71
-
72
- #: ../classes/class-aal-activity-log-list-table.php:240
73
- msgid "All Users"
74
- msgstr "כל המשתמשים"
75
-
76
- #: ../classes/class-aal-activity-log-list-table.php:267
77
- msgid "All Types"
78
- msgstr "כל הסוגים"
79
-
80
- #: ../classes/class-aal-activity-log-list-table.php:278
81
- msgid "All Time"
82
- msgstr "כל הזמן"
83
-
84
- #: ../classes/class-aal-activity-log-list-table.php:279
85
- msgid "Today"
86
- msgstr "היום"
87
-
88
- #: ../classes/class-aal-activity-log-list-table.php:280
89
- msgid "Yesterday"
90
- msgstr "אתמול"
91
-
92
- #: ../classes/class-aal-activity-log-list-table.php:281
93
- msgid "Week"
94
- msgstr "שבוע"
95
-
96
- #: ../classes/class-aal-activity-log-list-table.php:282
97
- msgid "Month"
98
- msgstr "חודש"
99
-
100
- #: ../classes/class-aal-activity-log-list-table.php:289
101
- msgid "Filter"
102
- msgstr "סינון"
103
-
104
- #: ../classes/class-aal-admin-ui.php:17 ../classes/class-aal-admin-ui.php:27
105
- msgid "Activity Log"
106
- msgstr "יומן פעילות"
107
-
108
- #: ../classes/class-aal-help.php:21
109
- msgid "Overview"
110
- msgstr "סקירה"
111
-
112
- #: ../classes/class-aal-help.php:24 ../classes/class-aal-settings.php:126
113
- #: ../classes/class-aal-settings.php:198
114
- msgid "Notifications"
115
- msgstr "התראות"
116
-
117
- #: ../classes/class-aal-help.php:25
118
- msgid ""
119
- "This screen lets you control what will happen once a user on your site does something you define. For instance, let us assume that you have created a user on your site\n"
120
- " for your content editor. Now, let's say that every time that user updates a post, you want to know about it. You can easily do it from this page."
121
- msgstr "עמוד זה מאפשר לך לשלוט במה שיקרה ברגע שמשתמש באתר שלך ביצע את אחד האירועים שהגדרת. לדוגמא, נניח שיצירת משתמשים באתר שלך עם הרשאת עורך ואתה רוצה לדעת כל פעם שהוא פמפרסם פוסט חדש, עכשיו אתה יכול ליצור אירוע כזה בקלות באמצעות מערכת ההתראות."
122
-
123
- #: ../classes/class-aal-notifications.php:274
124
- msgid "The AAL notification handler you are trying to register does not exist."
125
- msgstr ""
126
-
127
- #: ../classes/class-aal-settings.php:27
128
- msgid "GitHub"
129
- msgstr ""
130
-
131
- #: ../classes/class-aal-settings.php:30 ../classes/class-aal-settings.php:45
132
- msgid "Settings"
133
- msgstr "הגדרות"
134
-
135
- #: ../classes/class-aal-settings.php:44 ../classes/class-aal-settings.php:228
136
- msgid "Activity Log Settings"
137
- msgstr "הגדרות יומן פעילות"
138
-
139
- #: ../classes/class-aal-settings.php:83
140
- msgid "Display Options"
141
- msgstr "אפשרויות תצוגה"
142
-
143
- #: ../classes/class-aal-settings.php:90
144
- msgid "Keep logs for"
145
- msgstr "שמירת היסטוריית פעילות למשך"
146
-
147
- #: ../classes/class-aal-settings.php:99
148
- msgid "days."
149
- msgstr "ימים"
150
-
151
- #: ../classes/class-aal-settings.php:100 ../classes/class-aal-settings.php:140
152
- msgid "Maximum number of days to keep activity log. Leave blank to keep activity log forever (not recommended)."
153
- msgstr "מספר ימים מרבי כדי לשמור תיעוד יומן הפעילות. השאר ריק כדי לשמור תיעוד יומן הפעילות לנצח (לא מומלץ)"
154
-
155
- #: ../classes/class-aal-settings.php:107
156
- msgid "Delete Log Activities"
157
- msgstr "מחיקת כל היומן פעילות"
158
-
159
- #: ../classes/class-aal-settings.php:112
160
- #, php-format
161
- msgid "<a href=\"%s\" id=\"%s\">Reset Database</a>"
162
- msgstr "<a href=\"%s\" id=\"%s\">איפוס דטאבייס</a>"
163
-
164
- #: ../classes/class-aal-settings.php:116
165
- msgid "Warning: Clicking this will delete all activities from the database."
166
- msgstr "שימו לב: לחיצה תמחוק את כל הפעילויות מהדטאבייס"
167
-
168
- #: ../classes/class-aal-settings.php:133
169
- msgid "Notification Events"
170
- msgstr "התראות לאירועים"
171
-
172
- #: ../classes/class-aal-settings.php:161
173
- msgid "Enable?"
174
- msgstr "לאפשר?"
175
-
176
- #: ../classes/class-aal-settings.php:197
177
- msgid "General"
178
- msgstr "הגדרות"
179
-
180
- #: ../classes/class-aal-settings.php:247
181
- msgid "All activities have been successfully deleted."
182
- msgstr "כל הפעילויות נמחקו בהצלחה."
183
-
184
- #: ../classes/class-aal-settings.php:258
185
- msgid "Are you sure you want to do this action?"
186
- msgstr "בטוח לבצע את פעולת המחיקה?"
187
-
188
- #: ../classes/class-aal-settings.php:269
189
- msgid "You do not have sufficient permissions to access this page."
190
- msgstr "אין לך הרשאות מספיקות כדי לגשת לעמוד זה."
191
-
192
- #: ../classes/class-aal-settings.php:322
193
- msgid "These are some basic settings for Activity Log."
194
- msgstr "אלו חלק מההגדרות הבסיסיות של יומן הפעילות."
195
-
196
- #: ../classes/class-aal-settings.php:328
197
- msgid "Serve yourself with custom-tailored notifications. First, define your conditions. Then, choose how the notifications will be sent."
198
- msgstr "התראות מותאמות אישית ישירות לאימייל שלך. ראשית, הגדר את האירועים. ולאחר מכן תבחר את התראות שישלחו."
199
-
200
- #: ../classes/class-aal-settings.php:427
201
- msgid "Yes"
202
- msgstr "כן"
203
-
204
- #: ../classes/class-aal-settings.php:428
205
- msgid "No"
206
- msgstr "לא"
207
-
208
- #: ../classes/class-aal-settings.php:445 ../language/strings.php:19
209
- #: ../notifications/abstract-class-aal-notification-base.php:98
210
- msgid "User"
211
- msgstr "משתמש"
212
-
213
- #: ../classes/class-aal-settings.php:446
214
- #: ../notifications/abstract-class-aal-notification-base.php:101
215
- msgid "Action Type"
216
- msgstr "סוג פעולה"
217
-
218
- #: ../classes/class-aal-settings.php:447
219
- msgid "Action Performed"
220
- msgstr "פעולה שבוצעה"
221
-
222
- #: ../classes/class-aal-settings.php:451
223
- msgid "equals to"
224
- msgstr "שווה ל"
225
-
226
- #: ../classes/class-aal-settings.php:452
227
- msgid "not equals to"
228
- msgstr "לא שווה ל"
229
-
230
- #: ../classes/class-aal-settings.php:462
231
- msgid "A notification will be sent upon a successful match with the following conditions:"
232
- msgstr "תישלח התראה אם תהיה התאמה לאחד התנאים הבאים:"
233
-
234
- #: ../hooks/class-aal-hook-posts.php:9
235
- msgid "(no title)"
236
- msgstr "(ללא כותרת)"
237
-
238
- #: ../language/strings.php:6
239
- msgid "Get aware of any activities that are taking place on your dashboard! Imagine it like a black-box for your WordPress site. e.g. post was deleted, plugin was activated, user logged in or logged out - it's all these for you to see."
240
- msgstr "תיעוד כל הפעילויות המתרחשות בלוח הבקרה של מערכת וורדפרס. לדוגמא: פוסט נמחק, תוסף הופעל, משתמש התחבר או התנתק מהמערכת - כל זה מתועד בלוח בקרה של התוסף יומן פעילות."
241
-
242
- #: ../language/strings.php:9
243
- msgid "Post"
244
- msgstr "פוסט"
245
-
246
- #: ../language/strings.php:10
247
- msgid "created"
248
- msgstr "נוצר"
249
-
250
- #: ../language/strings.php:11
251
- msgid "updated"
252
- msgstr "עודכן"
253
-
254
- #: ../language/strings.php:12
255
- msgid "deleted"
256
- msgstr "נמחק"
257
-
258
- #: ../language/strings.php:15
259
- msgid "Attachment"
260
- msgstr "מדיה"
261
-
262
- #: ../language/strings.php:16
263
- msgid "added"
264
- msgstr "נוסף"
265
-
266
- #: ../language/strings.php:20
267
- msgid "logged_out"
268
- msgstr "התנתק"
269
-
270
- #: ../language/strings.php:21
271
- msgid "logged_in"
272
- msgstr "התחבר"
273
-
274
- #: ../language/strings.php:22
275
- msgid "wrong_password"
276
- msgstr "סיסמה שגויה"
277
-
278
- #: ../language/strings.php:25
279
- msgid "Plugin"
280
- msgstr "תוסף"
281
-
282
- #: ../language/strings.php:26
283
- msgid "activated"
284
- msgstr "מופעל"
285
-
286
- #: ../language/strings.php:27
287
- msgid "deactivated"
288
- msgstr "מכובה"
289
-
290
- #: ../language/strings.php:30
291
- msgid "Theme"
292
- msgstr "ערכת עיצוב"
293
-
294
- #: ../language/strings.php:31
295
- msgid "Theme Customizer"
296
- msgstr "התאמה אישית"
297
-
298
- #: ../language/strings.php:34
299
- msgid "Widget"
300
- msgstr "וידג'טים"
301
-
302
- #: ../language/strings.php:37
303
- msgid "Options"
304
- msgstr "הגדרות"
305
-
306
- #: ../language/strings.php:40
307
- msgid "Menu"
308
- msgstr "תפריט"
309
-
310
- #: ../language/strings.php:43
311
- msgid "Taxonomy"
312
- msgstr "טקסונומי"
313
-
314
- #: ../language/strings.php:48
315
- msgid "blogname"
316
- msgstr "שם האתר"
317
-
318
- #: ../language/strings.php:49
319
- msgid "blogdescription"
320
- msgstr "תיאור אתר"
321
-
322
- #: ../language/strings.php:50
323
- msgid "siteurl"
324
- msgstr "כתובת האתר"
325
-
326
- #: ../language/strings.php:51
327
- msgid "home"
328
- msgstr "ראשי"
329
-
330
- #: ../language/strings.php:52
331
- msgid "admin_email"
332
- msgstr "אימייל מנהל אתר"
333
-
334
- #: ../language/strings.php:53
335
- msgid "users_can_register"
336
- msgstr ""
337
-
338
- #: ../language/strings.php:54
339
- msgid "default_role"
340
- msgstr "תפקיד ברירת מחדל"
341
-
342
- #: ../language/strings.php:55
343
- msgid "timezone_string"
344
- msgstr ""
345
-
346
- #: ../language/strings.php:56
347
- msgid "date_format"
348
- msgstr "פורמט תאריך"
349
-
350
- #: ../language/strings.php:57
351
- msgid "time_format"
352
- msgstr "פורמט שעה"
353
-
354
- #: ../language/strings.php:58
355
- msgid "start_of_week"
356
- msgstr "יום תחילת השבוע"
357
-
358
- #: ../language/strings.php:61
359
- msgid "use_smilies"
360
- msgstr "שימוש בסמיילי"
361
-
362
- #: ../language/strings.php:62
363
- msgid "use_balanceTags"
364
- msgstr ""
365
-
366
- #: ../language/strings.php:63
367
- msgid "default_category"
368
- msgstr "קטגוריה ברירת מחדל"
369
-
370
- #: ../language/strings.php:64
371
- msgid "default_post_format"
372
- msgstr "פורמט ברירת מחדל"
373
-
374
- #: ../language/strings.php:65
375
- #, fuzzy
376
- msgid "mailserver_url"
377
- msgstr "קישור URL"
378
-
379
- #: ../language/strings.php:66
380
- #, fuzzy
381
- msgid "mailserver_login"
382
- msgstr "התחברות"
383
-
384
- #: ../language/strings.php:67
385
- msgid "mailserver_pass"
386
- msgstr ""
387
-
388
- #: ../language/strings.php:68
389
- msgid "default_email_category"
390
- msgstr "אימייל ברירת מחדל"
391
-
392
- #: ../language/strings.php:69
393
- msgid "ping_sites"
394
- msgstr ""
395
-
396
- #: ../language/strings.php:72
397
- msgid "show_on_front"
398
- msgstr "תצוגת עמוד ראשי"
399
-
400
- #: ../language/strings.php:73
401
- msgid "page_on_front"
402
- msgstr "עמוד ראשי"
403
-
404
- #: ../language/strings.php:74
405
- msgid "page_for_posts"
406
- msgstr "עמוד פוסטים"
407
-
408
- #: ../language/strings.php:75
409
- msgid "posts_per_page"
410
- msgstr "מספר פוסטים בעמוד"
411
-
412
- #: ../language/strings.php:76
413
- msgid "posts_per_rss"
414
- msgstr "מספר פוסטים ב RSS"
415
-
416
- #: ../language/strings.php:77
417
- msgid "rss_use_excerpt"
418
- msgstr "RSS שימוש בתקציר"
419
-
420
- #: ../language/strings.php:78
421
- msgid "blog_public"
422
- msgstr ""
423
-
424
- #: ../language/strings.php:81
425
- #, fuzzy
426
- msgid "default_pingback_flag"
427
- msgstr "ברירת מחדל"
428
-
429
- #: ../language/strings.php:82
430
- #, fuzzy
431
- msgid "default_ping_status"
432
- msgstr "ברירת מחדל"
433
-
434
- #: ../language/strings.php:83
435
- #, fuzzy
436
- msgid "default_comment_status"
437
- msgstr "ברירת מחדל"
438
-
439
- #: ../language/strings.php:84
440
- #, fuzzy
441
- msgid "require_name_email"
442
- msgstr "שם:"
443
-
444
- #: ../language/strings.php:85
445
- msgid "comment_registration"
446
- msgstr "תגובות למשתמשים רשומים"
447
-
448
- #: ../language/strings.php:86
449
- #, fuzzy
450
- msgid "close_comments_for_old_posts"
451
- msgstr "לאפשר לגולשים להגיב על פוסטים חדשים"
452
-
453
- #: ../language/strings.php:87
454
- msgid "close_comments_days_old"
455
- msgstr "סגירת תגובות לפוסטים ישנים"
456
-
457
- #: ../language/strings.php:88
458
- msgid "thread_comments"
459
- msgstr "תגובות משורשרות"
460
-
461
- #: ../language/strings.php:89
462
- msgid "thread_comments_depth"
463
- msgstr "עומק תגובות משורשרות"
464
-
465
- #: ../language/strings.php:90
466
- msgid "page_comments"
467
- msgstr "תגובות בעמודים"
468
-
469
- #: ../language/strings.php:91
470
- msgid "comments_per_page"
471
- msgstr "מספר תגובות בעמוד"
472
-
473
- #: ../language/strings.php:92
474
- #, fuzzy
475
- msgid "default_comments_page"
476
- msgstr "ברירת מחדל"
477
-
478
- #: ../language/strings.php:93
479
- msgid "comment_order"
480
- msgstr "סידור תגובות"
481
-
482
- #: ../language/strings.php:94
483
- msgid "comments_notify"
484
- msgstr "התראות לתגובות"
485
-
486
- #: ../language/strings.php:95
487
- msgid "moderation_notify"
488
- msgstr "אישור ידני"
489
-
490
- #: ../language/strings.php:96
491
- msgid "comment_moderation"
492
- msgstr "אישור תגובות"
493
-
494
- #: ../language/strings.php:97
495
- msgid "comment_whitelist"
496
- msgstr "תגובות רשימה לבנה"
497
-
498
- #: ../language/strings.php:98
499
- msgid "comment_max_links"
500
- msgstr "מקסימום קישורים בתגובה"
501
-
502
- #: ../language/strings.php:99
503
- msgid "moderation_keys"
504
- msgstr ""
505
-
506
- #: ../language/strings.php:100
507
- msgid "blacklist_keys"
508
- msgstr ""
509
-
510
- #: ../language/strings.php:101
511
- msgid "show_avatars"
512
- msgstr "הצגת אווטאר"
513
-
514
- #: ../language/strings.php:102
515
- msgid "avatar_rating"
516
- msgstr "ציון אווטאר"
517
-
518
- #: ../language/strings.php:103
519
- msgid "avatar_default"
520
- msgstr "אווטאר ברירת מחדל"
521
-
522
- #: ../language/strings.php:106
523
- msgid "thumbnail_size_w"
524
- msgstr "רוחב תמונה מוקטנת"
525
-
526
- #: ../language/strings.php:107
527
- msgid "thumbnail_size_h"
528
- msgstr "גובה תמונה מוקטנת"
529
-
530
- #: ../language/strings.php:108
531
- msgid "thumbnail_crop"
532
- msgstr "חיתוך תמונה מוקטנת"
533
-
534
- #: ../language/strings.php:109
535
- msgid "medium_size_w"
536
- msgstr "רוחב תמונה בינונית"
537
-
538
- #: ../language/strings.php:110
539
- msgid "medium_size_h"
540
- msgstr "גובה תמונה בינונית"
541
-
542
- #: ../language/strings.php:111
543
- msgid "large_size_w"
544
- msgstr "רוחב תמונה גדולה"
545
-
546
- #: ../language/strings.php:112
547
- msgid "large_size_h"
548
- msgstr "גובה תמונה גדולה"
549
-
550
- #: ../language/strings.php:113
551
- msgid "uploads_use_yearmonth_folders"
552
- msgstr "סידור מדיה בתיקיות לפי תאריך"
553
-
554
- #: ../language/strings.php:116
555
- msgid "permalink_structure"
556
- msgstr "מבנה קישורים"
557
-
558
- #: ../language/strings.php:117
559
- msgid "category_base"
560
- msgstr "קטגוריית בסיס"
561
-
562
- #: ../language/strings.php:118
563
- msgid "tag_base"
564
- msgstr "תגית בסיס"
565
-
566
- #: ../notifications/abstract-class-aal-notification-base.php:99
567
- msgid "Object Type"
568
- msgstr "סוג אובייקט"
569
-
570
- #: ../notifications/abstract-class-aal-notification-base.php:100
571
- msgid "Object Name"
572
- msgstr "שם אובייקט"
573
-
574
- #: ../notifications/abstract-class-aal-notification-base.php:102
575
- msgid "IP Address"
576
- msgstr "כתובת IP"
577
-
578
- #: ../notifications/abstract-class-aal-notification-base.php:121
579
- msgid "N/A"
580
- msgstr ""
581
-
582
- #: ../notifications/class-aal-notification-email.php:15
583
- msgid "Email"
584
- msgstr "אימייל"
585
-
586
- #: ../notifications/class-aal-notification-email.php:16
587
- msgid "Get notified by Email."
588
- msgstr "לקבל התראות באמצעות האימייל."
589
-
590
- #: ../notifications/class-aal-notification-email.php:49
591
- msgid "New notification from Activity Log"
592
- msgstr "הודעה חדשה מיומן פעילות באתר שלך"
593
-
594
- #: ../notifications/class-aal-notification-email.php:65
595
- msgid ""
596
- "Hi there!\n"
597
- "\n"
598
- "A notification condition on [sitename] was matched. Here are the details:\n"
599
- "\n"
600
- "[action-details]\n"
601
- "\n"
602
- "Sent by ARYO Activity Log"
603
- msgstr ""
604
- "שלום וברכה!\n"
605
- "\n"
606
- "נמצאה התראה חדשה באתר [sitename]. להלן הפרטים:\n"
607
- "\n"
608
- "[action-details]\n"
609
- "\n"
610
- "נשלח על ידי תוסף יומן פעילות"
611
-
612
- #: ../notifications/class-aal-notification-email.php:67
613
- msgid "From Email"
614
- msgstr "מאת אימייל"
615
-
616
- #: ../notifications/class-aal-notification-email.php:67
617
- msgid "The source Email address"
618
- msgstr "מקור כתובת אימייל"
619
-
620
- #: ../notifications/class-aal-notification-email.php:68
621
- msgid "To Email"
622
- msgstr "אל אימייל"
623
-
624
- #: ../notifications/class-aal-notification-email.php:68
625
- msgid "The Email address notifications will be sent to"
626
- msgstr "התראות אימייל ישלחו אל"
627
-
628
- #: ../notifications/class-aal-notification-email.php:69
629
- msgid "Message"
630
- msgstr "הודעה"
631
-
632
- #: ../notifications/class-aal-notification-email.php:69
633
- #, php-format
634
- msgid "Customize the message using the following placeholders: %s"
635
- msgstr "התאמה אישית של נוסח ההודעה באמצעות הקיצורים הבאים: %s"
636
-
637
- #, fuzzy
638
- #~ msgid "Me too"
639
- #~ msgstr "שלח אלי אימייל בכל פעם"
640
-
641
- #~ msgid "Items"
642
- #~ msgstr "פריטים"
643
-
644
- #~ msgid "All Dates"
645
- #~ msgstr "כל הזמן"
646
-
647
- #~ msgid "Yakir Sitbon, Maor Chasen, Ariel Klikstein"
648
- #~ msgstr "יקיר סיטבון, מאור חסן, אריאל קליקשטיין"
649
-
650
- #~ msgid "Name"
651
- #~ msgstr "שם"
652
-
653
- #~ msgid "by "
654
- #~ msgstr "ע\"י"
655
-
656
- #~ msgid "ARYO Activity Log Settings"
657
- #~ msgstr "הגדרות יומן פעילות"
658
-
659
- #~ msgid "Forever"
660
- #~ msgstr "לתמיד"
661
-
662
- #~ msgid "A year"
663
- #~ msgstr "שנה"
664
-
665
- #~ msgid "6 months"
666
- #~ msgstr "6 חודשים"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
language/aryo-aal-hy_AM.mo DELETED
Binary file
language/aryo-aal-hy_AM.po DELETED
@@ -1,493 +0,0 @@
1
- # Copyright (C) 2013
2
- # This file is distributed under the same license as the package.
3
- msgid ""
4
- msgstr ""
5
- "Project-Id-Version: ARYO Activity Log\n"
6
- "Report-Msgid-Bugs-To: http://wordpress.org/tag/activity-log\n"
7
- "POT-Creation-Date: 2014-02-17 19:21-0000\n"
8
- "PO-Revision-Date: 2014-02-28 08:29-0000\n"
9
- "Last-Translator: Yakir Sitbon <kingyes1@gmail.com>\n"
10
- "Language-Team: LANGUAGE <LL@li.org>\n"
11
- "MIME-Version: 1.0\n"
12
- "Content-Type: text/plain; charset=UTF-8\n"
13
- "Content-Transfer-Encoding: 8bit\n"
14
- "Plural-Forms: nplurals=2; plural=n != 1;\n"
15
- "X-Generator: Poedit 1.6.4\n"
16
- "X-Poedit-SourceCharset: UTF-8\n"
17
- "X-Poedit-KeywordsList: _;gettext;gettext_noop;__;_e;_x;_n:1,2;_c,_nc:4c,1,2\n"
18
- "X-Poedit-Basepath: .\n"
19
- "Language: hy_AM\n"
20
- "X-Poedit-SearchPath-0: ..\n"
21
-
22
- #: ../classes/class-aal-activity-log-list-table.php:82
23
- msgid "Activities"
24
- msgstr "Ակտիվություն"
25
-
26
- #: ../classes/class-aal-activity-log-list-table.php:92
27
- msgid "Date"
28
- msgstr "Ամսաթիվ"
29
-
30
- #: ../classes/class-aal-activity-log-list-table.php:93
31
- msgid "Author"
32
- msgstr "Հեղինակ"
33
-
34
- #: ../classes/class-aal-activity-log-list-table.php:94
35
- msgid "IP"
36
- msgstr "IP"
37
-
38
- #: ../classes/class-aal-activity-log-list-table.php:95
39
- msgid "Type"
40
- msgstr "Տիպ"
41
-
42
- #: ../classes/class-aal-activity-log-list-table.php:96
43
- msgid "Label"
44
- msgstr "պիտակ"
45
-
46
- #: ../classes/class-aal-activity-log-list-table.php:97
47
- msgid "Action"
48
- msgstr "Գործողություն"
49
-
50
- #: ../classes/class-aal-activity-log-list-table.php:98
51
- msgid "Description"
52
- msgstr "Նկարագիր"
53
-
54
- #: ../classes/class-aal-activity-log-list-table.php:118
55
- #, php-format
56
- msgid "%s ago"
57
- msgstr "%s տարիք"
58
-
59
- #: ../classes/class-aal-activity-log-list-table.php:145
60
- msgid "Unknown"
61
- msgstr "անհայտ"
62
-
63
- #: ../classes/class-aal-activity-log-list-table.php:151
64
- #: ../classes/class-aal-activity-log-list-table.php:229
65
- msgid "Guest"
66
- msgstr "Հյուր"
67
-
68
- #: ../classes/class-aal-activity-log-list-table.php:240
69
- msgid "All Users"
70
- msgstr "Բոլոր օգտվողները"
71
-
72
- #: ../classes/class-aal-activity-log-list-table.php:267
73
- msgid "All Types"
74
- msgstr "Բոլոր տիպերը"
75
-
76
- #: ../classes/class-aal-activity-log-list-table.php:278
77
- msgid "All Time"
78
- msgstr "Ամբողջ ժամանակ"
79
-
80
- #: ../classes/class-aal-activity-log-list-table.php:279
81
- msgid "Today"
82
- msgstr "Այսօր"
83
-
84
- #: ../classes/class-aal-activity-log-list-table.php:280
85
- msgid "Yesterday"
86
- msgstr "Երեկ"
87
-
88
- #: ../classes/class-aal-activity-log-list-table.php:281
89
- msgid "Week"
90
- msgstr "Շաբաթ"
91
-
92
- #: ../classes/class-aal-activity-log-list-table.php:282
93
- msgid "Month"
94
- msgstr "Ամիս"
95
-
96
- #: ../classes/class-aal-activity-log-list-table.php:289
97
- msgid "Filter"
98
- msgstr "Ֆիլտր"
99
-
100
- #: ../classes/class-aal-admin-ui.php:17 ../classes/class-aal-admin-ui.php:27
101
- msgid "Activity Log"
102
- msgstr "Ակտիվության գրանցամատյան"
103
-
104
- #: ../classes/class-aal-settings.php:21
105
- msgid "GitHub"
106
- msgstr "GitHub"
107
-
108
- #: ../classes/class-aal-settings.php:24 ../classes/class-aal-settings.php:39
109
- msgid "Settings"
110
- msgstr "պարամետրեր"
111
-
112
- #: ../classes/class-aal-settings.php:38 ../classes/class-aal-settings.php:106
113
- msgid "Activity Log Settings"
114
- msgstr "Activity Log Settings"
115
-
116
- #: ../classes/class-aal-settings.php:59
117
- msgid "Display Options"
118
- msgstr "Դիտման կարգավորումներ"
119
-
120
- #: ../classes/class-aal-settings.php:66
121
- msgid "Keep logs for"
122
- msgstr "Պահմանել գրանցամատյանը "
123
-
124
- #: ../classes/class-aal-settings.php:75
125
- msgid "days."
126
- msgstr "օր:"
127
-
128
- #: ../classes/class-aal-settings.php:76
129
- msgid ""
130
- "Maximum number of days to keep activity log. Leave blank to keep activity "
131
- "log forever (not recommended)."
132
- msgstr ""
133
- "Մաքսիմում օրերի քանակը որպեսզի պահպանվի գրանցամոտյանը: Բաց թողեք եթե ուզում "
134
- "եք պահպանվի ընդմիշտ:"
135
-
136
- #: ../classes/class-aal-settings.php:83
137
- msgid "Delete Log Activities"
138
- msgstr "Ջնջել գրանցամատյանի ակտիվությունը"
139
-
140
- #: ../classes/class-aal-settings.php:88
141
- #, php-format
142
- msgid "<a href=\"%s\" id=\"%s\">Reset Database</a>"
143
- msgstr "<a href=\"%s\" id=\"%s\"> Սկզբնական վիճակին բերել տվյալների բազան</a>"
144
-
145
- #: ../classes/class-aal-settings.php:92
146
- msgid "Warning: Clicking this will delete all activities from the database."
147
- msgstr "Warning: Clicking this will delete all activities from the database."
148
-
149
- #: ../classes/class-aal-settings.php:124
150
- msgid "All activities have been successfully deleted."
151
- msgstr "Գրանցամատյանը հաջողությամբ ջնջվեց:"
152
-
153
- #: ../classes/class-aal-settings.php:135
154
- msgid "Are you sure you want to do this action?"
155
- msgstr "Համոզված եք, որ ոզւոմ եք շարունակել գործողությունը"
156
-
157
- #: ../classes/class-aal-settings.php:169
158
- msgid "These are some basic settings for Activity Log."
159
- msgstr "These are some basic settings for Activity Log."
160
-
161
- #: ../language/strings.php:2
162
- msgid "ARYO Activity Log"
163
- msgstr "ARYO Ակտիվության գրանցամատյան"
164
-
165
- #: ../language/strings.php:3
166
- msgid ""
167
- "Get aware of any activities that are taking place on your dashboard! Imagine "
168
- "it like a black-box for your WordPress site. e.g. post was deleted, plugin "
169
- "was activated, user logged in or logged out - it’s all these for you to see."
170
- msgstr ""
171
- "Get aware of any activities that are taking place on your dashboard! Imagine "
172
- "it like a black-box for your WordPress site. e.g. post was deleted, plugin "
173
- "was activated, user logged in or logged out - it’s all these for you to see."
174
-
175
- #: ../language/strings.php:6
176
- msgid "Post"
177
- msgstr "Post"
178
-
179
- #: ../language/strings.php:7
180
- msgid "created"
181
- msgstr "created"
182
-
183
- #: ../language/strings.php:8
184
- msgid "updated"
185
- msgstr "updated"
186
-
187
- #: ../language/strings.php:9
188
- msgid "deleted"
189
- msgstr "deleted"
190
-
191
- #: ../language/strings.php:12
192
- msgid "Attachment"
193
- msgstr "Attachment"
194
-
195
- #: ../language/strings.php:13
196
- msgid "added"
197
- msgstr "added"
198
-
199
- #: ../language/strings.php:16
200
- msgid "User"
201
- msgstr "User"
202
-
203
- #: ../language/strings.php:17
204
- msgid "logged_out"
205
- msgstr "logged_out"
206
-
207
- #: ../language/strings.php:18
208
- msgid "logged_in"
209
- msgstr "logged_in"
210
-
211
- #: ../language/strings.php:19
212
- msgid "wrong_password"
213
- msgstr "wrong_password"
214
-
215
- #: ../language/strings.php:22
216
- msgid "Plugin"
217
- msgstr "Plugin"
218
-
219
- #: ../language/strings.php:23
220
- msgid "activated"
221
- msgstr "activated"
222
-
223
- #: ../language/strings.php:24
224
- msgid "deactivated"
225
- msgstr "deactivated"
226
-
227
- #: ../language/strings.php:27
228
- msgid "Theme"
229
- msgstr "Theme"
230
-
231
- #: ../language/strings.php:28
232
- msgid "Theme Customizer"
233
- msgstr "Theme Customizer"
234
-
235
- #: ../language/strings.php:31
236
- msgid "Widget"
237
- msgstr "Widget"
238
-
239
- #: ../language/strings.php:34
240
- msgid "Options"
241
- msgstr "Options"
242
-
243
- #: ../language/strings.php:37
244
- msgid "Menu"
245
- msgstr "Menu"
246
-
247
- #: ../language/strings.php:40
248
- msgid "Taxonomy"
249
- msgstr "Taxonomy"
250
-
251
- #: ../language/strings.php:45
252
- msgid "blogname"
253
- msgstr "blogname"
254
-
255
- #: ../language/strings.php:46
256
- msgid "blogdescription"
257
- msgstr "blogdescription"
258
-
259
- #: ../language/strings.php:47
260
- msgid "siteurl"
261
- msgstr "siteurl"
262
-
263
- #: ../language/strings.php:48
264
- msgid "home"
265
- msgstr "home"
266
-
267
- #: ../language/strings.php:49
268
- msgid "admin_email"
269
- msgstr "admin_email"
270
-
271
- #: ../language/strings.php:50
272
- msgid "users_can_register"
273
- msgstr "users_can_register"
274
-
275
- #: ../language/strings.php:51
276
- msgid "default_role"
277
- msgstr "default_role"
278
-
279
- #: ../language/strings.php:52
280
- msgid "timezone_string"
281
- msgstr "timezone_string"
282
-
283
- #: ../language/strings.php:53
284
- msgid "date_format"
285
- msgstr "date_format"
286
-
287
- #: ../language/strings.php:54
288
- msgid "time_format"
289
- msgstr "time_format"
290
-
291
- #: ../language/strings.php:55
292
- msgid "start_of_week"
293
- msgstr "start_of_week"
294
-
295
- #: ../language/strings.php:58
296
- msgid "use_smilies"
297
- msgstr "use_smilies"
298
-
299
- #: ../language/strings.php:59
300
- msgid "use_balanceTags"
301
- msgstr "use_balanceTags"
302
-
303
- #: ../language/strings.php:60
304
- msgid "default_category"
305
- msgstr "default_category"
306
-
307
- #: ../language/strings.php:61
308
- msgid "default_post_format"
309
- msgstr "default_post_format"
310
-
311
- #: ../language/strings.php:62
312
- msgid "mailserver_url"
313
- msgstr "mailserver_url"
314
-
315
- #: ../language/strings.php:63
316
- msgid "mailserver_login"
317
- msgstr "mailserver_login"
318
-
319
- #: ../language/strings.php:64
320
- msgid "mailserver_pass"
321
- msgstr "mailserver_pass"
322
-
323
- #: ../language/strings.php:65
324
- msgid "default_email_category"
325
- msgstr "default_email_category"
326
-
327
- #: ../language/strings.php:66
328
- msgid "ping_sites"
329
- msgstr "ping_sites"
330
-
331
- #: ../language/strings.php:69
332
- msgid "show_on_front"
333
- msgstr "show_on_front"
334
-
335
- #: ../language/strings.php:70
336
- msgid "page_on_front"
337
- msgstr "page_on_front"
338
-
339
- #: ../language/strings.php:71
340
- msgid "page_for_posts"
341
- msgstr "page_for_posts"
342
-
343
- #: ../language/strings.php:72
344
- msgid "posts_per_page"
345
- msgstr "posts_per_page"
346
-
347
- #: ../language/strings.php:73
348
- msgid "posts_per_rss"
349
- msgstr "posts_per_rss"
350
-
351
- #: ../language/strings.php:74
352
- msgid "rss_use_excerpt"
353
- msgstr "rss_use_excerpt"
354
-
355
- #: ../language/strings.php:75
356
- msgid "blog_public"
357
- msgstr "blog_public"
358
-
359
- #: ../language/strings.php:78
360
- msgid "default_pingback_flag"
361
- msgstr "default_pingback_flag"
362
-
363
- #: ../language/strings.php:79
364
- msgid "default_ping_status"
365
- msgstr "default_ping_status"
366
-
367
- #: ../language/strings.php:80
368
- msgid "default_comment_status"
369
- msgstr "default_comment_status"
370
-
371
- #: ../language/strings.php:81
372
- msgid "require_name_email"
373
- msgstr "require_name_email"
374
-
375
- #: ../language/strings.php:82
376
- msgid "comment_registration"
377
- msgstr "comment_registration"
378
-
379
- #: ../language/strings.php:83
380
- msgid "close_comments_for_old_posts"
381
- msgstr "close_comments_for_old_posts"
382
-
383
- #: ../language/strings.php:84
384
- msgid "close_comments_days_old"
385
- msgstr "close_comments_days_old"
386
-
387
- #: ../language/strings.php:85
388
- msgid "thread_comments"
389
- msgstr "thread_comments"
390
-
391
- #: ../language/strings.php:86
392
- msgid "thread_comments_depth"
393
- msgstr "thread_comments_depth"
394
-
395
- #: ../language/strings.php:87
396
- msgid "page_comments"
397
- msgstr "page_comments"
398
-
399
- #: ../language/strings.php:88
400
- msgid "comments_per_page"
401
- msgstr "comments_per_page"
402
-
403
- #: ../language/strings.php:89
404
- msgid "default_comments_page"
405
- msgstr "default_comments_page"
406
-
407
- #: ../language/strings.php:90
408
- msgid "comment_order"
409
- msgstr "comment_order"
410
-
411
- #: ../language/strings.php:91
412
- msgid "comments_notify"
413
- msgstr "comments_notify"
414
-
415
- #: ../language/strings.php:92
416
- msgid "moderation_notify"
417
- msgstr "moderation_notify"
418
-
419
- #: ../language/strings.php:93
420
- msgid "comment_moderation"
421
- msgstr "comment_moderation"
422
-
423
- #: ../language/strings.php:94
424
- msgid "comment_whitelist"
425
- msgstr "comment_whitelist"
426
-
427
- #: ../language/strings.php:95
428
- msgid "comment_max_links"
429
- msgstr "comment_max_links"
430
-
431
- #: ../language/strings.php:96
432
- msgid "moderation_keys"
433
- msgstr "moderation_keys"
434
-
435
- #: ../language/strings.php:97
436
- msgid "blacklist_keys"
437
- msgstr "blacklist_keys"
438
-
439
- #: ../language/strings.php:98
440
- msgid "show_avatars"
441
- msgstr "show_avatars"
442
-
443
- #: ../language/strings.php:99
444
- msgid "avatar_rating"
445
- msgstr "avatar_rating"
446
-
447
- #: ../language/strings.php:100
448
- msgid "avatar_default"
449
- msgstr "avatar_default"
450
-
451
- #: ../language/strings.php:103
452
- msgid "thumbnail_size_w"
453
- msgstr "thumbnail_size_w"
454
-
455
- #: ../language/strings.php:104
456
- msgid "thumbnail_size_h"
457
- msgstr "thumbnail_size_h"
458
-
459
- #: ../language/strings.php:105
460
- msgid "thumbnail_crop"
461
- msgstr "thumbnail_crop"
462
-
463
- #: ../language/strings.php:106
464
- msgid "medium_size_w"
465
- msgstr "medium_size_w"
466
-
467
- #: ../language/strings.php:107
468
- msgid "medium_size_h"
469
- msgstr "medium_size_h"
470
-
471
- #: ../language/strings.php:108
472
- msgid "large_size_w"
473
- msgstr "large_size_w"
474
-
475
- #: ../language/strings.php:109
476
- msgid "large_size_h"
477
- msgstr "large_size_h"
478
-
479
- #: ../language/strings.php:110
480
- msgid "uploads_use_yearmonth_folders"
481
- msgstr "uploads_use_yearmonth_folders"
482
-
483
- #: ../language/strings.php:113
484
- msgid "permalink_structure"
485
- msgstr "permalink_structure"
486
-
487
- #: ../language/strings.php:114
488
- msgid "category_base"
489
- msgstr "category_base"
490
-
491
- #: ../language/strings.php:115
492
- msgid "tag_base"
493
- msgstr "tag_base"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
language/aryo-aal-nl_NL.mo DELETED
Binary file
language/aryo-aal-nl_NL.po DELETED
@@ -1,693 +0,0 @@
1
- msgid ""
2
- msgstr ""
3
- "Project-Id-Version: Dutch Translations pack for Activity Log\n"
4
- "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2014-04-30 07:16+0000\n"
6
- "PO-Revision-Date: 2014-06-04 11:55+0100\n"
7
- "Last-Translator: \n"
8
- "Language-Team: Securancy <tom@securancy.com>\n"
9
- "Language: nl\n"
10
- "MIME-Version: 1.0\n"
11
- "Content-Type: text/plain; charset=UTF-8\n"
12
- "Content-Transfer-Encoding: 8bit\n"
13
- "X-Generator: Poedit 1.6.5\n"
14
- "X-Poedit-Basepath: .\n"
15
- "Plural-Forms: nplurals=2; plural=(n != 1);\n"
16
-
17
- #: aryo-activity-log.php:110 aryo-activity-log.php:121
18
- msgid "Cheatin&#8217; huh?"
19
- msgstr ""
20
-
21
- #: classes/class-aal-activity-log-list-table.php:82
22
- msgid "Activities"
23
- msgstr "Activiteiten"
24
-
25
- #: classes/class-aal-activity-log-list-table.php:92
26
- msgid "Date"
27
- msgstr "Datum"
28
-
29
- #: classes/class-aal-activity-log-list-table.php:93
30
- msgid "Author"
31
- msgstr "Auteur"
32
-
33
- #: classes/class-aal-activity-log-list-table.php:94
34
- msgid "IP"
35
- msgstr "IP"
36
-
37
- #: classes/class-aal-activity-log-list-table.php:95
38
- msgid "Type"
39
- msgstr "Type"
40
-
41
- #: classes/class-aal-activity-log-list-table.php:96
42
- msgid "Label"
43
- msgstr "Label"
44
-
45
- #: classes/class-aal-activity-log-list-table.php:97
46
- msgid "Action"
47
- msgstr "Actie"
48
-
49
- #: classes/class-aal-activity-log-list-table.php:98
50
- msgid "Description"
51
- msgstr "Beschrijving"
52
-
53
- #: classes/class-aal-activity-log-list-table.php:118
54
- #, php-format
55
- msgid "%s ago"
56
- msgstr "%s terug"
57
-
58
- #: classes/class-aal-activity-log-list-table.php:145
59
- msgid "Unknown"
60
- msgstr "Onbekend"
61
-
62
- #: classes/class-aal-activity-log-list-table.php:151
63
- #: classes/class-aal-activity-log-list-table.php:236
64
- msgid "Guest"
65
- msgstr "Gast"
66
-
67
- #: classes/class-aal-activity-log-list-table.php:247
68
- msgid "All Users"
69
- msgstr "Alle Gebruikers"
70
-
71
- #: classes/class-aal-activity-log-list-table.php:274
72
- msgid "All Types"
73
- msgstr "Alle Types"
74
-
75
- #: classes/class-aal-activity-log-list-table.php:285
76
- msgid "All Time"
77
- msgstr "Alle Tijden"
78
-
79
- #: classes/class-aal-activity-log-list-table.php:286
80
- msgid "Today"
81
- msgstr "Vandaag"
82
-
83
- #: classes/class-aal-activity-log-list-table.php:287
84
- msgid "Yesterday"
85
- msgstr "Gisteren"
86
-
87
- #: classes/class-aal-activity-log-list-table.php:288
88
- msgid "Week"
89
- msgstr "Week"
90
-
91
- #: classes/class-aal-activity-log-list-table.php:289
92
- msgid "Month"
93
- msgstr "Maand"
94
-
95
- #: classes/class-aal-activity-log-list-table.php:296
96
- msgid "Filter"
97
- msgstr "Filter"
98
-
99
- #: classes/class-aal-admin-ui.php:17 classes/class-aal-admin-ui.php:27
100
- msgid "Activity Log"
101
- msgstr "ActiviteitenLog"
102
-
103
- #: classes/class-aal-help.php:21
104
- msgid "Overview"
105
- msgstr "Overzicht"
106
-
107
- #: classes/class-aal-help.php:24 classes/class-aal-settings.php:126
108
- #: classes/class-aal-settings.php:198
109
- msgid "Notifications"
110
- msgstr "Meldingen"
111
-
112
- #: classes/class-aal-help.php:25
113
- msgid ""
114
- "This screen lets you control what will happen once a user on your site does "
115
- "something you define. For instance, let us assume that you have created a "
116
- "user on your site\n"
117
- " for your content editor. Now, let's say that every time "
118
- "that user updates a post, you want to know about it. You can easily do it "
119
- "from this page."
120
- msgstr ""
121
- "Dit scherm laat zien wat gebruikers van je website doen. Bijvoorbeeld als je "
122
- "een gebruiker aanmaakt en je wilt in de gaten houden wat hij of zij doet, "
123
- "dit kan je op deze pagina instellen"
124
-
125
- #: classes/class-aal-notifications.php:274
126
- msgid "The AAL notification handler you are trying to register does not exist."
127
- msgstr "De AAL notification handler die je probeert te maken bestaat niet."
128
-
129
- #: classes/class-aal-settings.php:27
130
- msgid "GitHub"
131
- msgstr "GitHub"
132
-
133
- #: classes/class-aal-settings.php:30 classes/class-aal-settings.php:45
134
- msgid "Settings"
135
- msgstr "Instellingen"
136
-
137
- #: classes/class-aal-settings.php:44 classes/class-aal-settings.php:228
138
- msgid "Activity Log Settings"
139
- msgstr "Activiteiten Log Instellingen"
140
-
141
- #: classes/class-aal-settings.php:83
142
- msgid "Display Options"
143
- msgstr "Weergave Opties"
144
-
145
- #: classes/class-aal-settings.php:90
146
- msgid "Keep logs for"
147
- msgstr "Bewaar termijn log bestanden"
148
-
149
- #: classes/class-aal-settings.php:99
150
- msgid "days."
151
- msgstr "dagen."
152
-
153
- #: classes/class-aal-settings.php:100 classes/class-aal-settings.php:140
154
- msgid ""
155
- "Maximum number of days to keep activity log. Leave blank to keep activity "
156
- "log forever (not recommended)."
157
- msgstr "Het aantal dagen dat je de log bestanden wilt bewaren."
158
-
159
- #: classes/class-aal-settings.php:107
160
- msgid "Delete Log Activities"
161
- msgstr "Verwijder Log Activiteiten"
162
-
163
- #: classes/class-aal-settings.php:112
164
- #, php-format
165
- msgid "<a href=\"%s\" id=\"%s\">Reset Database</a>"
166
- msgstr "<a href=\"%s\" id=\"%s\">Database leegmaken</a>"
167
-
168
- #: classes/class-aal-settings.php:116
169
- msgid "Warning: Clicking this will delete all activities from the database."
170
- msgstr ""
171
- "Waarschuwing: Als je hier op klikt zal alle acitiviteiten uit je database "
172
- "verwijderd worden."
173
-
174
- #: classes/class-aal-settings.php:133
175
- msgid "Notification Events"
176
- msgstr "Notificatie Gebeurtenissen"
177
-
178
- #: classes/class-aal-settings.php:161
179
- msgid "Enable?"
180
- msgstr "Activeren?"
181
-
182
- #: classes/class-aal-settings.php:197
183
- msgid "General"
184
- msgstr "Algemeen"
185
-
186
- #: classes/class-aal-settings.php:247
187
- msgid "All activities have been successfully deleted."
188
- msgstr "Alle activiteiten zijn succesvol verwijderd."
189
-
190
- #: classes/class-aal-settings.php:258
191
- msgid "Are you sure you want to do this action?"
192
- msgstr "Weet je zeker dat je deze actie wilt uitvoeren?"
193
-
194
- #: classes/class-aal-settings.php:269
195
- msgid "You do not have sufficient permissions to access this page."
196
- msgstr "U heeft niet voldoende rechten om deze pagina in te zien."
197
-
198
- #: classes/class-aal-settings.php:322
199
- msgid "These are some basic settings for Activity Log."
200
- msgstr "Dit zijn de standaard instellingen voor de Activiteiten Log"
201
-
202
- #: classes/class-aal-settings.php:328
203
- msgid ""
204
- "Serve yourself with custom-tailored notifications. First, define your "
205
- "conditions. Then, choose how the notifications will be sent."
206
- msgstr "Hier kan je je eigen notificaties instellen"
207
-
208
- #: classes/class-aal-settings.php:427
209
- msgid "Yes"
210
- msgstr "Ja"
211
-
212
- #: classes/class-aal-settings.php:428
213
- msgid "No"
214
- msgstr "Nee"
215
-
216
- #: classes/class-aal-settings.php:445 language/strings.php:19
217
- #: notifications/abstract-class-aal-notification-base.php:98
218
- msgid "User"
219
- msgstr "Gebruiker"
220
-
221
- #: classes/class-aal-settings.php:446
222
- #: notifications/abstract-class-aal-notification-base.php:101
223
- msgid "Action Type"
224
- msgstr "Actie Type"
225
-
226
- #: classes/class-aal-settings.php:447
227
- msgid "Action Performed"
228
- msgstr "Actie Uitgevoerd"
229
-
230
- #: classes/class-aal-settings.php:451
231
- msgid "equals to"
232
- msgstr "is gelijk aan"
233
-
234
- #: classes/class-aal-settings.php:452
235
- msgid "not equals to"
236
- msgstr "is niet gelijk aan"
237
-
238
- #: classes/class-aal-settings.php:462
239
- msgid ""
240
- "A notification will be sent upon a successful match with the following "
241
- "conditions:"
242
- msgstr ""
243
- "Er zal een notificatie verstuurd worden wanneer er een succesvolle match is "
244
- "gemaakt met de volgende voorwaarden:"
245
-
246
- #: hooks/class-aal-hook-posts.php:9
247
- msgid "(no title)"
248
- msgstr "(geen titel)"
249
-
250
- #: language/strings.php:5
251
- msgid "ARYO Activity Log"
252
- msgstr "ARYO Acitiviteiten Log"
253
-
254
- #: language/strings.php:6
255
- msgid ""
256
- "Get aware of any activities that are taking place on your dashboard! Imagine "
257
- "it like a black-box for your WordPress site. e.g. post was deleted, plugin "
258
- "was activated, user logged in or logged out - it's all these for you to see."
259
- msgstr ""
260
- "Maak je zelf bekend met alle activiteiten die gebeuren op jouw dashboard!"
261
-
262
- #: language/strings.php:9
263
- msgid "Post"
264
- msgstr "Post"
265
-
266
- #: language/strings.php:10
267
- msgid "created"
268
- msgstr "gecreëerd"
269
-
270
- #: language/strings.php:11
271
- msgid "updated"
272
- msgstr "bijgewerkt"
273
-
274
- #: language/strings.php:12
275
- msgid "deleted"
276
- msgstr "verwijderd"
277
-
278
- #: language/strings.php:15
279
- msgid "Attachment"
280
- msgstr "Bijlage"
281
-
282
- #: language/strings.php:16
283
- msgid "added"
284
- msgstr "toegevoegd"
285
-
286
- #: language/strings.php:20
287
- msgid "logged_out"
288
- msgstr "uitgelogd"
289
-
290
- #: language/strings.php:21
291
- msgid "logged_in"
292
- msgstr "ingelogd"
293
-
294
- #: language/strings.php:22
295
- msgid "wrong_password"
296
- msgstr "foutieve wachtwoord"
297
-
298
- #: language/strings.php:25
299
- msgid "Plugin"
300
- msgstr "plugin"
301
-
302
- #: language/strings.php:26
303
- msgid "activated"
304
- msgstr "geactiveerd"
305
-
306
- #: language/strings.php:27
307
- msgid "deactivated"
308
- msgstr "gedeactiveerd"
309
-
310
- #: language/strings.php:30
311
- msgid "Theme"
312
- msgstr "Thema"
313
-
314
- #: language/strings.php:31
315
- msgid "Theme Customizer"
316
- msgstr "Thema Aanpassen"
317
-
318
- #: language/strings.php:34
319
- msgid "Widget"
320
- msgstr "Widget"
321
-
322
- #: language/strings.php:37
323
- msgid "Options"
324
- msgstr "Opties"
325
-
326
- #: language/strings.php:40
327
- msgid "Menu"
328
- msgstr "Menu"
329
-
330
- #: language/strings.php:43
331
- msgid "Taxonomy"
332
- msgstr "Taxonomie"
333
-
334
- #: language/strings.php:46
335
- msgid "Core"
336
- msgstr "Kern"
337
-
338
- #: language/strings.php:47
339
- msgid "WordPress Updated"
340
- msgstr "Wordpress Bijgewerkt"
341
-
342
- #: language/strings.php:48
343
- msgid "WordPress Auto Updated"
344
- msgstr "WordPress Automatisch Bijgewerkt"
345
-
346
- #: language/strings.php:51
347
- msgid "Comments"
348
- msgstr "Reacties"
349
-
350
- #: language/strings.php:52
351
- msgid "pending"
352
- msgstr "in afwachting van"
353
-
354
- #: language/strings.php:53
355
- msgid "approved"
356
- msgstr "goedgekeurd"
357
-
358
- #: language/strings.php:54
359
- msgid "unapproved"
360
- msgstr "niet goedgekeurd"
361
-
362
- #: language/strings.php:55
363
- msgid "trashed"
364
- msgstr "weggegooid"
365
-
366
- #: language/strings.php:56
367
- msgid "untrashed"
368
- msgstr "teruggehaald"
369
-
370
- #: language/strings.php:57
371
- msgid "spammed"
372
- msgstr "gespamd"
373
-
374
- #: language/strings.php:58
375
- msgid "unspammed"
376
- msgstr "niet gespamd"
377
-
378
- #: language/strings.php:63
379
- msgid "blogname"
380
- msgstr "Blognaam"
381
-
382
- #: language/strings.php:64
383
- msgid "blogdescription"
384
- msgstr "blog beschrijving"
385
-
386
- #: language/strings.php:65
387
- msgid "siteurl"
388
- msgstr ""
389
-
390
- #: language/strings.php:66
391
- msgid "home"
392
- msgstr ""
393
-
394
- #: language/strings.php:67
395
- msgid "admin_email"
396
- msgstr ""
397
-
398
- #: language/strings.php:68
399
- msgid "users_can_register"
400
- msgstr ""
401
-
402
- #: language/strings.php:69
403
- msgid "default_role"
404
- msgstr ""
405
-
406
- #: language/strings.php:70
407
- msgid "timezone_string"
408
- msgstr ""
409
-
410
- #: language/strings.php:71
411
- msgid "date_format"
412
- msgstr ""
413
-
414
- #: language/strings.php:72
415
- msgid "time_format"
416
- msgstr ""
417
-
418
- #: language/strings.php:73
419
- msgid "start_of_week"
420
- msgstr ""
421
-
422
- #: language/strings.php:76
423
- msgid "use_smilies"
424
- msgstr ""
425
-
426
- #: language/strings.php:77
427
- msgid "use_balanceTags"
428
- msgstr ""
429
-
430
- #: language/strings.php:78
431
- msgid "default_category"
432
- msgstr ""
433
-
434
- #: language/strings.php:79
435
- msgid "default_post_format"
436
- msgstr ""
437
-
438
- #: language/strings.php:80
439
- msgid "mailserver_url"
440
- msgstr ""
441
-
442
- #: language/strings.php:81
443
- msgid "mailserver_login"
444
- msgstr ""
445
-
446
- #: language/strings.php:82
447
- msgid "mailserver_pass"
448
- msgstr ""
449
-
450
- #: language/strings.php:83
451
- msgid "default_email_category"
452
- msgstr ""
453
-
454
- #: language/strings.php:84
455
- msgid "ping_sites"
456
- msgstr ""
457
-
458
- #: language/strings.php:87
459
- msgid "show_on_front"
460
- msgstr ""
461
-
462
- #: language/strings.php:88
463
- msgid "page_on_front"
464
- msgstr ""
465
-
466
- #: language/strings.php:89
467
- msgid "page_for_posts"
468
- msgstr ""
469
-
470
- #: language/strings.php:90
471
- msgid "posts_per_page"
472
- msgstr ""
473
-
474
- #: language/strings.php:91
475
- msgid "posts_per_rss"
476
- msgstr ""
477
-
478
- #: language/strings.php:92
479
- msgid "rss_use_excerpt"
480
- msgstr ""
481
-
482
- #: language/strings.php:93
483
- msgid "blog_public"
484
- msgstr ""
485
-
486
- #: language/strings.php:96
487
- msgid "default_pingback_flag"
488
- msgstr ""
489
-
490
- #: language/strings.php:97
491
- msgid "default_ping_status"
492
- msgstr ""
493
-
494
- #: language/strings.php:98
495
- msgid "default_comment_status"
496
- msgstr ""
497
-
498
- #: language/strings.php:99
499
- msgid "require_name_email"
500
- msgstr ""
501
-
502
- #: language/strings.php:100
503
- msgid "comment_registration"
504
- msgstr ""
505
-
506
- #: language/strings.php:101
507
- msgid "close_comments_for_old_posts"
508
- msgstr ""
509
-
510
- #: language/strings.php:102
511
- msgid "close_comments_days_old"
512
- msgstr ""
513
-
514
- #: language/strings.php:103
515
- msgid "thread_comments"
516
- msgstr ""
517
-
518
- #: language/strings.php:104
519
- msgid "thread_comments_depth"
520
- msgstr ""
521
-
522
- #: language/strings.php:105
523
- msgid "page_comments"
524
- msgstr ""
525
-
526
- #: language/strings.php:106
527
- msgid "comments_per_page"
528
- msgstr ""
529
-
530
- #: language/strings.php:107
531
- msgid "default_comments_page"
532
- msgstr ""
533
-
534
- #: language/strings.php:108
535
- msgid "comment_order"
536
- msgstr ""
537
-
538
- #: language/strings.php:109
539
- msgid "comments_notify"
540
- msgstr ""
541
-
542
- #: language/strings.php:110
543
- msgid "moderation_notify"
544
- msgstr ""
545
-
546
- #: language/strings.php:111
547
- msgid "comment_moderation"
548
- msgstr ""
549
-
550
- #: language/strings.php:112
551
- msgid "comment_whitelist"
552
- msgstr ""
553
-
554
- #: language/strings.php:113
555
- msgid "comment_max_links"
556
- msgstr ""
557
-
558
- #: language/strings.php:114
559
- msgid "moderation_keys"
560
- msgstr ""
561
-
562
- #: language/strings.php:115
563
- msgid "blacklist_keys"
564
- msgstr ""
565
-
566
- #: language/strings.php:116
567
- msgid "show_avatars"
568
- msgstr ""
569
-
570
- #: language/strings.php:117
571
- msgid "avatar_rating"
572
- msgstr ""
573
-
574
- #: language/strings.php:118
575
- msgid "avatar_default"
576
- msgstr ""
577
-
578
- #: language/strings.php:121
579
- msgid "thumbnail_size_w"
580
- msgstr ""
581
-
582
- #: language/strings.php:122
583
- msgid "thumbnail_size_h"
584
- msgstr ""
585
-
586
- #: language/strings.php:123
587
- msgid "thumbnail_crop"
588
- msgstr ""
589
-
590
- #: language/strings.php:124
591
- msgid "medium_size_w"
592
- msgstr ""
593
-
594
- #: language/strings.php:125
595
- msgid "medium_size_h"
596
- msgstr ""
597
-
598
- #: language/strings.php:126
599
- msgid "large_size_w"
600
- msgstr ""
601
-
602
- #: language/strings.php:127
603
- msgid "large_size_h"
604
- msgstr ""
605
-
606
- #: language/strings.php:128
607
- msgid "uploads_use_yearmonth_folders"
608
- msgstr ""
609
-
610
- #: language/strings.php:131
611
- msgid "permalink_structure"
612
- msgstr ""
613
-
614
- #: language/strings.php:132
615
- msgid "category_base"
616
- msgstr ""
617
-
618
- #: language/strings.php:133
619
- msgid "tag_base"
620
- msgstr ""
621
-
622
- #: notifications/abstract-class-aal-notification-base.php:99
623
- msgid "Object Type"
624
- msgstr "Object Type"
625
-
626
- #: notifications/abstract-class-aal-notification-base.php:100
627
- msgid "Object Name"
628
- msgstr "Object Naam"
629
-
630
- #: notifications/abstract-class-aal-notification-base.php:102
631
- msgid "IP Address"
632
- msgstr "IP adres"
633
-
634
- #: notifications/abstract-class-aal-notification-base.php:121
635
- msgid "N/A"
636
- msgstr "N/A"
637
-
638
- #: notifications/class-aal-notification-email.php:15
639
- msgid "Email"
640
- msgstr "Email"
641
-
642
- #: notifications/class-aal-notification-email.php:16
643
- msgid "Get notified by Email."
644
- msgstr "Notificatie via Email"
645
-
646
- #: notifications/class-aal-notification-email.php:49
647
- msgid "New notification from Activity Log"
648
- msgstr "Niewe notificatie van Activiteiten Log"
649
-
650
- #: notifications/class-aal-notification-email.php:65
651
- msgid ""
652
- "Hi there!\n"
653
- "\n"
654
- "A notification condition on [sitename] was matched. Here are the details:\n"
655
- "\n"
656
- "[action-details]\n"
657
- "\n"
658
- "Sent by ARYO Activity Log"
659
- msgstr ""
660
- "Hallo!\n"
661
- "\n"
662
- "Een notificatie [sitename] was gematched. Hier zijn de details:\n"
663
- "\n"
664
- "[aktie-details]\n"
665
- "\n"
666
- "Verzonden door ARYO Activiteiten Log"
667
-
668
- #: notifications/class-aal-notification-email.php:67
669
- msgid "From Email"
670
- msgstr "Van Email"
671
-
672
- #: notifications/class-aal-notification-email.php:67
673
- msgid "The source Email address"
674
- msgstr "Het Email adres waarvan dit email verzonden word"
675
-
676
- #: notifications/class-aal-notification-email.php:68
677
- msgid "To Email"
678
- msgstr "Verzenden naar"
679
-
680
- #: notifications/class-aal-notification-email.php:68
681
- msgid "The Email address notifications will be sent to"
682
- msgstr "Het Email adres waar de notificaties naar toegestuurd worden"
683
-
684
- #: notifications/class-aal-notification-email.php:69
685
- msgid "Message"
686
- msgstr "Bericht"
687
-
688
- #: notifications/class-aal-notification-email.php:69
689
- #, php-format
690
- msgid "Customize the message using the following placeholders: %s"
691
- msgstr ""
692
- "Personaliseer het bericht door gebruik te maken van de volgende "
693
- "placeholders: %s"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
language/aryo-aal-pl_PL.mo DELETED
Binary file
language/aryo-aal-pl_PL.po DELETED
@@ -1,736 +0,0 @@
1
- # SOME DESCRIPTIVE TITLE.
2
- # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
3
- # This file is distributed under the same license as the PACKAGE package.
4
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5
- #
6
- msgid ""
7
- msgstr ""
8
- "Project-Id-Version: aryo-activity-log 2.1.16\n"
9
- "Report-Msgid-Bugs-To: \n"
10
- "POT-Creation-Date: 2015-04-23 15:54+0300\n"
11
- "PO-Revision-Date: 2015-04-29 23:28+0100\n"
12
- "MIME-Version: 1.0\n"
13
- "Content-Type: text/plain; charset=UTF-8\n"
14
- "Content-Transfer-Encoding: 8bit\n"
15
- "Last-Translator: Maciej Gryniuk <maciejka45@gmail.com>\n"
16
- "Language-Team: Maciej Gryniuk <maciejka45@gmail.com>\n"
17
- "X-Generator: Poedit 1.8beta1\n"
18
- "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
19
- "|| n%100>=20) ? 1 : 2);\n"
20
- "Language: pl_PL\n"
21
-
22
- #: aryo-activity-log.php:110 aryo-activity-log.php:121
23
- msgid "Cheatin&#8217; huh?"
24
- msgstr "Oszukiwać się zachciało?"
25
-
26
- #: classes/class-aal-activity-log-list-table.php:100
27
- msgid "Activities"
28
- msgstr "Aktywność"
29
-
30
- #: classes/class-aal-activity-log-list-table.php:111
31
- msgid "Date"
32
- msgstr "Data"
33
-
34
- #: classes/class-aal-activity-log-list-table.php:112
35
- msgid "Author"
36
- msgstr "Autor"
37
-
38
- #: classes/class-aal-activity-log-list-table.php:113
39
- msgid "IP"
40
- msgstr "IP"
41
-
42
- #: classes/class-aal-activity-log-list-table.php:114
43
- msgid "Type"
44
- msgstr "Rodzaj"
45
-
46
- #: classes/class-aal-activity-log-list-table.php:115
47
- msgid "Label"
48
- msgstr "Etykieta"
49
-
50
- #: classes/class-aal-activity-log-list-table.php:116
51
- msgid "Action"
52
- msgstr "Akcja"
53
-
54
- #: classes/class-aal-activity-log-list-table.php:117
55
- msgid "Description"
56
- msgstr "Opis"
57
-
58
- #: classes/class-aal-activity-log-list-table.php:137
59
- #, php-format
60
- msgid "%s ago"
61
- msgstr "%s temu"
62
-
63
- #: classes/class-aal-activity-log-list-table.php:164
64
- msgid "Unknown"
65
- msgstr "Nieznane"
66
-
67
- #: classes/class-aal-activity-log-list-table.php:170
68
- #: classes/class-aal-activity-log-list-table.php:281
69
- msgid "Guest"
70
- msgstr "Gość"
71
-
72
- #: classes/class-aal-activity-log-list-table.php:209
73
- msgid "All"
74
- msgstr "Wszystko"
75
-
76
- #: classes/class-aal-activity-log-list-table.php:268
77
- msgid "All Roles"
78
- msgstr "Wszystkie role"
79
-
80
- #: classes/class-aal-activity-log-list-table.php:292
81
- msgid "All Users"
82
- msgstr "Wszyscy użytkownicy"
83
-
84
- #: classes/class-aal-activity-log-list-table.php:319
85
- msgid "All Types"
86
- msgstr "Wszystkie rodzaje"
87
-
88
- #: classes/class-aal-activity-log-list-table.php:330
89
- msgid "All Time"
90
- msgstr "Dowolny czas"
91
-
92
- #: classes/class-aal-activity-log-list-table.php:331
93
- msgid "Today"
94
- msgstr "Dzisiaj"
95
-
96
- #: classes/class-aal-activity-log-list-table.php:332
97
- msgid "Yesterday"
98
- msgstr "Wczoraj"
99
-
100
- #: classes/class-aal-activity-log-list-table.php:333
101
- msgid "Week"
102
- msgstr "Tydzień"
103
-
104
- #: classes/class-aal-activity-log-list-table.php:334
105
- msgid "Month"
106
- msgstr "Miesiąc"
107
-
108
- #: classes/class-aal-activity-log-list-table.php:341
109
- msgid "Filter"
110
- msgstr "Filtruj"
111
-
112
- #: classes/class-aal-admin-ui.php:16 classes/class-aal-admin-ui.php:26
113
- msgid "Activity Log"
114
- msgstr "Dziennik aktywności"
115
-
116
- #: classes/class-aal-help.php:20
117
- msgid "Overview"
118
- msgstr "Przegląd"
119
-
120
- #: classes/class-aal-help.php:23 classes/class-aal-settings.php:125
121
- #: classes/class-aal-settings.php:197
122
- msgid "Notifications"
123
- msgstr "Powiadomienia"
124
-
125
- #: classes/class-aal-help.php:24
126
- msgid ""
127
- "This screen lets you control what will happen once a user on your site does "
128
- "something you define. For instance, let us assume that you have created a "
129
- "user on your site\n"
130
- " for your content editor. Now, let's say that every time "
131
- "that user updates a post, you want to know about it. You can easily do it "
132
- "from this page."
133
- msgstr ""
134
- "Tutaj skontrolujesz określone akcje wykonywane przez użytkownika na stronie "
135
- "internetowej. Przykładowo, załóżmy że stworzyłeś użytkownika do zarządzania "
136
- "treścią.\n"
137
- " Teraz chcesz wiedzieć o każdym zaktualizowanym przez "
138
- "niego wpisie. Na tej stronie dokonasz tego w prosty sposób."
139
-
140
- #: classes/class-aal-notifications.php:273
141
- msgid "The AAL notification handler you are trying to register does not exist."
142
- msgstr "Filtr AAL powiadomienia, który próbujesz zarejestrować, nie istnieje."
143
-
144
- #: classes/class-aal-settings.php:26
145
- msgid "GitHub"
146
- msgstr "GitHub"
147
-
148
- #: classes/class-aal-settings.php:29 classes/class-aal-settings.php:44
149
- msgid "Settings"
150
- msgstr "Ustawienia"
151
-
152
- #: classes/class-aal-settings.php:43 classes/class-aal-settings.php:227
153
- msgid "Activity Log Settings"
154
- msgstr "Ustawienia Dziennika aktywności"
155
-
156
- #: classes/class-aal-settings.php:82
157
- msgid "Display Options"
158
- msgstr "Opcje wyświetlania"
159
-
160
- #: classes/class-aal-settings.php:89
161
- msgid "Keep logs for"
162
- msgstr "Zachowuj wpisy przez"
163
-
164
- #: classes/class-aal-settings.php:98
165
- msgid "days."
166
- msgstr "dni."
167
-
168
- #: classes/class-aal-settings.php:99 classes/class-aal-settings.php:139
169
- msgid ""
170
- "Maximum number of days to keep activity log. Leave blank to keep activity "
171
- "log forever (not recommended)."
172
- msgstr ""
173
- "Maksymalna ilość dni na przechowywanie aktywności w dzienniku. Pozostaw "
174
- "puste, aby zachować wpisy na zawsze (niezalecane)."
175
-
176
- #: classes/class-aal-settings.php:106
177
- msgid "Delete Log Activities"
178
- msgstr "Usuń wpisy dziennika"
179
-
180
- #: classes/class-aal-settings.php:111
181
- #, php-format
182
- msgid "<a href=\"%s\" id=\"%s\">Reset Database</a>"
183
- msgstr "<a href=\"%s\" id=\"%s\">Zresetuj bazę danych</a>"
184
-
185
- #: classes/class-aal-settings.php:115
186
- msgid "Warning: Clicking this will delete all activities from the database."
187
- msgstr ""
188
- "Ostrzeżenie: Naciśnięcie tego spowoduje usunięcie całej aktywności z bazy "
189
- "danych."
190
-
191
- #: classes/class-aal-settings.php:132
192
- msgid "Notification Events"
193
- msgstr "Wydarzenia dla powiadomień"
194
-
195
- #: classes/class-aal-settings.php:160
196
- msgid "Enable?"
197
- msgstr "Włączyć?"
198
-
199
- #: classes/class-aal-settings.php:196
200
- msgid "General"
201
- msgstr "Ogólne"
202
-
203
- #: classes/class-aal-settings.php:246
204
- msgid "All activities have been successfully deleted."
205
- msgstr "Cała aktywność została pomyślnie usunięta."
206
-
207
- #: classes/class-aal-settings.php:257
208
- msgid "Are you sure you want to do this action?"
209
- msgstr "Na pewno chcesz wykonać tę akcję?"
210
-
211
- #: classes/class-aal-settings.php:268
212
- msgid "You do not have sufficient permissions to access this page."
213
- msgstr "Nie posiadasz wystarczających uprawnień do wglądu na tę stronę."
214
-
215
- #: classes/class-aal-settings.php:321
216
- msgid "These are some basic settings for Activity Log."
217
- msgstr "Kilka podstawowych ustawień dla Dziennika aktywności."
218
-
219
- #: classes/class-aal-settings.php:327
220
- msgid ""
221
- "Serve yourself with custom-tailored notifications. First, define your "
222
- "conditions. Then, choose how the notifications will be sent."
223
- msgstr ""
224
- "Korzystaj z ręcznie dostosowanych powiadomień. Najpierw określ warunki. "
225
- "Następnie wybierz sposób wysyłania powiadomień."
226
-
227
- #: classes/class-aal-settings.php:426
228
- msgid "Yes"
229
- msgstr "Tak"
230
-
231
- #: classes/class-aal-settings.php:427
232
- msgid "No"
233
- msgstr "Nie"
234
-
235
- #: classes/class-aal-settings.php:444 language/strings.php:22
236
- #: notifications/abstract-class-aal-notification-base.php:98
237
- msgid "User"
238
- msgstr "Użytkownik"
239
-
240
- #: classes/class-aal-settings.php:445
241
- #: notifications/abstract-class-aal-notification-base.php:101
242
- msgid "Action Type"
243
- msgstr "Rodzaj akcji"
244
-
245
- #: classes/class-aal-settings.php:446
246
- msgid "Action Performed"
247
- msgstr "Wykonana akcja"
248
-
249
- #: classes/class-aal-settings.php:450
250
- msgid "equals to"
251
- msgstr "odpowiada"
252
-
253
- #: classes/class-aal-settings.php:451
254
- msgid "not equals to"
255
- msgstr "nie odpowiada"
256
-
257
- #: classes/class-aal-settings.php:461
258
- msgid ""
259
- "A notification will be sent upon a successful match with the following "
260
- "conditions:"
261
- msgstr "Powiadomienia zostanie wysłane po spełnieniu następujących warunków:"
262
-
263
- #: hooks/class-aal-hook-posts.php:9
264
- msgid "(no title)"
265
- msgstr "(brak tytułu)"
266
-
267
- #: language/strings.php:5
268
- msgid "ARYO Activity Log"
269
- msgstr "Dziennik aktywności ARYO"
270
-
271
- #: language/strings.php:6
272
- msgid ""
273
- "Get aware of any activities that are taking place on your dashboard! Imagine "
274
- "it like a black-box for your WordPress site. e.g. post was deleted, plugin "
275
- "was activated, user logged in or logged out - it's all these for you to see."
276
- msgstr ""
277
- "Miej świadomość o każdej aktywności odbywającej się w Twoim kokpicie! "
278
- "Wyobraź to sobie w formie czarnego bloku dla swojej strony na WordPress'ie. "
279
- "Przykładowo: usunięto wpis, włączono wtyczkę, użytkownik się zalogował lub "
280
- "wylogował - zobaczysz to wszystko."
281
-
282
- #: language/strings.php:8
283
- msgid "Administrator"
284
- msgstr "Administrator"
285
-
286
- #: language/strings.php:9
287
- msgid "Editor"
288
- msgstr "Redaktor"
289
-
290
- #: language/strings.php:12
291
- msgid "Post"
292
- msgstr "Wpis"
293
-
294
- #: language/strings.php:13
295
- msgid "created"
296
- msgstr "utworzono"
297
-
298
- #: language/strings.php:14
299
- msgid "updated"
300
- msgstr "zaktualizowano"
301
-
302
- #: language/strings.php:15
303
- msgid "deleted"
304
- msgstr "usunięto"
305
-
306
- #: language/strings.php:18
307
- msgid "Attachment"
308
- msgstr "Załącznik"
309
-
310
- #: language/strings.php:19
311
- msgid "added"
312
- msgstr "dodano"
313
-
314
- #: language/strings.php:23
315
- msgid "logged_out"
316
- msgstr "wylogowano"
317
-
318
- #: language/strings.php:24
319
- msgid "logged_in"
320
- msgstr "zalogowano"
321
-
322
- #: language/strings.php:25
323
- msgid "wrong_password"
324
- msgstr "błędne_hasło"
325
-
326
- #: language/strings.php:28
327
- msgid "Plugin"
328
- msgstr "Wtyczka"
329
-
330
- #: language/strings.php:29
331
- msgid "activated"
332
- msgstr "włączono"
333
-
334
- #: language/strings.php:30
335
- msgid "deactivated"
336
- msgstr "wyłączono"
337
-
338
- #: language/strings.php:31
339
- msgid "installed"
340
- msgstr "zainstalowano"
341
-
342
- #: language/strings.php:34
343
- msgid "Theme"
344
- msgstr "Motyw"
345
-
346
- #: language/strings.php:35
347
- msgid "Theme Customizer"
348
- msgstr "Personalizacja motywu"
349
-
350
- #: language/strings.php:38
351
- msgid "Widget"
352
- msgstr "Widget"
353
-
354
- #: language/strings.php:41
355
- msgid "Options"
356
- msgstr "Opcje"
357
-
358
- #: language/strings.php:44
359
- msgid "Menu"
360
- msgstr "Menu"
361
-
362
- #: language/strings.php:47
363
- msgid "Taxonomy"
364
- msgstr "Taksonomia"
365
-
366
- #: language/strings.php:50
367
- msgid "Core"
368
- msgstr "Rdzeń"
369
-
370
- #: language/strings.php:51
371
- msgid "WordPress Updated"
372
- msgstr "WordPress zaktualizowany"
373
-
374
- #: language/strings.php:52
375
- msgid "WordPress Auto Updated"
376
- msgstr "WordPress automatycznie zaktualizowany"
377
-
378
- #: language/strings.php:55
379
- msgid "Comments"
380
- msgstr "Komentarze"
381
-
382
- #: language/strings.php:56
383
- msgid "pending"
384
- msgstr "oczekujący"
385
-
386
- #: language/strings.php:57
387
- msgid "approved"
388
- msgstr "zatwierdzony"
389
-
390
- #: language/strings.php:58
391
- msgid "unapproved"
392
- msgstr "odrzucony"
393
-
394
- #: language/strings.php:59
395
- msgid "trashed"
396
- msgstr "usunięto"
397
-
398
- #: language/strings.php:60
399
- msgid "untrashed"
400
- msgstr "przywrócono"
401
-
402
- #: language/strings.php:61
403
- msgid "spammed"
404
- msgstr "spam"
405
-
406
- #: language/strings.php:62
407
- msgid "unspammed"
408
- msgstr "nie-spam"
409
-
410
- #: language/strings.php:67
411
- msgid "blogname"
412
- msgstr "Tytuł witryny"
413
-
414
- #: language/strings.php:68
415
- msgid "blogdescription"
416
- msgstr "Opis witryny"
417
-
418
- #: language/strings.php:69
419
- msgid "siteurl"
420
- msgstr "Adres witryny"
421
-
422
- #: language/strings.php:70
423
- msgid "home"
424
- msgstr "Strona domowa"
425
-
426
- #: language/strings.php:71
427
- msgid "admin_email"
428
- msgstr "E-mail administratora"
429
-
430
- #: language/strings.php:72
431
- msgid "users_can_register"
432
- msgstr "Członkostwo"
433
-
434
- #: language/strings.php:73
435
- msgid "default_role"
436
- msgstr "Domyślna rola nowych użytkowników"
437
-
438
- #: language/strings.php:74
439
- msgid "timezone_string"
440
- msgstr "Strefa czasowa"
441
-
442
- #: language/strings.php:75
443
- msgid "date_format"
444
- msgstr "Format daty"
445
-
446
- #: language/strings.php:76
447
- msgid "time_format"
448
- msgstr "Format godziny"
449
-
450
- #: language/strings.php:77
451
- msgid "start_of_week"
452
- msgstr "Pierwszy dzień tygodnia"
453
-
454
- #: language/strings.php:80
455
- msgid "use_smilies"
456
- msgstr "Formatowanie: emotikony"
457
-
458
- #: language/strings.php:81
459
- msgid "use_balanceTags"
460
- msgstr "Formatowanie: poprawa kodu"
461
-
462
- #: language/strings.php:82
463
- msgid "default_category"
464
- msgstr "Domyślna kategoria wpisów"
465
-
466
- #: language/strings.php:83
467
- msgid "default_post_format"
468
- msgstr "Domyślny format wpisu"
469
-
470
- #: language/strings.php:84
471
- msgid "mailserver_url"
472
- msgstr "Serwer pocztowy: adres"
473
-
474
- #: language/strings.php:85
475
- msgid "mailserver_login"
476
- msgstr "Serwer pocztowy: nazwa użytkownika"
477
-
478
- #: language/strings.php:86
479
- msgid "mailserver_pass"
480
- msgstr "Serwer pocztowy: hasło"
481
-
482
- #: language/strings.php:87
483
- msgid "default_email_category"
484
- msgstr "Domyślna kategoria wpisów dodawanych przez e-mail"
485
-
486
- #: language/strings.php:88
487
- msgid "ping_sites"
488
- msgstr "Usługi aktualizacji"
489
-
490
- #: language/strings.php:91
491
- msgid "show_on_front"
492
- msgstr "Rodzaj strony głównej"
493
-
494
- #: language/strings.php:92
495
- msgid "page_on_front"
496
- msgstr "Strona główna"
497
-
498
- #: language/strings.php:93
499
- msgid "page_for_posts"
500
- msgstr "Strona z wpisami"
501
-
502
- #: language/strings.php:94
503
- msgid "posts_per_page"
504
- msgstr "Wpisy na stronę"
505
-
506
- #: language/strings.php:95
507
- msgid "posts_per_rss"
508
- msgstr "Wpisy w kanałach nowości"
509
-
510
- #: language/strings.php:96
511
- msgid "rss_use_excerpt"
512
- msgstr "Wyświetlaj zajawkę w kanałach nowości"
513
-
514
- #: language/strings.php:97
515
- msgid "blog_public"
516
- msgstr "Widoczność dla wyszukiwarek"
517
-
518
- #: language/strings.php:100
519
- msgid "default_pingback_flag"
520
- msgstr ""
521
- "Spróbuj powiadomić wszystkie blogi, do których odnośniki zostały umieszczone "
522
- "w artykule "
523
-
524
- #: language/strings.php:101
525
- msgid "default_ping_status"
526
- msgstr ""
527
- "Zezwól innym blogom na informowanie o umieszczeniu odnośnika do tej witryny "
528
- "(pingbacki i trackbacki)"
529
-
530
- #: language/strings.php:102
531
- msgid "default_comment_status"
532
- msgstr "Zezwól na komentowanie nowych artykułów"
533
-
534
- #: language/strings.php:103
535
- msgid "require_name_email"
536
- msgstr "Autor komentarza musi wprowadzić swój podpis i e-mail "
537
-
538
- #: language/strings.php:104
539
- msgid "comment_registration"
540
- msgstr "Użytkownicy muszą być zarejestrowani i zalogowani, aby móc komentować "
541
-
542
- #: language/strings.php:105
543
- msgid "close_comments_for_old_posts"
544
- msgstr "Wyłączaj możliwość komentowania artykułów starszych niż x dni"
545
-
546
- #: language/strings.php:106
547
- msgid "close_comments_days_old"
548
- msgstr "Wyłączaj możliwość komentowania starych artykułów"
549
-
550
- #: language/strings.php:107
551
- msgid "thread_comments"
552
- msgstr "Zakorzenianie komentarzy"
553
-
554
- #: language/strings.php:108
555
- msgid "thread_comments_depth"
556
- msgstr "X-poziomowe zakorzenianie komentarzy"
557
-
558
- #: language/strings.php:109
559
- msgid "page_comments"
560
- msgstr "Podziel komentarze na strony"
561
-
562
- #: language/strings.php:110
563
- msgid "comments_per_page"
564
- msgstr "Podziel komentarze na strony po x komentarzy"
565
-
566
- #: language/strings.php:111
567
- msgid "default_comments_page"
568
- msgstr "Domyślna strona komentarzy"
569
-
570
- #: language/strings.php:112
571
- msgid "comment_order"
572
- msgstr "Kolejność komentarzy"
573
-
574
- #: language/strings.php:113
575
- msgid "comments_notify"
576
- msgstr "E-mail, gdy ktoś doda komentarz"
577
-
578
- #: language/strings.php:114
579
- msgid "moderation_notify"
580
- msgstr "E-mail, gdy komentarz oczekuje na moderację"
581
-
582
- #: language/strings.php:115
583
- msgid "comment_moderation"
584
- msgstr "Komentarze muszą zostać zatwierdzone ręcznie"
585
-
586
- #: language/strings.php:116
587
- msgid "comment_whitelist"
588
- msgstr "Inny komentarz tego samego autora musi zostać wcześniej zatwierdzony"
589
-
590
- #: language/strings.php:117
591
- msgid "comment_max_links"
592
- msgstr "Maksymalna liczba odnośników w komentarzu bez konieczności moderacji"
593
-
594
- #: language/strings.php:118
595
- msgid "moderation_keys"
596
- msgstr "Klucze moderacji komentarzy"
597
-
598
- #: language/strings.php:119
599
- msgid "blacklist_keys"
600
- msgstr "Czarna lista kluczy komentarzy"
601
-
602
- #: language/strings.php:120
603
- msgid "show_avatars"
604
- msgstr "Wyświetlaj obrazki profilowe"
605
-
606
- #: language/strings.php:121
607
- msgid "avatar_rating"
608
- msgstr "Kategoria wiekowa obrazków profilowych"
609
-
610
- #: language/strings.php:122
611
- msgid "avatar_default"
612
- msgstr "Domyślny obrazek profilowy"
613
-
614
- #: language/strings.php:125
615
- msgid "thumbnail_size_w"
616
- msgstr "Rozmiar miniatury: szerokość"
617
-
618
- #: language/strings.php:126
619
- msgid "thumbnail_size_h"
620
- msgstr "Rozmiar miniatury: wysokość"
621
-
622
- #: language/strings.php:127
623
- msgid "thumbnail_crop"
624
- msgstr "Rozmiar miniatury: przycięcie"
625
-
626
- #: language/strings.php:128
627
- msgid "medium_size_w"
628
- msgstr "Średni rozmiar: szerokość"
629
-
630
- #: language/strings.php:129
631
- msgid "medium_size_h"
632
- msgstr "Średni rozmiar: wysokość"
633
-
634
- #: language/strings.php:130
635
- msgid "large_size_w"
636
- msgstr "Duży rozmiar: szerokość"
637
-
638
- #: language/strings.php:131
639
- msgid "large_size_h"
640
- msgstr "Duży rozmiar: wysokość"
641
-
642
- #: language/strings.php:132
643
- msgid "uploads_use_yearmonth_folders"
644
- msgstr ""
645
- "Porządkuj wysyłane pliki w katalogi z numerami miesięcy i lat w nazwach"
646
-
647
- #: language/strings.php:135
648
- msgid "permalink_structure"
649
- msgstr "Struktura bezpośrednich odnośników"
650
-
651
- #: language/strings.php:136
652
- msgid "category_base"
653
- msgstr "Alias kategorii"
654
-
655
- #: language/strings.php:137
656
- msgid "tag_base"
657
- msgstr "Alias tagów"
658
-
659
- #: language/strings.php:140
660
- msgid "Export"
661
- msgstr "Eksport"
662
-
663
- #: language/strings.php:141
664
- msgid "downloaded"
665
- msgstr "pobrano"
666
-
667
- #: notifications/abstract-class-aal-notification-base.php:99
668
- msgid "Object Type"
669
- msgstr "Rodzaj obiektu"
670
-
671
- #: notifications/abstract-class-aal-notification-base.php:100
672
- msgid "Object Name"
673
- msgstr "Nazwa obiektu"
674
-
675
- #: notifications/abstract-class-aal-notification-base.php:102
676
- msgid "IP Address"
677
- msgstr "Adres IP"
678
-
679
- #: notifications/abstract-class-aal-notification-base.php:121
680
- msgid "N/A"
681
- msgstr "-"
682
-
683
- #: notifications/class-aal-notification-email.php:15
684
- msgid "Email"
685
- msgstr "E-mail"
686
-
687
- #: notifications/class-aal-notification-email.php:16
688
- msgid "Get notified by Email."
689
- msgstr "Otrzymaj powiadomienia na e-mail."
690
-
691
- #: notifications/class-aal-notification-email.php:49
692
- msgid "New notification from Activity Log"
693
- msgstr "Nowe powiadomienie z Dziennika aktywności"
694
-
695
- #: notifications/class-aal-notification-email.php:65
696
- msgid ""
697
- "Hi there!\n"
698
- "\n"
699
- "A notification condition on [sitename] was matched. Here are the details:\n"
700
- "\n"
701
- "[action-details]\n"
702
- "\n"
703
- "Sent by ARYO Activity Log"
704
- msgstr ""
705
- "Hej!\n"
706
- "\n"
707
- "Spełniono warunek powiadomienia na stronie [sitename]. Szczegóły poniżej:\n"
708
- "\n"
709
- "[action-details]\n"
710
- "\n"
711
- "Wysłane przez Dziennik aktywności ARYO"
712
-
713
- #: notifications/class-aal-notification-email.php:67
714
- msgid "From Email"
715
- msgstr "E-mail nadawcy"
716
-
717
- #: notifications/class-aal-notification-email.php:67
718
- msgid "The source Email address"
719
- msgstr "Źródłowy adres e-mail"
720
-
721
- #: notifications/class-aal-notification-email.php:68
722
- msgid "To Email"
723
- msgstr "E-mail odbiorcy"
724
-
725
- #: notifications/class-aal-notification-email.php:68
726
- msgid "The Email address notifications will be sent to"
727
- msgstr "E-mail, na który będą wysyłane powiadomienia"
728
-
729
- #: notifications/class-aal-notification-email.php:69
730
- msgid "Message"
731
- msgstr "Wiadomość"
732
-
733
- #: notifications/class-aal-notification-email.php:69
734
- #, php-format
735
- msgid "Customize the message using the following placeholders: %s"
736
- msgstr "Dostosuj wiadomość przy pomocy następujących tagów: %s"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
language/aryo-aal-pt_BR.mo DELETED
Binary file
language/aryo-aal-pt_BR.po DELETED
@@ -1,712 +0,0 @@
1
- msgid ""
2
- msgstr ""
3
- "MIME-Version: 1.0\n"
4
- "Content-Type: text/plain; charset=UTF-8\n"
5
- "Content-Transfer-Encoding: 8bit\n"
6
- "X-Generator: Poedit 1.6.9\n"
7
- "Project-Id-Version: ARYO Activity Log\n"
8
- "Language: pt_BR\n"
9
- "POT-Creation-Date: \n"
10
- "PO-Revision-Date: \n"
11
- "Last-Translator: Yakir Sitbon <kingyes1@gmail.com>\n"
12
- "Language-Team: \n"
13
-
14
- #: aryo-activity-log.php:110 aryo-activity-log.php:121
15
- msgid "Cheatin&#8217; huh?"
16
- msgstr "Trapaceando & # 8217; hein?"
17
-
18
- #: classes/class-aal-activity-log-list-table.php:92
19
- msgid "Activities"
20
- msgstr "Atividades"
21
-
22
- #: classes/class-aal-activity-log-list-table.php:103
23
- msgid "Date"
24
- msgstr "Data"
25
-
26
- #: classes/class-aal-activity-log-list-table.php:104
27
- msgid "Author"
28
- msgstr "Autor"
29
-
30
- #: classes/class-aal-activity-log-list-table.php:105
31
- msgid "IP"
32
- msgstr "IP"
33
-
34
- #: classes/class-aal-activity-log-list-table.php:106
35
- msgid "Type"
36
- msgstr "Tipo"
37
-
38
- #: classes/class-aal-activity-log-list-table.php:107
39
- msgid "Label"
40
- msgstr "Etiqueta"
41
-
42
- #: classes/class-aal-activity-log-list-table.php:108
43
- msgid "Action"
44
- msgstr "Ação"
45
-
46
- #: classes/class-aal-activity-log-list-table.php:109
47
- msgid "Description"
48
- msgstr "Descrição"
49
-
50
- #: classes/class-aal-activity-log-list-table.php:129
51
- msgid "%s ago"
52
- msgstr "% s atrás"
53
-
54
- #: classes/class-aal-activity-log-list-table.php:156
55
- msgid "Unknown"
56
- msgstr "Desconhecido"
57
-
58
- #: classes/class-aal-activity-log-list-table.php:162
59
- #: classes/class-aal-activity-log-list-table.php:256
60
- msgid "Guest"
61
- msgstr "Visitante"
62
-
63
- #: classes/class-aal-activity-log-list-table.php:201
64
- msgid "All"
65
- msgstr "Todos"
66
-
67
- #: classes/class-aal-activity-log-list-table.php:267
68
- msgid "All Users"
69
- msgstr "Todos os usuários"
70
-
71
- #: classes/class-aal-activity-log-list-table.php:294
72
- msgid "All Types"
73
- msgstr "Todos os Tipos"
74
-
75
- #: classes/class-aal-activity-log-list-table.php:305
76
- msgid "All Time"
77
- msgstr "Desde o Começo"
78
-
79
- #: classes/class-aal-activity-log-list-table.php:306
80
- msgid "Today"
81
- msgstr "Hoje"
82
-
83
- #: classes/class-aal-activity-log-list-table.php:307
84
- msgid "Yesterday"
85
- msgstr "Ontem"
86
-
87
- #: classes/class-aal-activity-log-list-table.php:308
88
- msgid "Week"
89
- msgstr "Semana"
90
-
91
- #: classes/class-aal-activity-log-list-table.php:309
92
- msgid "Month"
93
- msgstr "Mês"
94
-
95
- #: classes/class-aal-activity-log-list-table.php:316
96
- msgid "Filter"
97
- msgstr "Filtrar"
98
-
99
- #: classes/class-aal-admin-ui.php:17 classes/class-aal-admin-ui.php:27
100
- msgid "Activity Log"
101
- msgstr "Registro de Atividades"
102
-
103
- #: classes/class-aal-help.php:21
104
- msgid "Overview"
105
- msgstr "Visão Geral"
106
-
107
- #: classes/class-aal-help.php:24 classes/class-aal-settings.php:126
108
- #: classes/class-aal-settings.php:198
109
- msgid "Notifications"
110
- msgstr "Notificações"
111
-
112
- #: classes/class-aal-help.php:25
113
- msgid ""
114
- "This screen lets you control what will happen once a user on your site does "
115
- "something you define. For instance, let us assume that you have created a "
116
- "user on your site\n"
117
- " for your content editor. Now, let's say that every time "
118
- "that user updates a post, you want to know about it. You can easily do it "
119
- "from this page."
120
- msgstr ""
121
- "Esta tela permite que você controle o que vai acontecer quando um usuário em "
122
- "seu site faz algo que você definir. Por exemplo, vamos supor que você tenha "
123
- "criado um usuário em seu site\n"
124
- "                    para o seu editor de conteúdo. Agora, vamos dizer que "
125
- "cada vez que o usuário atualiza um post, você quer saber a respeito. Você "
126
- "pode facilmente fazê-lo a partir desta página."
127
-
128
- #: classes/class-aal-notifications.php:274
129
- msgid "The AAL notification handler you are trying to register does not exist."
130
- msgstr ""
131
- "O manipulador de notificação AAL que você está tentando registrar não existe."
132
-
133
- #: classes/class-aal-settings.php:27
134
- msgid "GitHub"
135
- msgstr "GitHub"
136
-
137
- #: classes/class-aal-settings.php:30 classes/class-aal-settings.php:45
138
- msgid "Settings"
139
- msgstr "Configurações"
140
-
141
- #: classes/class-aal-settings.php:44 classes/class-aal-settings.php:228
142
- msgid "Activity Log Settings"
143
- msgstr "Configuração do Registro de Atividades"
144
-
145
- #: classes/class-aal-settings.php:83
146
- msgid "Display Options"
147
- msgstr "Opções de Exibição"
148
-
149
- #: classes/class-aal-settings.php:90
150
- msgid "Keep logs for"
151
- msgstr "Manter registros por"
152
-
153
- #: classes/class-aal-settings.php:99
154
- msgid "days."
155
- msgstr "dias."
156
-
157
- #: classes/class-aal-settings.php:100 classes/class-aal-settings.php:140
158
- msgid ""
159
- "Maximum number of days to keep activity log. Leave blank to keep activity "
160
- "log forever (not recommended)."
161
- msgstr ""
162
- "O número máximo de dias para manter registro de atividades. Deixe em branco "
163
- "para manter registro de atividades para sempre (não recomendado)."
164
-
165
- #: classes/class-aal-settings.php:107
166
- msgid "Delete Log Activities"
167
- msgstr "Excluir Log Atividades"
168
-
169
- #: classes/class-aal-settings.php:112
170
- msgid "<a href=\"%s\" id=\"%s\">Reset Database</a>"
171
- msgstr "<a href=\"%s\" id=\"%s\"> Redefinir </a> Banco de Dados"
172
-
173
- #: classes/class-aal-settings.php:116
174
- msgid "Warning: Clicking this will delete all activities from the database."
175
- msgstr ""
176
- "Aviso: Ao clicar aqui, você apagará todas as atividades do banco de dados."
177
-
178
- #: classes/class-aal-settings.php:133
179
- msgid "Notification Events"
180
- msgstr "Notificação de Eventos"
181
-
182
- #: classes/class-aal-settings.php:161
183
- msgid "Enable?"
184
- msgstr "Habilitar?"
185
-
186
- #: classes/class-aal-settings.php:197
187
- msgid "General"
188
- msgstr "Geral"
189
-
190
- #: classes/class-aal-settings.php:247
191
- msgid "All activities have been successfully deleted."
192
- msgstr "Todas as atividades foram deletadas com sucesso."
193
-
194
- #: classes/class-aal-settings.php:258
195
- msgid "Are you sure you want to do this action?"
196
- msgstr "Tem certeza de que quer fazer esta ação?"
197
-
198
- #: classes/class-aal-settings.php:269
199
- msgid "You do not have sufficient permissions to access this page."
200
- msgstr "Você não tem permissões suficientes para acessar esta página."
201
-
202
- #: classes/class-aal-settings.php:322
203
- msgid "These are some basic settings for Activity Log."
204
- msgstr "Estas são algumas configurações básicas para o Registro de Atividades."
205
-
206
- #: classes/class-aal-settings.php:328
207
- msgid ""
208
- "Serve yourself with custom-tailored notifications. First, define your "
209
- "conditions. Then, choose how the notifications will be sent."
210
- msgstr ""
211
- "Sirva-se com notificações sob medida. Primeiro, defina as suas condições. Em "
212
- "seguida, escolha como as notificações serão enviadas."
213
-
214
- #: classes/class-aal-settings.php:427
215
- msgid "Yes"
216
- msgstr "Sim"
217
-
218
- #: classes/class-aal-settings.php:428
219
- msgid "No"
220
- msgstr "Não"
221
-
222
- #: classes/class-aal-settings.php:445 language/strings.php:19
223
- #: notifications/abstract-class-aal-notification-base.php:98
224
- msgid "User"
225
- msgstr "Usuário"
226
-
227
- #: classes/class-aal-settings.php:446
228
- #: notifications/abstract-class-aal-notification-base.php:101
229
- msgid "Action Type"
230
- msgstr "Tipo de Ação"
231
-
232
- #: classes/class-aal-settings.php:447
233
- msgid "Action Performed"
234
- msgstr "Ação Realizada"
235
-
236
- #: classes/class-aal-settings.php:451
237
- msgid "equals to"
238
- msgstr "é igual a"
239
-
240
- #: classes/class-aal-settings.php:452
241
- msgid "not equals to"
242
- msgstr "não é igual a"
243
-
244
- #: classes/class-aal-settings.php:462
245
- msgid ""
246
- "A notification will be sent upon a successful match with the following "
247
- "conditions:"
248
- msgstr ""
249
- "A notificação será enviada baseando-se numa correspondência bem-sucedida com "
250
- "as seguintes condições:"
251
-
252
- #: hooks/class-aal-hook-posts.php:9
253
- msgid "(no title)"
254
- msgstr "(Sem título)"
255
-
256
- #: language/strings.php:5
257
- msgid "ARYO Activity Log"
258
- msgstr "Registro de Atividades do ARYO"
259
-
260
- #: language/strings.php:6
261
- msgid ""
262
- "Get aware of any activities that are taking place on your dashboard! Imagine "
263
- "it like a black-box for your WordPress site. e.g. post was deleted, plugin "
264
- "was activated, user logged in or logged out - it's all these for you to see."
265
- msgstr ""
266
- "Fique sabendo de quaisquer atividades que ocorrem em seu painel! Imagine-o "
267
- "como uma caixa-preta para o seu site WordPress. Por exemplo: um post foi "
268
- "deletado, um plugin ativado, um usuário logou ou sais — você ficará sabendo "
269
- "de tudo."
270
-
271
- #: language/strings.php:9
272
- msgid "Post"
273
- msgstr "Post"
274
-
275
- #: language/strings.php:10
276
- msgid "created"
277
- msgstr "criado"
278
-
279
- #: language/strings.php:11
280
- msgid "updated"
281
- msgstr "atualizado"
282
-
283
- #: language/strings.php:12
284
- msgid "deleted"
285
- msgstr "deletado"
286
-
287
- #: language/strings.php:15
288
- msgid "Attachment"
289
- msgstr "Anexo"
290
-
291
- #: language/strings.php:16
292
- msgid "added"
293
- msgstr "adicionado"
294
-
295
- #: language/strings.php:20
296
- msgid "logged_out"
297
- msgstr "logged_out"
298
-
299
- #: language/strings.php:21
300
- msgid "logged_in"
301
- msgstr "logged_in"
302
-
303
- #: language/strings.php:22
304
- msgid "wrong_password"
305
- msgstr "wrong_password"
306
-
307
- #: language/strings.php:25
308
- msgid "Plugin"
309
- msgstr "Plugin"
310
-
311
- #: language/strings.php:26
312
- msgid "activated"
313
- msgstr "ativado"
314
-
315
- #: language/strings.php:27
316
- msgid "deactivated"
317
- msgstr "desativado"
318
-
319
- #: language/strings.php:28
320
- msgid "installed"
321
- msgstr "instalado"
322
-
323
- #: language/strings.php:31
324
- msgid "Theme"
325
- msgstr "Tema"
326
-
327
- #: language/strings.php:32
328
- msgid "Theme Customizer"
329
- msgstr "Customizador do Tema"
330
-
331
- #: language/strings.php:35
332
- msgid "Widget"
333
- msgstr "Widget"
334
-
335
- #: language/strings.php:38
336
- msgid "Options"
337
- msgstr "Opções"
338
-
339
- #: language/strings.php:41
340
- msgid "Menu"
341
- msgstr "Menu"
342
-
343
- #: language/strings.php:44
344
- msgid "Taxonomy"
345
- msgstr "Taxonomia"
346
-
347
- #: language/strings.php:47
348
- msgid "Core"
349
- msgstr "Núcleo"
350
-
351
- #: language/strings.php:48
352
- msgid "WordPress Updated"
353
- msgstr "WordPress Atualizado"
354
-
355
- #: language/strings.php:49
356
- msgid "WordPress Auto Updated"
357
- msgstr "WordPress Auto Atualizado"
358
-
359
- #: language/strings.php:52
360
- msgid "Comments"
361
- msgstr "Comentários"
362
-
363
- #: language/strings.php:53
364
- msgid "pending"
365
- msgstr "pendente"
366
-
367
- #: language/strings.php:54
368
- msgid "approved"
369
- msgstr "aprovado"
370
-
371
- #: language/strings.php:55
372
- msgid "unapproved"
373
- msgstr "não aprovado"
374
-
375
- #: language/strings.php:56
376
- msgid "trashed"
377
- msgstr "para a lixeira"
378
-
379
- #: language/strings.php:57
380
- msgid "untrashed"
381
- msgstr "recuperado da lixeira"
382
-
383
- #: language/strings.php:58
384
- msgid "spammed"
385
- msgstr "movido para o spam"
386
-
387
- #: language/strings.php:59
388
- msgid "unspammed"
389
- msgstr "removido do spam"
390
-
391
- #: language/strings.php:64
392
- msgid "blogname"
393
- msgstr "blogname"
394
-
395
- #: language/strings.php:65
396
- msgid "blogdescription"
397
- msgstr "BlogDescription"
398
-
399
- #: language/strings.php:66
400
- msgid "siteurl"
401
- msgstr "siteurl"
402
-
403
- #: language/strings.php:67
404
- msgid "home"
405
- msgstr "home"
406
-
407
- #: language/strings.php:68
408
- msgid "admin_email"
409
- msgstr "admin_email"
410
-
411
- #: language/strings.php:69
412
- msgid "users_can_register"
413
- msgstr "users_can_register"
414
-
415
- #: language/strings.php:70
416
- msgid "default_role"
417
- msgstr "default_role"
418
-
419
- #: language/strings.php:71
420
- msgid "timezone_string"
421
- msgstr "timezone_string"
422
-
423
- #: language/strings.php:72
424
- msgid "date_format"
425
- msgstr "date_format"
426
-
427
- #: language/strings.php:73
428
- msgid "time_format"
429
- msgstr "TIME_FORMAT"
430
-
431
- #: language/strings.php:74
432
- msgid "start_of_week"
433
- msgstr "start_of_week"
434
-
435
- #: language/strings.php:77
436
- msgid "use_smilies"
437
- msgstr "use_smilies"
438
-
439
- #: language/strings.php:78
440
- msgid "use_balanceTags"
441
- msgstr "use_balanceTags"
442
-
443
- #: language/strings.php:79
444
- msgid "default_category"
445
- msgstr "default_category"
446
-
447
- #: language/strings.php:80
448
- msgid "default_post_format"
449
- msgstr "default_post_format"
450
-
451
- #: language/strings.php:81
452
- msgid "mailserver_url"
453
- msgstr "mailserver_url"
454
-
455
- #: language/strings.php:82
456
- msgid "mailserver_login"
457
- msgstr "mailserver_login"
458
-
459
- #: language/strings.php:83
460
- msgid "mailserver_pass"
461
- msgstr "mailserver_pass"
462
-
463
- #: language/strings.php:84
464
- msgid "default_email_category"
465
- msgstr "default_email_category"
466
-
467
- #: language/strings.php:85
468
- msgid "ping_sites"
469
- msgstr "ping_sites"
470
-
471
- #: language/strings.php:88
472
- msgid "show_on_front"
473
- msgstr "show_on_front"
474
-
475
- #: language/strings.php:89
476
- msgid "page_on_front"
477
- msgstr "page_on_front"
478
-
479
- #: language/strings.php:90
480
- msgid "page_for_posts"
481
- msgstr "page_for_posts"
482
-
483
- #: language/strings.php:91
484
- msgid "posts_per_page"
485
- msgstr "posts_per_page"
486
-
487
- #: language/strings.php:92
488
- msgid "posts_per_rss"
489
- msgstr "posts_per_rss"
490
-
491
- #: language/strings.php:93
492
- msgid "rss_use_excerpt"
493
- msgstr "rss_use_excerpt"
494
-
495
- #: language/strings.php:94
496
- msgid "blog_public"
497
- msgstr "blog_public"
498
-
499
- #: language/strings.php:97
500
- msgid "default_pingback_flag"
501
- msgstr "default_pingback_flag"
502
-
503
- #: language/strings.php:98
504
- msgid "default_ping_status"
505
- msgstr "default_ping_status"
506
-
507
- #: language/strings.php:99
508
- msgid "default_comment_status"
509
- msgstr "default_comment_status"
510
-
511
- #: language/strings.php:100
512
- msgid "require_name_email"
513
- msgstr "require_name_email"
514
-
515
- #: language/strings.php:101
516
- msgid "comment_registration"
517
- msgstr "comment_registration"
518
-
519
- #: language/strings.php:102
520
- msgid "close_comments_for_old_posts"
521
- msgstr "close_comments_for_old_posts"
522
-
523
- #: language/strings.php:103
524
- msgid "close_comments_days_old"
525
- msgstr "close_comments_days_old"
526
-
527
- #: language/strings.php:104
528
- msgid "thread_comments"
529
- msgstr "thread_comments"
530
-
531
- #: language/strings.php:105
532
- msgid "thread_comments_depth"
533
- msgstr "thread_comments_depth"
534
-
535
- #: language/strings.php:106
536
- msgid "page_comments"
537
- msgstr "page_comments"
538
-
539
- #: language/strings.php:107
540
- msgid "comments_per_page"
541
- msgstr "comments_per_page"
542
-
543
- #: language/strings.php:108
544
- msgid "default_comments_page"
545
- msgstr "default_comments_page"
546
-
547
- #: language/strings.php:109
548
- msgid "comment_order"
549
- msgstr "comment_order"
550
-
551
- #: language/strings.php:110
552
- msgid "comments_notify"
553
- msgstr "comments_notify"
554
-
555
- #: language/strings.php:111
556
- msgid "moderation_notify"
557
- msgstr "moderation_notify"
558
-
559
- #: language/strings.php:112
560
- msgid "comment_moderation"
561
- msgstr "comment_moderation"
562
-
563
- #: language/strings.php:113
564
- msgid "comment_whitelist"
565
- msgstr "comment_whitelist"
566
-
567
- #: language/strings.php:114
568
- msgid "comment_max_links"
569
- msgstr "comment_max_links"
570
-
571
- #: language/strings.php:115
572
- msgid "moderation_keys"
573
- msgstr "moderation_keys"
574
-
575
- #: language/strings.php:116
576
- msgid "blacklist_keys"
577
- msgstr "blacklist_keys"
578
-
579
- #: language/strings.php:117
580
- msgid "show_avatars"
581
- msgstr "show_avatars"
582
-
583
- #: language/strings.php:118
584
- msgid "avatar_rating"
585
- msgstr "avatar_rating"
586
-
587
- #: language/strings.php:119
588
- msgid "avatar_default"
589
- msgstr "avatar_default"
590
-
591
- #: language/strings.php:122
592
- msgid "thumbnail_size_w"
593
- msgstr "thumbnail_size_w"
594
-
595
- #: language/strings.php:123
596
- msgid "thumbnail_size_h"
597
- msgstr "thumbnail_size_h"
598
-
599
- #: language/strings.php:124
600
- msgid "thumbnail_crop"
601
- msgstr "thumbnail_crop"
602
-
603
- #: language/strings.php:125
604
- msgid "medium_size_w"
605
- msgstr "medium_size_w"
606
-
607
- #: language/strings.php:126
608
- msgid "medium_size_h"
609
- msgstr "medium_size_h"
610
-
611
- #: language/strings.php:127
612
- msgid "large_size_w"
613
- msgstr "large_size_w"
614
-
615
- #: language/strings.php:128
616
- msgid "large_size_h"
617
- msgstr "large_size_h"
618
-
619
- #: language/strings.php:129
620
- msgid "uploads_use_yearmonth_folders"
621
- msgstr "uploads_use_yearmonth_folders"
622
-
623
- #: language/strings.php:132
624
- msgid "permalink_structure"
625
- msgstr "permalink_structure"
626
-
627
- #: language/strings.php:133
628
- msgid "category_base"
629
- msgstr "category_base"
630
-
631
- #: language/strings.php:134
632
- msgid "tag_base"
633
- msgstr "tag_base"
634
-
635
- #: language/strings.php:137
636
- msgid "Export"
637
- msgstr "Exportação"
638
-
639
- #: language/strings.php:138
640
- msgid "downloaded"
641
- msgstr "baixado"
642
-
643
- #: notifications/abstract-class-aal-notification-base.php:99
644
- msgid "Object Type"
645
- msgstr "Tipo de objeto"
646
-
647
- #: notifications/abstract-class-aal-notification-base.php:100
648
- msgid "Object Name"
649
- msgstr "Nome do objeto"
650
-
651
- #: notifications/abstract-class-aal-notification-base.php:102
652
- msgid "IP Address"
653
- msgstr "Endereço IP"
654
-
655
- #: notifications/abstract-class-aal-notification-base.php:121
656
- msgid "N/A"
657
- msgstr "N / D"
658
-
659
- #: notifications/class-aal-notification-email.php:15
660
- msgid "Email"
661
- msgstr "Email"
662
-
663
- #: notifications/class-aal-notification-email.php:16
664
- msgid "Get notified by Email."
665
- msgstr "Seja notificado por e-mail."
666
-
667
- #: notifications/class-aal-notification-email.php:49
668
- msgid "New notification from Activity Log"
669
- msgstr "Nova notificação do Registro de Atividades"
670
-
671
- #: notifications/class-aal-notification-email.php:65
672
- msgid ""
673
- "Hi there!\n"
674
- "\n"
675
- "A notification condition on [sitename] was matched. Here are the details:\n"
676
- "\n"
677
- "[action-details]\n"
678
- "\n"
679
- "Sent by ARYO Activity Log"
680
- msgstr ""
681
- "Olá!\n"
682
- "\n"
683
- "Uma condição de notificação no [nome do site] foi correspondido. Aqui estão "
684
- "os detalhes:\n"
685
- "\n"
686
- "[Ação-details]\n"
687
- "\n"
688
- "Enviado por Aryo Activity Log"
689
-
690
- #: notifications/class-aal-notification-email.php:67
691
- msgid "From Email"
692
- msgstr "Do Email"
693
-
694
- #: notifications/class-aal-notification-email.php:67
695
- msgid "The source Email address"
696
- msgstr "O endereço de Email de origem"
697
-
698
- #: notifications/class-aal-notification-email.php:68
699
- msgid "To Email"
700
- msgstr "Para o email"
701
-
702
- #: notifications/class-aal-notification-email.php:68
703
- msgid "The Email address notifications will be sent to"
704
- msgstr "As notificações de email serão enviadas para"
705
-
706
- #: notifications/class-aal-notification-email.php:69
707
- msgid "Message"
708
- msgstr "Mensagem"
709
-
710
- #: notifications/class-aal-notification-email.php:69
711
- msgid "Customize the message using the following placeholders: %s"
712
- msgstr "Personalize a mensagem com os seguintes espaços reservados:% s"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
language/aryo-aal-ru_RU.mo DELETED
Binary file
language/aryo-aal-ru_RU.po DELETED
@@ -1,724 +0,0 @@
1
- # SOME DESCRIPTIVE TITLE.
2
- # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
3
- # This file is distributed under the same license as the PACKAGE package.
4
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5
- #
6
- msgid ""
7
- msgstr ""
8
- "Project-Id-Version: aryo-activity-log 2.1.15\n"
9
- "Report-Msgid-Bugs-To: \n"
10
- "POT-Creation-Date: 2015-03-10 14:37+0200\n"
11
- "PO-Revision-Date: 2015-04-23 10:19+0900\n"
12
- "Language: ru\n"
13
- "MIME-Version: 1.0\n"
14
- "Content-Type: text/plain; charset=UTF-8\n"
15
- "Content-Transfer-Encoding: 8bit\n"
16
- "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
17
- "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
18
- "Last-Translator: \n"
19
- "Language-Team: \n"
20
- "X-Generator: Poedit 1.7.4\n"
21
-
22
- #: aryo-activity-log.php:110 aryo-activity-log.php:121
23
- msgid "Cheatin&#8217; huh?"
24
- msgstr ""
25
-
26
- #: classes/class-aal-activity-log-list-table.php:100
27
- msgid "Activities"
28
- msgstr "Активность"
29
-
30
- #: classes/class-aal-activity-log-list-table.php:111
31
- msgid "Date"
32
- msgstr "Дата"
33
-
34
- #: classes/class-aal-activity-log-list-table.php:112
35
- msgid "Author"
36
- msgstr "Пользователь"
37
-
38
- #: classes/class-aal-activity-log-list-table.php:113
39
- msgid "IP"
40
- msgstr "IP"
41
-
42
- #: classes/class-aal-activity-log-list-table.php:114
43
- msgid "Type"
44
- msgstr "Тип"
45
-
46
- #: classes/class-aal-activity-log-list-table.php:115
47
- msgid "Label"
48
- msgstr "Вид"
49
-
50
- #: classes/class-aal-activity-log-list-table.php:116
51
- msgid "Action"
52
- msgstr "Действие"
53
-
54
- #: classes/class-aal-activity-log-list-table.php:117
55
- msgid "Description"
56
- msgstr "Описание"
57
-
58
- #: classes/class-aal-activity-log-list-table.php:137
59
- #, php-format
60
- msgid "%s ago"
61
- msgstr "%s назад"
62
-
63
- #: classes/class-aal-activity-log-list-table.php:164
64
- msgid "Unknown"
65
- msgstr "неизвестно"
66
-
67
- #: classes/class-aal-activity-log-list-table.php:170
68
- #: classes/class-aal-activity-log-list-table.php:281
69
- msgid "Guest"
70
- msgstr "Гость"
71
-
72
- #: classes/class-aal-activity-log-list-table.php:209
73
- msgid "All"
74
- msgstr "Все"
75
-
76
- #: classes/class-aal-activity-log-list-table.php:268
77
- msgid "All Roles"
78
- msgstr "Все роли"
79
-
80
- #: classes/class-aal-activity-log-list-table.php:292
81
- msgid "All Users"
82
- msgstr "Все пользователи"
83
-
84
- #: classes/class-aal-activity-log-list-table.php:319
85
- msgid "All Types"
86
- msgstr "Все типы"
87
-
88
- #: classes/class-aal-activity-log-list-table.php:330
89
- msgid "All Time"
90
- msgstr "за всё время"
91
-
92
- #: classes/class-aal-activity-log-list-table.php:331
93
- msgid "Today"
94
- msgstr "сегодня"
95
-
96
- #: classes/class-aal-activity-log-list-table.php:332
97
- msgid "Yesterday"
98
- msgstr "вчера"
99
-
100
- #: classes/class-aal-activity-log-list-table.php:333
101
- msgid "Week"
102
- msgstr "за неделю"
103
-
104
- #: classes/class-aal-activity-log-list-table.php:334
105
- msgid "Month"
106
- msgstr "за месяц"
107
-
108
- #: classes/class-aal-activity-log-list-table.php:341
109
- msgid "Filter"
110
- msgstr "Отфильтровать"
111
-
112
- #: classes/class-aal-admin-ui.php:16 classes/class-aal-admin-ui.php:26
113
- msgid "Activity Log"
114
- msgstr "Активность"
115
-
116
- #: classes/class-aal-help.php:20
117
- msgid "Overview"
118
- msgstr "Обзор"
119
-
120
- #: classes/class-aal-help.php:23 classes/class-aal-settings.php:125
121
- #: classes/class-aal-settings.php:197
122
- msgid "Notifications"
123
- msgstr "Уведомления"
124
-
125
- #: classes/class-aal-help.php:24
126
- msgid ""
127
- "This screen lets you control what will happen once a user on your site does "
128
- "something you define. For instance, let us assume that you have created a "
129
- "user on your site\n"
130
- " for your content editor. Now, let's say that every time "
131
- "that user updates a post, you want to know about it. You can easily do it "
132
- "from this page."
133
- msgstr ""
134
-
135
- #: classes/class-aal-notifications.php:273
136
- msgid "The AAL notification handler you are trying to register does not exist."
137
- msgstr ""
138
-
139
- #: classes/class-aal-settings.php:26
140
- msgid "GitHub"
141
- msgstr "GitHub"
142
-
143
- #: classes/class-aal-settings.php:29 classes/class-aal-settings.php:44
144
- msgid "Settings"
145
- msgstr "Настройки"
146
-
147
- #: classes/class-aal-settings.php:43 classes/class-aal-settings.php:227
148
- msgid "Activity Log Settings"
149
- msgstr "Настройки «Активности»"
150
-
151
- #: classes/class-aal-settings.php:82
152
- msgid "Display Options"
153
- msgstr "Основные настройки"
154
-
155
- #: classes/class-aal-settings.php:89
156
- msgid "Keep logs for"
157
- msgstr "Вести хронику за"
158
-
159
- #: classes/class-aal-settings.php:98
160
- msgid "days."
161
- msgstr "дней."
162
-
163
- #: classes/class-aal-settings.php:99 classes/class-aal-settings.php:139
164
- msgid ""
165
- "Maximum number of days to keep activity log. Leave blank to keep activity "
166
- "log forever (not recommended)."
167
- msgstr ""
168
- "В течение какого срока хранить данные об активности. Оставьте пустым, чтобы "
169
- "никогда не удалять хронику (не рекомендуется)."
170
-
171
- #: classes/class-aal-settings.php:106
172
- msgid "Delete Log Activities"
173
- msgstr "Очистить хронику"
174
-
175
- #: classes/class-aal-settings.php:111
176
- #, php-format
177
- msgid "<a href=\"%s\" id=\"%s\">Reset Database</a>"
178
- msgstr "<a href=\"%s\" id=\"%s\">Сбросить БД</a>"
179
-
180
- #: classes/class-aal-settings.php:115
181
- msgid "Warning: Clicking this will delete all activities from the database."
182
- msgstr "Внимание: Из базы данных будут удалены все записи об активности"
183
-
184
- #: classes/class-aal-settings.php:132
185
- msgid "Notification Events"
186
- msgstr "Уведомить, если"
187
-
188
- #: classes/class-aal-settings.php:160
189
- msgid "Enable?"
190
- msgstr "Включить?"
191
-
192
- #: classes/class-aal-settings.php:196
193
- msgid "General"
194
- msgstr "Основные"
195
-
196
- #: classes/class-aal-settings.php:246
197
- msgid "All activities have been successfully deleted."
198
- msgstr "Хроника активности была успешно очищена."
199
-
200
- #: classes/class-aal-settings.php:257
201
- msgid "Are you sure you want to do this action?"
202
- msgstr "Вы действительно хотите выполнить это действие?"
203
-
204
- #: classes/class-aal-settings.php:268
205
- msgid "You do not have sufficient permissions to access this page."
206
- msgstr "У вас нет разрешения на доступ к этой странице."
207
-
208
- #: classes/class-aal-settings.php:321
209
- msgid "These are some basic settings for Activity Log."
210
- msgstr "Базовые настройки «Активности»"
211
-
212
- #: classes/class-aal-settings.php:327
213
- msgid ""
214
- "Serve yourself with custom-tailored notifications. First, define your "
215
- "conditions. Then, choose how the notifications will be sent."
216
- msgstr ""
217
- "Настройте оповещения под себя. Сначала определите условия, потом выберите "
218
- "способ отправки."
219
-
220
- #: classes/class-aal-settings.php:426
221
- msgid "Yes"
222
- msgstr "Да"
223
-
224
- #: classes/class-aal-settings.php:427
225
- msgid "No"
226
- msgstr "Нет"
227
-
228
- #: classes/class-aal-settings.php:444 language/strings.php:22
229
- #: notifications/abstract-class-aal-notification-base.php:98
230
- msgid "User"
231
- msgstr "пользователь"
232
-
233
- #: classes/class-aal-settings.php:445
234
- #: notifications/abstract-class-aal-notification-base.php:101
235
- msgid "Action Type"
236
- msgstr "Тип"
237
-
238
- #: classes/class-aal-settings.php:446
239
- msgid "Action Performed"
240
- msgstr "Действие"
241
-
242
- #: classes/class-aal-settings.php:450
243
- msgid "equals to"
244
- msgstr "совпадает с"
245
-
246
- #: classes/class-aal-settings.php:451
247
- msgid "not equals to"
248
- msgstr "не совпадает с"
249
-
250
- #: classes/class-aal-settings.php:461
251
- msgid ""
252
- "A notification will be sent upon a successful match with the following "
253
- "conditions:"
254
- msgstr "Уведомление будет отправлено, если сработают следующие условия:"
255
-
256
- #: hooks/class-aal-hook-posts.php:9
257
- msgid "(no title)"
258
- msgstr "(без заголовка)"
259
-
260
- #: language/strings.php:5
261
- msgid "ARYO Activity Log"
262
- msgstr "ARYO Activity Log"
263
-
264
- #: language/strings.php:6
265
- msgid ""
266
- "Get aware of any activities that are taking place on your dashboard! Imagine "
267
- "it like a black-box for your WordPress site. e.g. post was deleted, plugin "
268
- "was activated, user logged in or logged out - it's all these for you to see."
269
- msgstr ""
270
- "Узнавайте о любых действиях, происходящих в администраторской панели! "
271
- "Представьте, что у вашего сайта Wordpress есть «чёрный ящик»: удаление "
272
- "постов, активация плагинов, вход и выход пользователей системы, и другая "
273
- "информация - всё в наглядном виде."
274
-
275
- #: language/strings.php:8
276
- msgid "Administrator"
277
- msgstr "администратор"
278
-
279
- #: language/strings.php:9
280
- msgid "Editor"
281
- msgstr "редактор"
282
-
283
- #: language/strings.php:12
284
- msgid "Post"
285
- msgstr "запись"
286
-
287
- #: language/strings.php:13
288
- msgid "created"
289
- msgstr "создана"
290
-
291
- #: language/strings.php:14
292
- msgid "updated"
293
- msgstr "обновлена"
294
-
295
- #: language/strings.php:15
296
- msgid "deleted"
297
- msgstr "удалена"
298
-
299
- #: language/strings.php:18
300
- msgid "Attachment"
301
- msgstr "вложение"
302
-
303
- #: language/strings.php:19
304
- msgid "added"
305
- msgstr "добавлено"
306
-
307
- #: language/strings.php:23
308
- msgid "logged_out"
309
- msgstr "выход"
310
-
311
- #: language/strings.php:24
312
- msgid "logged_in"
313
- msgstr "авторизация"
314
-
315
- #: language/strings.php:25
316
- msgid "wrong_password"
317
- msgstr "неверный пароль"
318
-
319
- #: language/strings.php:28
320
- msgid "Plugin"
321
- msgstr "плагин"
322
-
323
- #: language/strings.php:29
324
- msgid "activated"
325
- msgstr "активирован"
326
-
327
- #: language/strings.php:30
328
- msgid "deactivated"
329
- msgstr "деактивирован"
330
-
331
- #: language/strings.php:31
332
- msgid "installed"
333
- msgstr "установлен"
334
-
335
- #: language/strings.php:34
336
- msgid "Theme"
337
- msgstr "Тема"
338
-
339
- #: language/strings.php:35
340
- msgid "Theme Customizer"
341
- msgstr "Настройки темы"
342
-
343
- #: language/strings.php:38
344
- msgid "Widget"
345
- msgstr "Виджет"
346
-
347
- #: language/strings.php:41
348
- msgid "Options"
349
- msgstr "настройка"
350
-
351
- #: language/strings.php:44
352
- msgid "Menu"
353
- msgstr "Меню"
354
-
355
- #: language/strings.php:47
356
- msgid "Taxonomy"
357
- msgstr "Рубрики"
358
-
359
- #: language/strings.php:50
360
- msgid "Core"
361
- msgstr "Ядро"
362
-
363
- #: language/strings.php:51
364
- msgid "WordPress Updated"
365
- msgstr "WordPress обновился"
366
-
367
- #: language/strings.php:52
368
- msgid "WordPress Auto Updated"
369
- msgstr "Wordpress обновился автоматически"
370
-
371
- #: language/strings.php:55
372
- msgid "Comments"
373
- msgstr "комментарии"
374
-
375
- #: language/strings.php:56
376
- msgid "pending"
377
- msgstr "на модерацию"
378
-
379
- #: language/strings.php:57
380
- msgid "approved"
381
- msgstr "принятые"
382
-
383
- #: language/strings.php:58
384
- msgid "unapproved"
385
- msgstr "отклонённые"
386
-
387
- #: language/strings.php:59
388
- msgid "trashed"
389
- msgstr "удалённые"
390
-
391
- #: language/strings.php:60
392
- msgid "untrashed"
393
- msgstr "восстановленные"
394
-
395
- #: language/strings.php:61
396
- msgid "spammed"
397
- msgstr "помечены как спам"
398
-
399
- #: language/strings.php:62
400
- msgid "unspammed"
401
- msgstr "не спам"
402
-
403
- #: language/strings.php:67
404
- msgid "blogname"
405
- msgstr "название блога"
406
-
407
- #: language/strings.php:68
408
- msgid "blogdescription"
409
- msgstr "описание блога"
410
-
411
- #: language/strings.php:69
412
- msgid "siteurl"
413
- msgstr "адрес блога"
414
-
415
- #: language/strings.php:70
416
- msgid "home"
417
- msgstr "начальная страница"
418
-
419
- #: language/strings.php:71
420
- msgid "admin_email"
421
- msgstr "адрес e-mail"
422
-
423
- #: language/strings.php:72
424
- msgid "users_can_register"
425
- msgstr "регистрация открыта"
426
-
427
- #: language/strings.php:73
428
- msgid "default_role"
429
- msgstr "роль нового пользователя"
430
-
431
- #: language/strings.php:74
432
- msgid "timezone_string"
433
- msgstr "часовой пояс"
434
-
435
- #: language/strings.php:75
436
- msgid "date_format"
437
- msgstr "формат даты"
438
-
439
- #: language/strings.php:76
440
- msgid "time_format"
441
- msgstr "формат времени"
442
-
443
- #: language/strings.php:77
444
- msgid "start_of_week"
445
- msgstr "первый день недели"
446
-
447
- #: language/strings.php:80
448
- msgid "use_smilies"
449
- msgstr "использовать смайлы"
450
-
451
- #: language/strings.php:81
452
- msgid "use_balanceTags"
453
- msgstr ""
454
-
455
- #: language/strings.php:82
456
- msgid "default_category"
457
- msgstr "основная рубрика"
458
-
459
- #: language/strings.php:83
460
- msgid "default_post_format"
461
- msgstr "основной формат записей"
462
-
463
- #: language/strings.php:84
464
- msgid "mailserver_url"
465
- msgstr ""
466
-
467
- #: language/strings.php:85
468
- msgid "mailserver_login"
469
- msgstr ""
470
-
471
- #: language/strings.php:86
472
- msgid "mailserver_pass"
473
- msgstr ""
474
-
475
- #: language/strings.php:87
476
- msgid "default_email_category"
477
- msgstr ""
478
-
479
- #: language/strings.php:88
480
- msgid "ping_sites"
481
- msgstr ""
482
-
483
- #: language/strings.php:91
484
- msgid "show_on_front"
485
- msgstr "отображать на главной"
486
-
487
- #: language/strings.php:92
488
- msgid "page_on_front"
489
- msgstr "статическая страница"
490
-
491
- #: language/strings.php:93
492
- msgid "page_for_posts"
493
- msgstr "основная страница блога"
494
-
495
- #: language/strings.php:94
496
- msgid "posts_per_page"
497
- msgstr "записей на страницу"
498
-
499
- #: language/strings.php:95
500
- msgid "posts_per_rss"
501
- msgstr "записей в rss-ленте"
502
-
503
- #: language/strings.php:96
504
- msgid "rss_use_excerpt"
505
- msgstr "отображать текст/анонс в rss"
506
-
507
- #: language/strings.php:97
508
- msgid "blog_public"
509
- msgstr "видимость для поисковых систем"
510
-
511
- #: language/strings.php:100
512
- msgid "default_pingback_flag"
513
- msgstr "оповещение упомянутых блогов"
514
-
515
- #: language/strings.php:101
516
- msgid "default_ping_status"
517
- msgstr "оповещения с других блогов"
518
-
519
- #: language/strings.php:102
520
- msgid "default_comment_status"
521
- msgstr "разрешить оставлять комментарии"
522
-
523
- #: language/strings.php:103
524
- msgid "require_name_email"
525
- msgstr "автор комментария должен указать имя и e-mail"
526
-
527
- #: language/strings.php:104
528
- msgid "comment_registration"
529
- msgstr "авторизация для комментирования"
530
-
531
- #: language/strings.php:105
532
- msgid "close_comments_for_old_posts"
533
- msgstr "автоматически закрывать обсуждение"
534
-
535
- #: language/strings.php:106
536
- msgid "close_comments_days_old"
537
- msgstr "срок обсуждения"
538
-
539
- #: language/strings.php:107
540
- msgid "thread_comments"
541
- msgstr "древовидные комментарии"
542
-
543
- #: language/strings.php:108
544
- msgid "thread_comments_depth"
545
- msgstr "вложенность комментариев"
546
-
547
- #: language/strings.php:109
548
- msgid "page_comments"
549
- msgstr "комментарии постранично"
550
-
551
- #: language/strings.php:110
552
- msgid "comments_per_page"
553
- msgstr "комментариев на страницу"
554
-
555
- #: language/strings.php:111
556
- msgid "default_comments_page"
557
- msgstr "первая/последняя страница комментариев"
558
-
559
- #: language/strings.php:112
560
- msgid "comment_order"
561
- msgstr "сортировка комментариев"
562
-
563
- #: language/strings.php:113
564
- msgid "comments_notify"
565
- msgstr "письмо об оставленном комментарии"
566
-
567
- #: language/strings.php:114
568
- msgid "moderation_notify"
569
- msgstr "письмо о комментарии на модерацию"
570
-
571
- #: language/strings.php:115
572
- msgid "comment_moderation"
573
- msgstr "модерация комментариев"
574
-
575
- #: language/strings.php:116
576
- msgid "comment_whitelist"
577
- msgstr ""
578
-
579
- #: language/strings.php:117
580
- msgid "comment_max_links"
581
- msgstr "количество ссылок в комментарии"
582
-
583
- #: language/strings.php:118
584
- msgid "moderation_keys"
585
- msgstr "ключевые слова на модерацию"
586
-
587
- #: language/strings.php:119
588
- msgid "blacklist_keys"
589
- msgstr "чёрный список"
590
-
591
- #: language/strings.php:120
592
- msgid "show_avatars"
593
- msgstr "показывать аватары"
594
-
595
- #: language/strings.php:121
596
- msgid "avatar_rating"
597
- msgstr "рейтинг аватаров"
598
-
599
- #: language/strings.php:122
600
- msgid "avatar_default"
601
- msgstr "аватар по умолчанию"
602
-
603
- #: language/strings.php:125
604
- msgid "thumbnail_size_w"
605
- msgstr "ширина миниатюры"
606
-
607
- #: language/strings.php:126
608
- msgid "thumbnail_size_h"
609
- msgstr "высота миниатюры"
610
-
611
- #: language/strings.php:127
612
- msgid "thumbnail_crop"
613
- msgstr "обрезать по размерам"
614
-
615
- #: language/strings.php:128
616
- msgid "medium_size_w"
617
- msgstr "ширина среднего размера"
618
-
619
- #: language/strings.php:129
620
- msgid "medium_size_h"
621
- msgstr "высота среднего размера"
622
-
623
- #: language/strings.php:130
624
- msgid "large_size_w"
625
- msgstr "ширина крупного размера"
626
-
627
- #: language/strings.php:131
628
- msgid "large_size_h"
629
- msgstr "высота крупного размера"
630
-
631
- #: language/strings.php:132
632
- msgid "uploads_use_yearmonth_folders"
633
- msgstr "использовать структуру папок «год – месяц» для загрузок"
634
-
635
- #: language/strings.php:135
636
- msgid "permalink_structure"
637
- msgstr "структура постоянных ссылок"
638
-
639
- #: language/strings.php:136
640
- msgid "category_base"
641
- msgstr "префикс для рубрик"
642
-
643
- #: language/strings.php:137
644
- msgid "tag_base"
645
- msgstr "префикс для меток"
646
-
647
- #: language/strings.php:140
648
- msgid "Export"
649
- msgstr "Экспорт"
650
-
651
- #: language/strings.php:141
652
- msgid "downloaded"
653
- msgstr "скачано"
654
-
655
- #: notifications/abstract-class-aal-notification-base.php:99
656
- msgid "Object Type"
657
- msgstr ""
658
-
659
- #: notifications/abstract-class-aal-notification-base.php:100
660
- msgid "Object Name"
661
- msgstr ""
662
-
663
- #: notifications/abstract-class-aal-notification-base.php:102
664
- msgid "IP Address"
665
- msgstr "IP"
666
-
667
- #: notifications/abstract-class-aal-notification-base.php:121
668
- msgid "N/A"
669
- msgstr ""
670
-
671
- #: notifications/class-aal-notification-email.php:15
672
- msgid "Email"
673
- msgstr "Электронная почта"
674
-
675
- #: notifications/class-aal-notification-email.php:16
676
- msgid "Get notified by Email."
677
- msgstr "Получайте уведомления на e-mail"
678
-
679
- #: notifications/class-aal-notification-email.php:49
680
- msgid "New notification from Activity Log"
681
- msgstr "Новое уведомление от ARYO Activity Log"
682
-
683
- #: notifications/class-aal-notification-email.php:65
684
- msgid ""
685
- "Hi there!\n"
686
- "\n"
687
- "A notification condition on [sitename] was matched. Here are the details:\n"
688
- "\n"
689
- "[action-details]\n"
690
- "\n"
691
- "Sent by ARYO Activity Log"
692
- msgstr ""
693
- "Привет!\n"
694
- "\n"
695
- "На сайте [sitename] сработало уведомление:\n"
696
- "\n"
697
- "[action-details]\n"
698
- "\n"
699
- "Отправлено из «Активности» (ARYO Activity Log)"
700
-
701
- #: notifications/class-aal-notification-email.php:67
702
- msgid "From Email"
703
- msgstr "От:"
704
-
705
- #: notifications/class-aal-notification-email.php:67
706
- msgid "The source Email address"
707
- msgstr "E-mail «отправителя»"
708
-
709
- #: notifications/class-aal-notification-email.php:68
710
- msgid "To Email"
711
- msgstr "Куда:"
712
-
713
- #: notifications/class-aal-notification-email.php:68
714
- msgid "The Email address notifications will be sent to"
715
- msgstr "На какой e-mail отправлять уведомления"
716
-
717
- #: notifications/class-aal-notification-email.php:69
718
- msgid "Message"
719
- msgstr "Текст"
720
-
721
- #: notifications/class-aal-notification-email.php:69
722
- #, php-format
723
- msgid "Customize the message using the following placeholders: %s"
724
- msgstr "Составьте текст уведомления с использованием маркеров %s"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
language/aryo-aal-sr_RS.mo DELETED
Binary file
language/aryo-aal-sr_RS.po DELETED
@@ -1,173 +0,0 @@
1
- # Copyright (C) 2013
2
- # This file is distributed under the same license as the package.
3
- msgid ""
4
- msgstr ""
5
- "Project-Id-Version: ARYO Activity Log\n"
6
- "Report-Msgid-Bugs-To: http://wordpress.org/tag/activity-log\n"
7
- "POT-Creation-Date: 2013-08-16 01:53+0200\n"
8
- "PO-Revision-Date: 2013-11-14 18:58-0000\n"
9
- "Last-Translator: Borisa Djuraskovic <borisad@webhostinghub.com>\n"
10
- "Language-Team: Robert Harm <LL@li.org>\n"
11
- "Language: de_DE\n"
12
- "MIME-Version: 1.0\n"
13
- "Content-Type: text/plain; charset=UTF-8\n"
14
- "Content-Transfer-Encoding: 8bit\n"
15
- "X-Generator: Poedit 1.5.7\n"
16
-
17
- #: ../classes/class-aal-activity-log-list-table.php:82
18
- msgid "Type"
19
- msgstr "Tip"
20
-
21
- #: ../classes/class-aal-activity-log-list-table.php:83
22
- msgid "Name"
23
- msgstr "Ime"
24
-
25
- #: ../classes/class-aal-activity-log-list-table.php:84
26
- msgid "Action"
27
- msgstr "Akcija"
28
-
29
- #: ../classes/class-aal-activity-log-list-table.php:85
30
- msgid "Date"
31
- msgstr "Datum"
32
-
33
- #: ../classes/class-aal-activity-log-list-table.php:99
34
- #, php-format
35
- msgid "%s ago"
36
- msgstr "%s pre"
37
-
38
- #: ../classes/class-aal-activity-log-list-table.php:120
39
- msgid "by "
40
- msgstr "od strane"
41
-
42
- #: ../classes/class-aal-activity-log-list-table.php:127
43
- #: ../classes/class-aal-activity-log-list-table.php:176
44
- msgid "Guest"
45
- msgstr "Gost"
46
-
47
- #: ../classes/class-aal-activity-log-list-table.php:187
48
- msgid "All Users"
49
- msgstr "Svi korisnici"
50
-
51
- #: ../classes/class-aal-activity-log-list-table.php:214
52
- msgid "All Types"
53
- msgstr "Svi tipovi"
54
-
55
- #: ../classes/class-aal-activity-log-list-table.php:220
56
- msgid "Filter"
57
- msgstr "Filter"
58
-
59
- #: ../classes/class-aal-admin-ui.php:8 ../classes/class-aal-admin-ui.php:18
60
- #: ../classes/class-aal-settings.php:30
61
- msgid "Activity Log"
62
- msgstr "Activity Log"
63
-
64
- #: ../classes/class-aal-settings.php:17
65
- msgid "Settings"
66
- msgstr "Postavke"
67
-
68
- #: ../classes/class-aal-settings.php:29
69
- msgid "Activity Log Settings"
70
- msgstr "Activity Log postavke"
71
-
72
- #: ../classes/class-aal-settings.php:51
73
- msgid "Display Options"
74
- msgstr "Opcije prikaza"
75
-
76
- #: ../classes/class-aal-settings.php:58
77
- msgid "Keep logs for"
78
- msgstr "drži logove za"
79
-
80
- #: ../classes/class-aal-settings.php:66
81
- msgid "Forever"
82
- msgstr "Zauvek"
83
-
84
- #: ../classes/class-aal-settings.php:67
85
- msgid "A year"
86
- msgstr "Godina"
87
-
88
- #: ../classes/class-aal-settings.php:68
89
- msgid "6 months"
90
- msgstr "6 meseci"
91
-
92
- #: ../classes/class-aal-settings.php:69
93
- msgid "A month"
94
- msgstr "Mesec"
95
-
96
- #: ../classes/class-aal-settings.php:83
97
- msgid "ARYO Activity Log Settings"
98
- msgstr "ARYO Activity Log Settings"
99
-
100
- #: ../classes/class-aal-settings.php:109
101
- msgid "These are some basic settings for Activity Log."
102
- msgstr "Ovo su neke osnovne postavke za Activity Log."
103
-
104
- #: ../language/strings.php:4
105
- msgid "Post"
106
- msgstr "Post"
107
-
108
- #: ../language/strings.php:5
109
- msgid "created"
110
- msgstr "stvoren"
111
-
112
- #: ../language/strings.php:6
113
- msgid "updated"
114
- msgstr "update-ovan"
115
-
116
- #: ../language/strings.php:7
117
- msgid "deleted"
118
- msgstr "obrisan"
119
-
120
- #: ../language/strings.php:10
121
- msgid "Attachment"
122
- msgstr "Attachment"
123
-
124
- #: ../language/strings.php:11
125
- msgid "added"
126
- msgstr "dodato"
127
-
128
- #: ../language/strings.php:14
129
- msgid "User"
130
- msgstr "Korisnik"
131
-
132
- #: ../language/strings.php:15
133
- msgid "logged_out"
134
- msgstr "izlogovan"
135
-
136
- #: ../language/strings.php:16
137
- msgid "logged_in"
138
- msgstr "ulogovan"
139
-
140
- #: ../language/strings.php:17
141
- msgid "wrong_password"
142
- msgstr "pogrešna_šifra"
143
-
144
- #: ../language/strings.php:20
145
- msgid "Plugin"
146
- msgstr "Plugin"
147
-
148
- #: ../language/strings.php:21
149
- msgid "activated"
150
- msgstr "aktivirano"
151
-
152
- #: ../language/strings.php:22
153
- msgid "deactivated"
154
- msgstr "deaktivirano"
155
-
156
- #: ../language/strings.php:25
157
- msgid "Widget"
158
- msgstr "Widget"
159
-
160
- #: ../language/strings.php:28
161
- msgid "Options"
162
- msgstr "Opcije"
163
-
164
- #: ../language/strings.php:31
165
- msgid "Menu"
166
- msgstr "Meni"
167
-
168
- #: ../language/strings.php:34
169
- msgid "Taxonomy"
170
- msgstr "Taxonomy"
171
-
172
- #~ msgid "was "
173
- #~ msgstr "war"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
language/aryo-aal-tr_TR.mo DELETED
Binary file
language/aryo-aal-tr_TR.po DELETED
@@ -1,494 +0,0 @@
1
- # Copyright (C) 2013
2
- # This file is distributed under the same license as the package.
3
- msgid ""
4
- msgstr ""
5
- "Project-Id-Version: ARYO Activity Log\n"
6
- "Report-Msgid-Bugs-To: http://wordpress.org/tag/activity-log\n"
7
- "POT-Creation-Date: 2014-02-17 19:21-0000\n"
8
- "PO-Revision-Date: 2014-09-25 10:56+0200\n"
9
- "Last-Translator: Morten Dalgaard Johansen <support@iosoftgame.com>\n"
10
- "Language-Team: Morten Dalgaard Johansen <support@iosoftgame.com>\n"
11
- "MIME-Version: 1.0\n"
12
- "Content-Type: text/plain; charset=UTF-8\n"
13
- "Content-Transfer-Encoding: 8bit\n"
14
- "Plural-Forms: nplurals=2; plural=n != 1;\n"
15
- "X-Generator: Poedit 1.6.9\n"
16
- "X-Poedit-SourceCharset: UTF-8\n"
17
- "X-Poedit-KeywordsList: _;gettext;gettext_noop;__;_e;_x;_n:1,2;_c,_nc:4c,1,2\n"
18
- "X-Poedit-Basepath: .\n"
19
- "Language: da_DK\n"
20
- "X-Poedit-SearchPath-0: ..\n"
21
-
22
- #: ../classes/class-aal-activity-log-list-table.php:82
23
- msgid "Activities"
24
- msgstr "Aktiviteler"
25
-
26
- #: ../classes/class-aal-activity-log-list-table.php:92
27
- msgid "Date"
28
- msgstr "Tarih"
29
-
30
- #: ../classes/class-aal-activity-log-list-table.php:93
31
- msgid "Author"
32
- msgstr "Kim ?"
33
-
34
- #: ../classes/class-aal-activity-log-list-table.php:94
35
- msgid "IP"
36
- msgstr "IP"
37
-
38
- #: ../classes/class-aal-activity-log-list-table.php:95
39
- msgid "Type"
40
- msgstr "Türü"
41
-
42
- #: ../classes/class-aal-activity-log-list-table.php:96
43
- msgid "Label"
44
- msgstr "Sınıfı"
45
-
46
- #: ../classes/class-aal-activity-log-list-table.php:97
47
- msgid "Action"
48
- msgstr "Faaliyeti"
49
-
50
- #: ../classes/class-aal-activity-log-list-table.php:98
51
- msgid "Description"
52
- msgstr "Açıklama"
53
-
54
- #: ../classes/class-aal-activity-log-list-table.php:118
55
- #, php-format
56
- msgid "%s ago"
57
- msgstr "%s önce"
58
-
59
- #: ../classes/class-aal-activity-log-list-table.php:145
60
- msgid "Unknown"
61
- msgstr "Bilinmeyen"
62
-
63
- #: ../classes/class-aal-activity-log-list-table.php:151
64
- #: ../classes/class-aal-activity-log-list-table.php:229
65
- msgid "Guest"
66
- msgstr "Ziyaretçi"
67
-
68
- #: ../classes/class-aal-activity-log-list-table.php:240
69
- msgid "All Users"
70
- msgstr "Tüm Kullanıcılar"
71
-
72
- #: ../classes/class-aal-activity-log-list-table.php:267
73
- msgid "All Types"
74
- msgstr "Tüm Türler"
75
-
76
- #: ../classes/class-aal-activity-log-list-table.php:278
77
- msgid "All Time"
78
- msgstr "Tüm Tarihler"
79
-
80
- #: ../classes/class-aal-activity-log-list-table.php:279
81
- msgid "Today"
82
- msgstr "Bugün"
83
-
84
- #: ../classes/class-aal-activity-log-list-table.php:280
85
- msgid "Yesterday"
86
- msgstr "Dün"
87
-
88
- #: ../classes/class-aal-activity-log-list-table.php:281
89
- msgid "Week"
90
- msgstr "Bir Hafta"
91
-
92
- #: ../classes/class-aal-activity-log-list-table.php:282
93
- msgid "Month"
94
- msgstr "Bir Ay"
95
-
96
- #: ../classes/class-aal-activity-log-list-table.php:289
97
- msgid "Filter"
98
- msgstr "Filtrele"
99
-
100
- #: ../classes/class-aal-admin-ui.php:17 ../classes/class-aal-admin-ui.php:27
101
- msgid "Activity Log"
102
- msgstr "Aktivite Kayıtları"
103
-
104
- #: ../classes/class-aal-settings.php:21
105
- msgid "GitHub"
106
- msgstr "GitHub"
107
-
108
- #: ../classes/class-aal-settings.php:24 ../classes/class-aal-settings.php:39
109
- msgid "Settings"
110
- msgstr "Ayarlar"
111
-
112
- #: ../classes/class-aal-settings.php:38 ../classes/class-aal-settings.php:106
113
- msgid "Activity Log Settings"
114
- msgstr "Aktivite Kayıt Ayarları"
115
-
116
- #: ../classes/class-aal-settings.php:59
117
- msgid "Display Options"
118
- msgstr "Görünüm Seçenekleri"
119
-
120
- #: ../classes/class-aal-settings.php:66
121
- msgid "Keep logs for"
122
- msgstr "Kayıtların Tutulma Süresi"
123
-
124
- #: ../classes/class-aal-settings.php:75
125
- msgid "days."
126
- msgstr "gün tut."
127
-
128
- #: ../classes/class-aal-settings.php:76
129
- msgid ""
130
- "Maximum number of days to keep activity log. Leave blank to keep activity "
131
- "log forever (not recommended)."
132
- msgstr ""
133
- "Bir günde tutulacak maksimum kayıt sayısı . Eğer boş bırakırsanız sonsuz "
134
- "kayıt tutacaktır. (Önerilmez)."
135
-
136
- #: ../classes/class-aal-settings.php:83
137
- msgid "Delete Log Activities"
138
- msgstr "Tüm Kayıtları Sil"
139
-
140
- #: ../classes/class-aal-settings.php:88
141
- #, php-format
142
- msgid "<a href=\"%s\" id=\"%s\">Reset Database</a>"
143
- msgstr "<a href=\"%s\" id=\"%s\">Database i Sıfırlar</a>"
144
-
145
- #: ../classes/class-aal-settings.php:92
146
- msgid "Warning: Clicking this will delete all activities from the database."
147
- msgstr "Dikkat: Tıkladığınızda database de yer alan tüm kayıtlar silincektir."
148
-
149
- #: ../classes/class-aal-settings.php:124
150
- msgid "All activities have been successfully deleted."
151
- msgstr "Tüm kayıtlar başarıyla silindi."
152
-
153
- #: ../classes/class-aal-settings.php:135
154
- msgid "Are you sure you want to do this action?"
155
- msgstr "Bunu yapmak istediğinizden emin misiniz ?"
156
-
157
- #: ../classes/class-aal-settings.php:169
158
- msgid "These are some basic settings for Activity Log."
159
- msgstr "Aktivite Kayıt için bazı temel ayarlar."
160
-
161
- #: ../language/strings.php:2
162
- msgid "ARYO Activity Log"
163
- msgstr "Aktivite Kayıt Tutucu"
164
-
165
- #: ../language/strings.php:3
166
- msgid ""
167
- "Get aware of any activities that are taking place on your dashboard! Imagine "
168
- "it like a black-box for your WordPress site. e.g. post was deleted, plugin "
169
- "was activated, user logged in or logged out - it’s all these for you to see."
170
- msgstr ""
171
- "Bliv opmærksom på aktiviteter, der finder sted i kontrolpanelet! Forestil "
172
- "dig det som en sort boks til dit WordPress site f.eks indlæg blev slettet, "
173
- "plugin blev aktiveret, bruger logget ind eller logget ud - det er alt dette "
174
- "som du kan se ."
175
-
176
- #: ../language/strings.php:6
177
- msgid "Post"
178
- msgstr "Yazı"
179
-
180
- #: ../language/strings.php:7
181
- msgid "created"
182
- msgstr "oluşturdu"
183
-
184
- #: ../language/strings.php:8
185
- msgid "updated"
186
- msgstr "güncelledi"
187
-
188
- #: ../language/strings.php:9
189
- msgid "deleted"
190
- msgstr "sildi"
191
-
192
- #: ../language/strings.php:12
193
- msgid "Attachment"
194
- msgstr "Ek Dosya"
195
-
196
- #: ../language/strings.php:13
197
- msgid "added"
198
- msgstr "ekledi"
199
-
200
- #: ../language/strings.php:16
201
- msgid "User"
202
- msgstr "Kullanıcı"
203
-
204
- #: ../language/strings.php:17
205
- msgid "logged_out"
206
- msgstr "cikis_yapti"
207
-
208
- #: ../language/strings.php:18
209
- msgid "logged_in"
210
- msgstr "giris_yapti"
211
-
212
- #: ../language/strings.php:19
213
- msgid "wrong_password"
214
- msgstr "yanlis_sifre"
215
-
216
- #: ../language/strings.php:22
217
- msgid "Plugin"
218
- msgstr "Eklenti"
219
-
220
- #: ../language/strings.php:23
221
- msgid "activated"
222
- msgstr "aktifleştirdi"
223
-
224
- #: ../language/strings.php:24
225
- msgid "deactivated"
226
- msgstr "etkisizleştirdi"
227
-
228
- #: ../language/strings.php:27
229
- msgid "Theme"
230
- msgstr "Tema"
231
-
232
- #: ../language/strings.php:28
233
- msgid "Theme Customizer"
234
- msgstr "Tema Düzenleyici"
235
-
236
- #: ../language/strings.php:31
237
- msgid "Widget"
238
- msgstr "Bileşen"
239
-
240
- #: ../language/strings.php:34
241
- msgid "Options"
242
- msgstr "Ayarlar"
243
-
244
- #: ../language/strings.php:37
245
- msgid "Menu"
246
- msgstr "Menü"
247
-
248
- #: ../language/strings.php:40
249
- msgid "Taxonomy"
250
- msgstr "Taksonomi"
251
-
252
- #: ../language/strings.php:45
253
- msgid "blogname"
254
- msgstr "blogadi"
255
-
256
- #: ../language/strings.php:46
257
- msgid "blogdescription"
258
- msgstr "blogaciklaması"
259
-
260
- #: ../language/strings.php:47
261
- msgid "siteurl"
262
- msgstr ""
263
-
264
- #: ../language/strings.php:48
265
- msgid "home"
266
- msgstr ""
267
-
268
- #: ../language/strings.php:49
269
- msgid "admin_email"
270
- msgstr ""
271
-
272
- #: ../language/strings.php:50
273
- msgid "users_can_register"
274
- msgstr ""
275
-
276
- #: ../language/strings.php:51
277
- msgid "default_role"
278
- msgstr ""
279
-
280
- #: ../language/strings.php:52
281
- msgid "timezone_string"
282
- msgstr ""
283
-
284
- #: ../language/strings.php:53
285
- msgid "date_format"
286
- msgstr ""
287
-
288
- #: ../language/strings.php:54
289
- msgid "time_format"
290
- msgstr ""
291
-
292
- #: ../language/strings.php:55
293
- msgid "start_of_week"
294
- msgstr ""
295
-
296
- #: ../language/strings.php:58
297
- msgid "use_smilies"
298
- msgstr ""
299
-
300
- #: ../language/strings.php:59
301
- msgid "use_balanceTags"
302
- msgstr ""
303
-
304
- #: ../language/strings.php:60
305
- msgid "default_category"
306
- msgstr ""
307
-
308
- #: ../language/strings.php:61
309
- msgid "default_post_format"
310
- msgstr ""
311
-
312
- #: ../language/strings.php:62
313
- msgid "mailserver_url"
314
- msgstr ""
315
-
316
- #: ../language/strings.php:63
317
- msgid "mailserver_login"
318
- msgstr ""
319
-
320
- #: ../language/strings.php:64
321
- msgid "mailserver_pass"
322
- msgstr ""
323
-
324
- #: ../language/strings.php:65
325
- msgid "default_email_category"
326
- msgstr ""
327
-
328
- #: ../language/strings.php:66
329
- msgid "ping_sites"
330
- msgstr ""
331
-
332
- #: ../language/strings.php:69
333
- msgid "show_on_front"
334
- msgstr ""
335
-
336
- #: ../language/strings.php:70
337
- msgid "page_on_front"
338
- msgstr ""
339
-
340
- #: ../language/strings.php:71
341
- msgid "page_for_posts"
342
- msgstr ""
343
-
344
- #: ../language/strings.php:72
345
- msgid "posts_per_page"
346
- msgstr ""
347
-
348
- #: ../language/strings.php:73
349
- msgid "posts_per_rss"
350
- msgstr ""
351
-
352
- #: ../language/strings.php:74
353
- msgid "rss_use_excerpt"
354
- msgstr ""
355
-
356
- #: ../language/strings.php:75
357
- msgid "blog_public"
358
- msgstr ""
359
-
360
- #: ../language/strings.php:78
361
- msgid "default_pingback_flag"
362
- msgstr ""
363
-
364
- #: ../language/strings.php:79
365
- msgid "default_ping_status"
366
- msgstr ""
367
-
368
- #: ../language/strings.php:80
369
- msgid "default_comment_status"
370
- msgstr ""
371
-
372
- #: ../language/strings.php:81
373
- msgid "require_name_email"
374
- msgstr ""
375
-
376
- #: ../language/strings.php:82
377
- msgid "comment_registration"
378
- msgstr ""
379
-
380
- #: ../language/strings.php:83
381
- msgid "close_comments_for_old_posts"
382
- msgstr ""
383
-
384
- #: ../language/strings.php:84
385
- msgid "close_comments_days_old"
386
- msgstr ""
387
-
388
- #: ../language/strings.php:85
389
- msgid "thread_comments"
390
- msgstr ""
391
-
392
- #: ../language/strings.php:86
393
- msgid "thread_comments_depth"
394
- msgstr ""
395
-
396
- #: ../language/strings.php:87
397
- msgid "page_comments"
398
- msgstr ""
399
-
400
- #: ../language/strings.php:88
401
- msgid "comments_per_page"
402
- msgstr ""
403
-
404
- #: ../language/strings.php:89
405
- msgid "default_comments_page"
406
- msgstr ""
407
-
408
- #: ../language/strings.php:90
409
- msgid "comment_order"
410
- msgstr ""
411
-
412
- #: ../language/strings.php:91
413
- msgid "comments_notify"
414
- msgstr ""
415
-
416
- #: ../language/strings.php:92
417
- msgid "moderation_notify"
418
- msgstr ""
419
-
420
- #: ../language/strings.php:93
421
- msgid "comment_moderation"
422
- msgstr ""
423
-
424
- #: ../language/strings.php:94
425
- msgid "comment_whitelist"
426
- msgstr ""
427
-
428
- #: ../language/strings.php:95
429
- msgid "comment_max_links"
430
- msgstr ""
431
-
432
- #: ../language/strings.php:96
433
- msgid "moderation_keys"
434
- msgstr ""
435
-
436
- #: ../language/strings.php:97
437
- msgid "blacklist_keys"
438
- msgstr ""
439
-
440
- #: ../language/strings.php:98
441
- msgid "show_avatars"
442
- msgstr ""
443
-
444
- #: ../language/strings.php:99
445
- msgid "avatar_rating"
446
- msgstr ""
447
-
448
- #: ../language/strings.php:100
449
- msgid "avatar_default"
450
- msgstr ""
451
-
452
- #: ../language/strings.php:103
453
- msgid "thumbnail_size_w"
454
- msgstr ""
455
-
456
- #: ../language/strings.php:104
457
- msgid "thumbnail_size_h"
458
- msgstr ""
459
-
460
- #: ../language/strings.php:105
461
- msgid "thumbnail_crop"
462
- msgstr ""
463
-
464
- #: ../language/strings.php:106
465
- msgid "medium_size_w"
466
- msgstr ""
467
-
468
- #: ../language/strings.php:107
469
- msgid "medium_size_h"
470
- msgstr ""
471
-
472
- #: ../language/strings.php:108
473
- msgid "large_size_w"
474
- msgstr ""
475
-
476
- #: ../language/strings.php:109
477
- msgid "large_size_h"
478
- msgstr ""
479
-
480
- #: ../language/strings.php:110
481
- msgid "uploads_use_yearmonth_folders"
482
- msgstr ""
483
-
484
- #: ../language/strings.php:113
485
- msgid "permalink_structure"
486
- msgstr ""
487
-
488
- #: ../language/strings.php:114
489
- msgid "category_base"
490
- msgstr ""
491
-
492
- #: ../language/strings.php:115
493
- msgid "tag_base"
494
- msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
language/aryo-aal.pot DELETED
@@ -1,712 +0,0 @@
1
- # SOME DESCRIPTIVE TITLE.
2
- # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
3
- # This file is distributed under the same license as the PACKAGE package.
4
- # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
5
- #
6
- #, fuzzy
7
- msgid ""
8
- msgstr ""
9
- "Project-Id-Version: aryo-activity-log 2.2.3\n"
10
- "Report-Msgid-Bugs-To: \n"
11
- "POT-Creation-Date: 2015-07-12 16:14+0300\n"
12
- "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13
- "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
- "Language-Team: LANGUAGE <LL@li.org>\n"
15
- "Language: \n"
16
- "MIME-Version: 1.0\n"
17
- "Content-Type: text/plain; charset=CHARSET\n"
18
- "Content-Transfer-Encoding: 8bit\n"
19
-
20
- #: aryo-activity-log.php:110 aryo-activity-log.php:121
21
- msgid "Cheatin&#8217; huh?"
22
- msgstr ""
23
-
24
- #: classes/class-aal-activity-log-list-table.php:100
25
- msgid "Activities"
26
- msgstr ""
27
-
28
- #: classes/class-aal-activity-log-list-table.php:111
29
- msgid "Date"
30
- msgstr ""
31
-
32
- #: classes/class-aal-activity-log-list-table.php:112
33
- msgid "Author"
34
- msgstr ""
35
-
36
- #: classes/class-aal-activity-log-list-table.php:113
37
- msgid "IP"
38
- msgstr ""
39
-
40
- #: classes/class-aal-activity-log-list-table.php:114
41
- msgid "Type"
42
- msgstr ""
43
-
44
- #: classes/class-aal-activity-log-list-table.php:115
45
- msgid "Label"
46
- msgstr ""
47
-
48
- #: classes/class-aal-activity-log-list-table.php:116
49
- msgid "Action"
50
- msgstr ""
51
-
52
- #: classes/class-aal-activity-log-list-table.php:117
53
- msgid "Description"
54
- msgstr ""
55
-
56
- #: classes/class-aal-activity-log-list-table.php:137
57
- #, php-format
58
- msgid "%s ago"
59
- msgstr ""
60
-
61
- #: classes/class-aal-activity-log-list-table.php:166
62
- msgid "Unknown"
63
- msgstr ""
64
-
65
- #: classes/class-aal-activity-log-list-table.php:172
66
- #: classes/class-aal-activity-log-list-table.php:291
67
- msgid "Guest"
68
- msgstr ""
69
-
70
- #: classes/class-aal-activity-log-list-table.php:215
71
- msgid "All"
72
- msgstr ""
73
-
74
- #: classes/class-aal-activity-log-list-table.php:235
75
- msgid "Search"
76
- msgstr ""
77
-
78
- #: classes/class-aal-activity-log-list-table.php:278
79
- msgid "All Roles"
80
- msgstr ""
81
-
82
- #: classes/class-aal-activity-log-list-table.php:302
83
- msgid "All Users"
84
- msgstr ""
85
-
86
- #: classes/class-aal-activity-log-list-table.php:330
87
- msgid "All Types"
88
- msgstr ""
89
-
90
- #: classes/class-aal-activity-log-list-table.php:356
91
- msgid "All Actions"
92
- msgstr ""
93
-
94
- #: classes/class-aal-activity-log-list-table.php:367
95
- msgid "All Time"
96
- msgstr ""
97
-
98
- #: classes/class-aal-activity-log-list-table.php:368
99
- msgid "Today"
100
- msgstr ""
101
-
102
- #: classes/class-aal-activity-log-list-table.php:369
103
- msgid "Yesterday"
104
- msgstr ""
105
-
106
- #: classes/class-aal-activity-log-list-table.php:370
107
- msgid "Week"
108
- msgstr ""
109
-
110
- #: classes/class-aal-activity-log-list-table.php:371
111
- msgid "Month"
112
- msgstr ""
113
-
114
- #: classes/class-aal-activity-log-list-table.php:378
115
- msgid "Filter"
116
- msgstr ""
117
-
118
- #: classes/class-aal-admin-ui.php:16 classes/class-aal-admin-ui.php:26
119
- #: language/strings.php:5
120
- msgid "Activity Log"
121
- msgstr ""
122
-
123
- #: classes/class-aal-help.php:20
124
- msgid "Overview"
125
- msgstr ""
126
-
127
- #: classes/class-aal-help.php:23 classes/class-aal-settings.php:125
128
- #: classes/class-aal-settings.php:197
129
- msgid "Notifications"
130
- msgstr ""
131
-
132
- #: classes/class-aal-help.php:24
133
- msgid ""
134
- "This screen lets you control what will happen once a user on your site does "
135
- "something you define. For instance, let us assume that you have created a "
136
- "user on your site\n"
137
- " for your content editor. Now, let's say that every time "
138
- "that user updates a post, you want to know about it. You can easily do it "
139
- "from this page."
140
- msgstr ""
141
-
142
- #: classes/class-aal-notifications.php:273
143
- msgid "The AAL notification handler you are trying to register does not exist."
144
- msgstr ""
145
-
146
- #: classes/class-aal-settings.php:26
147
- msgid "GitHub"
148
- msgstr ""
149
-
150
- #: classes/class-aal-settings.php:29 classes/class-aal-settings.php:44
151
- msgid "Settings"
152
- msgstr ""
153
-
154
- #: classes/class-aal-settings.php:43 classes/class-aal-settings.php:227
155
- msgid "Activity Log Settings"
156
- msgstr ""
157
-
158
- #: classes/class-aal-settings.php:82
159
- msgid "Display Options"
160
- msgstr ""
161
-
162
- #: classes/class-aal-settings.php:89
163
- msgid "Keep logs for"
164
- msgstr ""
165
-
166
- #: classes/class-aal-settings.php:98
167
- msgid "days."
168
- msgstr ""
169
-
170
- #: classes/class-aal-settings.php:99 classes/class-aal-settings.php:139
171
- msgid ""
172
- "Maximum number of days to keep activity log. Leave blank to keep activity "
173
- "log forever (not recommended)."
174
- msgstr ""
175
-
176
- #: classes/class-aal-settings.php:106
177
- msgid "Delete Log Activities"
178
- msgstr ""
179
-
180
- #: classes/class-aal-settings.php:111
181
- #, php-format
182
- msgid "<a href=\"%s\" id=\"%s\">Reset Database</a>"
183
- msgstr ""
184
-
185
- #: classes/class-aal-settings.php:115
186
- msgid "Warning: Clicking this will delete all activities from the database."
187
- msgstr ""
188
-
189
- #: classes/class-aal-settings.php:132
190
- msgid "Notification Events"
191
- msgstr ""
192
-
193
- #: classes/class-aal-settings.php:160
194
- msgid "Enable?"
195
- msgstr ""
196
-
197
- #: classes/class-aal-settings.php:196
198
- msgid "General"
199
- msgstr ""
200
-
201
- #: classes/class-aal-settings.php:246
202
- msgid "All activities have been successfully deleted."
203
- msgstr ""
204
-
205
- #: classes/class-aal-settings.php:257
206
- msgid "Are you sure you want to do this action?"
207
- msgstr ""
208
-
209
- #: classes/class-aal-settings.php:268
210
- msgid "You do not have sufficient permissions to access this page."
211
- msgstr ""
212
-
213
- #: classes/class-aal-settings.php:321
214
- msgid "These are some basic settings for Activity Log."
215
- msgstr ""
216
-
217
- #: classes/class-aal-settings.php:327
218
- msgid ""
219
- "Serve yourself with custom-tailored notifications. First, define your "
220
- "conditions. Then, choose how the notifications will be sent."
221
- msgstr ""
222
-
223
- #: classes/class-aal-settings.php:426
224
- msgid "Yes"
225
- msgstr ""
226
-
227
- #: classes/class-aal-settings.php:427
228
- msgid "No"
229
- msgstr ""
230
-
231
- #: classes/class-aal-settings.php:444 language/strings.php:22
232
- #: notifications/abstract-class-aal-notification-base.php:98
233
- msgid "User"
234
- msgstr ""
235
-
236
- #: classes/class-aal-settings.php:445
237
- #: notifications/abstract-class-aal-notification-base.php:101
238
- msgid "Action Type"
239
- msgstr ""
240
-
241
- #: classes/class-aal-settings.php:446
242
- msgid "Action Performed"
243
- msgstr ""
244
-
245
- #: classes/class-aal-settings.php:450
246
- msgid "equals to"
247
- msgstr ""
248
-
249
- #: classes/class-aal-settings.php:451
250
- msgid "not equals to"
251
- msgstr ""
252
-
253
- #: classes/class-aal-settings.php:461
254
- msgid ""
255
- "A notification will be sent upon a successful match with the following "
256
- "conditions:"
257
- msgstr ""
258
-
259
- #: hooks/class-aal-hook-posts.php:9
260
- msgid "(no title)"
261
- msgstr ""
262
-
263
- #: language/strings.php:6
264
- msgid ""
265
- "Get aware of any activities that are taking place on your dashboard! Imagine "
266
- "it like a black-box for your WordPress site. e.g. post was deleted, plugin "
267
- "was activated, user logged in or logged out - it's all these for you to see."
268
- msgstr ""
269
-
270
- #: language/strings.php:8
271
- msgid "Administrator"
272
- msgstr ""
273
-
274
- #: language/strings.php:9
275
- msgid "Editor"
276
- msgstr ""
277
-
278
- #: language/strings.php:12
279
- msgid "Post"
280
- msgstr ""
281
-
282
- #: language/strings.php:13
283
- msgid "created"
284
- msgstr ""
285
-
286
- #: language/strings.php:14
287
- msgid "updated"
288
- msgstr ""
289
-
290
- #: language/strings.php:15
291
- msgid "deleted"
292
- msgstr ""
293
-
294
- #: language/strings.php:18
295
- msgid "Attachment"
296
- msgstr ""
297
-
298
- #: language/strings.php:19
299
- msgid "added"
300
- msgstr ""
301
-
302
- #: language/strings.php:23
303
- msgid "logged_out"
304
- msgstr ""
305
-
306
- #: language/strings.php:24
307
- msgid "logged_in"
308
- msgstr ""
309
-
310
- #: language/strings.php:25
311
- msgid "wrong_password"
312
- msgstr ""
313
-
314
- #: language/strings.php:28
315
- msgid "Plugin"
316
- msgstr ""
317
-
318
- #: language/strings.php:29
319
- msgid "activated"
320
- msgstr ""
321
-
322
- #: language/strings.php:30
323
- msgid "deactivated"
324
- msgstr ""
325
-
326
- #: language/strings.php:31
327
- msgid "installed"
328
- msgstr ""
329
-
330
- #: language/strings.php:34
331
- msgid "Theme"
332
- msgstr ""
333
-
334
- #: language/strings.php:35
335
- msgid "Theme Customizer"
336
- msgstr ""
337
-
338
- #: language/strings.php:38
339
- msgid "Widget"
340
- msgstr ""
341
-
342
- #: language/strings.php:41
343
- msgid "Options"
344
- msgstr ""
345
-
346
- #: language/strings.php:44
347
- msgid "Menu"
348
- msgstr ""
349
-
350
- #: language/strings.php:47
351
- msgid "Taxonomy"
352
- msgstr ""
353
-
354
- #: language/strings.php:50
355
- msgid "Core"
356
- msgstr ""
357
-
358
- #: language/strings.php:51
359
- msgid "WordPress Updated"
360
- msgstr ""
361
-
362
- #: language/strings.php:52
363
- msgid "WordPress Auto Updated"
364
- msgstr ""
365
-
366
- #: language/strings.php:55
367
- msgid "Comments"
368
- msgstr ""
369
-
370
- #: language/strings.php:56
371
- msgid "pending"
372
- msgstr ""
373
-
374
- #: language/strings.php:57
375
- msgid "approved"
376
- msgstr ""
377
-
378
- #: language/strings.php:58
379
- msgid "unapproved"
380
- msgstr ""
381
-
382
- #: language/strings.php:59
383
- msgid "trashed"
384
- msgstr ""
385
-
386
- #: language/strings.php:60
387
- msgid "untrashed"
388
- msgstr ""
389
-
390
- #: language/strings.php:61
391
- msgid "spammed"
392
- msgstr ""
393
-
394
- #: language/strings.php:62
395
- msgid "unspammed"
396
- msgstr ""
397
-
398
- #: language/strings.php:67
399
- msgid "blogname"
400
- msgstr ""
401
-
402
- #: language/strings.php:68
403
- msgid "blogdescription"
404
- msgstr ""
405
-
406
- #: language/strings.php:69
407
- msgid "siteurl"
408
- msgstr ""
409
-
410
- #: language/strings.php:70
411
- msgid "home"
412
- msgstr ""
413
-
414
- #: language/strings.php:71
415
- msgid "admin_email"
416
- msgstr ""
417
-
418
- #: language/strings.php:72
419
- msgid "users_can_register"
420
- msgstr ""
421
-
422
- #: language/strings.php:73
423
- msgid "default_role"
424
- msgstr ""
425
-
426
- #: language/strings.php:74
427
- msgid "timezone_string"
428
- msgstr ""
429
-
430
- #: language/strings.php:75
431
- msgid "date_format"
432
- msgstr ""
433
-
434
- #: language/strings.php:76
435
- msgid "time_format"
436
- msgstr ""
437
-
438
- #: language/strings.php:77
439
- msgid "start_of_week"
440
- msgstr ""
441
-
442
- #: language/strings.php:80
443
- msgid "use_smilies"
444
- msgstr ""
445
-
446
- #: language/strings.php:81
447
- msgid "use_balanceTags"
448
- msgstr ""
449
-
450
- #: language/strings.php:82
451
- msgid "default_category"
452
- msgstr ""
453
-
454
- #: language/strings.php:83
455
- msgid "default_post_format"
456
- msgstr ""
457
-
458
- #: language/strings.php:84
459
- msgid "mailserver_url"
460
- msgstr ""
461
-
462
- #: language/strings.php:85
463
- msgid "mailserver_login"
464
- msgstr ""
465
-
466
- #: language/strings.php:86
467
- msgid "mailserver_pass"
468
- msgstr ""
469
-
470
- #: language/strings.php:87
471
- msgid "default_email_category"
472
- msgstr ""
473
-
474
- #: language/strings.php:88
475
- msgid "ping_sites"
476
- msgstr ""
477
-
478
- #: language/strings.php:91
479
- msgid "show_on_front"
480
- msgstr ""
481
-
482
- #: language/strings.php:92
483
- msgid "page_on_front"
484
- msgstr ""
485
-
486
- #: language/strings.php:93
487
- msgid "page_for_posts"
488
- msgstr ""
489
-
490
- #: language/strings.php:94
491
- msgid "posts_per_page"
492
- msgstr ""
493
-
494
- #: language/strings.php:95
495
- msgid "posts_per_rss"
496
- msgstr ""
497
-
498
- #: language/strings.php:96
499
- msgid "rss_use_excerpt"
500
- msgstr ""
501
-
502
- #: language/strings.php:97
503
- msgid "blog_public"
504
- msgstr ""
505
-
506
- #: language/strings.php:100
507
- msgid "default_pingback_flag"
508
- msgstr ""
509
-
510
- #: language/strings.php:101
511
- msgid "default_ping_status"
512
- msgstr ""
513
-
514
- #: language/strings.php:102
515
- msgid "default_comment_status"
516
- msgstr ""
517
-
518
- #: language/strings.php:103
519
- msgid "require_name_email"
520
- msgstr ""
521
-
522
- #: language/strings.php:104
523
- msgid "comment_registration"
524
- msgstr ""
525
-
526
- #: language/strings.php:105
527
- msgid "close_comments_for_old_posts"
528
- msgstr ""
529
-
530
- #: language/strings.php:106
531
- msgid "close_comments_days_old"
532
- msgstr ""
533
-
534
- #: language/strings.php:107
535
- msgid "thread_comments"
536
- msgstr ""
537
-
538
- #: language/strings.php:108
539
- msgid "thread_comments_depth"
540
- msgstr ""
541
-
542
- #: language/strings.php:109
543
- msgid "page_comments"
544
- msgstr ""
545
-
546
- #: language/strings.php:110
547
- msgid "comments_per_page"
548
- msgstr ""
549
-
550
- #: language/strings.php:111
551
- msgid "default_comments_page"
552
- msgstr ""
553
-
554
- #: language/strings.php:112
555
- msgid "comment_order"
556
- msgstr ""
557
-
558
- #: language/strings.php:113
559
- msgid "comments_notify"
560
- msgstr ""
561
-
562
- #: language/strings.php:114
563
- msgid "moderation_notify"
564
- msgstr ""
565
-
566
- #: language/strings.php:115
567
- msgid "comment_moderation"
568
- msgstr ""
569
-
570
- #: language/strings.php:116
571
- msgid "comment_whitelist"
572
- msgstr ""
573
-
574
- #: language/strings.php:117
575
- msgid "comment_max_links"
576
- msgstr ""
577
-
578
- #: language/strings.php:118
579
- msgid "moderation_keys"
580
- msgstr ""
581
-
582
- #: language/strings.php:119
583
- msgid "blacklist_keys"
584
- msgstr ""
585
-
586
- #: language/strings.php:120
587
- msgid "show_avatars"
588
- msgstr ""
589
-
590
- #: language/strings.php:121
591
- msgid "avatar_rating"
592
- msgstr ""
593
-
594
- #: language/strings.php:122
595
- msgid "avatar_default"
596
- msgstr ""
597
-
598
- #: language/strings.php:125
599
- msgid "thumbnail_size_w"
600
- msgstr ""
601
-
602
- #: language/strings.php:126
603
- msgid "thumbnail_size_h"
604
- msgstr ""
605
-
606
- #: language/strings.php:127
607
- msgid "thumbnail_crop"
608
- msgstr ""
609
-
610
- #: language/strings.php:128
611
- msgid "medium_size_w"
612
- msgstr ""
613
-
614
- #: language/strings.php:129
615
- msgid "medium_size_h"
616
- msgstr ""
617
-
618
- #: language/strings.php:130
619
- msgid "large_size_w"
620
- msgstr ""
621
-
622
- #: language/strings.php:131
623
- msgid "large_size_h"
624
- msgstr ""
625
-
626
- #: language/strings.php:132
627
- msgid "uploads_use_yearmonth_folders"
628
- msgstr ""
629
-
630
- #: language/strings.php:135
631
- msgid "permalink_structure"
632
- msgstr ""
633
-
634
- #: language/strings.php:136
635
- msgid "category_base"
636
- msgstr ""
637
-
638
- #: language/strings.php:137
639
- msgid "tag_base"
640
- msgstr ""
641
-
642
- #: language/strings.php:140
643
- msgid "Export"
644
- msgstr ""
645
-
646
- #: language/strings.php:141
647
- msgid "downloaded"
648
- msgstr ""
649
-
650
- #: notifications/abstract-class-aal-notification-base.php:99
651
- msgid "Object Type"
652
- msgstr ""
653
-
654
- #: notifications/abstract-class-aal-notification-base.php:100
655
- msgid "Object Name"
656
- msgstr ""
657
-
658
- #: notifications/abstract-class-aal-notification-base.php:102
659
- msgid "IP Address"
660
- msgstr ""
661
-
662
- #: notifications/abstract-class-aal-notification-base.php:121
663
- msgid "N/A"
664
- msgstr ""
665
-
666
- #: notifications/class-aal-notification-email.php:15
667
- msgid "Email"
668
- msgstr ""
669
-
670
- #: notifications/class-aal-notification-email.php:16
671
- msgid "Get notified by Email."
672
- msgstr ""
673
-
674
- #: notifications/class-aal-notification-email.php:49
675
- msgid "New notification from Activity Log"
676
- msgstr ""
677
-
678
- #: notifications/class-aal-notification-email.php:65
679
- msgid ""
680
- "Hi there!\n"
681
- "\n"
682
- "A notification condition on [sitename] was matched. Here are the details:\n"
683
- "\n"
684
- "[action-details]\n"
685
- "\n"
686
- "Sent by ARYO Activity Log"
687
- msgstr ""
688
-
689
- #: notifications/class-aal-notification-email.php:67
690
- msgid "From Email"
691
- msgstr ""
692
-
693
- #: notifications/class-aal-notification-email.php:67
694
- msgid "The source Email address"
695
- msgstr ""
696
-
697
- #: notifications/class-aal-notification-email.php:68
698
- msgid "To Email"
699
- msgstr ""
700
-
701
- #: notifications/class-aal-notification-email.php:68
702
- msgid "The Email address notifications will be sent to"
703
- msgstr ""
704
-
705
- #: notifications/class-aal-notification-email.php:69
706
- msgid "Message"
707
- msgstr ""
708
-
709
- #: notifications/class-aal-notification-email.php:69
710
- #, php-format
711
- msgid "Customize the message using the following placeholders: %s"
712
- msgstr ""
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
language/strings.php DELETED
@@ -1,141 +0,0 @@
1
- <?php
2
-
3
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
4
-
5
- __( 'Activity Log', 'aryo-aal' );
6
- __( 'Get aware of any activities that are taking place on your dashboard! Imagine it like a black-box for your WordPress site. e.g. post was deleted, plugin was activated, user logged in or logged out - it\'s all these for you to see.', 'aryo-aal' );
7
-
8
- __( 'Administrator', 'aryo-aal' );
9
- __( 'Editor', 'aryo-aal' );
10
-
11
- // Post
12
- __( 'Post', 'aryo-aal' );
13
- __( 'created', 'aryo-aal' );
14
- __( 'updated', 'aryo-aal' );
15
- __( 'deleted', 'aryo-aal' );
16
-
17
- // Attachment
18
- __( 'Attachment', 'aryo-aal' );
19
- __( 'added', 'aryo-aal' );
20
-
21
- // User
22
- __( 'User', 'aryo-aal' );
23
- __( 'logged_out', 'aryo-aal' );
24
- __( 'logged_in', 'aryo-aal' );
25
- __( 'wrong_password', 'aryo-aal' );
26
-
27
- // Plugin
28
- __( 'Plugin', 'aryo-aal' );
29
- __( 'activated', 'aryo-aal' );
30
- __( 'deactivated', 'aryo-aal' );
31
- __( 'installed', 'aryo-aal' );
32
-
33
- // Theme
34
- __( 'Theme', 'aryo-aal' );
35
- __( 'Theme Customizer', 'aryo-aal' );
36
-
37
- // Widget
38
- __( 'Widget', 'aryo-aal' );
39
-
40
- // Options
41
- __( 'Options', 'aryo-aal' );
42
-
43
- // Menu
44
- __( 'Menu', 'aryo-aal' );
45
-
46
- // Taxonomy
47
- __( 'Taxonomy', 'aryo-aal' );
48
-
49
- // Core
50
- __( 'Core', 'aryo-aal' );
51
- __( 'WordPress Updated', 'aryo-aal' );
52
- __( 'WordPress Auto Updated', 'aryo-aal' );
53
-
54
- // Comments
55
- __( 'Comments', 'aryo-aal' );
56
- __( 'pending', 'aryo-aal' );
57
- __( 'approved', 'aryo-aal' );
58
- __( 'unapproved', 'aryo-aal' );
59
- __( 'trashed', 'aryo-aal' );
60
- __( 'untrashed', 'aryo-aal' );
61
- __( 'spammed', 'aryo-aal' );
62
- __( 'unspammed', 'aryo-aal' );
63
-
64
-
65
-
66
- // Translate Options?
67
- __( 'blogname', 'aryo-aal' );
68
- __( 'blogdescription', 'aryo-aal' );
69
- __( 'siteurl', 'aryo-aal' );
70
- __( 'home', 'aryo-aal' );
71
- __( 'admin_email', 'aryo-aal' );
72
- __( 'users_can_register', 'aryo-aal' );
73
- __( 'default_role', 'aryo-aal' );
74
- __( 'timezone_string', 'aryo-aal' );
75
- __( 'date_format', 'aryo-aal' );
76
- __( 'time_format', 'aryo-aal' );
77
- __( 'start_of_week', 'aryo-aal' );
78
-
79
- // Writing
80
- __( 'use_smilies', 'aryo-aal' );
81
- __( 'use_balanceTags', 'aryo-aal' );
82
- __( 'default_category', 'aryo-aal' );
83
- __( 'default_post_format', 'aryo-aal' );
84
- __( 'mailserver_url', 'aryo-aal' );
85
- __( 'mailserver_login', 'aryo-aal' );
86
- __( 'mailserver_pass', 'aryo-aal' );
87
- __( 'default_email_category', 'aryo-aal' );
88
- __( 'ping_sites', 'aryo-aal' );
89
-
90
- // Reading
91
- __( 'show_on_front', 'aryo-aal' );
92
- __( 'page_on_front', 'aryo-aal' );
93
- __( 'page_for_posts', 'aryo-aal' );
94
- __( 'posts_per_page', 'aryo-aal' );
95
- __( 'posts_per_rss', 'aryo-aal' );
96
- __( 'rss_use_excerpt', 'aryo-aal' );
97
- __( 'blog_public', 'aryo-aal' );
98
-
99
- // Discussion
100
- __( 'default_pingback_flag', 'aryo-aal' );
101
- __( 'default_ping_status', 'aryo-aal' );
102
- __( 'default_comment_status', 'aryo-aal' );
103
- __( 'require_name_email', 'aryo-aal' );
104
- __( 'comment_registration', 'aryo-aal' );
105
- __( 'close_comments_for_old_posts', 'aryo-aal' );
106
- __( 'close_comments_days_old', 'aryo-aal' );
107
- __( 'thread_comments', 'aryo-aal' );
108
- __( 'thread_comments_depth', 'aryo-aal' );
109
- __( 'page_comments', 'aryo-aal' );
110
- __( 'comments_per_page', 'aryo-aal' );
111
- __( 'default_comments_page', 'aryo-aal' );
112
- __( 'comment_order', 'aryo-aal' );
113
- __( 'comments_notify', 'aryo-aal' );
114
- __( 'moderation_notify', 'aryo-aal' );
115
- __( 'comment_moderation', 'aryo-aal' );
116
- __( 'comment_whitelist', 'aryo-aal' );
117
- __( 'comment_max_links', 'aryo-aal' );
118
- __( 'moderation_keys', 'aryo-aal' );
119
- __( 'blacklist_keys', 'aryo-aal' );
120
- __( 'show_avatars', 'aryo-aal' );
121
- __( 'avatar_rating', 'aryo-aal' );
122
- __( 'avatar_default', 'aryo-aal' );
123
-
124
- // Media
125
- __( 'thumbnail_size_w', 'aryo-aal' );
126
- __( 'thumbnail_size_h', 'aryo-aal' );
127
- __( 'thumbnail_crop', 'aryo-aal' );
128
- __( 'medium_size_w', 'aryo-aal' );
129
- __( 'medium_size_h', 'aryo-aal' );
130
- __( 'large_size_w', 'aryo-aal' );
131
- __( 'large_size_h', 'aryo-aal' );
132
- __( 'uploads_use_yearmonth_folders', 'aryo-aal' );
133
-
134
- // Permalinks
135
- __( 'permalink_structure', 'aryo-aal' );
136
- __( 'category_base', 'aryo-aal' );
137
- __( 'tag_base', 'aryo-aal' );
138
-
139
- // Export
140
- __( 'Export', 'aryo-aal' );
141
- __( 'downloaded', 'aryo-aal' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
notifications/abstract-class-aal-notification-base.php CHANGED
@@ -22,6 +22,10 @@ abstract class AAL_Notification_Base {
22
  add_action( 'init', array( &$this, 'init' ), 30 );
23
  add_action( 'aal_validate_options', array( &$this, '_validate_options' ), 10, 2 );
24
  }
 
 
 
 
25
 
26
  public function init() {}
27
 
@@ -78,10 +82,6 @@ abstract class AAL_Notification_Base {
78
  return $form_data;
79
  }
80
 
81
- private function settings_field_name_attr( $name ) {
82
- return esc_attr( "notification_handler_options_{$this->id}[{$name}]" );
83
- }
84
-
85
  public function get_handler_options() {
86
  $handler_options = array();
87
  $option_key = "handler_options_{$this->id}";
@@ -95,11 +95,11 @@ abstract class AAL_Notification_Base {
95
 
96
  public function prep_notification_body( $args ) {
97
  $details_to_provide = array(
98
- 'user_id' => __( 'User', 'aryo-aal' ),
99
- 'object_type' => __( 'Object Type', 'aryo-aal' ),
100
- 'object_name' => __( 'Object Name', 'aryo-aal' ),
101
- 'action' => __( 'Action Type', 'aryo-aal' ),
102
- 'hist_ip' => __( 'IP Address', 'aryo-aal' ),
103
  );
104
  $message = '';
105
 
@@ -118,7 +118,7 @@ abstract class AAL_Notification_Base {
118
  }
119
  break;
120
  default:
121
- $detail_val = isset( $args[ $detail_key ] ) ? $args[ $detail_key ] : __( 'N/A', 'aryo-aal' );
122
  break;
123
  }
124
 
22
  add_action( 'init', array( &$this, 'init' ), 30 );
23
  add_action( 'aal_validate_options', array( &$this, '_validate_options' ), 10, 2 );
24
  }
25
+
26
+ private function settings_field_name_attr( $name ) {
27
+ return esc_attr( "notification_handler_options_{$this->id}[{$name}]" );
28
+ }
29
 
30
  public function init() {}
31
 
82
  return $form_data;
83
  }
84
 
 
 
 
 
85
  public function get_handler_options() {
86
  $handler_options = array();
87
  $option_key = "handler_options_{$this->id}";
95
 
96
  public function prep_notification_body( $args ) {
97
  $details_to_provide = array(
98
+ 'user_id' => __( 'User', 'aryo-activity-log' ),
99
+ 'object_type' => __( 'Object Type', 'aryo-activity-log' ),
100
+ 'object_name' => __( 'Object Name', 'aryo-activity-log' ),
101
+ 'action' => __( 'Action Type', 'aryo-activity-log' ),
102
+ 'hist_ip' => __( 'IP Address', 'aryo-activity-log' ),
103
  );
104
  $message = '';
105
 
118
  }
119
  break;
120
  default:
121
+ $detail_val = isset( $args[ $detail_key ] ) ? $args[ $detail_key ] : __( 'N/A', 'aryo-activity-log' );
122
  break;
123
  }
124
 
notifications/class-aal-notification-email.php CHANGED
@@ -12,14 +12,14 @@ class AAL_Notification_Email extends AAL_Notification_Base {
12
  parent::__construct();
13
 
14
  $this->id = 'email';
15
- $this->name = __( 'Email', 'aryo-aal' );
16
- $this->description = __( 'Get notified by Email.', 'aryo-aal' );
17
  }
18
 
19
  public function init() {
20
  $this->options = array_merge( array(
21
  'from_email' => get_option( 'admin_email' ),
22
- // 'message_format' => __( "Hi there!\n\nA notification condition on [sitename] was matched. Here are the details:\n\n[action-details]\n\nSent by ARYO Activity Log", 'aryo-aal' )
23
  ), $this->get_handler_options() );
24
  }
25
 
@@ -46,7 +46,7 @@ class AAL_Notification_Email extends AAL_Notification_Base {
46
 
47
  wp_mail(
48
  $to_email,
49
- __( 'New notification from Activity Log', 'aryo-aal' ),
50
  nl2br( $email_contents ),
51
  array(
52
  "From: Activity Log @ $site_name <$from_email>"
@@ -62,11 +62,11 @@ class AAL_Notification_Email extends AAL_Notification_Base {
62
  }
63
 
64
  public function settings_fields() {
65
- $default_email_message = __( "Hi there!\n\nA notification condition on [sitename] was matched. Here are the details:\n\n[action-details]\n\nSent by ARYO Activity Log", 'aryo-aal' );
66
 
67
- $this->add_settings_field_helper( 'from_email', __( 'From Email', 'aryo-aal' ), array( 'AAL_Settings_Fields', 'text_field' ), __( 'The source Email address', 'aryo-aal' ) );
68
- $this->add_settings_field_helper( 'to_email', __( 'To Email', 'aryo-aal' ), array( 'AAL_Settings_Fields', 'text_field' ), __( 'The Email address notifications will be sent to', 'aryo-aal' ) );
69
- $this->add_settings_field_helper( 'message_format', __( 'Message', 'aryo-aal' ), array( 'AAL_Settings_Fields', 'textarea_field' ), sprintf( __( 'Customize the message using the following placeholders: %s', 'aryo-aal' ), '[sitename], [action-details]' ), $default_email_message );
70
  }
71
 
72
  public function validate_options( $input ) {
12
  parent::__construct();
13
 
14
  $this->id = 'email';
15
+ $this->name = __( 'Email', 'aryo-activity-log' );
16
+ $this->description = __( 'Get notified by Email.', 'aryo-activity-log' );
17
  }
18
 
19
  public function init() {
20
  $this->options = array_merge( array(
21
  'from_email' => get_option( 'admin_email' ),
22
+ // 'message_format' => __( "Hi there!\n\nA notification condition on [sitename] was matched. Here are the details:\n\n[action-details]\n\nSent by ARYO Activity Log", 'aryo-activity-log' )
23
  ), $this->get_handler_options() );
24
  }
25
 
46
 
47
  wp_mail(
48
  $to_email,
49
+ __( 'New notification from Activity Log', 'aryo-activity-log' ),
50
  nl2br( $email_contents ),
51
  array(
52
  "From: Activity Log @ $site_name <$from_email>"
62
  }
63
 
64
  public function settings_fields() {
65
+ $default_email_message = __( "Hi there!\n\nA notification condition on [sitename] was matched. Here are the details:\n\n[action-details]\n\nSent by ARYO Activity Log", 'aryo-activity-log' );
66
 
67
+ $this->add_settings_field_helper( 'from_email', __( 'From Email', 'aryo-activity-log' ), array( 'AAL_Settings_Fields', 'text_field' ), __( 'The source Email address', 'aryo-activity-log' ) );
68
+ $this->add_settings_field_helper( 'to_email', __( 'To Email', 'aryo-activity-log' ), array( 'AAL_Settings_Fields', 'text_field' ), __( 'The Email address notifications will be sent to', 'aryo-activity-log' ) );
69
+ $this->add_settings_field_helper( 'message_format', __( 'Message', 'aryo-activity-log' ), array( 'AAL_Settings_Fields', 'textarea_field' ), sprintf( __( 'Customize the message using the following placeholders: %s', 'aryo-activity-log' ), '[sitename], [action-details]' ), $default_email_message );
70
  }
71
 
72
  public function validate_options( $input ) {
readme.txt CHANGED
@@ -1,22 +1,28 @@
1
  === Activity Log ===
2
  Contributors: pojo.me, KingYes, ariel.k, maor
3
- Tags: administration, activity, event, monitor, multisite, multi-users, log, logger, audit log, stats, security, tracking, woocommerce, notifications, email notifications
4
- Requires at least: 3.5
5
- Tested up to: 4.2
6
- Stable tag: 2.2.3
7
  License: GPLv2 or later
8
 
9
- Get aware of any activities that are taking place on your dashboard! Imagine it like a black-box for your WordPress site.
10
 
11
  == Description ==
12
 
13
- <h3>Like being in control? Check this out.</h3>
14
 
15
- We all know that it’s relatively easy to analyze what your visitors are looking for while browsing your site. But there is really no easy way to know what registered users (say, with an Administrator account or even Editors) are doing on the dashboard of your site. How can you know if a post was deleted? or if a plugin was activated/deactivated? or if the active theme was changed?
16
- If you have tens of users or more, you really can’t know who did it. This plugin tries to solve this issue by tracking what users do on the dashboard of your WordPress site.
17
 
18
- <strong>As of this moment, the plugin logs things when:</strong><br />
 
 
19
 
 
 
 
 
 
20
  * <strong>WordPress</strong> - Core Updates
21
  * <strong>Posts</strong> - Created, Updated, Deleted
22
  * <strong>Pages</strong> - Created, Updated, Deleted
@@ -36,9 +42,9 @@ If you have tens of users or more, you really can’t know who did it. This plug
36
  * <strong>Export</strong> - User download export file from the site
37
  * <strong>WooCommerce</strong> - Monitor all shop options
38
  * <strong>bbPress</strong> - Forums, Topics, Replies, Taxonomies and other actions
39
- * and much more...
40
 
41
- <strong>New!</strong> You are now able to get email notifications once an event you have defined (via rules) has occured. This is useful in cases you must know right away when someone does something on your site.
42
 
43
  <h4>What people are saying</h4>
44
  * <em>“Best 10 Free WordPress Plugins of the Month – July 2014: Keeping tabs on what your users do with their access to the Dashboard”</em> - [ManageWp.com](https://managewp.com/best-free-wordpress-plugins-july-2014)
@@ -59,15 +65,15 @@ If you have tens of users or more, you really can’t know who did it. This plug
59
  * Persian (fa_IR) - [Promising](http://vwp.ir/)
60
  * Russian (ru_RU) - Oleg Reznikov
61
  * Polish (pl_PL) - Maciej Gryniuk
 
 
62
 
63
- The plugin does not require any kind of setup. It works out of the box (and that’s why we love it too).
64
 
65
  We’re planning to add a lot more features in the upcoming releases. If you think we’re missing something big time, please post your suggestions in the plugin’s forum.
66
 
67
- <strong>Contributions:</strong><br />
68
-
69
- Would you like to like to contribute to Activity Log? You are more than welcome to submit your pull requests on the [GitHub repo](https://github.com/KingYes/wordpress-aryo-activity-log). Also, if you have any notes about the code, please open a ticket on ths issue tracker.
70
-
71
 
72
  == Installation ==
73
 
@@ -94,6 +100,59 @@ Would you like to like to contribute to Activity Log? You are more than welcome
94
 
95
  == Changelog ==
96
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
97
  = 2.2.3 =
98
  * Tweak! - Added more filters in table list columns
99
 
1
  === Activity Log ===
2
  Contributors: pojo.me, KingYes, ariel.k, maor
3
+ Tags: automation, actions, activity, Activity Log, admin, admin actions, administration, analytics, audit, audit log, audit logs, bbPress, changes, dashboard, email notifications, event, event log, log, logger, Logs, monitor, multi-users, multisite, notifications, security, security audit trail, security event log, stats, stream, tracking, troubleshooting, user activity report, user tracking, woocommerce, bbPress
4
+ Requires at least: 4.4
5
+ Tested up to: 4.8
6
+ Stable tag: 2.3.4
7
  License: GPLv2 or later
8
 
9
+ The #1 Activity Log plugin helps you monitor & log all changes and activities on your site, so you can run a safer, more organized WordPress site.
10
 
11
  == Description ==
12
 
13
+ <strong>A COMPLETE, EASY TO USE & WELL SUPPORTED WORDPRESS ACTIVITY LOG PLUGIN</strong><br />
14
 
15
+ Want to monitor and track your site activity? Find out exactly who does what on your WordPress website. the Activity Log plugin is like an airplane's black box that logs every activity in WordPress, and lets you see exactly what people are doing on your site.
 
16
 
17
+ * Like, if someone is trying to hack your site.
18
+ * Or, when a post was published, and who published it.
19
+ * Or, if a plugin was activated/deactivated.
20
 
21
+ Useful, right? Trust us, you won't understand how you managed your website without it. The plugin is also lightning fast and works behind the scenes, so it doesn't affect site and admin performance (For optimal performance, we built the plugin so it runs on a separate table in the database).
22
+
23
+ If you have tens of users or more, you really can’t know who did what. This plugin tries to solve this issue by tracking what users do, and displaying it in an easy to use and easy to filter view on the dashboard of your WordPress site.
24
+
25
+ <h4>With the Activity Log you can log:</h4>
26
  * <strong>WordPress</strong> - Core Updates
27
  * <strong>Posts</strong> - Created, Updated, Deleted
28
  * <strong>Pages</strong> - Created, Updated, Deleted
42
  * <strong>Export</strong> - User download export file from the site
43
  * <strong>WooCommerce</strong> - Monitor all shop options
44
  * <strong>bbPress</strong> - Forums, Topics, Replies, Taxonomies and other actions
45
+ * There's more, but you get the point...
46
 
47
+ <strong>New!</strong> You are now able to get email notifications once an event you have defined (via rules) has occurred. This is useful in cases you must know right away when someone does something on your site. We use it to thwart hacker attempts, for example.
48
 
49
  <h4>What people are saying</h4>
50
  * <em>“Best 10 Free WordPress Plugins of the Month – July 2014: Keeping tabs on what your users do with their access to the Dashboard”</em> - [ManageWp.com](https://managewp.com/best-free-wordpress-plugins-july-2014)
65
  * Persian (fa_IR) - [Promising](http://vwp.ir/)
66
  * Russian (ru_RU) - Oleg Reznikov
67
  * Polish (pl_PL) - Maciej Gryniuk
68
+ * Czech (cs_CZ) - Martin Kokeš
69
+ * Finnish (fi) - Nazq
70
 
71
+ The plugin does not require any kind of setup. It works out of the box (and that’s another reason people love it).
72
 
73
  We’re planning to add a lot more features in the upcoming releases. If you think we’re missing something big time, please post your suggestions in the plugin’s forum.
74
 
75
+ <h4>Contributions:</h4>
76
+ Would you like to like to contribute to Activity Log? You are more than welcome to submit your pull requests on the [GitHub repo](https://github.com/KingYes/wordpress-aryo-activity-log). Also, if you have any notes about the code, please open a ticket on the issue tracker.
 
 
77
 
78
  == Installation ==
79
 
100
 
101
  == Changelog ==
102
 
103
+ = 2.3.4 =
104
+ * Tweak! - Change Guest user to "N/A"
105
+
106
+ = 2.3.3 =
107
+ * Fixed! - Minor XSS vulnerability, credit to [Han Sahin](https://sumofpwn.nl/)
108
+
109
+ = 2.3.2 =
110
+ * Fixed! - Minor XSS vulnerability, credit to [Han Sahin](https://sumofpwn.nl/)
111
+
112
+ = 2.3.1 =
113
+ * Tweak! - Added seconds in time column
114
+ * Tweak! - Rearrange filters in list table
115
+
116
+ = 2.3.0 =
117
+ * Tweak! - All translates moved to [GlotPress](https://translate.wordpress.org/projects/wp-plugins/aryo-activity-log)
118
+ * Tweak! - Added restore status for Posts ([#46](https://github.com/KingYes/wordpress-aryo-activity-log/issues/46))
119
+ * Tweak! - A11y changes for WordPress 4.4 which requires `h1` tags ([#84](https://github.com/KingYes/wordpress-aryo-activity-log/issues/84))
120
+ * Tweak! - Allow some ajax requests just for admin
121
+
122
+ = 2.2.12 =
123
+ * Tested up to WordPress v4.5
124
+
125
+ = 2.2.11 =
126
+ * Tweak! - Temporarily remove Freemius SDK from the plugin
127
+
128
+ = 2.2.10 =
129
+ * Tweak! Update Freemius SDK
130
+ * Tested up to WordPress v4.4.2
131
+
132
+ = 2.2.9 =
133
+ * Tweak! Update Freemius SDK
134
+
135
+ = 2.2.8 =
136
+ * Tweak! Update Freemius SDK
137
+
138
+ = 2.2.7 =
139
+ * Added! - Freemius Insights platform to improve plugin UX
140
+ * Tweak! Update translate: Russian (ru_RU) - Thanks to Oleg Reznikov
141
+ * Tested up to WordPress v4.4
142
+
143
+ = 2.2.6 =
144
+ * Tweak! - Added sort by IP address ([#77](https://github.com/KingYes/wordpress-aryo-activity-log/issues/77))
145
+ * Tweak! - Added more actions/types in notification
146
+
147
+ = 2.2.5 =
148
+ * New! - Added translate: Finnish (fi) - Thanks to Nazq ([topic](https://wordpress.org/support/topic/finnish-translation-1))
149
+ * Tweak! - Better actions label in list table
150
+ * Fixed! - Notice php warring in MU delete site
151
+ * Tested up to WordPress v4.3
152
+
153
+ = 2.2.4 =
154
+ * New! - Added translate: Czech (cs_CZ) - Thanks to Martin Kokeš ([#76](https://github.com/KingYes/wordpress-aryo-activity-log/pull/76))
155
+
156
  = 2.2.3 =
157
  * Tweak! - Added more filters in table list columns
158
 
trunk/aryo-activity-log.php DELETED
@@ -1,139 +0,0 @@
1
- <?php
2
- /*
3
- Plugin Name: Activity Log
4
- Plugin URI: http://wordpress.org/plugins/aryo-activity-log/
5
- Description: Get aware of any activities that are taking place on your dashboard! Imagine it like a black-box for your WordPress site. e.g. post was deleted, plugin was activated, user logged in or logged out - it's all these for you to see.
6
- Author: Yakir Sitbon, Maor Chasen, Ariel Klikstein
7
- Author URI: http://pojo.me/
8
- Version: 2.3.3
9
- Text Domain: aryo-activity-log
10
- License: GPLv2 or later
11
-
12
-
13
- This program is free software; you can redistribute it and/or
14
- modify it under the terms of the GNU General Public License
15
- as published by the Free Software Foundation; either version 2
16
- of the License, or (at your option) any later version.
17
-
18
- This program is distributed in the hope that it will be useful,
19
- but WITHOUT ANY WARRANTY; without even the implied warranty of
20
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21
- GNU General Public License for more details.
22
-
23
- You should have received a copy of the GNU General Public License
24
- along with this program; if not, write to the Free Software
25
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
26
- */
27
-
28
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
29
-
30
- define( 'ACTIVITY_LOG__FILE__', __FILE__ );
31
- define( 'ACTIVITY_LOG_BASE', plugin_basename( ACTIVITY_LOG__FILE__ ) );
32
-
33
- include( 'classes/class-aal-maintenance.php' );
34
- include( 'classes/class-aal-activity-log-list-table.php' );
35
- include( 'classes/class-aal-admin-ui.php' );
36
- include( 'classes/class-aal-settings.php' );
37
- include( 'classes/class-aal-api.php' );
38
- include( 'classes/class-aal-hooks.php' );
39
- include( 'classes/class-aal-notifications.php' );
40
- include( 'classes/class-aal-help.php' );
41
-
42
- // Integrations
43
- include( 'classes/class-aal-integration-woocommerce.php' );
44
-
45
- // Probably we should put this in a separate file
46
- final class AAL_Main {
47
-
48
- /**
49
- * @var AAL_Main The one true AAL_Main
50
- * @since 2.0.5
51
- */
52
- private static $_instance = null;
53
-
54
- /**
55
- * @var AAL_Admin_Ui
56
- * @since 1.0.0
57
- */
58
- public $ui;
59
-
60
- /**
61
- * @var AAL_Hooks
62
- * @since 1.0.1
63
- */
64
- public $hooks;
65
-
66
- /**
67
- * @var AAL_Settings
68
- * @since 1.0.0
69
- */
70
- public $settings;
71
-
72
- /**
73
- * @var AAL_API
74
- * @since 2.0.5
75
- */
76
- public $api;
77
-
78
- /**
79
- * Load text domain
80
- */
81
- public function load_textdomain() {
82
- load_plugin_textdomain( 'aryo-activity-log' );
83
- }
84
-
85
- /**
86
- * Construct
87
- */
88
- protected function __construct() {
89
- global $wpdb;
90
-
91
- $this->ui = new AAL_Admin_Ui();
92
- $this->hooks = new AAL_Hooks();
93
- $this->settings = new AAL_Settings();
94
- $this->api = new AAL_API();
95
- $this->notifications = new AAL_Notifications();
96
- $this->help = new AAL_Help();
97
-
98
- // set up our DB name
99
- $wpdb->activity_log = $wpdb->prefix . 'aryo_activity_log';
100
-
101
- add_action( 'plugins_loaded', array( &$this, 'load_textdomain' ) );
102
- }
103
-
104
- /**
105
- * Throw error on object clone
106
- *
107
- * The whole idea of the singleton design pattern is that there is a single
108
- * object therefore, we don't want the object to be cloned.
109
- *
110
- * @since 2.0.7
111
- * @return void
112
- */
113
- public function __clone() {
114
- // Cloning instances of the class is forbidden
115
- _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', 'aryo-activity-log' ), '2.0.7' );
116
- }
117
-
118
- /**
119
- * Disable unserializing of the class
120
- *
121
- * @since 2.0.7
122
- * @return void
123
- */
124
- public function __wakeup() {
125
- // Unserializing instances of the class is forbidden
126
- _doing_it_wrong( __FUNCTION__, __( 'Cheatin&#8217; huh?', 'aryo-activity-log' ), '2.0.7' );
127
- }
128
-
129
- /**
130
- * @return AAL_Main
131
- */
132
- public static function instance() {
133
- if ( is_null( self::$_instance ) )
134
- self::$_instance = new AAL_Main();
135
- return self::$_instance;
136
- }
137
- }
138
-
139
- AAL_Main::instance();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/assets/css/settings.css DELETED
@@ -1,10 +0,0 @@
1
- body.activity-log_page_activity-log-settings #wpbody h2.aal-page-title::before,
2
- body.toplevel_page_activity_log_page #wpbody h2.aal-page-title::before {
3
- content: "\f321";
4
- font: 400 25px/1 dashicons !important;
5
- speak: none; /* accessibility thing. do not read the contents of this icon */
6
- color: #030303;
7
- display: inline-block;
8
- padding-right: .2em;
9
- vertical-align: -18%;
10
- }
 
 
 
 
 
 
 
 
 
 
trunk/assets/js/settings.js DELETED
@@ -1,126 +0,0 @@
1
- 'use strict';
2
-
3
- ( function ( $, undefined ) {
4
- var AAL = {
5
- $wrapper: {},
6
- $container: {},
7
- conter: 0,
8
-
9
- init: function () {
10
- var _this = this;
11
-
12
- AAL.$wrapper = $( ".aal-notifier-settings" );
13
- AAL.$container = $( "ul", this.$wrapper );
14
-
15
- AAL.counter = AAL.$container.children().size();
16
-
17
- // check if there's only one option
18
- if ( 1 === AAL.counter ) {
19
- var $temp_el = AAL.$container.children().first();
20
- // check if the "value" select box has no options
21
- if ( 0 === $temp_el.find( ".aal-value option" ).size() ) {
22
- // click the button with a timeout. Note that this is a hack that will need
23
- // to be solved server-side
24
- setTimeout( function () {
25
- $temp_el.find( ".aal-category" ).change();
26
- }, 300 );
27
- }
28
- }
29
-
30
- // when the "add" button is clicked
31
- AAL.$container.on( 'click', '.aal-new-rule', function ( e ) {
32
- e.preventDefault();
33
- _this.addRule( $( this ).closest( 'li' ) );
34
- });
35
-
36
- AAL.$container.on( 'click', '.aal-delete-rule', function ( e ) {
37
- e.preventDefault();
38
-
39
- // do not delete item if it's the only one left in the list
40
- if ( 1 === AAL.$container.children().size() ) {
41
- return;
42
- }
43
-
44
- _this.deleteRule( $( this ).closest( 'li' ) );
45
- });
46
-
47
- // handle change on action category selectbox
48
- AAL.$container.on( 'change', '.aal-category', function ( e ) {
49
- e.preventDefault();
50
-
51
- var $select = $( this ),
52
- $siblings = $select.siblings( "select" );
53
-
54
- // disable all selectboxes to prevent multiple calls
55
- $siblings.filter( "select" ).prop( 'disabled', true );
56
-
57
- // grab live data via AJAX
58
- var data = _this.getData( $select.val(), function ( d ) {
59
- var $target = $siblings.filter( '.aal-value' );
60
- $target.empty(); // clear so we can insert fresh data
61
-
62
- $.each( d.data, function ( k, v ) {
63
- $target.append( $( "<option/>", {
64
- text: v,
65
- value: k
66
- } ) );
67
- });
68
-
69
- // restore disabled selectboxes
70
- $siblings.filter( "select" ).prop( 'disabled', false );
71
- });
72
- });
73
-
74
- },
75
- addRule: function ( $el ) {
76
- this.counter++;
77
- var $copy = $el.clone(),
78
- curID = parseInt( $el.data( 'id' ), null ),
79
- newID = this.counter;
80
-
81
- $copy.find( '[name]' ).each( function() {
82
- $( this ).attr( 'name', $( this ).attr( 'name' ).replace( curID, newID ) );
83
- // $( this ).attr( 'id', $( this ).attr( 'id' ).replace( curID, newID ) );
84
- });
85
-
86
- $copy.attr( 'data-id', newID );
87
- $el.after( $copy );
88
- },
89
- deleteRule: function ( $el ) {
90
- $el.remove();
91
- },
92
- getData: function ( type, cb ) {
93
- var payload = {
94
- action: 'aal_get_properties',
95
- action_category: type
96
- };
97
- $.getJSON( window.ajaxurl, payload, cb );
98
- }
99
- };
100
-
101
- $( function () {
102
- AAL.init();
103
- });
104
-
105
- window.AAL = AAL;
106
-
107
-
108
- /**
109
- * Form serialization helper
110
- */
111
- $.fn.AALSerializeObject = function() {
112
- var o = {};
113
- var a = this.serializeArray();
114
- $.each( a, function() {
115
- if ( o[this.name] !== undefined ) {
116
- if ( !o[this.name].push ) {
117
- o[this.name] = [o[this.name]];
118
- }
119
- o[this.name].push( this.value || '' );
120
- } else {
121
- o[this.name] = this.value || '';
122
- }
123
- } );
124
- return o;
125
- };
126
- })( jQuery );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/classes/class-aal-activity-log-list-table.php DELETED
@@ -1,493 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- if ( ! class_exists( 'WP_List_Table' ) )
5
- require_once( ABSPATH . 'wp-admin/includes/class-wp-list-table.php' );
6
-
7
-
8
- class AAL_Activity_Log_List_Table extends WP_List_Table {
9
-
10
- protected $_roles = array();
11
-
12
- protected $_caps = array();
13
-
14
- protected $_allow_caps = array();
15
-
16
- protected function _get_allow_caps() {
17
- if ( empty( $this->_allow_caps ) ) {
18
- $user = get_user_by( 'id', get_current_user_id() );
19
- if ( ! $user )
20
- wp_die( 'No allowed here.' );
21
-
22
- $user_cap = strtolower( key( $user->caps ) );
23
- $allow_caps = array();
24
-
25
- foreach ( $this->_caps as $key => $cap_allow ) {
26
- if ( $key === $user_cap ) {
27
- $allow_caps = array_merge( $allow_caps, $cap_allow );
28
- break;
29
- }
30
- }
31
-
32
- // TODO: Find better way to Multisite compatibility.
33
- if ( is_super_admin() || current_user_can( 'view_all_aryo_activity_log' ) )
34
- $allow_caps = $this->_caps['administrator'];
35
-
36
- if ( empty( $allow_caps ) )
37
- wp_die( 'No allowed here.' );
38
-
39
- $this->_allow_caps = array_unique( $allow_caps );
40
- }
41
- return $this->_allow_caps;
42
- }
43
-
44
- protected function _get_where_by_role() {
45
- $allow_modules = array();
46
-
47
- foreach ( $this->_roles as $key => $role ) {
48
- if ( current_user_can( $key ) || current_user_can( 'view_all_aryo_activity_log' ) ) {
49
- $allow_modules = array_merge( $allow_modules, $role );
50
- }
51
- }
52
-
53
- if ( empty( $allow_modules ) )
54
- wp_die( 'No allowed here.' );
55
-
56
- $allow_modules = array_unique( $allow_modules );
57
-
58
- $where = array();
59
- foreach ( $allow_modules as $type )
60
- $where[] .= '`object_type` = \'' . $type . '\'';
61
-
62
- $where_caps = array();
63
- foreach ( $this->_get_allow_caps() as $cap )
64
- $where_caps[] .= '`user_caps` = \'' . $cap . '\'';
65
-
66
- return 'AND (' . implode( ' OR ', $where ) . ') AND (' . implode( ' OR ', $where_caps ) . ')';
67
- }
68
-
69
- protected function _get_action_label( $action ) {
70
- return ucwords( str_replace( '_', ' ', __( $action, 'aryo-activity-log' ) ) );
71
- }
72
-
73
- public function __construct( $args = array() ) {
74
- parent::__construct(
75
- array(
76
- 'singular' => 'activity',
77
- 'screen' => isset( $args['screen'] ) ? $args['screen'] : null,
78
- )
79
- );
80
-
81
- $this->_roles = apply_filters(
82
- 'aal_init_roles',
83
- array(
84
- // admin
85
- 'manage_options' => array( 'Core', 'Export', 'Post', 'Taxonomy', 'User', 'Options', 'Attachment', 'Plugin', 'Widget', 'Theme', 'Menu', 'Comments' ),
86
- // editor
87
- 'edit_pages' => array( 'Post', 'Taxonomy', 'Attachment', 'Comments' ),
88
- )
89
- );
90
-
91
- $this->_caps = apply_filters(
92
- 'aal_init_caps',
93
- array(
94
- 'administrator' => array( 'administrator', 'editor', 'author', 'guest' ),
95
- 'editor' => array( 'editor', 'author', 'guest' ),
96
- 'author' => array( 'author', 'guest' ),
97
- )
98
- );
99
-
100
- add_screen_option(
101
- 'per_page',
102
- array(
103
- 'default' => 50,
104
- 'label' => __( 'Activities', 'aryo-activity-log' ),
105
- 'option' => 'edit_aal_logs_per_page',
106
- )
107
- );
108
-
109
- add_filter( 'set-screen-option', array( &$this, 'set_screen_option' ), 10, 3 );
110
- set_screen_options();
111
- }
112
-
113
- public function get_columns() {
114
- $columns = array(
115
- 'date' => __( 'Date', 'aryo-activity-log' ),
116
- 'author' => __( 'Author', 'aryo-activity-log' ),
117
- 'ip' => __( 'IP', 'aryo-activity-log' ),
118
- 'type' => __( 'Type', 'aryo-activity-log' ),
119
- 'label' => __( 'Label', 'aryo-activity-log' ),
120
- 'action' => __( 'Action', 'aryo-activity-log' ),
121
- 'description' => __( 'Description', 'aryo-activity-log' ),
122
- );
123
-
124
- return $columns;
125
- }
126
-
127
- public function get_sortable_columns() {
128
- return array(
129
- 'ip' => 'hist_ip',
130
- 'date' => array( 'hist_time', true ),
131
- );
132
- }
133
-
134
- public function column_default( $item, $column_name ) {
135
- $return = '';
136
-
137
- switch ( $column_name ) {
138
- case 'action' :
139
- $return = $this->_get_action_label( $item->action );
140
- break;
141
- case 'date' :
142
- $return = sprintf( '<strong>' . __( '%s ago', 'aryo-activity-log' ) . '</strong>', human_time_diff( $item->hist_time, current_time( 'timestamp' ) ) );
143
- $return .= '<br />' . date( 'd/m/Y', $item->hist_time );
144
- $return .= '<br />' . date( 'H:i:s', $item->hist_time );
145
- break;
146
- case 'ip' :
147
- $return = $item->hist_ip;
148
- break;
149
- default :
150
- if ( isset( $item->$column_name ) )
151
- $return = $item->$column_name;
152
- }
153
-
154
- $return = apply_filters( 'aal_table_list_column_default', $return, $item, $column_name );
155
-
156
- return $return;
157
- }
158
-
159
- public function column_author( $item ) {
160
- global $wp_roles;
161
-
162
- if ( ! empty( $item->user_id ) && 0 !== (int) $item->user_id ) {
163
- $user = get_user_by( 'id', $item->user_id );
164
- if ( $user instanceof WP_User && 0 !== $user->ID ) {
165
- //$user->display_name
166
- return sprintf(
167
- '<a href="%s">%s <span class="aal-author-name">%s</span></a><br /><small>%s</small>',
168
- get_edit_user_link( $user->ID ),
169
- get_avatar( $user->ID, 40 ),
170
- $user->display_name,
171
- isset( $user->roles[0] ) && isset( $wp_roles->role_names[ $user->roles[0] ] ) ? $wp_roles->role_names[ $user->roles[0] ] : __( 'Unknown', 'aryo-activity-log' )
172
- );
173
- }
174
- }
175
- return sprintf(
176
- '<span class="aal-author-name">%s</span>',
177
- __( 'Guest', 'aryo-activity-log' )
178
- );
179
- }
180
-
181
- public function column_type( $item ) {
182
- $return = __( $item->object_type, 'aryo-activity-log' );
183
-
184
- $return = apply_filters( 'aal_table_list_column_type', $return, $item );
185
- return $return;
186
- }
187
-
188
- public function column_label( $item ) {
189
- $return = '';
190
- if ( ! empty( $item->object_subtype ) ) {
191
- $pt = get_post_type_object( $item->object_subtype );
192
- $return = ! empty( $pt->label ) ? $pt->label : $item->object_subtype;
193
- }
194
-
195
- $return = apply_filters( 'aal_table_list_column_label', $return, $item );
196
- return $return;
197
- }
198
-
199
- public function column_description( $item ) {
200
- $return = $item->object_name;
201
-
202
- switch ( $item->object_type ) {
203
- case 'Post' :
204
- $return = sprintf( '<a href="%s">%s</a>', get_edit_post_link( $item->object_id ), $item->object_name );
205
- break;
206
-
207
- case 'Taxonomy' :
208
- if ( ! empty( $item->object_id ) )
209
- $return = sprintf( '<a href="%s">%s</a>', get_edit_term_link( $item->object_id, $item->object_subtype ), $item->object_name );
210
- break;
211
-
212
- case 'Comments' :
213
- if ( ! empty( $item->object_id ) && $comment = get_comment( $item->object_id ) ) {
214
- $return = sprintf( '<a href="%s">%s #%d</a>', get_edit_comment_link( $item->object_id ), $item->object_name, $item->object_id );
215
- }
216
- break;
217
-
218
- case 'Export' :
219
- if ( 'all' === $item->object_name ) {
220
- $return = __( 'All', 'aryo-activity-log' );
221
- } else {
222
- $pt = get_post_type_object( $item->object_name );
223
- $return = ! empty( $pt->label ) ? $pt->label : $item->object_name;
224
- }
225
- break;
226
-
227
- case 'Options' :
228
- case 'Core' :
229
- $return = __( $item->object_name, 'aryo-activity-log' );
230
- break;
231
- }
232
-
233
- $return = apply_filters( 'aal_table_list_column_description', $return, $item );
234
-
235
- return $return;
236
- }
237
-
238
- public function display_tablenav( $which ) {
239
- if ( 'top' == $which )
240
- $this->search_box( __( 'Search', 'aryo-activity-log' ), 'aal-search' );
241
- wp_nonce_field( 'bulk-' . $this->_args['plural'] );
242
- ?>
243
- <div class="tablenav <?php echo esc_attr( $which ); ?>">
244
- <?php
245
- $this->extra_tablenav( $which );
246
- $this->pagination( $which );
247
- ?>
248
- <br class="clear" />
249
- </div>
250
- <?php
251
- }
252
-
253
- public function extra_tablenav( $which ) {
254
- global $wpdb;
255
-
256
- if ( 'top' !== $which )
257
- return;
258
-
259
- echo '<div class="alignleft actions">';
260
-
261
- $users = $wpdb->get_results( $wpdb->prepare(
262
- 'SELECT DISTINCT %1$s FROM `%2$s`
263
- WHERE 1 = 1
264
- ' . $this->_get_where_by_role() . '
265
- GROUP BY `%1$s`
266
- ORDER BY `%1$s`
267
- ;',
268
- 'user_id',
269
- $wpdb->activity_log
270
- ) );
271
-
272
- $types = $wpdb->get_results( $wpdb->prepare(
273
- 'SELECT DISTINCT %1$s FROM `%2$s`
274
- WHERE 1 = 1
275
- ' . $this->_get_where_by_role() . '
276
- GROUP BY `%1$s`
277
- ORDER BY `%1$s`
278
- ;',
279
- 'object_type',
280
- $wpdb->activity_log
281
- ) );
282
-
283
- // Make sure we get items for filter.
284
- if ( $users || $types ) {
285
- if ( ! isset( $_REQUEST['dateshow'] ) )
286
- $_REQUEST['dateshow'] = '';
287
-
288
- $date_options = array(
289
- '' => __( 'All Time', 'aryo-activity-log' ),
290
- 'today' => __( 'Today', 'aryo-activity-log' ),
291
- 'yesterday' => __( 'Yesterday', 'aryo-activity-log' ),
292
- 'week' => __( 'Week', 'aryo-activity-log' ),
293
- 'month' => __( 'Month', 'aryo-activity-log' ),
294
- );
295
- echo '<select name="dateshow" id="hs-filter-date">';
296
- foreach ( $date_options as $key => $value )
297
- printf( '<option value="%1$s"%2$s>%3$s</option>', $key, selected( $_REQUEST['dateshow'], $key, false ), $value );
298
- echo '</select>';
299
-
300
- submit_button( __( 'Filter', 'aryo-activity-log' ), 'button', false, false, array( 'id' => 'activity-query-submit' ) );
301
- }
302
-
303
- if ( $users ) {
304
- if ( ! isset( $_REQUEST['capshow'] ) )
305
- $_REQUEST['capshow'] = '';
306
-
307
- $output = array();
308
- foreach ( $this->_get_allow_caps() as $cap ) {
309
- $output[ $cap ] = __( ucwords( $cap ), 'aryo-activity-log' );
310
- }
311
-
312
- if ( ! empty( $output ) ) {
313
- echo '<select name="capshow" id="hs-filter-capshow">';
314
- printf( '<option value="">%s</option>', __( 'All Roles', 'aryo-activity-log' ) );
315
- foreach ( $output as $key => $value ) {
316
- printf( '<option value="%s"%s>%s</option>', $key, selected( $_REQUEST['capshow'], $key, false ), $value );
317
- }
318
- echo '</select>';
319
- }
320
-
321
- if ( ! isset( $_REQUEST['usershow'] ) )
322
- $_REQUEST['usershow'] = '';
323
-
324
- $output = array();
325
- foreach ( $users as $_user ) {
326
- if ( 0 === (int) $_user->user_id ) {
327
- $output[0] = __( 'Guest', 'aryo-activity-log' );
328
- continue;
329
- }
330
-
331
- $user = get_user_by( 'id', $_user->user_id );
332
- if ( $user )
333
- $output[ $user->ID ] = $user->user_nicename;
334
- }
335
-
336
- if ( ! empty( $output ) ) {
337
- echo '<select name="usershow" id="hs-filter-usershow">';
338
- printf( '<option value="">%s</option>', __( 'All Users', 'aryo-activity-log' ) );
339
- foreach ( $output as $key => $value ) {
340
- printf( '<option value="%s"%s>%s</option>', $key, selected( $_REQUEST['usershow'], $key, false ), $value );
341
- }
342
- echo '</select>';
343
- }
344
- }
345
-
346
- if ( $types ) {
347
- if ( ! isset( $_REQUEST['typeshow'] ) )
348
- $_REQUEST['typeshow'] = '';
349
-
350
- $output = array();
351
- foreach ( $types as $type )
352
- $output[] = sprintf( '<option value="%1$s"%2$s>%3$s</option>', $type->object_type, selected( $_REQUEST['typeshow'], $type->object_type, false ), __( $type->object_type, 'aryo-activity-log' ) );
353
-
354
- echo '<select name="typeshow" id="hs-filter-typeshow">';
355
- printf( '<option value="">%s</option>', __( 'All Types', 'aryo-activity-log' ) );
356
- echo implode( '', $output );
357
- echo '</select>';
358
- }
359
-
360
-
361
- $actions = $wpdb->get_results( $wpdb->prepare(
362
- 'SELECT DISTINCT %1$s FROM `%2$s`
363
- WHERE 1 = 1
364
- ' . $this->_get_where_by_role() . '
365
- GROUP BY `%1$s`
366
- ORDER BY `%1$s`
367
- ;',
368
- 'action',
369
- $wpdb->activity_log
370
- ) );
371
-
372
- if ( $actions ) {
373
- if ( ! isset( $_REQUEST['showaction'] ) )
374
- $_REQUEST['showaction'] = '';
375
-
376
- $output = array();
377
- foreach ( $actions as $type )
378
- $output[] = sprintf( '<option value="%s"%s>%s</option>', $type->action, selected( $_REQUEST['showaction'], $type->action, false ), $this->_get_action_label( $type->action ) );
379
-
380
- echo '<select name="showaction" id="hs-filter-showaction">';
381
- printf( '<option value="">%s</option>', __( 'All Actions', 'aryo-activity-log' ) );
382
- echo implode( '', $output );
383
- echo '</select>';
384
- }
385
-
386
- echo '</div>';
387
- }
388
-
389
- public function prepare_items() {
390
- global $wpdb;
391
-
392
- $items_per_page = $this->get_items_per_page( 'edit_aal_logs_per_page', 20 );
393
- $this->_column_headers = array( $this->get_columns(), get_hidden_columns( $this->screen ), $this->get_sortable_columns() );
394
- $where = ' WHERE 1=1';
395
-
396
- if ( ! isset( $_REQUEST['order'] ) || ! in_array( $_REQUEST['order'], array( 'desc', 'asc' ) ) ) {
397
- $_REQUEST['order'] = 'DESC';
398
- }
399
- if ( ! isset( $_REQUEST['orderby'] ) || ! in_array( $_REQUEST['orderby'], array( 'hist_time', 'hist_ip' ) ) ) {
400
- $_REQUEST['orderby'] = 'hist_time';
401
- }
402
-
403
- if ( ! empty( $_REQUEST['typeshow'] ) ) {
404
- $where .= $wpdb->prepare( ' AND `object_type` = \'%s\'', $_REQUEST['typeshow'] );
405
- }
406
-
407
- if ( isset( $_REQUEST['showaction'] ) && '' !== $_REQUEST['showaction'] ) {
408
- $where .= $wpdb->prepare( ' AND `action` = \'%s\'', $_REQUEST['showaction'] );
409
- }
410
-
411
- if ( isset( $_REQUEST['usershow'] ) && '' !== $_REQUEST['usershow'] ) {
412
- $where .= $wpdb->prepare( ' AND `user_id` = %d', $_REQUEST['usershow'] );
413
- }
414
-
415
- if ( isset( $_REQUEST['capshow'] ) && '' !== $_REQUEST['capshow'] ) {
416
- $where .= $wpdb->prepare( ' AND `user_caps` = \'%s\'', strtolower( $_REQUEST['capshow'] ) );
417
- }
418
-
419
- if ( isset( $_REQUEST['dateshow'] ) && in_array( $_REQUEST['dateshow'], array( 'today', 'yesterday', 'week', 'month' ) ) ) {
420
- $current_time = current_time( 'timestamp' );
421
-
422
- // Today
423
- $start_time = mktime( 0, 0, 0, date( 'm', $current_time ), date( 'd', $current_time ), date( 'Y', $current_time ) );;
424
- $end_time = mktime( 23, 59, 59, date( 'm', $current_time ), date( 'd', $current_time ), date( 'Y', $current_time ) );
425
-
426
- if ( 'yesterday' === $_REQUEST['dateshow'] ) {
427
- $start_time = strtotime( 'yesterday', $start_time );
428
- $end_time = mktime( 23, 59, 59, date( 'm', $start_time ), date( 'd', $start_time ), date( 'Y', $start_time ) );
429
- } elseif ( 'week' === $_REQUEST['dateshow'] ) {
430
- $start_time = strtotime( '-1 week', $start_time );
431
- } elseif ( 'month' === $_REQUEST['dateshow'] ) {
432
- $start_time = strtotime( '-1 month', $start_time );
433
- }
434
-
435
- $where .= $wpdb->prepare( ' AND `hist_time` > %1$d AND `hist_time` < %2$d', $start_time, $end_time );
436
- }
437
-
438
- if ( isset( $_REQUEST['s'] ) ) {
439
- // Search only searches 'description' fields.
440
- $where .= $wpdb->prepare( ' AND `object_name` LIKE \'%%%s%%\'', '%' . $wpdb->esc_like( $_REQUEST['s'] ) . '%' );
441
- }
442
-
443
- $offset = ( $this->get_pagenum() - 1 ) * $items_per_page;
444
-
445
-
446
- $total_items = $wpdb->get_var( $wpdb->prepare(
447
- 'SELECT COUNT(`histid`) FROM `%1$s`
448
- ' . $where . '
449
- ' . $this->_get_where_by_role(),
450
- $wpdb->activity_log,
451
- $offset,
452
- $items_per_page
453
- ) );
454
-
455
- $this->items = $wpdb->get_results( $wpdb->prepare(
456
- 'SELECT * FROM `%1$s`
457
- ' . $where . '
458
- ' . $this->_get_where_by_role() . '
459
- ORDER BY `%2$s` %3$s
460
- LIMIT %4$d, %5$d;',
461
- $wpdb->activity_log,
462
- $_REQUEST['orderby'],
463
- $_REQUEST['order'],
464
- $offset,
465
- $items_per_page
466
- ) );
467
-
468
- $this->set_pagination_args( array(
469
- 'total_items' => $total_items,
470
- 'per_page' => $items_per_page,
471
- 'total_pages' => ceil( $total_items / $items_per_page )
472
- ) );
473
- }
474
-
475
- public function set_screen_option( $status, $option, $value ) {
476
- if ( 'edit_aal_logs_per_page' === $option )
477
- return $value;
478
- return $status;
479
- }
480
-
481
- public function search_box( $text, $input_id ) {
482
- $search_data = isset( $_REQUEST['s'] ) ? sanitize_text_field( $_REQUEST['s'] ) : '';
483
-
484
- $input_id = $input_id . '-search-input';
485
- ?>
486
- <p class="search-box">
487
- <label class="screen-reader-text" for="<?php echo $input_id ?>"><?php echo $text; ?>:</label>
488
- <input type="search" id="<?php echo $input_id ?>" name="s" value="<?php echo esc_attr( $search_data ); ?>" />
489
- <?php submit_button( $text, 'button', false, false, array('id' => 'search-submit') ); ?>
490
- </p>
491
- <?php
492
- }
493
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/classes/class-aal-admin-ui.php DELETED
@@ -1,240 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Admin_Ui {
5
-
6
- /**
7
- * @var AAL_Activity_Log_List_Table
8
- */
9
- protected $_list_table = null;
10
-
11
- protected $_screens = array();
12
-
13
- public function create_admin_menu() {
14
- $menu_capability = current_user_can( 'view_all_aryo_activity_log' ) ? 'view_all_aryo_activity_log' : 'edit_pages';
15
-
16
- $this->_screens['main'] = add_menu_page( __( 'Activity Log', 'aryo-activity-log' ), __( 'Activity Log', 'aryo-activity-log' ), $menu_capability, 'activity_log_page', array( &$this, 'activity_log_page_func' ), '', '2.1' );
17
-
18
- // Just make sure we are create instance.
19
- add_action( 'load-' . $this->_screens['main'], array( &$this, 'get_list_table' ) );
20
- }
21
-
22
- public function activity_log_page_func() {
23
- $this->get_list_table()->prepare_items();
24
- ?>
25
- <div class="wrap">
26
- <h1 class="aal-page-title"><?php _e( 'Activity Log', 'aryo-activity-log' ); ?></h1>
27
-
28
- <form id="activity-filter" method="get">
29
- <input type="hidden" name="page" value="<?php echo esc_attr( $_REQUEST['page'] ); ?>" />
30
- <?php $this->get_list_table()->display(); ?>
31
- </form>
32
- </div>
33
-
34
- <?php // TODO: move to a separate file. ?>
35
- <style>
36
- .aal-pt {
37
- color: #ffffff;
38
- padding: 1px 4px;
39
- margin: 0 5px;
40
- font-size: 1em;
41
- border-radius: 3px;
42
- background: #808080;
43
- font-family: inherit;
44
- }
45
- .toplevel_page_activity_log_page .manage-column {
46
- width: auto;
47
- }
48
- .toplevel_page_activity_log_page .column-description {
49
- width: 20%;
50
- }
51
- #adminmenu #toplevel_page_activity_log_page div.wp-menu-image:before {
52
- content: "\f321";
53
- }
54
- @media (max-width: 767px) {
55
- .toplevel_page_activity_log_page .manage-column {
56
- width: auto;
57
- }
58
- .toplevel_page_activity_log_page .column-date,
59
- .toplevel_page_activity_log_page .column-author {
60
- display: table-cell;
61
- width: auto;
62
- }
63
- .toplevel_page_activity_log_page .column-ip,
64
- .toplevel_page_activity_log_page .column-description,
65
- .toplevel_page_activity_log_page .column-label {
66
- display: none;
67
- }
68
- .toplevel_page_activity_log_page .column-author .avatar {
69
- display: none;
70
- }
71
- }
72
- </style>
73
- <?php
74
- }
75
-
76
- public function admin_header() {
77
- // TODO: move to a separate file.
78
- ?><style>
79
- #adminmenu #toplevel_page_activity_log_page div.wp-menu-image:before {
80
- content: "\f321";
81
- }
82
- </style>
83
- <?php
84
- }
85
-
86
- public function ajax_aal_install_elementor_set_admin_notice_viewed() {
87
- update_user_meta( get_current_user_id(), '_aal_elementor_install_notice', 'true' );
88
- }
89
-
90
- public function admin_notices() {
91
- if ( ! current_user_can( 'install_plugins' ) || $this->_is_elementor_installed() )
92
- return;
93
-
94
-
95
- if ( 'true' === get_user_meta( get_current_user_id(), '_aal_elementor_install_notice', true ) )
96
- return;
97
-
98
- if ( ! in_array( get_current_screen()->id, array( 'toplevel_page_activity_log_page', 'dashboard', 'plugins', 'plugins-network' ) ) ) {
99
- return;
100
- }
101
-
102
- add_action( 'admin_footer', array( &$this, 'print_js' ) );
103
-
104
- $install_url = self_admin_url( 'plugin-install.php?tab=search&s=elementor' );
105
- ?>
106
- <style>
107
- .notice.aal-notice {
108
- border-left-color: #9b0a46 !important;
109
- padding: 20px;
110
- }
111
- .rtl .notice.aal-notice {
112
- border-right-color: #9b0a46 !important;
113
- }
114
- .notice.aal-notice .aal-notice-inner {
115
- display: table;
116
- width: 100%;
117
- }
118
- .notice.aal-notice .aal-notice-inner .aal-notice-icon,
119
- .notice.aal-notice .aal-notice-inner .aal-notice-content,
120
- .notice.aal-notice .aal-notice-inner .aal-install-now {
121
- display: table-cell;
122
- vertical-align: middle;
123
- }
124
- .notice.aal-notice .aal-notice-icon {
125
- color: #9b0a46;
126
- font-size: 50px;
127
- width: 50px;
128
- }
129
- .notice.aal-notice .aal-notice-content {
130
- padding: 0 20px;
131
- }
132
- .notice.aal-notice p {
133
- padding: 0;
134
- margin: 0;
135
- }
136
- .notice.aal-notice h3 {
137
- margin: 0 0 5px;
138
- }
139
- .notice.aal-notice .aal-install-now {
140
- text-align: center;
141
- }
142
- .notice.aal-notice .aal-install-now .aal-install-button {
143
- background-color: #9b0a46;
144
- color: #fff;
145
- border-color: #7c1337;
146
- box-shadow: 0 1px 0 #7c1337;
147
- padding: 5px 30px;
148
- height: auto;
149
- line-height: 20px;
150
- text-transform: capitalize;
151
- }
152
- .notice.aal-notice .aal-install-now .aal-install-button i {
153
- padding-right: 5px;
154
- }
155
- .rtl .notice.aal-notice .aal-install-now .aal-install-button i {
156
- padding-right: 0;
157
- padding-left: 5px;
158
- }
159
- .notice.aal-notice .aal-install-now .aal-install-button:hover {
160
- background-color: #a0124a;
161
- }
162
- .notice.aal-notice .aal-install-now .aal-install-button:active {
163
- box-shadow: inset 0 1px 0 #7c1337;
164
- transform: translateY(1px);
165
- }
166
- @media (max-width: 767px) {
167
- .notice.aal-notice {
168
- padding: 10px;
169
- }
170
- .notice.aal-notice .aal-notice-inner {
171
- display: block;
172
- }
173
- .notice.aal-notice .aal-notice-inner .aal-notice-content {
174
- display: block;
175
- padding: 0;
176
- }
177
- .notice.aal-notice .aal-notice-inner .aal-notice-icon,
178
- .notice.aal-notice .aal-notice-inner .aal-install-now {
179
- display: none;
180
- }
181
- }
182
- </style>
183
- <div class="notice updated is-dismissible aal-notice aal-install-elementor">
184
- <div class="aal-notice-inner">
185
- <div class="aal-notice-icon">
186
- <img src="<?php echo plugins_url( 'assets/images/elementor-logo.png', ACTIVITY_LOG__FILE__ ); ?>" alt="Elementor Logo" />
187
- </div>
188
-
189
- <div class="aal-notice-content">
190
- <h3><?php _e( 'Do You Like Activity Log? You\'ll Love Elementor!', 'aryo-activity-log' ); ?></h3>
191
- <p><?php _e( 'Create high-end, pixel perfect websites at record speeds. Any theme, any page, any design. The most advanced frontend drag & drop page builder.', 'aryo-activity-log' ); ?>
192
- <a href="https://go.elementor.com/learn/" target="_blank"><?php _e( 'Learn more about Elementor', 'aryo-activity-log' ); ?></a>.</p>
193
- </div>
194
-
195
- <div class="aal-install-now">
196
- <a class="button aal-install-button" href="<?php echo $install_url; ?>"><i class="dashicons dashicons-download"></i><?php _e( 'Install Now For Free!', 'aryo-activity-log' ); ?></a>
197
- </div>
198
- </div>
199
- </div>
200
- <?php
201
- }
202
-
203
- public function print_js() {
204
- ?>
205
- <script>jQuery( function( $ ) {
206
- $( 'div.notice.aal-install-elementor' ).on( 'click', 'button.notice-dismiss', function( event ) {
207
- event.preventDefault();
208
-
209
- $.post( ajaxurl, {
210
- action: 'aal_install_elementor_set_admin_notice_viewed'
211
- } );
212
- } );
213
- } );</script>
214
- <?php
215
- }
216
-
217
- public function __construct() {
218
- add_action( 'admin_menu', array( &$this, 'create_admin_menu' ), 20 );
219
- add_action( 'admin_head', array( &$this, 'admin_header' ) );
220
- add_action( 'admin_notices', array( &$this, 'admin_notices' ) );
221
- add_action( 'wp_ajax_aal_install_elementor_set_admin_notice_viewed', array( &$this, 'ajax_aal_install_elementor_set_admin_notice_viewed' ) );
222
- }
223
-
224
- private function _is_elementor_installed() {
225
- $file_path = 'elementor/elementor.php';
226
- $installed_plugins = get_plugins();
227
-
228
- return isset( $installed_plugins[ $file_path ] );
229
- }
230
-
231
- /**
232
- * @return AAL_Activity_Log_List_Table
233
- */
234
- public function get_list_table() {
235
- if ( is_null( $this->_list_table ) )
236
- $this->_list_table = new AAL_Activity_Log_List_Table( array( 'screen' => $this->_screens['main'] ) );
237
-
238
- return $this->_list_table;
239
- }
240
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/classes/class-aal-api.php DELETED
@@ -1,169 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_API {
5
-
6
- /**
7
- * @since 1.0.0
8
- *
9
- * @return void
10
- */
11
- protected function _delete_old_items() {
12
- global $wpdb;
13
-
14
- $logs_lifespan = absint( AAL_Main::instance()->settings->get_option( 'logs_lifespan' ) );
15
- if ( empty( $logs_lifespan ) )
16
- return;
17
-
18
- $wpdb->query(
19
- $wpdb->prepare(
20
- 'DELETE FROM `%1$s`
21
- WHERE `hist_time` < %2$d',
22
- $wpdb->activity_log,
23
- strtotime( '-' . $logs_lifespan . ' days', current_time( 'timestamp' ) )
24
- )
25
- );
26
- }
27
-
28
- /**
29
- * Get real address
30
- *
31
- * @since 2.1.4
32
- *
33
- * @return string real address IP
34
- */
35
- protected function _get_ip_address() {
36
- $server_ip_keys = array(
37
- 'HTTP_CLIENT_IP',
38
- 'HTTP_X_FORWARDED_FOR',
39
- 'HTTP_X_FORWARDED',
40
- 'HTTP_X_CLUSTER_CLIENT_IP',
41
- 'HTTP_FORWARDED_FOR',
42
- 'HTTP_FORWARDED',
43
- 'REMOTE_ADDR',
44
- );
45
-
46
- foreach ( $server_ip_keys as $key ) {
47
- if ( isset( $_SERVER[ $key ] ) && filter_var( $_SERVER[ $key ], FILTER_VALIDATE_IP ) ) {
48
- return $_SERVER[ $key ];
49
- }
50
- }
51
-
52
- // Fallback local ip.
53
- return '127.0.0.1';
54
- }
55
-
56
- /**
57
- * @since 2.0.0
58
- * @return void
59
- */
60
- public function erase_all_items() {
61
- global $wpdb;
62
-
63
- $wpdb->query(
64
- $wpdb->prepare(
65
- 'TRUNCATE %1$s',
66
- $wpdb->activity_log
67
- )
68
- );
69
- }
70
-
71
- /**
72
- * @since 1.0.0
73
- *
74
- * @param array $args
75
- * @return void
76
- */
77
- public function insert( $args ) {
78
- global $wpdb;
79
-
80
- $args = wp_parse_args(
81
- $args,
82
- array(
83
- 'action' => '',
84
- 'object_type' => '',
85
- 'object_subtype' => '',
86
- 'object_name' => '',
87
- 'object_id' => '',
88
- 'hist_ip' => $this->_get_ip_address(),
89
- 'hist_time' => current_time( 'timestamp' ),
90
- )
91
- );
92
-
93
- $user = get_user_by( 'id', get_current_user_id() );
94
- if ( $user ) {
95
- $args['user_caps'] = strtolower( key( $user->caps ) );
96
- if ( empty( $args['user_id'] ) )
97
- $args['user_id'] = $user->ID;
98
- } else {
99
- $args['user_caps'] = 'guest';
100
- if ( empty( $args['user_id'] ) )
101
- $args['user_id'] = 0;
102
- }
103
-
104
- // TODO: Find better way to Multisite compatibility.
105
- // Fallback for multisite with bbPress
106
- if ( empty( $args['user_caps'] ) || 'bbp_participant' === $args['user_caps'] )
107
- $args['user_caps'] = 'administrator';
108
-
109
- // Make sure for non duplicate.
110
- $check_duplicate = $wpdb->get_row(
111
- $wpdb->prepare(
112
- 'SELECT `histid` FROM %1$s
113
- WHERE `user_caps` = \'%2$s\'
114
- AND `action` = \'%3$s\'
115
- AND `object_type` = \'%4$s\'
116
- AND `object_subtype` = \'%5$s\'
117
- AND `object_name` = \'%6$s\'
118
- AND `user_id` = \'%7$s\'
119
- AND `hist_ip` = \'%8$s\'
120
- AND `hist_time` = \'%9$s\'
121
- ;',
122
- $wpdb->activity_log,
123
- $args['user_caps'],
124
- $args['action'],
125
- $args['object_type'],
126
- $args['object_subtype'],
127
- $args['object_name'],
128
- $args['user_id'],
129
- $args['hist_ip'],
130
- $args['hist_time']
131
- )
132
- );
133
-
134
- if ( $check_duplicate )
135
- return;
136
-
137
- $wpdb->insert(
138
- $wpdb->activity_log,
139
- array(
140
- 'action' => $args['action'],
141
- 'object_type' => $args['object_type'],
142
- 'object_subtype' => $args['object_subtype'],
143
- 'object_name' => $args['object_name'],
144
- 'object_id' => $args['object_id'],
145
- 'user_id' => $args['user_id'],
146
- 'user_caps' => $args['user_caps'],
147
- 'hist_ip' => $args['hist_ip'],
148
- 'hist_time' => $args['hist_time'],
149
- ),
150
- array( '%s', '%s', '%s', '%s', '%d', '%d', '%s', '%s', '%d' )
151
- );
152
-
153
- // Remove old items.
154
- $this->_delete_old_items();
155
- do_action( 'aal_insert_log', $args );
156
- }
157
- }
158
-
159
- /**
160
- * @since 1.0.0
161
- *
162
- * @see AAL_API::insert
163
- *
164
- * @param array $args
165
- * @return void
166
- */
167
- function aal_insert_log( $args = array() ) {
168
- AAL_Main::instance()->api->insert( $args );
169
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/classes/class-aal-help.php DELETED
@@ -1,31 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- /**
5
- * Contextual help texts
6
- *
7
- * Class AAL_Help
8
- */
9
- class AAL_Help {
10
-
11
- public function __construct() {
12
- add_action( 'in_admin_header', array( $this, 'contextual_help' ) );
13
- }
14
-
15
- public function contextual_help() {
16
- $screen = get_current_screen();
17
-
18
- switch ( $screen->id ) {
19
- case 'activity-log_page_activity-log-settings':
20
- $screen->add_help_tab( array(
21
- 'title' => __( 'Overview', 'aryo-activity-log' ),
22
- 'id' => 'aal-overview',
23
- 'content' => '
24
- <h3>' . __( 'Notifications', 'aryo-activity-log' ) . '</h3>
25
- <p>' . __( 'This screen lets you control what will happen once a user on your site does something you define. For instance, let us assume that you have created a user on your site
26
- for your content editor. Now, let\'s say that every time that user updates a post, you want to know about it. You can easily do it from this page.', 'aryo-activity-log' ) . '</p>',
27
- ) );
28
- break;
29
- }
30
- }
31
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/classes/class-aal-hooks.php DELETED
@@ -1,38 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Hooks {
5
-
6
- public function __construct() {
7
- // Load abstract class.
8
- include( plugin_dir_path( ACTIVITY_LOG__FILE__ ) . '/hooks/abstract-class-aal-hook-base.php' );
9
-
10
- // TODO: Maybe I will use with glob() function for this.
11
- // Load all our hooks.
12
- include( plugin_dir_path( ACTIVITY_LOG__FILE__ ) . '/hooks/class-aal-hook-user.php' );
13
- include( plugin_dir_path( ACTIVITY_LOG__FILE__ ) . '/hooks/class-aal-hook-attachment.php' );
14
- include( plugin_dir_path( ACTIVITY_LOG__FILE__ ) . '/hooks/class-aal-hook-menu.php' );
15
- include( plugin_dir_path( ACTIVITY_LOG__FILE__ ) . '/hooks/class-aal-hook-options.php' );
16
- include( plugin_dir_path( ACTIVITY_LOG__FILE__ ) . '/hooks/class-aal-hook-plugins.php' );
17
- include( plugin_dir_path( ACTIVITY_LOG__FILE__ ) . '/hooks/class-aal-hook-posts.php' );
18
- include( plugin_dir_path( ACTIVITY_LOG__FILE__ ) . '/hooks/class-aal-hook-taxonomy.php' );
19
- include( plugin_dir_path( ACTIVITY_LOG__FILE__ ) . '/hooks/class-aal-hook-theme.php' );
20
- include( plugin_dir_path( ACTIVITY_LOG__FILE__ ) . '/hooks/class-aal-hook-widgets.php' );
21
- include( plugin_dir_path( ACTIVITY_LOG__FILE__ ) . '/hooks/class-aal-hook-core.php' );
22
- include( plugin_dir_path( ACTIVITY_LOG__FILE__ ) . '/hooks/class-aal-hook-export.php' );
23
- include( plugin_dir_path( ACTIVITY_LOG__FILE__ ) . '/hooks/class-aal-hook-comments.php' );
24
-
25
- new AAL_Hook_User();
26
- new AAL_Hook_Attachment();
27
- new AAL_Hook_Menu();
28
- new AAL_Hook_Options();
29
- new AAL_Hook_Plugins();
30
- new AAL_Hook_Posts();
31
- new AAL_Hook_Taxonomy();
32
- new AAL_Hook_Theme();
33
- new AAL_Hook_Widgets();
34
- new AAL_Hook_Core();
35
- new AAL_Hook_Export();
36
- new AAL_Hook_Comments();
37
- }
38
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/classes/class-aal-integration-woocommerce.php DELETED
@@ -1,51 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Integration_WooCommerce {
5
-
6
- private $_wc_options = array();
7
-
8
- public function init() {
9
- if ( ! class_exists( 'Woocommerce' ) )
10
- return;
11
-
12
- add_filter( 'aal_whitelist_options', array( &$this, 'wc_aal_whitelist_options' ) );
13
- add_filter( 'woocommerce_get_settings_pages', array( &$this, 'wc_get_settings_pages' ), 9999 );
14
- }
15
-
16
- /**
17
- * @param WC_Settings_Page[] $settings
18
- *
19
- * @return WC_Settings_Page[]
20
- */
21
- public function wc_get_settings_pages( $settings ) {
22
- if ( empty( $this->_wc_options ) ) {
23
- $wc_exclude_types = array(
24
- 'title',
25
- 'sectionend',
26
- );
27
- $this->_wc_options = array();
28
-
29
- foreach ( $settings as $setting ) {
30
- foreach ( $setting->get_settings() as $option ) {
31
- if ( isset( $option['id'] ) && ( ! isset( $option['type'] ) || ! in_array( $option['type'], $wc_exclude_types ) ) )
32
- $this->_wc_options[] = $option['id'];
33
- }
34
- }
35
- }
36
- return $settings;
37
- }
38
-
39
- public function wc_aal_whitelist_options( $whitelist_options ) {
40
- if ( ! empty( $this->_wc_options ) ) {
41
- $whitelist_options = array_unique( array_merge( $whitelist_options, $this->_wc_options ) );
42
- }
43
- return $whitelist_options;
44
- }
45
-
46
- public function __construct() {
47
- add_action( 'init', array( &$this, 'init' ) );
48
- }
49
-
50
- }
51
- new AAL_Integration_WooCommerce();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/classes/class-aal-maintenance.php DELETED
@@ -1,108 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Maintenance {
5
-
6
- public static function activate( $network_wide ) {
7
- global $wpdb;
8
-
9
- if ( function_exists( 'is_multisite') && is_multisite() && $network_wide ) {
10
- $old_blog_id = $wpdb->blogid;
11
-
12
- $blog_ids = $wpdb->get_col( "SELECT blog_id FROM {$wpdb->blogs}" );
13
- foreach ( $blog_ids as $blog_id ) {
14
- switch_to_blog( $blog_id );
15
- self::_create_tables();
16
- }
17
-
18
- switch_to_blog( $old_blog_id );
19
- } else {
20
- self::_create_tables();
21
- }
22
- }
23
-
24
- public static function uninstall( $network_deactivating ) {
25
- global $wpdb;
26
-
27
- if ( function_exists( 'is_multisite') && is_multisite() && $network_deactivating ) {
28
- $old_blog_id = $wpdb->blogid;
29
-
30
- $blog_ids = $wpdb->get_col( "SELECT blog_id FROM {$wpdb->blogs};" );
31
- foreach ( $blog_ids as $blog_id ) {
32
- switch_to_blog( $blog_id );
33
- self::_remove_tables();
34
- }
35
-
36
- switch_to_blog( $old_blog_id );
37
- } else {
38
- self::_remove_tables();
39
- }
40
- }
41
-
42
- public static function mu_new_blog_installer( $blog_id, $user_id, $domain, $path, $site_id, $meta ) {
43
- global $wpdb;
44
-
45
- if ( is_plugin_active_for_network( ACTIVITY_LOG_BASE ) ) {
46
- $old_blog_id = $wpdb->blogid;
47
- switch_to_blog( $blog_id );
48
- self::_create_tables();
49
- switch_to_blog( $old_blog_id );
50
- }
51
- }
52
-
53
- public static function mu_delete_blog( $blog_id, $drop ) {
54
- global $wpdb;
55
-
56
- $old_blog_id = $wpdb->blogid;
57
- switch_to_blog( $blog_id );
58
- self::_remove_tables();
59
- switch_to_blog( $old_blog_id );
60
- }
61
-
62
- protected static function _create_tables() {
63
- global $wpdb;
64
-
65
- $sql = "CREATE TABLE IF NOT EXISTS `{$wpdb->prefix}aryo_activity_log` (
66
- `histid` int(11) NOT NULL AUTO_INCREMENT,
67
- `user_caps` varchar(70) NOT NULL DEFAULT 'guest',
68
- `action` varchar(255) NOT NULL,
69
- `object_type` varchar(255) NOT NULL,
70
- `object_subtype` varchar(255) NOT NULL DEFAULT '',
71
- `object_name` varchar(255) NOT NULL,
72
- `object_id` int(11) NOT NULL DEFAULT '0',
73
- `user_id` int(11) NOT NULL DEFAULT '0',
74
- `hist_ip` varchar(55) NOT NULL DEFAULT '127.0.0.1',
75
- `hist_time` int(11) NOT NULL DEFAULT '0',
76
- PRIMARY KEY (`histid`)
77
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8;";
78
-
79
- require_once( ABSPATH . 'wp-admin/includes/upgrade.php' );
80
- dbDelta( $sql );
81
-
82
- $admin_role = get_role( 'administrator' );
83
- if ( $admin_role instanceof WP_Role && ! $admin_role->has_cap( 'view_all_aryo_activity_log' ) )
84
- $admin_role->add_cap( 'view_all_aryo_activity_log' );
85
-
86
- update_option( 'activity_log_db_version', '1.0' );
87
- }
88
-
89
- protected static function _remove_tables() {
90
- global $wpdb;
91
-
92
- $wpdb->query( "DROP TABLE IF EXISTS `{$wpdb->prefix}aryo_activity_log`;" );
93
-
94
- $admin_role = get_role( 'administrator' );
95
- if ( $admin_role && $admin_role->has_cap( 'view_all_aryo_activity_log' ) )
96
- $admin_role->remove_cap( 'view_all_aryo_activity_log' );
97
-
98
- delete_option( 'activity_log_db_version' );
99
- }
100
- }
101
-
102
- register_activation_hook( ACTIVITY_LOG_BASE, array( 'AAL_Maintenance', 'activate' ) );
103
- register_uninstall_hook( ACTIVITY_LOG_BASE, array( 'AAL_Maintenance', 'uninstall' ) );
104
-
105
- // MU installer for new blog.
106
- add_action( 'wpmu_new_blog', array( 'AAL_Maintenance', 'mu_new_blog_installer' ), 10, 6 );
107
- // MU Uninstall for delete blog.
108
- add_action( 'delete_blog', array( 'AAL_Maintenance', 'mu_delete_blog' ), 10, 2 );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/classes/class-aal-notifications.php DELETED
@@ -1,297 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- /**
5
- * Notifications API main class
6
- *
7
- * @since 2.0.6
8
- */
9
- class AAL_Notifications {
10
- /* @todo public for debugging now, change to private/protected l8r */
11
- public $handlers = array();
12
- public $handlers_loaded = array();
13
-
14
- public function __construct() {
15
- // Load abstract class.
16
- include( plugin_dir_path( ACTIVITY_LOG__FILE__ ) . '/notifications/abstract-class-aal-notification-base.php' );
17
-
18
- // Run handlers loader
19
- add_action( 'init', array( &$this, 'load_handlers' ), 20 );
20
- add_action( 'aal_load_notification_handlers', array( &$this, 'load_default_handlers' ) );
21
- add_action( 'aal_insert_log', array( &$this, 'process_notifications' ), 20 );
22
- }
23
-
24
- public function process_notifications( $args ) {
25
- $enabled_handlers = $this->get_enabled_handlers();
26
-
27
- // if we can't find any enabled event handlers, bail.
28
- if ( empty( $enabled_handlers ) )
29
- return;
30
-
31
- // calculate if this type event is set in the rules
32
- $options = AAL_Main::instance()->settings->get_options();
33
-
34
- // if there are no rules set, bail.
35
- if ( empty( $options['notification_rules'] ) || ! is_array( $options['notification_rules'] ) )
36
- return;
37
-
38
- $notification_matched_rules = array();
39
-
40
- // loop through the set of rules, and figure out if this current action meets a set rule
41
- foreach ( $options['notification_rules'] as $notification_rule ) {
42
- list( $n_key, $n_condition, $n_value ) = array_values( $notification_rule );
43
-
44
- switch ( $n_key ) {
45
- case 'action-type':
46
- if ( $n_value == $args['object_type'] )
47
- $notification_matched_rules[] = $notification_rule;
48
- break;
49
- }
50
- }
51
-
52
- // did we find any matches? if not, let's pretend as if nothing has happened here ;)
53
- if ( ! empty( $notification_matched_rules ) ) {
54
- // cycle through enabled handlers and trigger them
55
- foreach ( $enabled_handlers as $enabled_handler ) {
56
- $enabled_handler->trigger( $args );
57
- }
58
- }
59
- }
60
-
61
- public function get_object_types() {
62
- // TODO: It's need to be integration from the plugin
63
- $opts = apply_filters(
64
- 'aal_notification_get_object_types',
65
- array(
66
- 'Core',
67
- 'Export',
68
- 'Post',
69
- 'Taxonomy',
70
- 'User',
71
- 'Options',
72
- 'Attachment',
73
- 'Plugin',
74
- 'Widget',
75
- 'Theme',
76
- 'Menu',
77
- 'Comments',
78
- )
79
- );
80
-
81
- return array_combine( $opts, $opts );
82
- }
83
-
84
- public function get_actions() {
85
- // TODO: It's need to be integration from the plugin
86
- $opts = apply_filters(
87
- 'aal_notification_get_actions',
88
- array(
89
- 'created',
90
- 'deleted',
91
- 'updated',
92
- 'trashed',
93
- 'untrashed',
94
- 'spammed',
95
- 'unspammed',
96
- 'downloaded',
97
- 'installed',
98
- 'added',
99
- 'activated',
100
- 'deactivated',
101
- 'accessed',
102
- 'file_updated',
103
- 'logged_in',
104
- 'logged_out',
105
- 'wrong_password',
106
- )
107
- );
108
- $ready = array();
109
-
110
- // make key => value pairs (where slug in key)
111
- foreach ( $opts as $opt ) {
112
- $ready[ $opt ] = ucwords( str_replace( '_', ' ', __( $opt, 'aryo-activity-log' ) ) );
113
- }
114
-
115
- return $ready;
116
- }
117
-
118
- /**
119
- * Returns values for the dropdown in the settings page (the last dropdown in each conditions row)
120
- *
121
- * @param string $row_key type
122
- * @return array
123
- */
124
- public function get_settings_dropdown_values( $row_key ) {
125
- $results = array();
126
-
127
- /**
128
- * @todo allow this switch to be extensible by other plugins (see example)
129
- */
130
- switch ( $row_key ) {
131
- case 'user':
132
- // cache all data in case we need the same data twice on the same/upcoming pageloads
133
- if ( false === ( $results = wp_cache_get( $cache_key = 'notifications-users', 'aal' ) ) ) {
134
- // get all users
135
- $all_users = get_users();
136
- $preped_users = array();
137
-
138
- // prepare users
139
- foreach ( $all_users as $user ) {
140
- $user_role = $user->roles;
141
-
142
- // if user has no role (shouldn't happen, but just in case)
143
- if ( empty( $user_role ) )
144
- continue;
145
-
146
- $user_role_obj = get_role( $user_role[0] );
147
- $user_role_name = isset( $user_role_obj->name ) ? $user_role_obj->name : $user_role[0];
148
-
149
- $preped_users[ $user->ID ] = apply_filters( 'aal_notifications_user_format', sprintf( '%s - %s (ID #%d)', $user->display_name, $user_role_name, $user->ID ), $user );
150
- }
151
-
152
- wp_cache_set( $cache_key, $results = $preped_users, 'aal' ); // no need for expiration time
153
- }
154
- break;
155
-
156
- case 'action-type':
157
- $results = $this->get_object_types();
158
- break;
159
-
160
- case 'action-value':
161
- $results = $this->get_actions();
162
- break;
163
-
164
- default:
165
- // @todo allow plugins to extend and handle custom field types
166
- $results = apply_filters( 'aal_settings_dropdown_values', $results, $row_key );
167
- break;
168
- }
169
-
170
- return $results;
171
- }
172
-
173
- /**
174
- * Returns a list of handlers, in a key-value format.
175
- * Key holds the classname, value holds the name of the transport.
176
- */
177
- public function get_handlers() {
178
- if ( empty( $this->handlers ) || ! did_action( 'aal_load_notification_handlers' ) )
179
- return array();
180
-
181
- $handlers = array();
182
-
183
- foreach ( $this->handlers as $handler ) {
184
- $handler_obj = $this->handlers_loaded[ $handler ];
185
-
186
- // if we got the name of the handler, use it. otherwise, use the classname.
187
- $handler_name = isset( $handler_obj->name ) ? $handler_obj->name : $handler;
188
-
189
- $handlers[ $handler_obj->id ] = $handler_name;
190
- }
191
-
192
- return $handlers;
193
- }
194
-
195
- /**
196
- * Returns a handler object
197
- *
198
- * @param string $id
199
- * @return AAL_Notification_Base|bool
200
- */
201
- public function get_handler_object( $id ) {
202
- return isset( $this->handlers_loaded[ $id ] ) ? $this->handlers_loaded[ $id ] : false;
203
- }
204
-
205
- /**
206
- * Returns all available handlers
207
- * @return array
208
- */
209
- public function get_available_handlers() {
210
- $handlers = array();
211
-
212
- foreach ( $this->handlers_loaded as $handler_classname => $handler_obj ) {
213
- $handlers[ $handler_obj->id ] = $handler_obj;
214
- }
215
-
216
- return apply_filters( 'aal_available_handlers', $handlers );
217
- }
218
-
219
- /**
220
- * Returns the active handlers that were activated through the settings page
221
- *
222
- * @return array
223
- */
224
- public function get_enabled_handlers() {
225
- $enabled = array();
226
- $options = AAL_Main::instance()->settings->get_options();
227
-
228
- foreach ( $this->get_available_handlers() as $id => $handler_obj ) {
229
- // make sure handler is active
230
- if ( isset( $options['notification_handlers'][ $id ] ) && 1 == $options['notification_handlers'][ $id ] ) {
231
- $enabled[ $id ] = $handler_obj;
232
- }
233
- }
234
-
235
- return $enabled;
236
- }
237
-
238
- /**
239
- * Runs during aal_load_notification_handlers,
240
- * includes the necessary files to register default notification handlers.
241
- */
242
- public function load_default_handlers() {
243
- $default_handlers = apply_filters( 'aal_default_addons', array(
244
- 'email' => $this->get_default_handler_path( 'class-aal-notification-email.php' ),
245
- ) );
246
-
247
- foreach ( $default_handlers as $filename )
248
- include_once $filename;
249
- }
250
-
251
- /**
252
- * Returns path to notification handler file
253
- *
254
- * @param string $filename
255
- * @return string
256
- */
257
- public function get_default_handler_path( $filename ) {
258
- return plugin_dir_path( ACTIVITY_LOG__FILE__ ) . "notifications/$filename";
259
- }
260
-
261
- /**
262
- * Fired before $this->init()
263
- *
264
- * @todo maybe check $classname's inheritance tree and signal if it's not a AAL_Notification_Base
265
- */
266
- public function load_handlers() {
267
- do_action( 'aal_load_notification_handlers' );
268
-
269
- foreach ( $this->handlers as $handler_classname ) {
270
- if ( class_exists( $handler_classname ) ) {
271
- $obj = new $handler_classname;
272
-
273
- // is this handler extending AAL_Notification_Base?
274
- if ( ! is_a( $obj, 'AAL_Notification_Base' ) )
275
- continue;
276
-
277
- $this->handlers_loaded[ $handler_classname ] = $obj;
278
- }
279
- }
280
- }
281
-
282
- /**
283
- * Registers a handler class, which is then loaded in $this->load_handlers
284
- *
285
- * @param string $classname The name of the class to create an instance for
286
- * @return bool
287
- */
288
- public function register_handler( $classname ) {
289
- if ( ! class_exists( $classname ) ) {
290
- trigger_error( __( 'The AAL notification handler you are trying to register does not exist.', 'aryo-activity-log' ) );
291
- return false;
292
- }
293
-
294
- $this->handlers[] = $classname;
295
- return true;
296
- }
297
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/classes/class-aal-settings.php DELETED
@@ -1,507 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Settings {
5
- private $hook;
6
- public $slug = 'activity-log-settings';
7
- protected $options;
8
-
9
- public function __construct() {
10
- add_action( 'init', array( &$this, 'init' ) );
11
- add_action( 'admin_menu', array( &$this, 'action_admin_menu' ), 30 );
12
- add_action( 'admin_init', array( &$this, 'register_settings' ) );
13
- add_action( 'admin_notices', array( &$this, 'admin_notices' ) );
14
- add_action( 'admin_footer', array( &$this, 'admin_footer' ) );
15
- add_filter( 'plugin_action_links_' . ACTIVITY_LOG_BASE, array( &$this, 'plugin_action_links' ) );
16
-
17
- add_action( 'wp_ajax_aal_reset_items', array( &$this, 'ajax_aal_reset_items' ) );
18
- add_action( 'wp_ajax_aal_get_properties', array( &$this, 'ajax_aal_get_properties' ) );
19
- }
20
-
21
- public function init() {
22
- $this->options = $this->get_options();
23
- }
24
-
25
- public function plugin_action_links( $links ) {
26
- $settings_link = sprintf( '<a href="%s" target="_blank">%s</a>', 'https://github.com/KingYes/wordpress-aryo-activity-log', __( 'GitHub', 'aryo-activity-log' ) );
27
- array_unshift( $links, $settings_link );
28
-
29
- $settings_link = sprintf( '<a href="%s">%s</a>', admin_url( 'admin.php?page=activity-log-settings' ), __( 'Settings', 'aryo-activity-log' ) );
30
- array_unshift( $links, $settings_link );
31
-
32
- return $links;
33
- }
34
-
35
- /**
36
- * Register the settings page
37
- *
38
- * @since 1.0
39
- */
40
- public function action_admin_menu() {
41
- $this->hook = add_submenu_page(
42
- 'activity_log_page',
43
- __( 'Activity Log Settings', 'aryo-activity-log' ), // <title> tag
44
- __( 'Settings', 'aryo-activity-log' ), // menu label
45
- 'manage_options', // required cap to view this page
46
- $this->slug, // page slug
47
- array( &$this, 'display_settings_page' ) // callback
48
- );
49
-
50
- // register scripts & styles, specific for the settings page
51
- add_action( "admin_print_scripts-{$this->hook}", array( &$this, 'scripts_n_styles' ) );
52
- // this callback will initialize the settings for AAL
53
- // add_action( "load-$this->hook", array( $this, 'register_settings' ) );
54
- }
55
-
56
- /**
57
- * Register scripts & styles
58
- *
59
- * @since 1.0
60
- */
61
- public function scripts_n_styles() {
62
- wp_enqueue_script( 'aal-settings', plugins_url( 'assets/js/settings.js', ACTIVITY_LOG__FILE__ ), array( 'jquery' ) );
63
- wp_enqueue_style( 'aal-settings', plugins_url( 'assets/css/settings.css', ACTIVITY_LOG__FILE__ ) );
64
- }
65
-
66
- public function register_settings() {
67
- // If no options exist, create them.
68
- if ( ! get_option( $this->slug ) ) {
69
- update_option( $this->slug, apply_filters( 'aal_default_options', array(
70
- 'logs_lifespan' => '30',
71
- ) ) );
72
- }
73
-
74
- register_setting( 'aal-options', $this->slug, array( $this, 'validate_options' ) );
75
- $section = $this->get_setup_section();
76
-
77
- switch ( $section ) {
78
- case 'general':
79
- // First, we register a section. This is necessary since all future options must belong to a
80
- add_settings_section(
81
- 'general_settings_section', // ID used to identify this section and with which to register options
82
- __( 'Display Options', 'aryo-activity-log' ), // Title to be displayed on the administration page
83
- array( 'AAL_Settings_Fields', 'general_settings_section_header' ), // Callback used to render the description of the section
84
- $this->slug // Page on which to add this section of options
85
- );
86
-
87
- add_settings_field(
88
- 'logs_lifespan',
89
- __( 'Keep logs for', 'aryo-activity-log' ),
90
- array( 'AAL_Settings_Fields', 'number_field' ),
91
- $this->slug,
92
- 'general_settings_section',
93
- array(
94
- 'id' => 'logs_lifespan',
95
- 'page' => $this->slug,
96
- 'classes' => array( 'small-text' ),
97
- 'type' => 'number',
98
- 'sub_desc' => __( 'days.', 'aryo-activity-log' ),
99
- 'desc' => __( 'Maximum number of days to keep activity log. Leave blank to keep activity log forever (not recommended).', 'aryo-activity-log' ),
100
- )
101
- );
102
-
103
- if ( apply_filters( 'aal_allow_option_erase_logs', true ) ) {
104
- add_settings_field(
105
- 'raw_delete_log_activities',
106
- __( 'Delete Log Activities', 'aryo-activity-log' ),
107
- array( 'AAL_Settings_Fields', 'raw_html' ),
108
- $this->slug,
109
- 'general_settings_section',
110
- array(
111
- 'html' => sprintf( __( '<a href="%s" id="%s">Reset Database</a>', 'aryo-activity-log' ), add_query_arg( array(
112
- 'action' => 'aal_reset_items',
113
- '_nonce' => wp_create_nonce( 'aal_reset_items' ),
114
- ), admin_url( 'admin-ajax.php' ) ), 'aal-delete-log-activities' ),
115
- 'desc' => __( 'Warning: Clicking this will delete all activities from the database.', 'aryo-activity-log' ),
116
- )
117
- );
118
- }
119
- break;
120
-
121
- case 'notifications':
122
- // Email Notifications Settings
123
- add_settings_section(
124
- 'email_notifications', // ID used to identify this section and with which to register options
125
- __( 'Notifications', 'aryo-activity-log' ), // Title to be displayed on the administration page
126
- array( 'AAL_Settings_Fields', 'email_notifications_section_header' ), // Callback used to render the description of the section
127
- $this->slug // Page on which to add this section of options
128
- );
129
-
130
- add_settings_field(
131
- 'notification_rules',
132
- __( 'Notification Events', 'aryo-activity-log' ),
133
- array( 'AAL_Settings_Fields', 'email_notification_buffer_field' ),
134
- $this->slug,
135
- 'email_notifications',
136
- array(
137
- 'id' => 'notification_rules',
138
- 'page' => $this->slug,
139
- 'desc' => __( 'Maximum number of days to keep activity log. Leave blank to keep activity log forever (not recommended).', 'aryo-activity-log' ),
140
- )
141
- );
142
-
143
- $notification_handlers = AAL_Main::instance()->notifications->get_available_handlers();
144
- $enabled_notification_handlers = AAL_Main::instance()->settings->get_option( 'notification_handlers' );
145
-
146
- // Loop through custom notification handlers
147
- foreach ( $notification_handlers as $handler_id => $handler_obj ) {
148
- if ( ! is_object( $handler_obj ) )
149
- continue;
150
-
151
- add_settings_section(
152
- "notification_$handler_id",
153
- $handler_obj->name,
154
- array( $handler_obj, '_settings_section_callback' ),
155
- $this->slug
156
- );
157
-
158
- add_settings_field(
159
- "notification_handler_{$handler_id}_enabled",
160
- __( 'Enable?', 'aryo-activity-log' ),
161
- array( $handler_obj, '_settings_enabled_field_callback' ),
162
- $this->slug,
163
- "notification_$handler_id",
164
- array(
165
- 'id' => 'notification_transport',
166
- 'page' => $this->slug,
167
- 'name' => "{$this->slug}[notification_handlers][{$handler_id}]",
168
- 'value' => (bool) ( 1 == $enabled_notification_handlers[ $handler_id ] ),
169
- )
170
- );
171
-
172
- $handler_obj->settings_fields();
173
- }
174
- break;
175
- }
176
- }
177
-
178
- /**
179
- * Returns the current section within AAL's setting pages
180
- *
181
- * @return string
182
- */
183
- public function get_setup_section() {
184
- if ( isset( $_REQUEST['aal_section'] ) )
185
- return strtolower( $_REQUEST['aal_section'] );
186
-
187
- return 'general';
188
- }
189
-
190
- /**
191
- * Prints section tabs within the settings area
192
- */
193
- private function menu_print_tabs() {
194
- $current_section = $this->get_setup_section();
195
- $sections = array(
196
- 'general' => __( 'General', 'aryo-activity-log' ),
197
- 'notifications' => __( 'Notifications', 'aryo-activity-log' ),
198
- );
199
-
200
- $sections = apply_filters( 'aal_setup_sections', $sections );
201
-
202
- foreach ( $sections as $section_key => $section_caption ) {
203
- $active = $current_section === $section_key ? 'nav-tab-active' : '';
204
- $url = add_query_arg( 'aal_section', $section_key );
205
- echo '<a class="nav-tab ' . $active . '" href="' . esc_url( $url ) . '">' . esc_html( $section_caption ) . '</a>';
206
- }
207
- }
208
-
209
- public function validate_options( $input ) {
210
- $options = $this->options; // CTX,L1504
211
-
212
- // @todo some data validation/sanitization should go here
213
- $output = apply_filters( 'aal_validate_options', $input, $options );
214
-
215
- // merge with current settings
216
- $output = array_merge( $options, $output );
217
-
218
- return $output;
219
- }
220
-
221
- public function display_settings_page() {
222
- ?>
223
- <!-- Create a header in the default WordPress 'wrap' container -->
224
- <div class="wrap">
225
-
226
- <h1 class="aal-page-title"><?php _e( 'Activity Log Settings', 'aryo-activity-log' ); ?></h1>
227
- <?php settings_errors(); ?>
228
- <h2 class="nav-tab-wrapper"><?php $this->menu_print_tabs(); ?></h2>
229
-
230
- <form method="post" action="options.php">
231
- <?php
232
- settings_fields( 'aal-options' );
233
- do_settings_sections( $this->slug );
234
- submit_button();
235
- ?>
236
- </form>
237
-
238
- </div><!-- /.wrap -->
239
- <?php
240
- }
241
-
242
- public function admin_notices() {
243
- switch ( filter_input( INPUT_GET, 'message' ) ) {
244
- case 'data_erased':
245
- printf( '<div class="updated"><p>%s</p></div>', __( 'All activities have been successfully deleted.', 'aryo-activity-log' ) );
246
- break;
247
- }
248
- }
249
-
250
- public function admin_footer() {
251
- // TODO: move to a separate file.
252
- ?>
253
- <script type="text/javascript">
254
- jQuery( document ).ready( function( $ ) {
255
- $( '#aal-delete-log-activities' ).on( 'click', function( e ) {
256
- if ( ! confirm( '<?php echo __( 'Are you sure you want to do this action?', 'aryo-activity-log' ); ?>' ) ) {
257
- e.preventDefault();
258
- }
259
- } );
260
- } );
261
- </script>
262
- <?php
263
- }
264
-
265
- public function ajax_aal_reset_items() {
266
- if ( ! check_ajax_referer( 'aal_reset_items', '_nonce', false ) || ! current_user_can( 'manage_options' ) ) {
267
- wp_die( __( 'You do not have sufficient permissions to access this page.', 'aryo-activity-log' ) );
268
- }
269
-
270
- AAL_Main::instance()->api->erase_all_items();
271
-
272
- wp_redirect( add_query_arg( array(
273
- 'page' => 'activity-log-settings',
274
- 'message' => 'data_erased',
275
- ), admin_url( 'admin.php' ) ) );
276
- die();
277
- }
278
-
279
- public function ajax_aal_get_properties() {
280
- if ( ! current_user_can( 'manage_options' ) ) {
281
- wp_send_json_error();
282
- }
283
-
284
- $action_category = isset( $_REQUEST['action_category'] ) ? $_REQUEST['action_category'] : false;
285
-
286
- $options = AAL_Main::instance()->notifications->get_settings_dropdown_values( $action_category );
287
-
288
- if ( ! empty( $options ) ) {
289
- wp_send_json_success( $options );
290
- }
291
-
292
- wp_send_json_error();
293
- }
294
-
295
- public function get_option( $key = '' ) {
296
- $settings = $this->get_options();
297
- return ! empty( $settings[ $key ] ) ? $settings[ $key ] : false;
298
- }
299
-
300
- /**
301
- * Returns all options
302
- *
303
- * @since 2.0.7
304
- * @return array
305
- */
306
- public function get_options() {
307
- // Allow other plugins to get AAL's options.
308
- if ( isset( $this->options ) && is_array( $this->options ) && ! empty( $this->options ) )
309
- return $this->options;
310
-
311
- return apply_filters( 'aal_options', get_option( $this->slug, array() ) );
312
- }
313
-
314
- public function slug() {
315
- return $this->slug;
316
- }
317
- }
318
-
319
- // TODO: Need rewrite this class to useful tool.
320
- final class AAL_Settings_Fields {
321
-
322
- public static function general_settings_section_header() {
323
- ?>
324
- <p><?php _e( 'These are some basic settings for Activity Log.', 'aryo-activity-log' ); ?></p>
325
- <?php
326
- }
327
-
328
- public static function email_notifications_section_header() {
329
- ?>
330
- <p><?php _e( 'Serve yourself with custom-tailored notifications. First, define your conditions. Then, choose how the notifications will be sent.', 'aryo-activity-log' ); ?></p>
331
- <?php
332
- }
333
-
334
- public static function raw_html( $args ) {
335
- if ( empty( $args['html'] ) )
336
- return;
337
-
338
- echo $args['html'];
339
- if ( ! empty( $args['desc'] ) ) : ?>
340
- <p class="description"><?php echo $args['desc']; ?></p>
341
- <?php endif;
342
- }
343
-
344
- public static function text_field( $args ) {
345
- self::_set_name_and_value( $args );
346
- extract( $args, EXTR_SKIP );
347
-
348
- $args = wp_parse_args( $args, array(
349
- 'classes' => array(),
350
- ) );
351
- if ( empty( $args['id'] ) || empty( $args['page'] ) )
352
- return;
353
-
354
- ?>
355
- <input type="text" id="<?php echo esc_attr( $args['id'] ); ?>" name="<?php echo esc_attr( $name ); ?>" value="<?php echo esc_attr( $value ); ?>" class="<?php echo implode( ' ', $args['classes'] ); ?>" />
356
- <?php if ( ! empty( $desc ) ) : ?>
357
- <p class="description"><?php echo $desc; ?></p>
358
- <?php endif;
359
- }
360
-
361
- public static function textarea_field( $args ) {
362
- self::_set_name_and_value( $args );
363
- extract( $args, EXTR_SKIP );
364
-
365
- $args = wp_parse_args( $args, array(
366
- 'classes' => array(),
367
- 'rows' => 5,
368
- 'cols' => 50,
369
- ) );
370
-
371
- if ( empty( $args['id'] ) || empty( $args['page'] ) )
372
- return;
373
-
374
- ?>
375
- <textarea id="<?php echo esc_attr( $args['id'] ); ?>" name="<?php echo esc_attr( $name ); ?>" class="<?php echo implode( ' ', $args['classes'] ); ?>" rows="<?php echo absint( $args['rows'] ); ?>" cols="<?php echo absint( $args['cols'] ); ?>"><?php echo esc_textarea( $value ); ?></textarea>
376
-
377
- <?php if ( ! empty( $desc ) ) : ?>
378
- <p class="description"><?php echo $desc; ?></p>
379
- <?php endif;
380
- }
381
-
382
- public static function number_field( $args ) {
383
- self::_set_name_and_value( $args );
384
- extract( $args, EXTR_SKIP );
385
-
386
- $args = wp_parse_args( $args, array(
387
- 'classes' => array(),
388
- 'min' => '1',
389
- 'step' => '1',
390
- 'desc' => '',
391
- ) );
392
- if ( empty( $args['id'] ) || empty( $args['page'] ) )
393
- return;
394
-
395
- ?>
396
- <input type="number" id="<?php echo esc_attr( $args['id'] ); ?>" name="<?php echo esc_attr( $name ); ?>" value="<?php echo esc_attr( $value ); ?>" class="<?php echo implode( ' ', $args['classes'] ); ?>" min="<?php echo $args['min']; ?>" step="<?php echo $args['step']; ?>" />
397
- <?php if ( ! empty( $args['sub_desc'] ) ) echo $args['sub_desc']; ?>
398
- <?php if ( ! empty( $args['desc'] ) ) : ?>
399
- <p class="description"><?php echo $args['desc']; ?></p>
400
- <?php endif;
401
- }
402
-
403
- public static function select_field( $args ) {
404
- self::_set_name_and_value( $args );
405
- extract( $args, EXTR_SKIP );
406
-
407
- if ( empty( $options ) || empty( $id ) || empty( $page ) )
408
- return;
409
-
410
- ?>
411
- <select id="<?php echo esc_attr( $id ); ?>" name="<?php printf( '%s[%s]', esc_attr( $page ), esc_attr( $id ) ); ?>">
412
- <?php foreach ( $options as $name => $label ) : ?>
413
- <option value="<?php echo esc_attr( $name ); ?>" <?php selected( $name, (string) $value ); ?>>
414
- <?php echo esc_html( $label ); ?>
415
- </option>
416
- <?php endforeach; ?>
417
- </select>
418
- <?php if ( ! empty( $desc ) ) : ?>
419
- <p class="description"><?php echo $desc; ?></p>
420
- <?php endif; ?>
421
- <?php
422
- }
423
-
424
- public static function yesno_field( $args ) {
425
- self::_set_name_and_value( $args );
426
- extract( $args, EXTR_SKIP );
427
-
428
- ?>
429
- <label class="tix-yes-no description"><input type="radio" name="<?php echo esc_attr( $name ); ?>" value="1" <?php checked( $value, true ); ?>> <?php _e( 'Yes', 'aryo-activity-log' ); ?></label>
430
- <label class="tix-yes-no description"><input type="radio" name="<?php echo esc_attr( $name ); ?>" value="0" <?php checked( $value, false ); ?>> <?php _e( 'No', 'aryo-activity-log' ); ?></label>
431
-
432
- <?php if ( isset( $args['description'] ) ) : ?>
433
- <p class="description"><?php echo $args['description']; ?></p>
434
- <?php endif; ?>
435
- <?php
436
- }
437
-
438
- public static function email_notification_buffer_field( $args ) {
439
- $args = wp_parse_args( $args, array(
440
- 'classes' => array(),
441
- ) );
442
- if ( empty( $args['id'] ) || empty( $args['page'] ) )
443
- return;
444
-
445
- // available action categories
446
- $keys = array(
447
- 'user' => __( 'User', 'aryo-activity-log' ),
448
- 'action-type' => __( 'Action Type', 'aryo-activity-log' ),
449
- 'action-value' => __( 'Action Performed', 'aryo-activity-log' ),
450
- );
451
- // available condition types
452
- $conditions = array(
453
- 'equals' => __( 'equals to', 'aryo-activity-log' ),
454
- 'not_equals' => __( 'not equals to', 'aryo-activity-log' ),
455
- );
456
-
457
- $common_name = sprintf( '%s[%s]', esc_attr( $args['page'] ), esc_attr( $args['id'] ) );
458
-
459
- // get all rows
460
- $rows = AAL_Main::instance()->settings->get_option( $args['id'] );
461
- // if empty, reset to one element with the key of 1
462
- $rows = empty( $rows ) ? array( array( 'key' => 1 ) ) : $rows;
463
- ?>
464
- <p class="description"><?php _e( 'A notification will be sent upon a successful match with the following conditions:', 'aryo-activity-log' ); ?></p>
465
- <div class="aal-notifier-settings">
466
- <ul>
467
- <?php foreach ( $rows as $rid => $row ) :
468
- $row_key = $row['key'];
469
- $row_condition = isset( $row['condition'] ) ? $row['condition'] : '';
470
- $row_value = isset( $row['value'] ) ? $row['value'] : '';
471
- ?>
472
- <li data-id="<?php echo $rid; ?>">
473
- <select name="<?php echo $common_name; ?>[<?php echo $rid; ?>][key]" class="aal-category">
474
- <?php foreach ( $keys as $k => $v ) : ?>
475
- <option value="<?php echo $k; ?>" <?php selected( $row_key, $k ); ?>><?php echo $v; ?></option>
476
- <?php endforeach; ?>
477
- </select>
478
- <select name="<?php echo $common_name; ?>[<?php echo $rid; ?>][condition]" class="aal-condition">
479
- <?php foreach ( $conditions as $k => $v ) : ?>
480
- <option value="<?php echo $k; ?>" <?php selected( $row_condition, $k ); ?>><?php echo $v; ?></option>
481
- <?php endforeach; ?>
482
- </select>
483
- <?php $value_options = AAL_Main::instance()->notifications->get_settings_dropdown_values( $row_key ); ?>
484
- <select name="<?php echo $common_name; ?>[<?php echo $rid; ?>][value]" class="aal-value">
485
- <?php foreach ( $value_options as $option_key => $option_value ) : ?>
486
- <option value="<?php echo esc_attr( $option_key ); ?>" <?php selected( $option_key, $row_value ); ?>><?php echo esc_html( $option_value ); ?></option>
487
- <?php endforeach; ?>
488
- </select>
489
- <a href="#" class="aal-new-rule button"><small>+</small> and</a>
490
- <a href="#" class="aal-delete-rule button">&times;</a>
491
- </li>
492
- <?php endforeach; ?>
493
- </ul>
494
- </div>
495
- <?php
496
- }
497
-
498
- private static function _set_name_and_value( &$args ) {
499
- if ( ! isset( $args['name'] ) ) {
500
- $args['name'] = sprintf( '%s[%s]', esc_attr( $args['page'] ), esc_attr( $args['id'] ) );
501
- }
502
-
503
- if ( ! isset( $args['value'] ) ) {
504
- $args['value'] = AAL_Main::instance()->settings->get_option( $args['id'] );
505
- }
506
- }
507
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/hooks/abstract-class-aal-hook-base.php DELETED
@@ -1,13 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- /**
5
- * Empty class for now..
6
- *
7
- * Class AAL_Hook_Base
8
- */
9
- abstract class AAL_Hook_Base {
10
-
11
- public function __construct() {}
12
-
13
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/hooks/class-aal-hook-attachment.php DELETED
@@ -1,38 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Hook_Attachment extends AAL_Hook_Base {
5
-
6
- protected function _add_log_attachment( $action, $attachment_id ) {
7
- $post = get_post( $attachment_id );
8
-
9
- aal_insert_log( array(
10
- 'action' => $action,
11
- 'object_type' => 'Attachment',
12
- 'object_subtype' => $post->post_type,
13
- 'object_id' => $attachment_id,
14
- 'object_name' => get_the_title( $post->ID ),
15
- ) );
16
- }
17
-
18
- public function hooks_delete_attachment( $attachment_id ) {
19
- $this->_add_log_attachment( 'deleted', $attachment_id );
20
- }
21
-
22
- public function hooks_edit_attachment( $attachment_id ) {
23
- $this->_add_log_attachment( 'updated', $attachment_id );
24
- }
25
-
26
- public function hooks_add_attachment( $attachment_id ) {
27
- $this->_add_log_attachment( 'added', $attachment_id );
28
- }
29
-
30
- public function __construct() {
31
- add_action( 'add_attachment', array( &$this, 'hooks_add_attachment' ) );
32
- add_action( 'edit_attachment', array( &$this, 'hooks_edit_attachment' ) );
33
- add_action( 'delete_attachment', array( &$this, 'hooks_delete_attachment' ) );
34
-
35
- parent::__construct();
36
- }
37
-
38
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/hooks/class-aal-hook-comments.php DELETED
@@ -1,74 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Hook_Comments extends AAL_Hook_Base {
5
-
6
- protected function _add_comment_log( $id, $action, $comment = null ) {
7
- if ( is_null( $comment ) )
8
- $comment = get_comment( $id );
9
-
10
- aal_insert_log( array(
11
- 'action' => $action,
12
- 'object_type' => 'Comments',
13
- 'object_subtype' => get_post_type( $comment->comment_post_ID ),
14
- 'object_name' => get_the_title( $comment->comment_post_ID ),
15
- 'object_id' => $id,
16
- ) );
17
- }
18
-
19
- public function handle_comment_log( $comment_ID, $comment = null ) {
20
- if ( is_null( $comment ) )
21
- $comment = get_comment( $comment_ID );
22
-
23
- $action = 'created';
24
- switch ( current_filter() ) {
25
- case 'wp_insert_comment' :
26
- $action = 1 === (int) $comment->comment_approved ? 'approved' : 'pending';
27
- break;
28
-
29
- case 'edit_comment' :
30
- $action = 'updated';
31
- break;
32
-
33
- case 'delete_comment' :
34
- $action = 'deleted';
35
- break;
36
-
37
- case 'trash_comment' :
38
- $action = 'trashed';
39
- break;
40
-
41
- case 'untrash_comment' :
42
- $action = 'untrashed';
43
- break;
44
-
45
- case 'spam_comment' :
46
- $action = 'spammed';
47
- break;
48
-
49
- case 'unspam_comment' :
50
- $action = 'unspammed';
51
- break;
52
- }
53
-
54
- $this->_add_comment_log( $comment_ID, $action, $comment );
55
- }
56
-
57
- public function hooks_transition_comment_status( $new_status, $old_status, $comment ) {
58
- $this->_add_comment_log( $comment->comment_ID, $new_status, $comment );
59
- }
60
-
61
- public function __construct() {
62
- add_action( 'wp_insert_comment', array( &$this, 'handle_comment_log' ), 10, 2 );
63
- add_action( 'edit_comment', array( &$this, 'handle_comment_log' ) );
64
- add_action( 'trash_comment', array( &$this, 'handle_comment_log' ) );
65
- add_action( 'untrash_comment', array( &$this, 'handle_comment_log' ) );
66
- add_action( 'spam_comment', array( &$this, 'handle_comment_log' ) );
67
- add_action( 'unspam_comment', array( &$this, 'handle_comment_log' ) );
68
- add_action( 'delete_comment', array( &$this, 'handle_comment_log' ) );
69
- add_action( 'transition_comment_status', array( &$this, 'hooks_transition_comment_status' ), 10, 3 );
70
-
71
- parent::__construct();
72
- }
73
-
74
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/hooks/class-aal-hook-core.php DELETED
@@ -1,31 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Hook_Core extends AAL_Hook_Base {
5
-
6
- public function core_updated_successfully( $wp_version ) {
7
- global $pagenow;
8
-
9
- // Auto updated
10
- if ( 'update-core.php' !== $pagenow )
11
- $object_name = 'WordPress Auto Updated';
12
- else
13
- $object_name = 'WordPress Updated';
14
-
15
- aal_insert_log(
16
- array(
17
- 'action' => 'updated',
18
- 'object_type' => 'Core',
19
- 'object_id' => 0,
20
- 'object_name' => $object_name,
21
- )
22
- );
23
- }
24
-
25
- public function __construct() {
26
- add_action( '_core_updated_successfully', array( &$this, 'core_updated_successfully' ) );
27
-
28
- parent::__construct();
29
- }
30
-
31
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/hooks/class-aal-hook-export.php DELETED
@@ -1,23 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Hook_Export extends AAL_Hook_Base {
5
-
6
- public function hooks_export_wp( $args ) {
7
- aal_insert_log(
8
- array(
9
- 'action' => 'downloaded',
10
- 'object_type' => 'Export',
11
- 'object_id' => 0,
12
- 'object_name' => isset( $args['content'] ) ? $args['content'] : 'all',
13
- )
14
- );
15
- }
16
-
17
- public function __construct() {
18
- add_action( 'export_wp', array( &$this, 'hooks_export_wp' ) );
19
-
20
- parent::__construct();
21
- }
22
-
23
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/hooks/class-aal-hook-menu.php DELETED
@@ -1,40 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Hook_Menu extends AAL_Hook_Base {
5
-
6
- public function hooks_menu_created_or_updated( $nav_menu_selected_id ) {
7
- if ( $menu_object = wp_get_nav_menu_object( $nav_menu_selected_id ) ) {
8
- if ( 'wp_create_nav_menu' === current_filter() )
9
- $action = 'created';
10
- else
11
- $action = 'updated';
12
-
13
- aal_insert_log(
14
- array(
15
- 'action' => $action,
16
- 'object_type' => 'Menu',
17
- 'object_name' => $menu_object->name,
18
- )
19
- );
20
- }
21
- }
22
-
23
- public function hooks_menu_deleted( $term, $tt_id, $deleted_term ) {
24
- aal_insert_log(
25
- array(
26
- 'action' => 'deleted',
27
- 'object_type' => 'Menu',
28
- 'object_name' => $deleted_term->name,
29
- )
30
- );
31
- }
32
-
33
- public function __construct() {
34
- add_action( 'wp_update_nav_menu', array( &$this, 'hooks_menu_created_or_updated' ) );
35
- add_action( 'wp_create_nav_menu', array( &$this, 'hooks_menu_created_or_updated' ) );
36
- add_action( 'delete_nav_menu', array( &$this, 'hooks_menu_deleted' ), 10, 3 );
37
- parent::__construct();
38
- }
39
-
40
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/hooks/class-aal-hook-options.php DELETED
@@ -1,102 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Hook_Options extends AAL_Hook_Base {
5
-
6
- public function hooks_updated_option( $option, $oldvalue, $_newvalue ) {
7
- $whitelist_options = apply_filters( 'aal_whitelist_options', array(
8
- // General
9
- 'blogname',
10
- 'blogdescription',
11
- 'siteurl',
12
- 'home',
13
- 'admin_email',
14
- 'users_can_register',
15
- 'default_role',
16
- 'timezone_string',
17
- 'date_format',
18
- 'time_format',
19
- 'start_of_week',
20
-
21
- // Writing
22
- 'use_smilies',
23
- 'use_balanceTags',
24
- 'default_category',
25
- 'default_post_format',
26
- 'mailserver_url',
27
- 'mailserver_login',
28
- 'mailserver_pass',
29
- 'default_email_category',
30
- 'ping_sites',
31
-
32
- // Reading
33
- 'show_on_front',
34
- 'page_on_front',
35
- 'page_for_posts',
36
- 'posts_per_page',
37
- 'posts_per_rss',
38
- 'rss_use_excerpt',
39
- 'blog_public',
40
-
41
- // Discussion
42
- 'default_pingback_flag',
43
- 'default_ping_status',
44
- 'default_comment_status',
45
- 'require_name_email',
46
- 'comment_registration',
47
- 'close_comments_for_old_posts',
48
- 'close_comments_days_old',
49
- 'thread_comments',
50
- 'thread_comments_depth',
51
- 'page_comments',
52
- 'comments_per_page',
53
- 'default_comments_page',
54
- 'comment_order',
55
- 'comments_notify',
56
- 'moderation_notify',
57
- 'comment_moderation',
58
- 'comment_whitelist',
59
- 'comment_max_links',
60
- 'moderation_keys',
61
- 'blacklist_keys',
62
- 'show_avatars',
63
- 'avatar_rating',
64
- 'avatar_default',
65
-
66
- // Media
67
- 'thumbnail_size_w',
68
- 'thumbnail_size_h',
69
- 'thumbnail_crop',
70
- 'medium_size_w',
71
- 'medium_size_h',
72
- 'large_size_w',
73
- 'large_size_h',
74
- 'uploads_use_yearmonth_folders',
75
-
76
- // Permalinks
77
- 'permalink_structure',
78
- 'category_base',
79
- 'tag_base',
80
-
81
- // Widgets
82
- 'sidebars_widgets',
83
- ) );
84
-
85
- if ( ! in_array( $option, $whitelist_options ) )
86
- return;
87
-
88
- // TODO: need to think about save old & new values.
89
- aal_insert_log( array(
90
- 'action' => 'updated',
91
- 'object_type' => 'Options',
92
- 'object_name' => $option,
93
- ) );
94
- }
95
-
96
- public function __construct() {
97
- add_action( 'updated_option', array( &$this, 'hooks_updated_option' ), 10, 3 );
98
-
99
- parent::__construct();
100
- }
101
-
102
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/hooks/class-aal-hook-plugins.php DELETED
@@ -1,121 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Hook_Plugins extends AAL_Hook_Base {
5
-
6
- protected function _add_log_plugin( $action, $plugin_name ) {
7
- // Get plugin name if is a path
8
- if ( false !== strpos( $plugin_name, '/' ) ) {
9
- $plugin_dir = explode( '/', $plugin_name );
10
- $plugin_data = array_values( get_plugins( '/' . $plugin_dir[0] ) );
11
- $plugin_data = array_shift( $plugin_data );
12
- $plugin_name = $plugin_data['Name'];
13
- }
14
-
15
- aal_insert_log(
16
- array(
17
- 'action' => $action,
18
- 'object_type' => 'Plugin',
19
- 'object_id' => 0,
20
- 'object_name' => $plugin_name,
21
- )
22
- );
23
- }
24
-
25
- public function hooks_deactivated_plugin( $plugin_name ) {
26
- $this->_add_log_plugin( 'deactivated', $plugin_name );
27
- }
28
-
29
- public function hooks_activated_plugin( $plugin_name ) {
30
- $this->_add_log_plugin( 'activated', $plugin_name );
31
- }
32
-
33
- public function hooks_plugin_modify( $location, $status ) {
34
- if ( false !== strpos( $location, 'plugin-editor.php' ) ) {
35
- if ( ( ! empty( $_POST ) && 'update' === $_REQUEST['action'] ) ) {
36
- $aal_args = array(
37
- 'action' => 'file_updated',
38
- 'object_type' => 'Plugin',
39
- 'object_subtype' => 'plugin_unknown',
40
- 'object_id' => 0,
41
- 'object_name' => 'file_unknown',
42
- );
43
-
44
- if ( ! empty( $_REQUEST['file'] ) ) {
45
- $aal_args['object_name'] = $_REQUEST['file'];
46
- // Get plugin name
47
- $plugin_dir = explode( '/', $_REQUEST['file'] );
48
- $plugin_data = array_values( get_plugins( '/' . $plugin_dir[0] ) );
49
- $plugin_data = array_shift( $plugin_data );
50
-
51
- $aal_args['object_subtype'] = $plugin_data['Name'];
52
- }
53
- aal_insert_log( $aal_args );
54
- }
55
- }
56
-
57
- // We are need return the instance, for complete the filter.
58
- return $location;
59
- }
60
-
61
- /**
62
- * @param Plugin_Upgrader $upgrader
63
- * @param array $extra
64
- */
65
- public function hooks_plugin_install_or_update( $upgrader, $extra ) {
66
- if ( ! isset( $extra['type'] ) || 'plugin' !== $extra['type'] )
67
- return;
68
-
69
- if ( 'install' === $extra['action'] ) {
70
- $path = $upgrader->plugin_info();
71
- if ( ! $path )
72
- return;
73
-
74
- $data = get_plugin_data( $upgrader->skin->result['local_destination'] . '/' . $path, true, false );
75
-
76
- aal_insert_log(
77
- array(
78
- 'action' => 'installed',
79
- 'object_type' => 'Plugin',
80
- 'object_name' => $data['Name'],
81
- 'object_subtype' => $data['Version'],
82
- )
83
- );
84
- }
85
-
86
- if ( 'update' === $extra['action'] ) {
87
- if ( isset( $extra['bulk'] ) && true == $extra['bulk'] ) {
88
- $slugs = $extra['plugins'];
89
- } else {
90
- if ( ! isset( $upgrader->skin->plugin ) )
91
- return;
92
-
93
- $slugs = array( $upgrader->skin->plugin );
94
- }
95
-
96
- foreach ( $slugs as $slug ) {
97
- $data = get_plugin_data( WP_PLUGIN_DIR . '/' . $slug, true, false );
98
-
99
- aal_insert_log(
100
- array(
101
- 'action' => 'updated',
102
- 'object_type' => 'Plugin',
103
- 'object_name' => $data['Name'],
104
- 'object_subtype' => $data['Version'],
105
- )
106
- );
107
- }
108
- }
109
- }
110
-
111
- public function __construct() {
112
- add_action( 'activated_plugin', array( &$this, 'hooks_activated_plugin' ) );
113
- add_action( 'deactivated_plugin', array( &$this, 'hooks_deactivated_plugin' ) );
114
- add_filter( 'wp_redirect', array( &$this, 'hooks_plugin_modify' ), 10, 2 );
115
-
116
- add_action( 'upgrader_process_complete', array( &$this, 'hooks_plugin_install_or_update' ), 10, 2 );
117
-
118
- parent::__construct();
119
- }
120
-
121
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/hooks/class-aal-hook-posts.php DELETED
@@ -1,84 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Hook_Posts extends AAL_Hook_Base {
5
-
6
- protected function _draft_or_post_title( $post = 0 ) {
7
- $title = get_the_title( $post );
8
-
9
- if ( empty( $title ) )
10
- $title = __( '(no title)', 'aryo-activity-log' );
11
-
12
- return $title;
13
- }
14
-
15
- public function hooks_transition_post_status( $new_status, $old_status, $post ) {
16
- if ( 'auto-draft' === $old_status && ( 'auto-draft' !== $new_status && 'inherit' !== $new_status ) ) {
17
- // page created
18
- $action = 'created';
19
- }
20
- elseif ( 'auto-draft' === $new_status || ( 'new' === $old_status && 'inherit' === $new_status ) ) {
21
- // nvm.. ignore it.
22
- return;
23
- }
24
- elseif ( 'trash' === $new_status ) {
25
- // page was deleted.
26
- $action = 'trashed';
27
- }
28
- elseif ( 'trash' === $old_status ) {
29
- $action = 'restored';
30
- }
31
- else {
32
- // page updated. I guess.
33
- $action = 'updated';
34
- }
35
-
36
- if ( wp_is_post_revision( $post->ID ) )
37
- return;
38
-
39
- // Skip for menu items.
40
- if ( 'nav_menu_item' === get_post_type( $post->ID ) )
41
- return;
42
-
43
- aal_insert_log(
44
- array(
45
- 'action' => $action,
46
- 'object_type' => 'Post',
47
- 'object_subtype' => $post->post_type,
48
- 'object_id' => $post->ID,
49
- 'object_name' => $this->_draft_or_post_title( $post->ID ),
50
- )
51
- );
52
- }
53
-
54
- public function hooks_delete_post( $post_id ) {
55
- if ( wp_is_post_revision( $post_id ) )
56
- return;
57
-
58
- $post = get_post( $post_id );
59
-
60
- if ( in_array( $post->post_status, array( 'auto-draft', 'inherit' ) ) )
61
- return;
62
-
63
- // Skip for menu items.
64
- if ( 'nav_menu_item' === get_post_type( $post->ID ) )
65
- return;
66
-
67
- aal_insert_log(
68
- array(
69
- 'action' => 'deleted',
70
- 'object_type' => 'Post',
71
- 'object_subtype' => $post->post_type,
72
- 'object_id' => $post->ID,
73
- 'object_name' => $this->_draft_or_post_title( $post->ID ),
74
- )
75
- );
76
- }
77
-
78
- public function __construct() {
79
- add_action( 'transition_post_status', array( &$this, 'hooks_transition_post_status' ), 10, 3 );
80
- add_action( 'delete_post', array( &$this, 'hooks_delete_post' ) );
81
-
82
- parent::__construct();
83
- }
84
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/hooks/class-aal-hook-taxonomy.php DELETED
@@ -1,44 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Hook_Taxonomy extends AAL_Hook_Base {
5
-
6
- public function hooks_created_edited_deleted_term( $term_id, $tt_id, $taxonomy, $deleted_term = null ) {
7
- // Make sure do not action nav menu taxonomy.
8
- if ( 'nav_menu' === $taxonomy )
9
- return;
10
-
11
- if ( 'delete_term' === current_filter() )
12
- $term = $deleted_term;
13
- else
14
- $term = get_term( $term_id, $taxonomy );
15
-
16
- if ( $term && ! is_wp_error( $term ) ) {
17
- if ( 'edited_term' === current_filter() ) {
18
- $action = 'updated';
19
- } elseif ( 'delete_term' === current_filter() ) {
20
- $action = 'deleted';
21
- $term_id = '';
22
- } else {
23
- $action = 'created';
24
- }
25
-
26
- aal_insert_log( array(
27
- 'action' => $action,
28
- 'object_type' => 'Taxonomy',
29
- 'object_subtype' => $taxonomy,
30
- 'object_id' => $term_id,
31
- 'object_name' => $term->name,
32
- ) );
33
- }
34
- }
35
-
36
- public function __construct() {
37
- add_action( 'created_term', array( &$this, 'hooks_created_edited_deleted_term' ), 10, 3 );
38
- add_action( 'edited_term', array( &$this, 'hooks_created_edited_deleted_term' ), 10, 3 );
39
- add_action( 'delete_term', array( &$this, 'hooks_created_edited_deleted_term' ), 10, 4 );
40
-
41
- parent::__construct();
42
- }
43
-
44
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/hooks/class-aal-hook-theme.php DELETED
@@ -1,150 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Hook_Theme extends AAL_Hook_Base {
5
-
6
- public function hooks_theme_modify( $location, $status ) {
7
- if ( false !== strpos( $location, 'theme-editor.php?file=' ) ) {
8
- if ( ! empty( $_POST ) && 'update' === $_POST['action'] ) {
9
- $aal_args = array(
10
- 'action' => 'file_updated',
11
- 'object_type' => 'Theme',
12
- 'object_subtype' => 'theme_unknown',
13
- 'object_id' => 0,
14
- 'object_name' => 'file_unknown',
15
- );
16
-
17
- if ( ! empty( $_POST['file'] ) )
18
- $aal_args['object_name'] = $_POST['file'];
19
-
20
- if ( ! empty( $_POST['theme'] ) )
21
- $aal_args['object_subtype'] = $_POST['theme'];
22
-
23
- aal_insert_log( $aal_args );
24
- }
25
- }
26
-
27
- // We are need return the instance, for complete the filter.
28
- return $location;
29
- }
30
-
31
- public function hooks_switch_theme( $new_name, WP_Theme $new_theme ) {
32
- aal_insert_log(
33
- array(
34
- 'action' => 'activated',
35
- 'object_type' => 'Theme',
36
- 'object_subtype' => $new_theme->get_stylesheet(),
37
- 'object_id' => 0,
38
- 'object_name' => $new_name,
39
- )
40
- );
41
- }
42
-
43
- public function hooks_theme_customizer_modified( WP_Customize_Manager $obj ) {
44
- $aal_args = array(
45
- 'action' => 'updated',
46
- 'object_type' => 'Theme',
47
- 'object_subtype' => $obj->theme()->display( 'Name' ),
48
- 'object_id' => 0,
49
- 'object_name' => 'Theme Customizer',
50
- );
51
-
52
- if ( 'customize_preview_init' === current_filter() )
53
- $aal_args['action'] = 'accessed';
54
-
55
- aal_insert_log( $aal_args );
56
- }
57
-
58
- public function hooks_theme_deleted() {
59
- $backtrace_history = debug_backtrace();
60
-
61
- $delete_theme_call = null;
62
- foreach ( $backtrace_history as $call ) {
63
- if ( isset( $call['function'] ) && 'delete_theme' === $call['function'] ) {
64
- $delete_theme_call = $call;
65
- break;
66
- }
67
- }
68
-
69
- if ( empty( $delete_theme_call ) )
70
- return;
71
-
72
- $name = $delete_theme_call['args'][0];
73
-
74
- aal_insert_log(
75
- array(
76
- 'action' => 'deleted',
77
- 'object_type' => 'Theme',
78
- 'object_name' => $name,
79
- )
80
- );
81
- }
82
-
83
- /**
84
- * @param Theme_Upgrader $upgrader
85
- * @param array $extra
86
- */
87
- public function hooks_theme_install_or_update( $upgrader, $extra ) {
88
- if ( ! isset( $extra['type'] ) || 'theme' !== $extra['type'] )
89
- return;
90
-
91
- if ( 'install' === $extra['action'] ) {
92
- $slug = $upgrader->theme_info();
93
- if ( ! $slug )
94
- return;
95
-
96
- wp_clean_themes_cache();
97
- $theme = wp_get_theme( $slug );
98
- $name = $theme->name;
99
- $version = $theme->version;
100
-
101
- aal_insert_log(
102
- array(
103
- 'action' => 'installed',
104
- 'object_type' => 'Theme',
105
- 'object_name' => $name,
106
- 'object_subtype' => $version,
107
- )
108
- );
109
- }
110
-
111
- if ( 'update' === $extra['action'] ) {
112
- if ( isset( $extra['bulk'] ) && true == $extra['bulk'] )
113
- $slugs = $extra['themes'];
114
- else
115
- $slugs = array( $upgrader->skin->theme );
116
-
117
- foreach ( $slugs as $slug ) {
118
- $theme = wp_get_theme( $slug );
119
- $stylesheet = $theme['Stylesheet Dir'] . '/style.css';
120
- $theme_data = get_file_data( $stylesheet, array( 'Version' => 'Version' ) );
121
-
122
- $name = $theme['Name'];
123
- $version = $theme_data['Version'];
124
-
125
- aal_insert_log(
126
- array(
127
- 'action' => 'updated',
128
- 'object_type' => 'Theme',
129
- 'object_name' => $name,
130
- 'object_subtype' => $version,
131
- )
132
- );
133
- }
134
- }
135
- }
136
-
137
- public function __construct() {
138
- add_filter( 'wp_redirect', array( &$this, 'hooks_theme_modify' ), 10, 2 );
139
- add_action( 'switch_theme', array( &$this, 'hooks_switch_theme' ), 10, 2 );
140
- add_action( 'delete_site_transient_update_themes', array( &$this, 'hooks_theme_deleted' ) );
141
- add_action( 'upgrader_process_complete', array( &$this, 'hooks_theme_install_or_update' ), 10, 2 );
142
-
143
- // Theme customizer
144
- add_action( 'customize_save', array( &$this, 'hooks_theme_customizer_modified' ) );
145
- //add_action( 'customize_preview_init', array( &$this, 'hooks_theme_customizer_modified' ) );
146
-
147
- parent::__construct();
148
- }
149
-
150
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/hooks/class-aal-hook-user.php DELETED
@@ -1,81 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Hook_User extends AAL_Hook_Base {
5
-
6
- public function hooks_wp_login( $user_login, $user ) {
7
- aal_insert_log( array(
8
- 'action' => 'logged_in',
9
- 'object_type' => 'User',
10
- 'user_id' => $user->ID,
11
- 'object_id' => $user->ID,
12
- 'object_name' => $user->user_nicename,
13
- ) );
14
- }
15
-
16
- public function hooks_user_register( $user_id ) {
17
- $user = get_user_by( 'id', $user_id );
18
-
19
- aal_insert_log( array(
20
- 'action' => 'created',
21
- 'object_type' => 'User',
22
- 'object_id' => $user->ID,
23
- 'object_name' => $user->user_nicename,
24
- ) );
25
- }
26
- public function hooks_delete_user( $user_id ) {
27
- $user = get_user_by( 'id', $user_id );
28
-
29
- aal_insert_log( array(
30
- 'action' => 'deleted',
31
- 'object_type' => 'User',
32
- 'object_id' => $user->ID,
33
- 'object_name' => $user->user_nicename,
34
- ) );
35
- }
36
-
37
- public function hooks_wp_logout() {
38
- $user = wp_get_current_user();
39
-
40
- aal_insert_log( array(
41
- 'action' => 'logged_out',
42
- 'object_type' => 'User',
43
- 'user_id' => $user->ID,
44
- 'object_id' => $user->ID,
45
- 'object_name' => $user->user_nicename,
46
- ) );
47
- }
48
-
49
- public function hooks_profile_update( $user_id ) {
50
- $user = get_user_by( 'id', $user_id );
51
-
52
- aal_insert_log( array(
53
- 'action' => 'updated',
54
- 'object_type' => 'User',
55
- 'object_id' => $user->ID,
56
- 'object_name' => $user->user_nicename,
57
- ) );
58
- }
59
-
60
- public function hooks_wrong_password( $username ) {
61
- aal_insert_log( array(
62
- 'action' => 'wrong_password',
63
- 'object_type' => 'User',
64
- 'user_id' => 0,
65
- 'object_id' => 0,
66
- 'object_name' => $username,
67
- ) );
68
- }
69
-
70
- public function __construct() {
71
- add_action( 'wp_login', array( &$this, 'hooks_wp_login' ), 10, 2 );
72
- add_action( 'wp_logout', array( &$this, 'hooks_wp_logout' ) );
73
- add_action( 'delete_user', array( &$this, 'hooks_delete_user' ) );
74
- add_action( 'user_register', array( &$this, 'hooks_user_register' ) );
75
- add_action( 'profile_update', array( &$this, 'hooks_profile_update' ) );
76
- add_filter( 'wp_login_failed', array( &$this, 'hooks_wrong_password' ) );
77
-
78
- parent::__construct();
79
- }
80
-
81
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/hooks/class-aal-hook-widgets.php DELETED
@@ -1,51 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Hook_Widgets extends AAL_Hook_Base {
5
-
6
- public function hooks_widget_update_callback( $instance, $new_instance, $old_instance, WP_Widget $widget ) {
7
- $aal_args = array(
8
- 'action' => 'updated',
9
- 'object_type' => 'Widget',
10
- 'object_subtype' => 'sidebar_unknown',
11
- 'object_id' => 0,
12
- 'object_name' => $widget->id_base,
13
- );
14
-
15
- if ( ! empty( $_REQUEST['sidebar'] ) )
16
- $aal_args['object_subtype'] = strtolower( $_REQUEST['sidebar'] );
17
-
18
- /** @todo: find any way to widget deleted detected */
19
- /*if ( isset( $_REQUEST['delete_widget'] ) && '1' === $_REQUEST['delete_widget'] ) {
20
- $aal_args['action'] = 'deleted';
21
- }*/
22
-
23
- aal_insert_log( $aal_args );
24
-
25
- // We are need return the instance, for complete the filter.
26
- return $instance;
27
- }
28
-
29
- public function hooks_widget_delete() {
30
- // A reference: http://grinninggecko.com/hooking-into-widget-delete-action-in-wordpress/
31
- if ( 'post' == strtolower( $_SERVER['REQUEST_METHOD'] ) && ! empty( $_REQUEST['widget-id'] ) ) {
32
- if ( isset( $_REQUEST['delete_widget'] ) && 1 === (int) $_REQUEST['delete_widget'] ) {
33
- aal_insert_log( array(
34
- 'action' => 'deleted',
35
- 'object_type' => 'Widget',
36
- 'object_subtype' => strtolower( $_REQUEST['sidebar'] ),
37
- 'object_id' => 0,
38
- 'object_name' => $_REQUEST['id_base'],
39
- ) );
40
- }
41
- }
42
- }
43
-
44
- public function __construct() {
45
- add_filter( 'widget_update_callback', array( &$this, 'hooks_widget_update_callback' ), 9999, 4 );
46
- add_filter( 'sidebar_admin_setup', array( &$this, 'hooks_widget_delete' ) ); // Widget delete.
47
-
48
- parent::__construct();
49
- }
50
-
51
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/notifications/abstract-class-aal-notification-base.php DELETED
@@ -1,134 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- /**
5
- * Base class, handles notifications
6
- *
7
- * Class AAL_Notification_Base
8
- */
9
- abstract class AAL_Notification_Base {
10
- /**
11
- * The following variables have to be defined for each payment method.
12
- */
13
- public $id = '';
14
- public $name = '';
15
- public $description = '';
16
-
17
- public $aal_options;
18
-
19
- public function __construct() {
20
- $this->aal_options = AAL_Main::instance()->settings->get_options();
21
-
22
- add_action( 'init', array( &$this, 'init' ), 30 );
23
- add_action( 'aal_validate_options', array( &$this, '_validate_options' ), 10, 2 );
24
- }
25
-
26
- private function settings_field_name_attr( $name ) {
27
- return esc_attr( "notification_handler_options_{$this->id}[{$name}]" );
28
- }
29
-
30
- public function init() {}
31
-
32
- /**
33
- * Registers the settings for this individual extension
34
- */
35
- public function settings_fields() {}
36
-
37
- /**
38
- * Exectutes when notification is due
39
- */
40
- public function trigger( $args ) {}
41
-
42
- public function _settings_section_callback() {
43
- echo '<p>' . $this->description . '</p>';
44
- }
45
-
46
- public function _settings_enabled_field_callback( $args = array() ) {
47
- AAL_Settings_Fields::yesno_field( $args );
48
- }
49
-
50
- public function add_settings_field_helper( $option_name, $title, $callback, $description = '', $default_value = '' ) {
51
- $settings_page_slug = AAL_Main::instance()->settings->slug();
52
- $handler_options = isset( $this->aal_options["handler_options_{$this->id}"] )
53
- ? $this->aal_options["handler_options_{$this->id}"] : array();
54
-
55
- add_settings_field(
56
- "notification_handler_{$this->id}_{$option_name}",
57
- $title,
58
- $callback,
59
- $settings_page_slug,
60
- "notification_{$this->id}",
61
- array(
62
- 'name' => $this->settings_field_name_attr( $option_name ),
63
- 'value' => isset( $handler_options[ $option_name ] ) ? $handler_options[ $option_name ] : $default_value,
64
- 'desc' => $description,
65
- 'id' => $option_name,
66
- 'page' => $settings_page_slug,
67
- )
68
- );
69
- }
70
-
71
- public function _validate_options( $form_data, $aal_options ) {
72
- $post_key = "notification_handler_options_{$this->id}";
73
- $option_key = "handler_options_{$this->id}";
74
-
75
- if ( ! isset( $_POST[ $post_key ] ) )
76
- return $form_data;
77
-
78
- $input = $_POST[ $post_key ];
79
- $output = ( method_exists( $this, 'validate_options' ) ) ? $this->validate_options( $input ) : array();
80
- $form_data[ $option_key ] = $output;
81
-
82
- return $form_data;
83
- }
84
-
85
- public function get_handler_options() {
86
- $handler_options = array();
87
- $option_key = "handler_options_{$this->id}";
88
-
89
- if ( isset( $this->aal_options[ $option_key ] ) ) {
90
- $handler_options = (array) $this->aal_options[ $option_key ];
91
- }
92
-
93
- return $handler_options;
94
- }
95
-
96
- public function prep_notification_body( $args ) {
97
- $details_to_provide = array(
98
- 'user_id' => __( 'User', 'aryo-activity-log' ),
99
- 'object_type' => __( 'Object Type', 'aryo-activity-log' ),
100
- 'object_name' => __( 'Object Name', 'aryo-activity-log' ),
101
- 'action' => __( 'Action Type', 'aryo-activity-log' ),
102
- 'hist_ip' => __( 'IP Address', 'aryo-activity-log' ),
103
- );
104
- $message = '';
105
-
106
- foreach ( $details_to_provide as $detail_key => $detail_title ) {
107
- $detail_val = '';
108
-
109
- switch ( $detail_key ) {
110
- case 'user_id':
111
- if ( is_numeric( $args[ $detail_key ] ) ) {
112
- // this is a user ID
113
- $user = new WP_User( $args[ $detail_key ] );
114
-
115
- if ( ! is_wp_error( $user ) ) {
116
- $detail_val = sprintf( '<a href="%s">%s</a>', esc_url( get_edit_user_link( $user->ID ) ), esc_html( $user->display_name ) );
117
- }
118
- }
119
- break;
120
- default:
121
- $detail_val = isset( $args[ $detail_key ] ) ? $args[ $detail_key ] : __( 'N/A', 'aryo-activity-log' );
122
- break;
123
- }
124
-
125
- $message .= sprintf( "<strong>%s</strong> - %s\n", $detail_title, $detail_val );
126
- }
127
-
128
- return $message;
129
- }
130
- }
131
-
132
- function aal_register_notification_handler( $classname = '' ) {
133
- return AAL_Main::instance()->notifications->register_handler( $classname );
134
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/notifications/class-aal-notification-email.php DELETED
@@ -1,91 +0,0 @@
1
- <?php
2
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
3
-
4
- class AAL_Notification_Email extends AAL_Notification_Base {
5
-
6
- /**
7
- * Store options in a class locally
8
- */
9
- protected $options = array();
10
-
11
- public function __construct() {
12
- parent::__construct();
13
-
14
- $this->id = 'email';
15
- $this->name = __( 'Email', 'aryo-activity-log' );
16
- $this->description = __( 'Get notified by Email.', 'aryo-activity-log' );
17
- }
18
-
19
- public function init() {
20
- $this->options = array_merge( array(
21
- 'from_email' => get_option( 'admin_email' ),
22
- // 'message_format' => __( "Hi there!\n\nA notification condition on [sitename] was matched. Here are the details:\n\n[action-details]\n\nSent by ARYO Activity Log", 'aryo-activity-log' )
23
- ), $this->get_handler_options() );
24
- }
25
-
26
- public function trigger( $args ) {
27
- $from_email = isset( $this->options['from_email'] ) && is_email( $this->options['from_email'] ) ? $this->options['from_email'] : '';
28
- $to_email = isset( $this->options['to_email'] ) && is_email( $this->options['to_email'] ) ? $this->options['to_email'] : '';
29
-
30
- // if no from email or to email provided, quit.
31
- if ( ! ( $from_email || $to_email ) )
32
- return;
33
-
34
- $format = isset( $this->options['message_format'] ) ? $this->options['message_format'] : '';
35
- $body = $this->prep_notification_body( $args );
36
- $site_name = get_bloginfo( 'name' );
37
- $site_name_link = sprintf( '<a href="%s">%s</a>', home_url(), $site_name );
38
-
39
- $email_contents = strtr( $format, array(
40
- '[sitename]' => $site_name_link,
41
- '[action-details]' => $body,
42
- ) );
43
-
44
- // set the content type
45
- add_filter( 'wp_mail_content_type', array( &$this, 'email_content_type' ) );
46
-
47
- wp_mail(
48
- $to_email,
49
- __( 'New notification from Activity Log', 'aryo-activity-log' ),
50
- nl2br( $email_contents ),
51
- array(
52
- "From: Activity Log @ $site_name <$from_email>"
53
- )
54
- );
55
-
56
- // reset back to how it was before
57
- remove_filter( 'wp_mail_content_type', array( &$this, 'email_content_type' ) );
58
- }
59
-
60
- public function email_content_type() {
61
- return apply_filters( 'aal_notification_email_content_type', 'text/html' );
62
- }
63
-
64
- public function settings_fields() {
65
- $default_email_message = __( "Hi there!\n\nA notification condition on [sitename] was matched. Here are the details:\n\n[action-details]\n\nSent by ARYO Activity Log", 'aryo-activity-log' );
66
-
67
- $this->add_settings_field_helper( 'from_email', __( 'From Email', 'aryo-activity-log' ), array( 'AAL_Settings_Fields', 'text_field' ), __( 'The source Email address', 'aryo-activity-log' ) );
68
- $this->add_settings_field_helper( 'to_email', __( 'To Email', 'aryo-activity-log' ), array( 'AAL_Settings_Fields', 'text_field' ), __( 'The Email address notifications will be sent to', 'aryo-activity-log' ) );
69
- $this->add_settings_field_helper( 'message_format', __( 'Message', 'aryo-activity-log' ), array( 'AAL_Settings_Fields', 'textarea_field' ), sprintf( __( 'Customize the message using the following placeholders: %s', 'aryo-activity-log' ), '[sitename], [action-details]' ), $default_email_message );
70
- }
71
-
72
- public function validate_options( $input ) {
73
- $output = array();
74
- $email_fields = array( 'to_email', 'from_email' );
75
-
76
- foreach ( $email_fields as $email_field ) {
77
- if ( isset( $input[ $email_field ] ) && is_email( $input[ $email_field ] ) )
78
- $output[ $email_field ] = $input[ $email_field ];
79
- }
80
-
81
- // email template message
82
- if ( ! empty( $input['message_format'] ) ) {
83
- $output['message_format'] = $input['message_format'];
84
- }
85
-
86
- return $output;
87
- }
88
- }
89
-
90
- // Register this handler, creates an instance of this class when necessary.
91
- aal_register_notification_handler( 'AAL_Notification_Email' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/readme.txt DELETED
@@ -1,311 +0,0 @@
1
- === Activity Log ===
2
- Contributors: pojo.me, KingYes, ariel.k, maor
3
- Tags: actions, activity, Activity Log, activity logs, admin, admin actions, administration, analytics, audit, audit log, audit logs, bbPress, change, changes, dashboard, email notifications, event, event log, log, logger, Logs, monitor, multi-users, multisite, notifications, security, security audit trail, security event log, stats, stream, tracking, troubleshooting, user activity report, user tracking, woocommerce, woocommerce log, woocommerce monitor, woocommerce monitoring, woocommrece security, wordpress activity log, WordPress Admin, wordpress admin monitoring, wordpress audit, wordpress email alerts, wordpress log, wordpress monitor, wordpress monitoring, wordpress multisite, wordpress security, wordpress security alerts, wordpress security audit log, wordpress security monitor, wordpress security plugin, wordpress user tracking
4
- Requires at least: 3.5
5
- Tested up to: 4.5
6
- Stable tag: 2.3.3
7
- License: GPLv2 or later
8
-
9
- The #1 Activity Log plugin helps you monitor & log all changes and activities on your site, so you can run a safer, more organized WordPress site.
10
-
11
- == Description ==
12
-
13
- <strong>A COMPLETE, EASY TO USE & WELL SUPPORTED WORDPRESS ACTIVITY LOG PLUGIN</strong><br />
14
-
15
- Want to monitor and track your site activity? Find out exactly who does what on your WordPress website. the Activity Log plugin is like an airplane's black box that logs every activity in WordPress, and lets you see exactly what people are doing on your site.
16
-
17
- * Like, if someone is trying to hack your site.
18
- * Or, when a post was published, and who published it.
19
- * Or, if a plugin was activated/deactivated.
20
-
21
- Useful, right? Trust us, you won't understand how you managed your website without it. The plugin is also lightning fast and works behind the scenes, so it doesn't affect site and admin performance (For optimal performance, we built the plugin so it runs on a separate table in the database).
22
-
23
- If you have tens of users or more, you really can’t know who did what. This plugin tries to solve this issue by tracking what users do, and displaying it in an easy to use and easy to filter view on the dashboard of your WordPress site.
24
-
25
- <h4>With the Activity Log you can log:</h4>
26
- * <strong>WordPress</strong> - Core Updates
27
- * <strong>Posts</strong> - Created, Updated, Deleted
28
- * <strong>Pages</strong> - Created, Updated, Deleted
29
- * <strong>Custom Post Type</strong> - Created, Updated, Deleted
30
- * <strong>Tags</strong> - Created, Edited, Deleted
31
- * <strong>Categories</strong> - Created, Edited, Deleted
32
- * <strong>Taxonomies</strong> - Created, Edited, Deleted
33
- * <strong>Comments</strong> - Created, Approved, Unproved, Trashed, Untrashed, Spammed, Unspammed, Deleted
34
- * <strong>Media</strong> - Uploaded, Edited, Deleted
35
- * <strong>Users</strong> - Login, Logout, Login has failed, Update profile, Registered and Deleted
36
- * <strong>Plugins</strong> - Installed, Updated, Activated, Deactivated, Changed
37
- * <strong>Themes</strong> - Installed, Updated, Deleted, Activated, Changed (Editor and Customizer)
38
- * <strong>Widgets</strong> - Added to a sidebar / Deleted from a sidebar, Order widgets
39
- * <strong>Menus</strong> - A menu is being Created, Updated, Deleted
40
- * <strong>Setting</strong> - General, Writing, Reading, Discussion, Media, Permalinks
41
- * <strong>Options</strong> - Can be extend by east filter
42
- * <strong>Export</strong> - User download export file from the site
43
- * <strong>WooCommerce</strong> - Monitor all shop options
44
- * <strong>bbPress</strong> - Forums, Topics, Replies, Taxonomies and other actions
45
- * There's more, but you get the point...
46
-
47
- <strong>New!</strong> You are now able to get email notifications once an event you have defined (via rules) has occurred. This is useful in cases you must know right away when someone does something on your site. We use it to thwart hacker attempts, for example.
48
-
49
- <h4>What people are saying</h4>
50
- * <em>“Best 10 Free WordPress Plugins of the Month – July 2014: Keeping tabs on what your users do with their access to the Dashboard”</em> - [ManageWp.com](https://managewp.com/best-free-wordpress-plugins-july-2014)
51
- * <em>“Thanks to this step, we’ve discovered that our site was undergoing a brute force attack”</em> - [artdriver.com](http://www.artdriver.com/wordpress-site-hacked-solution-time/)
52
- * <em>“Optimized code - The plugin itself is blazing fast and leaves almost no footprint on the server.”</em> - [freshtechtips.com](http://www.freshtechtips.com/2014/01/best-audit-trail-plugins-for-wordpress.html)
53
- * <em>“The plugin successful for activity log for WordPress.”</em> - [wp-tricks.co.il](http://www.wp-tricks.co.il/2013/08/%D7%99%D7%95%D7%9E%D7%9F-%D7%A4%D7%A2%D7%99%D7%9C%D7%95%D7%AA-%D7%9C%D7%95%D7%95%D7%A8%D7%93%D7%A4%D7%A8%D7%A1-aryo-activity-log/)
54
- * <em>“This is a pretty simple yet quite effective plugin for keeping track of what your admins and users do on your sites.”</em> - [shadowdragonunlimited.com](http://shadowdragonunlimited.com/plugin-of-the-week-9302013-aryo-activity-log/plugin-of-the-week/)
55
-
56
- <h4>Translators:</h4>
57
- * German (de_DE) - [Robert Harm](http://www.mapsmarker.com/)
58
- * Dutch (nl_NL) - [Tom Aalbers](http://www.dtaalbers.com/)
59
- * Serbo-Croatian (sr_RS) - [Borisa Djuraskovic](http://www.webhostinghub.com/)
60
- * Danish (da_DK) - [Morten Dalgaard Johansen](http://www.iosoftgame.com/)
61
- * Hebrew (he_IL) + RTL Support - [Pojo.me](http://pojo.me/)
62
- * Armenia (hy_AM) - Hayk Jomardyan
63
- * Brazilian Portuguese (pt_BR) - [Criação de Sites](http://www.techload.com.br/criacao-de-sites-ribeirao-preto)
64
- * Turkish (tr_TR) - [Ahmet Kolcu](http://ahmetkolcu.org)
65
- * Persian (fa_IR) - [Promising](http://vwp.ir/)
66
- * Russian (ru_RU) - Oleg Reznikov
67
- * Polish (pl_PL) - Maciej Gryniuk
68
- * Czech (cs_CZ) - Martin Kokeš
69
- * Finnish (fi) - Nazq
70
-
71
- The plugin does not require any kind of setup. It works out of the box (and that’s another reason people love it).
72
-
73
- We’re planning to add a lot more features in the upcoming releases. If you think we’re missing something big time, please post your suggestions in the plugin’s forum.
74
-
75
- <h4>Contributions:</h4>
76
- Would you like to like to contribute to Activity Log? You are more than welcome to submit your pull requests on the [GitHub repo](https://github.com/KingYes/wordpress-aryo-activity-log). Also, if you have any notes about the code, please open a ticket on the issue tracker.
77
-
78
- == Installation ==
79
-
80
- 1. Upload plugin files to your plugins folder, or install using WordPress' built-in Add New Plugin installer
81
- 1. Activate the plugin
82
- 1. Go to the plugin page (under Dashboard > Activity Log)
83
-
84
- == Screenshots ==
85
-
86
- 1. The log viewer page
87
- 2. The settings page
88
- 3. Screen Options
89
- 4. Interface for defining notification rules
90
-
91
- == Frequently Asked Questions ==
92
-
93
- = Requirements =
94
- * __Requires PHP5__ for list management functionality.
95
-
96
- = What is the plugin license? =
97
-
98
- * This plugin is released under a GPL license.
99
-
100
-
101
- == Changelog ==
102
-
103
- = 2.3.3 =
104
- * Fixed! - Minor XSS vulnerability, credit to [Han Sahin](https://sumofpwn.nl/)
105
-
106
- = 2.3.2 =
107
- * Fixed! - Minor XSS vulnerability, credit to [Han Sahin](https://sumofpwn.nl/)
108
-
109
- = 2.3.1 =
110
- * Tweak! - Added seconds in time column
111
- * Tweak! - Rearrange filters in list table
112
-
113
- = 2.3.0 =
114
- * Tweak! - All translates moved to [GlotPress](https://translate.wordpress.org/projects/wp-plugins/aryo-activity-log)
115
- * Tweak! - Added restore status for Posts ([#46](https://github.com/KingYes/wordpress-aryo-activity-log/issues/46))
116
- * Tweak! - A11y changes for WordPress 4.4 which requires `h1` tags ([#84](https://github.com/KingYes/wordpress-aryo-activity-log/issues/84))
117
- * Tweak! - Allow some ajax requests just for admin
118
-
119
- = 2.2.12 =
120
- * Tested up to WordPress v4.5
121
-
122
- = 2.2.11 =
123
- * Tweak! - Temporarily remove Freemius SDK from the plugin
124
-
125
- = 2.2.10 =
126
- * Tweak! Update Freemius SDK
127
- * Tested up to WordPress v4.4.2
128
-
129
- = 2.2.9 =
130
- * Tweak! Update Freemius SDK
131
-
132
- = 2.2.8 =
133
- * Tweak! Update Freemius SDK
134
-
135
- = 2.2.7 =
136
- * Added! - Freemius Insights platform to improve plugin UX
137
- * Tweak! Update translate: Russian (ru_RU) - Thanks to Oleg Reznikov
138
- * Tested up to WordPress v4.4
139
-
140
- = 2.2.6 =
141
- * Tweak! - Added sort by IP address ([#77](https://github.com/KingYes/wordpress-aryo-activity-log/issues/77))
142
- * Tweak! - Added more actions/types in notification
143
-
144
- = 2.2.5 =
145
- * New! - Added translate: Finnish (fi) - Thanks to Nazq ([topic](https://wordpress.org/support/topic/finnish-translation-1))
146
- * Tweak! - Better actions label in list table
147
- * Fixed! - Notice php warring in MU delete site
148
- * Tested up to WordPress v4.3
149
-
150
- = 2.2.4 =
151
- * New! - Added translate: Czech (cs_CZ) - Thanks to Martin Kokeš ([#76](https://github.com/KingYes/wordpress-aryo-activity-log/pull/76))
152
-
153
- = 2.2.3 =
154
- * Tweak! - Added more filters in table list columns
155
-
156
- = 2.2.2 =
157
- * Fixed! some PHP strict standards (PHP v5.4+)
158
-
159
- = 2.2.1 =
160
- * Fixes from prev release
161
-
162
- = 2.2.0 =
163
- * New! - Adds search box, to allow users to search the description field.
164
- * New! - Allows users to now filter by action
165
- * New! - Added translate: Polish (pl_PL) - Thanks to Maciej Gryniuk
166
- * Tweak! - SQL Optimizations for larger sites
167
-
168
- = 2.1.16 =
169
- * New! Added translate: Russian (ru_RU) - Thanks to Oleg Reznikov
170
- * Fixes Undefined property with some 3td party themes/plugins
171
- * Tested up to WordPress v4.2
172
-
173
- = 2.1.15 =
174
- * Tested up to WordPress v4.1
175
- * Change plugin name to "Activity Log"
176
-
177
- = 2.1.14 =
178
- * New! Added translate: Persian (fa_IR) - Thanks to [Promising](http://vwp.ir/)
179
-
180
- = 2.1.13 =
181
- * New! Added filter by User Roles ([#67](https://github.com/KingYes/wordpress-aryo-activity-log/issues/67))
182
-
183
- = 2.1.12 =
184
- * New! Added translate: Turkish (tr_TR) - Thanks to [Ahmet Kolcu](http://ahmetkolcu.org/)
185
-
186
- = 2.1.11 =
187
- * Fixed! Compatible for old WP version
188
-
189
- = 2.1.10 =
190
- * New! Now tracking when menus created and deleted
191
- * New! Added translate: Portuguese (pt_BR) - Thanks to [Criação de Sites](http://www.techload.com.br/criacao-de-sites-ribeirao-preto)
192
-
193
- = 2.1.9 =
194
- * New! Store all WooCommerce settings ([#62](https://github.com/KingYes/wordpress-aryo-activity-log/issues/62))
195
- * Tested up to WordPress v4.0
196
-
197
- = 2.1.8 =
198
- * New! Now tracking when plugins installed and updated ([#59](https://github.com/KingYes/wordpress-aryo-activity-log/pull/59) and [#43](https://github.com/KingYes/wordpress-aryo-activity-log/issues/43))
199
-
200
- = 2.1.7 =
201
- * New! Now tracking when user download export file from the site ([#58](https://github.com/KingYes/wordpress-aryo-activity-log/issues/58) and [#63](https://github.com/KingYes/wordpress-aryo-activity-log/pull/63))
202
-
203
- = 2.1.6 =
204
- * Tested up to WordPress v3.9.2
205
-
206
- = 2.1.5 =
207
- * New! Now tracking when theme installed, updated, deleted ([#44](https://github.com/KingYes/wordpress-aryo-activity-log/issues/44))
208
-
209
- = 2.1.4 =
210
- * Fixed! Store real IP address in Proxy too ([#53](https://github.com/KingYes/wordpress-aryo-activity-log/issues/53))
211
-
212
- = 2.1.3 =
213
- * New! Added translate: Dutch (nl_NL) - Thanks to [Tom Aalbers](http://www.dtaalbers.com/) ([#55](https://github.com/KingYes/wordpress-aryo-activity-log/issues/55))
214
-
215
- = 2.1.2 =
216
- * Tweak! Update translate: Hebrew (he_IL)
217
-
218
- = 2.1.1 =
219
- * New! Track about WordPress core update (manual or auto-updated) ([#41](https://github.com/KingYes/wordpress-aryo-activity-log/issues/41))
220
- * New! Track post comments (created, approved, unproved, trashed, untrashed, spammed, unspammed, deleted) ([#42](https://github.com/KingYes/wordpress-aryo-activity-log/issues/42))
221
-
222
- = 2.1.0 =
223
- * New! Personally-tailored notifications that can be triggered by various types of events, users and action type (currently only email notifications are supported)
224
- * Bug fixes, stability improvements
225
- * Fixed an error that occurred on PHP 5.5
226
-
227
- = 2.0.7 =
228
- * Tested up to WordPress v3.9.0
229
-
230
- = 2.0.6 =
231
- * Fixed! Random fatal error ([topic](https://github.com/KingYes/wordpress-aryo-activity-log/issues/32))
232
-
233
- = 2.0.5 =
234
- * New! Register `aal_init_caps` filter.
235
- * Tweak! Change all methods to non-static.
236
- * Tweak! Some improved coding standards and PHPDoc.
237
- * Tweak! Split `AAL_Hooks` class to multiple classes.
238
- * New! Added translate: Armenia (hy_AM) - Thanks to Hayk Jomardyan.
239
-
240
- = 2.0.4 =
241
- * Tweak! Don't allowed to access in direct files.
242
- * New! Added translate: Danish (da_DK) - Thanks to [Morten Dalgaard Johansen](http://www.iosoftgame.com/)
243
-
244
- = 2.0.3 =
245
- * New! Record when widgets change orders.
246
-
247
- = 2.0.2 =
248
- * New! Save more Options:
249
- * General
250
- * Writing
251
- * Reading
252
- * Discussion
253
- * Media
254
- * Permalinks
255
-
256
- = 2.0.1 =
257
- * New! filter for disable erase all the log
258
- * Bugs fixed
259
-
260
- = 2.0.0 =
261
- * Added Screen Options
262
- * New! Ability to select a number of activity items per page
263
- * New! Columns are now sortable
264
- * Added filter by date - All Time, Today, Yesterday, Week, Month
265
- * Added Avatar to author
266
- * Added role for author
267
- * Added log for activeted theme
268
- * Re-order Culoumns
269
- * Compatible up to 3.8.1
270
- * Settings page is now accessible directly from Activity Log's menu
271
- * Keep your log for any time your wants
272
- * Delete Log Activities from Database.
273
- * Bugs fixed
274
-
275
-
276
- = 1.0.8 =
277
- * Added translate: Serbo-Croatian (sr_RS) - Thanks to [Borisa Djuraskovic](http://www.webhostinghub.com/).
278
-
279
- = 1.0.7 =
280
- * Added 'view_all_aryo_activity_log' user capability ([topic](http://wordpress.org/support/topic/capability-to-access-the-activity-log)).
281
-
282
- = 1.0.6 =
283
- * Added WooCommerce integration (very basic).
284
- * Added Settings link in plugins page.
285
-
286
- = 1.0.5 =
287
- * Fix - Make sure no save double lines (menu taxonomy / post).
288
-
289
- = 1.0.4 =
290
- * Added Taxonomy type (created, updated, deleted).
291
-
292
- = 1.0.3 =
293
- * Added Multisite compatibility.
294
- * Added Options hooks (limit list, you can extend by simple filter).
295
- * Added Menu hooks.
296
- * Tweak - Ensure no duplicate logs..
297
-
298
- = 1.0.2 =
299
- * Forget remove old .pot file
300
-
301
- = 1.0.1 =
302
- * Added translate: German (de_DE) - Thanks to [Robert Harm](http://www.mapsmarker.com/)
303
- * Added translate: Hebrew (he_IL)
304
- * Plugin name instead of file name on activation/deactivation
305
- * <strong>New Hooks:</strong>
306
- * A widget is being deleted from a sidebar
307
- * A plugin is being changed
308
- * Theme Customizer (Thanks to Ohad Raz)
309
-
310
- = 1.0 =
311
- * Blastoff!
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
trunk/screenshot-1.png DELETED
Binary file
trunk/screenshot-2.png DELETED
Binary file
trunk/screenshot-3.png DELETED
Binary file
trunk/screenshot-4.png DELETED
Binary file