Simple History - Version 2.1.2

Version Description

(July 2015) =

  • Changed: By default the log now shows events from the last week, last two weeks or last 30 days, all depending on how many events you have in your log. The previous behavior was to not apply any filtering what so ever during the first load. Anyway: this change makes it possible to load the log very quickly even for very large logs. A large amount of users + keeping the log forver
Download this release

Release Info

Developer eskapism
Plugin Icon 128x128 Simple History
Version 2.1.2
Comparing to
See all releases

Code changes from version 2.1.1 to 2.1.2

bin/install-wp-tests.sh ADDED
@@ -0,0 +1,98 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env bash
2
+
3
+ if [ $# -lt 3 ]; then
4
+ echo "usage: $0 <db-name> <db-user> <db-pass> [db-host] [wp-version]"
5
+ exit 1
6
+ fi
7
+
8
+ DB_NAME=$1
9
+ DB_USER=$2
10
+ DB_PASS=$3
11
+ DB_HOST=${4-localhost}
12
+ WP_VERSION=${5-latest}
13
+
14
+ WP_TESTS_DIR=${WP_TESTS_DIR-/tmp/wordpress-tests-lib/includes}
15
+ WP_CORE_DIR=${WP_CORE_DIR-/tmp/wordpress/}
16
+
17
+ set -ex
18
+
19
+ download() {
20
+ if [ `which curl` ]; then
21
+ curl -s "$1" > "$2";
22
+ elif [ `which wget` ]; then
23
+ wget -nv -O "$2" "$1"
24
+ fi
25
+ }
26
+
27
+ install_wp() {
28
+
29
+ if [ -d $WP_CORE_DIR ]; then
30
+ return;
31
+ fi
32
+
33
+ mkdir -p $WP_CORE_DIR
34
+
35
+ if [ $WP_VERSION == 'latest' ]; then
36
+ local ARCHIVE_NAME='latest'
37
+ else
38
+ local ARCHIVE_NAME="wordpress-$WP_VERSION"
39
+ fi
40
+
41
+ download https://wordpress.org/${ARCHIVE_NAME}.tar.gz /tmp/wordpress.tar.gz
42
+ tar --strip-components=1 -zxmf /tmp/wordpress.tar.gz -C $WP_CORE_DIR
43
+
44
+ download https://raw.github.com/markoheijnen/wp-mysqli/master/db.php $WP_CORE_DIR/wp-content/db.php
45
+ }
46
+
47
+ install_test_suite() {
48
+ # portable in-place argument for both GNU sed and Mac OSX sed
49
+ if [[ $(uname -s) == 'Darwin' ]]; then
50
+ local ioption='-i .bak'
51
+ else
52
+ local ioption='-i'
53
+ fi
54
+
55
+ # set up testing suite if it doesn't yet exist
56
+ if [ ! "$(ls -A $WP_TESTS_DIR)" ]; then
57
+ # set up testing suite
58
+ mkdir -p $WP_TESTS_DIR
59
+ svn co --quiet http://develop.svn.wordpress.org/trunk/tests/phpunit/includes/ $WP_TESTS_DIR
60
+ fi
61
+
62
+ cd $WP_TESTS_DIR
63
+
64
+ if [ ! -f wp-tests-config.php ]; then
65
+ download https://develop.svn.wordpress.org/trunk/wp-tests-config-sample.php $(dirname ${WP_TESTS_DIR})/wp-tests-config.php
66
+ sed $ioption "s:dirname( __FILE__ ) . '/src/':'$WP_CORE_DIR':" $(dirname ${WP_TESTS_DIR})/wp-tests-config.php
67
+ sed $ioption "s/youremptytestdbnamehere/$DB_NAME/" $(dirname ${WP_TESTS_DIR})/wp-tests-config.php
68
+ sed $ioption "s/yourusernamehere/$DB_USER/" $(dirname ${WP_TESTS_DIR})/wp-tests-config.php
69
+ sed $ioption "s/yourpasswordhere/$DB_PASS/" $(dirname ${WP_TESTS_DIR})/wp-tests-config.php
70
+ sed $ioption "s|localhost|${DB_HOST}|" $(dirname ${WP_TESTS_DIR})/wp-tests-config.php
71
+ fi
72
+
73
+ }
74
+
75
+ install_db() {
76
+ # parse DB_HOST for port or socket references
77
+ local PARTS=(${DB_HOST//\:/ })
78
+ local DB_HOSTNAME=${PARTS[0]};
79
+ local DB_SOCK_OR_PORT=${PARTS[1]};
80
+ local EXTRA=""
81
+
82
+ if ! [ -z $DB_HOSTNAME ] ; then
83
+ if [ $(echo $DB_SOCK_OR_PORT | grep -e '^[0-9]\{1,\}$') ]; then
84
+ EXTRA=" --host=$DB_HOSTNAME --port=$DB_SOCK_OR_PORT --protocol=tcp"
85
+ elif ! [ -z $DB_SOCK_OR_PORT ] ; then
86
+ EXTRA=" --socket=$DB_SOCK_OR_PORT"
87
+ elif ! [ -z $DB_HOSTNAME ] ; then
88
+ EXTRA=" --host=$DB_HOSTNAME --protocol=tcp"
89
+ fi
90
+ fi
91
+
92
+ # create database
93
+ mysqladmin create $DB_NAME --user="$DB_USER" --password="$DB_PASS"$EXTRA
94
+ }
95
+
96
+ install_wp
97
+ install_test_suite
98
+ install_db
dropins/SimpleHistoryExportDropin.php CHANGED
@@ -14,11 +14,6 @@ class SimpleHistoryExportDropin {
14
 
15
  public function __construct($sh) {
16
 
17
- // Since it's not quite done yet, it's for da devs only for now
18
- if ( ! defined("SIMPLE_HISTORY_DEV") || ! SIMPLE_HISTORY_DEV ) {
19
- return;
20
- }
21
-
22
  // Set simple history variable
23
  $this->sh = $sh;
24
 
14
 
15
  public function __construct($sh) {
16
 
 
 
 
 
 
17
  // Set simple history variable
18
  $this->sh = $sh;
19
 
dropins/SimpleHistoryFilterDropin.css CHANGED
@@ -25,7 +25,8 @@
25
  /* width: 310px; */
26
  }
27
 
28
- .SimpleHistory__filters__filter--date {
 
29
  width: 310px;
30
  }
31
 
@@ -75,7 +76,7 @@
75
  }
76
 
77
  .SimpleHistory__filters.is-showingMoreFilters .SimpleHistoryFilterDropin-searchInput {
78
- width: 310px;
79
  }
80
 
81
  .SimpleHistory__filters.is-showingMoreFilters .SimpleHistoryFilterDropin-showMoreFilters--first {
25
  /* width: 310px; */
26
  }
27
 
28
+ .SimpleHistory__filters__filter--date,
29
+ .SimpleHistoryFilterDropin-searchInput {
30
  width: 310px;
31
  }
32
 
76
  }
77
 
78
  .SimpleHistory__filters.is-showingMoreFilters .SimpleHistoryFilterDropin-searchInput {
79
+ /*width: 310px;*/
80
  }
81
 
82
  .SimpleHistory__filters.is-showingMoreFilters .SimpleHistoryFilterDropin-showMoreFilters--first {
dropins/SimpleHistoryFilterDropin.js CHANGED
@@ -10,12 +10,20 @@ var SimpleHistoryFilterDropin = (function($) {
10
 
11
  function init() {
12
 
 
13
  addFetchListener();
14
 
15
  }
16
-
17
  function onDomReadyInit() {
18
 
 
 
 
 
 
 
 
19
  $elms.filter_container = $(".SimpleHistory__filters");
20
  $elms.filter_user = $elms.filter_container.find(".SimpleHistory__filters__filter--user");
21
  $elms.filter_button = $elms.filter_container.find(".js-SimpleHistoryFilterDropin-doFilter");
@@ -23,9 +31,6 @@ var SimpleHistoryFilterDropin = (function($) {
23
  $elms.show_more_filters_button = $elms.filter_container.find(".js-SimpleHistoryFilterDropin-showMoreFilters");
24
  $elms.more_filters_container = $elms.filter_container.find(".js-SimpleHistory__filters__moreFilters");
25
 
26
- enhanceSelects();
27
- addListeners();
28
-
29
  }
30
 
31
  function addListeners() {
@@ -42,17 +47,15 @@ var SimpleHistoryFilterDropin = (function($) {
42
 
43
  }
44
 
45
- function onSubmitForm(e) {
46
-
47
- e.preventDefault();
48
 
49
  // form serialize
50
- // search=apa&loglevels=critical&loglevels=alert&loggers=SimpleMediaLogger&loggers=SimpleMenuLogger&user=1&months=2014-09 SimpleHistoryFilterDropin.js?ver=2.0:40
51
  var $search = $elms.filter_form.find("[name='search']");
52
  var $loglevels = $elms.filter_form.find("[name='loglevels']");
53
  var $messages = $elms.filter_form.find("[name='messages']");
54
- var $user = $elms.filter_form.find("[name='user']");
55
- var $months = $elms.filter_form.find("[name='months']");
56
 
57
  // If any of our search boxes are filled in we consider ourself to be in search mode
58
  isFilteringActive = false;
@@ -73,18 +76,22 @@ var SimpleHistoryFilterDropin = (function($) {
73
  activeFilters.messages = $messages.val();
74
  }
75
 
76
- if ( $.trim( $user.val() )) {
77
  isFilteringActive = true;
78
- activeFilters.user = $user.val();
79
  }
80
 
81
- if ( $months.val() && $months.val().length ) {
82
  isFilteringActive = true;
83
- activeFilters.months = $months.val();
84
  }
 
85
 
86
- //console.log( "filtering is active:", isFilteringActive );
87
- // console.log($search.val(), $loglevels.val(), $loggers.val(), $user.val(), $months.val());
 
 
 
88
 
89
  // Reload the log rows collection
90
  simple_history.logRowsCollection.reload();
@@ -116,8 +123,11 @@ var SimpleHistoryFilterDropin = (function($) {
116
 
117
  }
118
 
 
119
  function modifyFetchData(collection, url_data) {
120
 
 
 
121
  if (isFilteringActive) {
122
 
123
  url_data = _.extend(url_data, activeFilters);
@@ -149,8 +159,22 @@ var SimpleHistoryFilterDropin = (function($) {
149
  }
150
  },
151
  formatResult: formatUsers,
 
 
 
 
 
 
 
 
 
 
 
152
  formatSelection: formatUsers,
153
- escapeMarkup: function(m) { return m; }
 
 
 
154
  });
155
 
156
  $(".SimpleHistory__filters__filter--logger").select2({
@@ -171,6 +195,7 @@ var SimpleHistoryFilterDropin = (function($) {
171
  function formatUsers(userdata) {
172
 
173
  var html = "";
 
174
  html += "<div class='SimpleHistory__filters__userfilter__gravatar'>";
175
  html += userdata.gravatar;
176
  html += "</div>";
@@ -180,6 +205,7 @@ var SimpleHistoryFilterDropin = (function($) {
180
  html += "<div class='SimpleHistory__filters__userfilter__secondary'>";
181
  html += userdata.user_login;
182
  html += "</div>";
 
183
  return html;
184
 
185
  }
10
 
11
  function init() {
12
 
13
+ addElements();
14
  addFetchListener();
15
 
16
  }
17
+
18
  function onDomReadyInit() {
19
 
20
+ enhanceSelects();
21
+ addListeners();
22
+
23
+ }
24
+
25
+ function addElements() {
26
+
27
  $elms.filter_container = $(".SimpleHistory__filters");
28
  $elms.filter_user = $elms.filter_container.find(".SimpleHistory__filters__filter--user");
29
  $elms.filter_button = $elms.filter_container.find(".js-SimpleHistoryFilterDropin-doFilter");
31
  $elms.show_more_filters_button = $elms.filter_container.find(".js-SimpleHistoryFilterDropin-showMoreFilters");
32
  $elms.more_filters_container = $elms.filter_container.find(".js-SimpleHistory__filters__moreFilters");
33
 
 
 
 
34
  }
35
 
36
  function addListeners() {
47
 
48
  }
49
 
50
+ function updateFilters() {
 
 
51
 
52
  // form serialize
53
+ // search=apa&loglevels=critical&loglevels=alert&loggers=SimpleMediaLogger&loggers=SimpleMenuLogger&user=1&dates=2014-09 SimpleHistoryFilterDropin.js?ver=2.0:40
54
  var $search = $elms.filter_form.find("[name='search']");
55
  var $loglevels = $elms.filter_form.find("[name='loglevels']");
56
  var $messages = $elms.filter_form.find("[name='messages']");
57
+ var $users = $elms.filter_form.find("[name='users']");
58
+ var $dates = $elms.filter_form.find("[name='dates']");
59
 
60
  // If any of our search boxes are filled in we consider ourself to be in search mode
61
  isFilteringActive = false;
76
  activeFilters.messages = $messages.val();
77
  }
78
 
79
+ if ( $.trim( $users.val() )) {
80
  isFilteringActive = true;
81
+ activeFilters.users = $users.val();
82
  }
83
 
84
+ if ( $dates.val() && $dates.val().length ) {
85
  isFilteringActive = true;
86
+ activeFilters.dates = $dates.val();
87
  }
88
+ }
89
 
90
+ function onSubmitForm(e) {
91
+
92
+ e.preventDefault();
93
+
94
+ // updateFilters();
95
 
96
  // Reload the log rows collection
97
  simple_history.logRowsCollection.reload();
123
 
124
  }
125
 
126
+ // called each time the log is reloaded
127
  function modifyFetchData(collection, url_data) {
128
 
129
+ updateFilters();
130
+
131
  if (isFilteringActive) {
132
 
133
  url_data = _.extend(url_data, activeFilters);
159
  }
160
  },
161
  formatResult: formatUsers,
162
+ initSelection: function(elm, callback) {
163
+
164
+ // called on init if value attribute on input is set
165
+
166
+ var $elm = $(elm);
167
+ var value = $elm.val();
168
+ var default_user_data = $elms.filter_user.data("default-user-data");
169
+
170
+ callback(default_user_data);
171
+
172
+ },
173
  formatSelection: formatUsers,
174
+ escapeMarkup: function(m) {
175
+ return m;
176
+ },
177
+ multiple: true
178
  });
179
 
180
  $(".SimpleHistory__filters__filter--logger").select2({
195
  function formatUsers(userdata) {
196
 
197
  var html = "";
198
+
199
  html += "<div class='SimpleHistory__filters__userfilter__gravatar'>";
200
  html += userdata.gravatar;
201
  html += "</div>";
205
  html += "<div class='SimpleHistory__filters__userfilter__secondary'>";
206
  html += userdata.user_login;
207
  html += "</div>";
208
+
209
  return html;
210
 
211
  }
dropins/SimpleHistoryFilterDropin.php CHANGED
@@ -34,39 +34,236 @@ class SimpleHistoryFilterDropin {
34
 
35
  }
36
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
37
  public function gui_page_filters() {
38
 
39
  $loggers_user_can_read = $this->sh->getLoggersThatUserCanRead();
40
 
 
 
 
 
 
 
 
 
 
 
 
 
 
41
  ?>
42
- <div class="SimpleHistory__filters">
43
 
44
  <form class="SimpleHistory__filters__form js-SimpleHistory__filters__form">
45
 
46
  <!-- <h3><?php _e("Filter history", "simple-history") ?></h3> -->
47
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
48
  <p>
49
- <input type="search" class="SimpleHistoryFilterDropin-searchInput" placeholder="<?php _e("", "simple-history"); ?>" name="search">
50
  <button class="button SimpleHistoryFilterDropin-doFilterButton SimpleHistoryFilterDropin-doFilterButton--first js-SimpleHistoryFilterDropin-doFilter"><?php _e("Search events", "simple-history") ?></button>
51
  <!-- <br> -->
52
  <button type="button" class="SimpleHistoryFilterDropin-showMoreFilters SimpleHistoryFilterDropin-showMoreFilters--first js-SimpleHistoryFilterDropin-showMoreFilters"><?php _ex("Show options", "Filter dropin: button to show more search options", "simple-history") ?></button>
53
  </p>
54
 
 
 
 
 
 
 
 
 
 
 
55
  <div class="SimpleHistory__filters__moreFilters js-SimpleHistory__filters__moreFilters">
56
 
57
  <p>
58
  <select name="loglevels" class="SimpleHistory__filters__filter SimpleHistory__filters__filter--loglevel" style="width: 300px" placeholder="<?php _e("All log levels", "simple-history") ?>" multiple>
59
- <option value="debug" data-color="#CEF6D8"><?php echo $this->sh->getLogLevelTranslated("Debug") ?></option>
60
- <option value="info" data-color="white"><?php echo $this->sh->getLogLevelTranslated("Info") ?></option>
61
- <option value="notice" data-color="rgb(219, 219, 183)"><?php echo $this->sh->getLogLevelTranslated("Notice") ?></option>
62
- <option value="warning" data-color="#F7D358"><?php echo $this->sh->getLogLevelTranslated("Warning") ?></option>
63
- <option value="error" data-color="#F79F81"><?php echo $this->sh->getLogLevelTranslated("Error") ?></option>
64
- <option value="critical" data-color="#FA5858"><?php echo $this->sh->getLogLevelTranslated("Critical") ?></option>
65
- <option value="alert" data-color="rgb(199, 69, 69)"><?php echo $this->sh->getLogLevelTranslated("Alert") ?></option>
66
- <option value="emergency" data-color="#DF0101"><?php echo $this->sh->getLogLevelTranslated("Emergency") ?></option>
67
  </select>
68
  </p>
69
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
70
  <p>
71
  <select name="messages" class="SimpleHistory__filters__filter SimpleHistory__filters__filter--logger" style="width: 300px"
72
  placeholder="<?php _e("All messages", "simple-history") ?>" multiple>
@@ -105,7 +302,11 @@ class SimpleHistoryFilterDropin {
105
  }
106
 
107
  $str_option_messages = implode(",", $option_messages);
108
- printf('<option value="%2$s">%1$s</option>', esc_attr( $option_key ), esc_attr( $str_option_messages ));
 
 
 
 
109
 
110
  }
111
 
@@ -118,43 +319,46 @@ class SimpleHistoryFilterDropin {
118
  </select>
119
  </p>
120
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
121
  <p>
122
  <input type="text"
123
- name = "user"
124
  class="SimpleHistory__filters__filter SimpleHistory__filters__filter--user"
125
  style="width: 300px"
126
- placeholder="<?php _e("All users", "simple-history") ?>" />
127
- </p>
128
-
129
- <?php
130
- global $wpdb;
131
- $table_name = $wpdb->prefix . SimpleHistory::DBTABLE;
132
- $loggers_user_can_read_sql_in = $this->sh->getLoggersThatUserCanRead(null, "sql");
133
- $sql_dates = sprintf('
134
- SELECT DISTINCT ( date_format(DATE, "%%Y-%%m") ) AS yearMonth
135
- FROM %s
136
- WHERE logger IN %s
137
- ORDER BY yearMonth DESC
138
- ', $table_name, // 1
139
- $loggers_user_can_read_sql_in // 2
140
- );
141
-
142
- $result_months = $wpdb->get_results($sql_dates);
143
- ?>
144
- <p>
145
- <select class="SimpleHistory__filters__filter SimpleHistory__filters__filter--date"
146
- name="months"
147
- placeholder="<?php echo _e("All dates", "simple-history") ?>" multiple>
148
- <?php
149
- foreach ($result_months as $row) {
150
- printf(
151
- '<option value="%1$s">%2$s</option>',
152
- $row->yearMonth,
153
- date_i18n( "F Y", strtotime($row->yearMonth) )
154
- );
155
- }
156
- ?>
157
- </select>
158
  </p>
159
 
160
  <p>
@@ -178,6 +382,38 @@ class SimpleHistoryFilterDropin {
178
 
179
  } // function
180
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
181
  /**
182
  * Return users
183
  */
@@ -239,8 +475,7 @@ class SimpleHistoryFilterDropin {
239
 
240
  } // function
241
 
242
- function add_gravatar_to_user_array(& $val, $index) {
243
-
244
  $val->text = sprintf(
245
  '%1$s - %2$s',
246
  $val->user_login,
34
 
35
  }
36
 
37
+ public function get_unique_events_for_days($days = 7) {
38
+
39
+ global $wpdb;
40
+
41
+ $days = (int) $days;
42
+
43
+ $table_name = $wpdb->prefix . SimpleHistory::DBTABLE;
44
+
45
+ // Number of unique events the last n days
46
+ $cache_key = "SimpleHistory_FilterDropin_unique_events_for_days" . $days;
47
+ $numEvents = wp_cache_get($cache_key);
48
+
49
+ if ( false == $numEvents ) {
50
+
51
+ $sql = $wpdb->prepare("
52
+ SELECT count( DISTINCT occasionsID )
53
+ FROM $table_name
54
+ WHERE DATE >= DATE_ADD(CURDATE(), INTERVAL -%d DAY)
55
+ ", $days);
56
+
57
+ $numEvents = $wpdb->get_var($sql);
58
+
59
+ wp_cache_set( $cache_key, $numEvents, "", DAY_IN_SECONDS);
60
+
61
+ }
62
+
63
+ return $numEvents;
64
+
65
+ }
66
+
67
  public function gui_page_filters() {
68
 
69
  $loggers_user_can_read = $this->sh->getLoggersThatUserCanRead();
70
 
71
+ /**
72
+ * Filter that determines if search filters should be visible directly on page load
73
+ *
74
+ * Set to true to show the filters when page is loaded
75
+ * If false then user must click "Show options"
76
+ *
77
+ * @since 2.1.2
78
+ *
79
+ * @param bool $show_more_filters_on_load Default false
80
+ */
81
+ $show_more_filters_on_load = false;
82
+ $show_more_filters_on_load = apply_filters("SimpleHistoryFilterDropin/show_more_filters_on_load" , $show_more_filters_on_load);
83
+
84
  ?>
85
+ <div class="SimpleHistory__filters <?php echo $show_more_filters_on_load ? "is-showingMoreFilters" : "" ?>">
86
 
87
  <form class="SimpleHistory__filters__form js-SimpleHistory__filters__form">
88
 
89
  <!-- <h3><?php _e("Filter history", "simple-history") ?></h3> -->
90
 
91
+ <?php
92
+
93
+ // Start months filter
94
+ global $wpdb;
95
+ $table_name = $wpdb->prefix . SimpleHistory::DBTABLE;
96
+ $loggers_user_can_read_sql_in = $this->sh->getLoggersThatUserCanRead(null, "sql");
97
+
98
+ // Get unique months
99
+ $cache_key = "SimpleHistory_FilterDropin_Months";
100
+ $result_months = wp_cache_get($cache_key);
101
+
102
+ if ( false === $result_months ) {
103
+
104
+ $sql_dates = sprintf('
105
+ SELECT DISTINCT ( date_format(DATE, "%%Y-%%m") ) AS yearMonth
106
+ FROM %s
107
+ WHERE logger IN %s
108
+ ORDER BY yearMonth DESC
109
+ ', $table_name, // 1
110
+ $loggers_user_can_read_sql_in // 2
111
+ );
112
+
113
+ $result_months = $wpdb->get_results($sql_dates);
114
+
115
+ wp_cache_set($cache_key, $result_months, "", HOUR_IN_SECONDS);
116
+
117
+ }
118
+
119
+ // Default month = current month
120
+ // Mainly for performance reasons, since often
121
+ // it's not the users intention to view all events,
122
+ // but just the latest
123
+ $this_month = date("Y-m");
124
+
125
+ // Determine if we limit the date range by default
126
+ $daysToShow = 7;
127
+ $numEvents = $this->get_unique_events_for_days($daysToShow);
128
+ $numPages = $numEvents / $this->sh->get_pager_size();
129
+
130
+ if ( $numPages < 20 ) {
131
+
132
+ // Not that many things the last 7 days. Let's try to expand to 14 daysinstead.
133
+ $daysToShow = 14;
134
+ $numEvents = $this->get_unique_events_for_days($daysToShow);
135
+ $numPages = $numEvents / $this->sh->get_pager_size();
136
+
137
+ if ( $numPages < 20 ) {
138
+
139
+ // Not many things the last 14 days either. Let try with 30 days.
140
+ $daysToShow = 30;
141
+ $numEvents = $this->get_unique_events_for_days($daysToShow);
142
+ $numPages = $numEvents / $this->sh->get_pager_size();
143
+
144
+ }
145
+
146
+ }
147
+
148
+ /*echo "<br><br>" . $numEvents . " unique events the last $daysToShow days.";
149
+ echo "<br>" . $numEvents / $this->sh->get_pager_size() . " pages";*/
150
+
151
+ ?>
152
+ <p>
153
+ <select class="SimpleHistory__filters__filter SimpleHistory__filters__filter--date"
154
+ name="dates"
155
+ placeholder="<?php echo _e("All dates", "simple-history") ?>" multiple>
156
+ <?php
157
+
158
+ // Last week + two weeks back + 30 days back
159
+ printf(
160
+ '<option value="%1$s" %3$s>%2$s</option>',
161
+ "lastdays:7", // 1 - value
162
+ _x("Last 7 days", "Filter dropin: filter week", "simple-history"), // 2 text
163
+ selected($daysToShow, 7, 0)
164
+ );
165
+
166
+ printf(
167
+ '<option value="%1$s" %3$s>%2$s</option>',
168
+ "lastdays:14", // 1 - value
169
+ _x("Last 14 days", "Filter dropin: filter week", "simple-history"), // 2 text
170
+ selected($daysToShow, 14, 0)
171
+ );
172
+
173
+ printf(
174
+ '<option value="%1$s" %3$s>%2$s</option>',
175
+ "lastdays:30", // 1 - value
176
+ _x("Last 30 days", "Filter dropin: filter week", "simple-history"), // 2 text
177
+ selected($daysToShow, 30, 0)
178
+ );
179
+
180
+ printf(
181
+ '<option value="%1$s" %3$s>%2$s</option>',
182
+ "lastdays:60", // 1 - value
183
+ _x("Last 60 days", "Filter dropin: filter week", "simple-history"), // 2 text
184
+ selected($daysToShow, 60, 0)
185
+ );
186
+
187
+ // Months
188
+ foreach ( $result_months as $row ) {
189
+
190
+ printf(
191
+ '<option value="%1$s" %3$s>%2$s</option>',
192
+ "month:" . $row->yearMonth,
193
+ date_i18n( "F Y", strtotime($row->yearMonth) ),
194
+ "" // selected( $this_month, $row->yearMonth, false )
195
+ );
196
+
197
+ }
198
+ ?>
199
+ </select>
200
+ </p><!-- end months -->
201
+
202
+ <?php
203
+ /**
204
+ * Filter to control what the default search string is. Default to empty string.
205
+ *
206
+ * @since 2.1.2
207
+ *
208
+ * @param string Default search string
209
+ */
210
+ $default_search_string = apply_filters("SimpleHistoryFilterDropin/filter_default_search_string" , "");
211
+ ?>
212
+ <p>
213
+ <input
214
+ type="search"
215
+ class="SimpleHistoryFilterDropin-searchInput"
216
+ placeholder="<?php _e("Containing words", "simple-history"); ?>"
217
+ name="search"
218
+ value="<?php echo esc_attr($default_search_string); ?>"
219
+ >
220
+ </p>
221
+
222
  <p>
 
223
  <button class="button SimpleHistoryFilterDropin-doFilterButton SimpleHistoryFilterDropin-doFilterButton--first js-SimpleHistoryFilterDropin-doFilter"><?php _e("Search events", "simple-history") ?></button>
224
  <!-- <br> -->
225
  <button type="button" class="SimpleHistoryFilterDropin-showMoreFilters SimpleHistoryFilterDropin-showMoreFilters--first js-SimpleHistoryFilterDropin-showMoreFilters"><?php _ex("Show options", "Filter dropin: button to show more search options", "simple-history") ?></button>
226
  </p>
227
 
228
+ <?php
229
+ /**
230
+ * Filter to control what the default loglevels are.
231
+ *
232
+ * @since 2.1.2
233
+ *
234
+ * @param array Array with loglevel sugs. Default empty = show all.
235
+ */
236
+ $arr_default_loglevels = apply_filters("SimpleHistoryFilterDropin/filter_default_loglevel", array());
237
+ ?>
238
  <div class="SimpleHistory__filters__moreFilters js-SimpleHistory__filters__moreFilters">
239
 
240
  <p>
241
  <select name="loglevels" class="SimpleHistory__filters__filter SimpleHistory__filters__filter--loglevel" style="width: 300px" placeholder="<?php _e("All log levels", "simple-history") ?>" multiple>
242
+ <option <?php selected(in_array("debug", $arr_default_loglevels)) ?> value="debug" data-color="#CEF6D8"><?php echo $this->sh->getLogLevelTranslated("Debug") ?></option>
243
+ <option <?php selected(in_array("info", $arr_default_loglevels)) ?> value="info" data-color="white"><?php echo $this->sh->getLogLevelTranslated("Info") ?></option>
244
+ <option <?php selected(in_array("notice", $arr_default_loglevels)) ?> value="notice" data-color="rgb(219, 219, 183)"><?php echo $this->sh->getLogLevelTranslated("Notice") ?></option>
245
+ <option <?php selected(in_array("warning", $arr_default_loglevels)) ?> value="warning" data-color="#F7D358"><?php echo $this->sh->getLogLevelTranslated("Warning") ?></option>
246
+ <option <?php selected(in_array("error", $arr_default_loglevels)) ?> value="error" data-color="#F79F81"><?php echo $this->sh->getLogLevelTranslated("Error") ?></option>
247
+ <option <?php selected(in_array("critical", $arr_default_loglevels)) ?> value="critical" data-color="#FA5858"><?php echo $this->sh->getLogLevelTranslated("Critical") ?></option>
248
+ <option <?php selected(in_array("alert", $arr_default_loglevels)) ?> value="alert" data-color="rgb(199, 69, 69)"><?php echo $this->sh->getLogLevelTranslated("Alert") ?></option>
249
+ <option <?php selected(in_array("emergency", $arr_default_loglevels)) ?> value="emergency" data-color="#DF0101"><?php echo $this->sh->getLogLevelTranslated("Emergency") ?></option>
250
  </select>
251
  </p>
252
 
253
+ <?php
254
+ /**
255
+ * Todo: Filter to control what the default messages to filter/search.
256
+ * Message in in format: LoggerSlug:MessageKey
257
+ * For example:
258
+ * - SimplePluginLogger:plugin_activated
259
+ * - SimpleCommentsLogger:user_comment_added
260
+ *
261
+ * @since 2.1.2
262
+ *
263
+ * @param array Array with loglevel sugs. Default empty = show all.
264
+ */
265
+ // $arr_default_messages = apply_filters("SimpleHistoryFilterDropin/filter_default_messages", array());
266
+ ?>
267
  <p>
268
  <select name="messages" class="SimpleHistory__filters__filter SimpleHistory__filters__filter--logger" style="width: 300px"
269
  placeholder="<?php _e("All messages", "simple-history") ?>" multiple>
302
  }
303
 
304
  $str_option_messages = implode(",", $option_messages);
305
+ printf(
306
+ '<option value="%2$s">%1$s</option>',
307
+ esc_attr( $option_key ), // 1
308
+ esc_attr( $str_option_messages ) // 2
309
+ );
310
 
311
  }
312
 
319
  </select>
320
  </p>
321
 
322
+ <?php
323
+ /**
324
+ * Filter what users to search for by default
325
+ *
326
+ * Example:
327
+ *
328
+ * add_filter("SimpleHistoryFilterDropin/filter_default_user_ids", function() { return array(1,4); });
329
+ *
330
+ * @since 2.1.2
331
+ *
332
+ * @param array Array with user ids. Default is an empty array = show all users.
333
+ */
334
+
335
+ /*
336
+ add_filter("SimpleHistoryFilterDropin/filter_default_user_ids", function($arr) {
337
+ $arr = array(
338
+ 1,
339
+ 4
340
+ );
341
+ return $arr;
342
+ });
343
+ //*/
344
+
345
+ $default_user_ids = apply_filters("SimpleHistoryFilterDropin/filter_default_user_ids", array());
346
+ $arr_default_user_data = array();
347
+
348
+ foreach ($default_user_ids as $user_id) {
349
+ $arr_default_user_data[] = $this->get_data_for_user($user_id);
350
+ }
351
+
352
+ ?>
353
  <p>
354
  <input type="text"
355
+ name = "users"
356
  class="SimpleHistory__filters__filter SimpleHistory__filters__filter--user"
357
  style="width: 300px"
358
+ placeholder="<?php _e("All users", "simple-history") ?>"
359
+ value="<?php echo esc_attr(implode(",",$default_user_ids)) ?>"
360
+ data-default-user-data="<?php echo esc_attr( json_encode($arr_default_user_data) ) ?>"
361
+ />
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
362
  </p>
363
 
364
  <p>
382
 
383
  } // function
384
 
385
+
386
+ /**
387
+ * Return format used for select2 for a single user id
388
+ *
389
+ * @param int $userID
390
+ * @return array Array with each user as an object
391
+ */
392
+ public function get_data_for_user($userID) {
393
+
394
+ if ( ! $userID || ! is_numeric($userID) ) {
395
+ return false;
396
+ }
397
+
398
+ $user = get_user_by( "id", $userID );
399
+
400
+ if ( false == $user ) {
401
+ return false;
402
+ }
403
+
404
+ $userdata = (object) array(
405
+ "id" => $user->ID,
406
+ "user_email" => $user->user_email,
407
+ "user_login" => $user->user_login,
408
+ "user_nicename" => $user->user_nicename
409
+ );
410
+
411
+ $this->add_gravatar_to_user_array($userdata);
412
+
413
+ return $userdata;
414
+
415
+ }
416
+
417
  /**
418
  * Return users
419
  */
475
 
476
  } // function
477
 
478
+ function add_gravatar_to_user_array(& $val, $index = null) {
 
479
  $val->text = sprintf(
480
  '%1$s - %2$s',
481
  $val->user_login,
dropins/SimpleHistoryNewRowsNotifierDropin.js CHANGED
@@ -57,7 +57,11 @@
57
 
58
  }
59
 
60
- intervalID = setInterval(checkForUpdates, simple_history_NewRowsNotifierDropin.interval);
 
 
 
 
61
 
62
  });
63
 
@@ -65,7 +69,8 @@
65
  $(document).on("click", ".SimpleHistoryDropin__NewRowsNotifier", function(e) {
66
 
67
  // Stop polling and stop any outgoing ajax request
68
- clearInterval(intervalID);
 
69
  ajax_jqXHR.abort();
70
 
71
  var prev_max_id = simple_history.rowsView.collection.max_id;
57
 
58
  }
59
 
60
+ // Start interval if prev interval was cleared
61
+ if (!intervalID) {
62
+ console.log("start setInterval");
63
+ intervalID = setInterval(checkForUpdates, simple_history_NewRowsNotifierDropin.interval);
64
+ }
65
 
66
  });
67
 
69
  $(document).on("click", ".SimpleHistoryDropin__NewRowsNotifier", function(e) {
70
 
71
  // Stop polling and stop any outgoing ajax request
72
+ //clearInterval(intervalID);
73
+ //intervalID = false;
74
  ajax_jqXHR.abort();
75
 
76
  var prev_max_id = simple_history.rowsView.collection.max_id;
inc/SimpleHistory.php CHANGED
@@ -10,7 +10,7 @@ class SimpleHistory {
10
  const NAME = "Simple History";
11
 
12
  // Dont use this any more! Will be removed in future versions. Use global SIMPLE_HISTORY_VERSION instead.
13
- const VERSION = "2.1.1";
14
 
15
  /**
16
  * For singleton
@@ -90,6 +90,12 @@ class SimpleHistory {
90
  // Actions and filters, ordered by order specified in codex: http://codex.wordpress.org/Plugin_API/Action_Reference
91
  add_action('after_setup_theme', array($this, 'load_plugin_textdomain'));
92
  add_action('after_setup_theme', array($this, 'add_default_settings_tabs'));
 
 
 
 
 
 
93
  add_action('after_setup_theme', array($this, 'load_loggers'));
94
  add_action('after_setup_theme', array($this, 'load_dropins'));
95
 
@@ -526,7 +532,6 @@ class SimpleHistory {
526
 
527
  // The "plugin_locale" filter is also used in load_plugin_textdomain()
528
  $locale = apply_filters('plugin_locale', get_locale(), $domain);
529
-
530
  load_textdomain($domain, WP_LANG_DIR . '/simple-history/' . $domain . '-' . $locale . '.mo');
531
  load_plugin_textdomain($domain, FALSE, dirname($this->plugin_basename) . '/languages/');
532
 
@@ -984,13 +989,11 @@ class SimpleHistory {
984
 
985
  add_thickbox();
986
 
987
- $plugin_url = plugin_dir_url(SIMPLE_HISTORY_BASENAME);
988
-
989
- wp_enqueue_style("simple_history_styles", $plugin_url . "css/styles.css", false, SIMPLE_HISTORY_VERSION);
990
- wp_enqueue_script("simple_history_script", $plugin_url . "js/scripts.js", array("jquery", "backbone", "wp-util"), SIMPLE_HISTORY_VERSION, true);
991
 
992
- wp_enqueue_script("select2", $plugin_url . "js/select2/select2.min.js", array("jquery"));
993
- wp_enqueue_style("select2", $plugin_url . "js/select2/select2.css");
994
 
995
  // Translations that we use in JavaScript
996
  wp_localize_script('simple_history_script', 'simple_history_script_vars', array(
@@ -2321,6 +2324,13 @@ class SimpleHistory {
2321
 
2322
  }
2323
 
 
 
 
 
 
 
 
2324
  public function getInstantiatedLoggerBySlug($slug = "") {
2325
 
2326
  if (empty($slug)) {
10
  const NAME = "Simple History";
11
 
12
  // Dont use this any more! Will be removed in future versions. Use global SIMPLE_HISTORY_VERSION instead.
13
+ const VERSION = "2.1.2";
14
 
15
  /**
16
  * For singleton
90
  // Actions and filters, ordered by order specified in codex: http://codex.wordpress.org/Plugin_API/Action_Reference
91
  add_action('after_setup_theme', array($this, 'load_plugin_textdomain'));
92
  add_action('after_setup_theme', array($this, 'add_default_settings_tabs'));
93
+
94
+ // Plugins and dropins are loaded using the "after_setup_theme" filter so
95
+ // themes can use filters to modify the loading of them.
96
+ // The drawback with this is that for example logouts done when plugins like
97
+ // iThemes Security is installed is not logged, because those plugins fire wp_logout()
98
+ // using filter "plugins_loaded", i.e. before simple history has loaded its filters.
99
  add_action('after_setup_theme', array($this, 'load_loggers'));
100
  add_action('after_setup_theme', array($this, 'load_dropins'));
101
 
532
 
533
  // The "plugin_locale" filter is also used in load_plugin_textdomain()
534
  $locale = apply_filters('plugin_locale', get_locale(), $domain);
 
535
  load_textdomain($domain, WP_LANG_DIR . '/simple-history/' . $domain . '-' . $locale . '.mo');
536
  load_plugin_textdomain($domain, FALSE, dirname($this->plugin_basename) . '/languages/');
537
 
989
 
990
  add_thickbox();
991
 
992
+ wp_enqueue_style("simple_history_styles", SIMPLE_HISTORY_DIR_URL . "css/styles.css", false, SIMPLE_HISTORY_VERSION);
993
+ wp_enqueue_script("simple_history_script", SIMPLE_HISTORY_DIR_URL . "js/scripts.js", array("jquery", "backbone", "wp-util"), SIMPLE_HISTORY_VERSION, true);
 
 
994
 
995
+ wp_enqueue_script("select2", SIMPLE_HISTORY_DIR_URL . "js/select2/select2.min.js", array("jquery"));
996
+ wp_enqueue_style("select2", SIMPLE_HISTORY_DIR_URL . "js/select2/select2.css");
997
 
998
  // Translations that we use in JavaScript
999
  wp_localize_script('simple_history_script', 'simple_history_script_vars', array(
2324
 
2325
  }
2326
 
2327
+ public function getInstantiatedDropins() {
2328
+
2329
+ return $this->instantiatedDropins;
2330
+
2331
+ }
2332
+
2333
+
2334
  public function getInstantiatedLoggerBySlug($slug = "") {
2335
 
2336
  if (empty($slug)) {
inc/SimpleHistoryLogQuery.php CHANGED
@@ -54,6 +54,11 @@ class SimpleHistoryLogQuery {
54
  // array or comma separated
55
  "months" => null,
56
 
 
 
 
 
 
57
  // search
58
  "search" => null,
59
 
@@ -68,6 +73,9 @@ class SimpleHistoryLogQuery {
68
  // userID as number
69
  "user" => null,
70
 
 
 
 
71
  // Can also contain:
72
  // occasionsCount
73
  // occasionsCountMaxReturn
@@ -108,7 +116,7 @@ class SimpleHistoryLogQuery {
108
 
109
  $where = "1 = 1";
110
  $limit = "";
111
- $inner_where = "";
112
 
113
  if ( "overview" === $args["type"] || "single" === $args["type"] ) {
114
 
@@ -116,7 +124,7 @@ class SimpleHistoryLogQuery {
116
  $sql_set_var = "SET @a:='', @counter:=1, @groupby:=0";
117
  $wpdb->query( $sql_set_var );
118
 
119
- // Query template
120
  // 1 = where
121
  // 2 = limit
122
  // 3 = db name
@@ -126,47 +134,46 @@ class SimpleHistoryLogQuery {
126
  /*NO_SELECT_FOUND_ROWS*/
127
  SELECT
128
  SQL_CALC_FOUND_ROWS
129
- t.id,
130
- t.logger,
131
- t.level,
132
- t.date,
133
- t.message,
134
- t.type,
135
- t.initiator,
136
- t.occasionsID,
137
- count(REPEATED) AS subsequentOccasions,
138
  t.rep,
139
  t.repeated,
140
  t.occasionsIDType,
141
  c1.value AS context_message_key
142
- FROM
143
- (
144
- SELECT
145
- id,
146
- logger,
147
- level,
148
- message,
149
- type,
150
- initiator,
151
- occasionsID,
152
- date,
153
- IF(@a=occasionsID,@counter:=@counter+1,@counter:=1) AS rep,
154
- IF(@counter=1,@groupby:=@groupby+1,@groupby) AS repeated,
155
- @a:=occasionsID occasionsIDType
156
- FROM %3$s
157
-
158
- # Add where here
159
- WHERE 1 = 1
160
- %4$s
161
 
162
- ORDER BY id DESC
163
- ) AS t
164
 
165
- LEFT OUTER JOIN %5$s AS c1 ON c1.history_id = t.id AND c1.key = "_message_key"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
166
 
167
- WHERE %1$s
168
  GROUP BY repeated
169
- ORDER BY id DESC
170
  %2$s
171
  ';
172
 
@@ -175,7 +182,7 @@ class SimpleHistoryLogQuery {
175
  // Only include loggers that the current user can view
176
  // @TODO: this causes error if user has no access to any logger at all
177
  $sql_loggers_user_can_view = $sh->getLoggersThatUserCanRead(get_current_user_id(), "sql");
178
- $inner_where = " AND logger IN {$sql_loggers_user_can_view}";
179
 
180
  } else if ( "occasions" === $args["type"] ) {
181
 
@@ -184,17 +191,17 @@ class SimpleHistoryLogQuery {
184
  // 2 = limit
185
  // 3 = db name
186
  $sql_tmpl = '
187
- SELECT t.*,
188
  # fake columns that exist in overview query
189
  1 as subsequentOccasions
190
- FROM %3$s AS t
191
  WHERE %1$s
192
  ORDER BY id DESC
193
  %2$s
194
  ';
195
 
196
- $where .= " AND t.id < " . (int) $args["logRowID"];
197
- $where .= " AND t.occasionsID = '" . esc_sql( $args["occasionsID"] ) . "'";
198
 
199
  if ( isset( $args["occasionsCountMaxReturn"] ) && (int) $args["occasionsCountMaxReturn"] < (int) $args["occasionsCount"] ) {
200
 
@@ -230,7 +237,7 @@ class SimpleHistoryLogQuery {
230
  // make sure all vals are integers
231
  $args["post__in"] = array_map("intval", $args["post__in"]);
232
 
233
- $where .= sprintf(' AND t.id IN (%1$s)', implode(",", $args["post__in"]));
234
 
235
  }
236
 
@@ -239,8 +246,8 @@ class SimpleHistoryLogQuery {
239
  if ( isset($args["max_id_first_page"]) && is_numeric($args["max_id_first_page"]) ) {
240
 
241
  $max_id_first_page = (int) $args["max_id_first_page"];
242
- $where .= sprintf(
243
- ' AND t.id <= %1$d',
244
  $max_id_first_page
245
  );
246
 
@@ -262,7 +269,7 @@ class SimpleHistoryLogQuery {
262
  );
263
 
264
  }
265
-
266
  // Append date where
267
  if ( ! empty( $args["date_from"] ) ) {
268
 
@@ -273,7 +280,7 @@ class SimpleHistoryLogQuery {
273
  $date_from = strtotime( $date_from );
274
  }
275
 
276
- $inner_where .= "\n" . sprintf(' AND UNIX_TIMESTAMP(date) >= %1$d', esc_sql( $date_from ) );
277
 
278
  }
279
 
@@ -286,10 +293,50 @@ class SimpleHistoryLogQuery {
286
  $date_to = strtotime( $date_to );
287
  }
288
 
289
- $inner_where .= "\n" . sprintf(' AND UNIX_TIMESTAMP(date) <= %1$d', esc_sql( $date_to ) );
290
 
291
  }
292
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
293
  // months, in format "Y-m"
294
  if ( ! empty( $args["months"] ) ) {
295
 
@@ -319,14 +366,14 @@ class SimpleHistoryLogQuery {
319
  $sql_months .= sprintf(
320
  '
321
  (
322
- UNIX_TIMESTAMP(date) >=%1$d
323
- AND UNIX_TIMESTAMP(date) <= %2$d
324
  )
325
 
326
  OR
327
  ',
328
- $date_month_beginning, // 1
329
- $date_month_end // 2
330
 
331
  );
332
 
@@ -356,7 +403,7 @@ class SimpleHistoryLogQuery {
356
  // split both spaces and commas and such
357
  $arr_sql_like_cols = array("message", "logger", "level");
358
 
359
- foreach ($arr_sql_like_cols as $one_col) {
360
 
361
  $str_sql_search_words = "";
362
 
@@ -489,7 +536,7 @@ class SimpleHistoryLogQuery {
489
  $sql_messages_where .= sprintf(
490
  '
491
  (
492
- logger = "%1$s"
493
  AND c1.value IN (%2$s)
494
  )
495
  OR ',
@@ -603,6 +650,31 @@ class SimpleHistoryLogQuery {
603
 
604
  }
605
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
606
 
607
  /**
608
  * Filter the sql template
54
  // array or comma separated
55
  "months" => null,
56
 
57
+ // dates in format
58
+ // "month:2015-06" for june 2015
59
+ // "lastdays:7" for the last 7 days
60
+ "dates" => null,
61
+
62
  // search
63
  "search" => null,
64
 
73
  // userID as number
74
  "user" => null,
75
 
76
+ // user ids, comma separated
77
+ "users" => null,
78
+
79
  // Can also contain:
80
  // occasionsCount
81
  // occasionsCountMaxReturn
116
 
117
  $where = "1 = 1";
118
  $limit = "";
119
+ $inner_where = "1 = 1";
120
 
121
  if ( "overview" === $args["type"] || "single" === $args["type"] ) {
122
 
124
  $sql_set_var = "SET @a:='', @counter:=1, @groupby:=0";
125
  $wpdb->query( $sql_set_var );
126
 
127
+ // New and slightly faster query
128
  // 1 = where
129
  // 2 = limit
130
  // 3 = db name
134
  /*NO_SELECT_FOUND_ROWS*/
135
  SELECT
136
  SQL_CALC_FOUND_ROWS
137
+ h.id,
138
+ h.logger,
139
+ h.level,
140
+ h.date,
141
+ h.message,
142
+ h.type,
143
+ h.initiator,
144
+ h.occasionsID,
145
+ count(t.repeated) AS subsequentOccasions,
146
  t.rep,
147
  t.repeated,
148
  t.occasionsIDType,
149
  c1.value AS context_message_key
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
150
 
151
+ FROM %3$s AS h
 
152
 
153
+ LEFT OUTER JOIN %5$s AS c1 ON (c1.history_id = h.id AND c1.key = "_message_key")
154
+
155
+ INNER JOIN (
156
+ SELECT
157
+ id,
158
+ IF(@a=occasionsID,@counter:=@counter+1,@counter:=1) AS rep,
159
+ IF(@counter=1,@groupby:=@groupby+1,@groupby) AS repeated,
160
+ @a:=occasionsID occasionsIDType
161
+ FROM %3$s AS h2
162
+
163
+ # First/inner where
164
+ WHERE
165
+ %4$s
166
+
167
+ ORDER BY id DESC, date DESC
168
+ ) AS t ON t.id = h.id
169
+
170
+ WHERE
171
+ # AND DATE >= DATE(NOW()) - INTERVAL 7 DAY
172
+ # Outer/Second where
173
+ %1$s
174
 
 
175
  GROUP BY repeated
176
+ ORDER BY id DESC, date DESC
177
  %2$s
178
  ';
179
 
182
  // Only include loggers that the current user can view
183
  // @TODO: this causes error if user has no access to any logger at all
184
  $sql_loggers_user_can_view = $sh->getLoggersThatUserCanRead(get_current_user_id(), "sql");
185
+ $inner_where .= " AND logger IN {$sql_loggers_user_can_view}";
186
 
187
  } else if ( "occasions" === $args["type"] ) {
188
 
191
  // 2 = limit
192
  // 3 = db name
193
  $sql_tmpl = '
194
+ SELECT h.*,
195
  # fake columns that exist in overview query
196
  1 as subsequentOccasions
197
+ FROM %3$s AS h
198
  WHERE %1$s
199
  ORDER BY id DESC
200
  %2$s
201
  ';
202
 
203
+ $where .= " AND h.id < " . (int) $args["logRowID"];
204
+ $where .= " AND h.occasionsID = '" . esc_sql( $args["occasionsID"] ) . "'";
205
 
206
  if ( isset( $args["occasionsCountMaxReturn"] ) && (int) $args["occasionsCountMaxReturn"] < (int) $args["occasionsCount"] ) {
207
 
237
  // make sure all vals are integers
238
  $args["post__in"] = array_map("intval", $args["post__in"]);
239
 
240
+ $inner_where .= sprintf(' AND id IN (%1$s)', implode(",", $args["post__in"]));
241
 
242
  }
243
 
246
  if ( isset($args["max_id_first_page"]) && is_numeric($args["max_id_first_page"]) ) {
247
 
248
  $max_id_first_page = (int) $args["max_id_first_page"];
249
+ $inner_where .= sprintf(
250
+ ' AND id <= %1$d',
251
  $max_id_first_page
252
  );
253
 
269
  );
270
 
271
  }
272
+
273
  // Append date where
274
  if ( ! empty( $args["date_from"] ) ) {
275
 
280
  $date_from = strtotime( $date_from );
281
  }
282
 
283
+ $inner_where .= "\n" . sprintf(' AND date >= "%1$s"', esc_sql( date( 'Y-m-d H:i:s', $date_from ) ) );
284
 
285
  }
286
 
293
  $date_to = strtotime( $date_to );
294
  }
295
 
296
+ $inner_where .= "\n" . sprintf(' AND date <= "%1$s"', date( 'Y-m-d H:i:s', $date_from ) );
297
 
298
  }
299
 
300
+ // dats
301
+ // if months they translate to $args["months"] because we already have support for that
302
+ // can't use months and dates and the same time
303
+ if ( ! empty( $args["dates"] ) ) {
304
+
305
+ if ( is_array( $args["dates"] ) ) {
306
+ $arr_dates = $args["dates"];
307
+ } else {
308
+ $arr_dates = explode(",", $args["dates"]);
309
+ }
310
+
311
+ $args["months"] = array();
312
+ $args["lastdays"] = 0;
313
+
314
+ foreach ( $arr_dates as $one_date ) {
315
+
316
+ // If begins with "month:" then strip string and keep only month numbers
317
+ if ( strpos($one_date, "month:") === 0 ) {
318
+ $args["months"][] = substr($one_date, strlen("month:"));
319
+ } else if ( strpos($one_date, "lastdays:") === 0 ) {
320
+ // Only keep largest lastdays value
321
+ $args["lastdays"] = max($args["lastdays"], substr($one_date, strlen("lastdays:")));
322
+ #$args["lastdays"][] = substr($one_date, strlen("lastdays:"));
323
+ }
324
+
325
+ }
326
+
327
+
328
+ }
329
+
330
+ // lastdays, as int
331
+ if ( ! empty( $args["lastdays"] ) ) {
332
+
333
+ $inner_where .= sprintf('
334
+ # lastdays
335
+ AND date >= DATE(NOW()) - INTERVAL %d DAY
336
+ ', $args["lastdays"]);
337
+
338
+ }
339
+
340
  // months, in format "Y-m"
341
  if ( ! empty( $args["months"] ) ) {
342
 
366
  $sql_months .= sprintf(
367
  '
368
  (
369
+ date >= "%1$s"
370
+ AND date <= "%2$s"
371
  )
372
 
373
  OR
374
  ',
375
+ date( 'Y-m-d H:i:s', $date_month_beginning ), // 1
376
+ date( 'Y-m-d H:i:s', $date_month_end ) // 2
377
 
378
  );
379
 
403
  // split both spaces and commas and such
404
  $arr_sql_like_cols = array("message", "logger", "level");
405
 
406
+ foreach ( $arr_sql_like_cols as $one_col ) {
407
 
408
  $str_sql_search_words = "";
409
 
536
  $sql_messages_where .= sprintf(
537
  '
538
  (
539
+ h.logger = "%1$s"
540
  AND c1.value IN (%2$s)
541
  )
542
  OR ',
650
 
651
  }
652
 
653
+ // users, comma separated
654
+ if ( ! empty( $args["users"] ) && is_string( $args["users"] ) ) {
655
+
656
+ $users = explode(",", $args["users"]);
657
+ $users = array_map("intval", $users);
658
+
659
+ if ( $users ) {
660
+
661
+ $users_in = implode(",", $users);
662
+
663
+ $sql_user = sprintf(
664
+ '
665
+ AND id IN ( SELECT history_id FROM %1$s AS c WHERE c.key = "_user_id" AND c.value IN (%2$s) )
666
+ ',
667
+ $table_name_contexts, // 1
668
+ $users_in // 2
669
+ );
670
+
671
+ $inner_where .= $sql_user;
672
+
673
+ #echo $inner_where;exit;
674
+ }
675
+
676
+ }
677
+
678
 
679
  /**
680
  * Filter the sql template
index.php CHANGED
@@ -5,7 +5,7 @@ Plugin URI: http://simple-history.com
5
  Text Domain: simple-history
6
  Domain Path: /languages
7
  Description: Plugin that logs various things that occur in WordPress and then presents those events in a very nice GUI.
8
- Version: 2.1.1
9
  Author: Pär Thernström
10
  Author URI: http://simple-history.com/
11
  License: GPL2
@@ -44,12 +44,33 @@ if ( version_compare( phpversion(), "5.3", ">=") ) {
44
  */
45
  // register_activation_hook( trailingslashit(WP_PLUGIN_DIR) . trailingslashit( plugin_basename(__DIR__) ) . "index.php" , array("SimpleHistory", "on_plugin_activate" ) );
46
 
47
- define( 'SIMPLE_HISTORY_VERSION', '2.1.1' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
48
 
 
 
49
  define( 'SIMPLE_HISTORY_FILE', __FILE__ );
50
  define( 'SIMPLE_HISTORY_PATH', plugin_dir_path( SIMPLE_HISTORY_FILE ) );
51
  define( 'SIMPLE_HISTORY_BASENAME', plugin_basename( SIMPLE_HISTORY_FILE ) );
52
-
 
53
  // Constants will be like:
54
  /*
55
  SIMPLE_HISTORY_FILE:
5
  Text Domain: simple-history
6
  Domain Path: /languages
7
  Description: Plugin that logs various things that occur in WordPress and then presents those events in a very nice GUI.
8
+ Version: 2.1.2
9
  Author: Pär Thernström
10
  Author URI: http://simple-history.com/
11
  License: GPL2
44
  */
45
  // register_activation_hook( trailingslashit(WP_PLUGIN_DIR) . trailingslashit( plugin_basename(__DIR__) ) . "index.php" , array("SimpleHistory", "on_plugin_activate" ) );
46
 
47
+ if ( ! defined( 'SIMPLE_HISTORY_VERSION' ) ) {
48
+ define( 'SIMPLE_HISTORY_VERSION', '2.1.2' );
49
+ }
50
+
51
+ if ( ! defined( 'SIMPLE_HISTORY_PATH' ) ) {
52
+ define( 'SIMPLE_HISTORY_PATH', plugin_dir_path( __FILE__ ) );
53
+ }
54
+
55
+ if ( ! defined( 'SIMPLE_HISTORY_BASENAME' ) ) {
56
+ define( 'SIMPLE_HISTORY_BASENAME', plugin_basename( __FILE__ ) );
57
+ }
58
+
59
+ if ( ! defined( 'SIMPLE_HISTORY_DIR_URL' ) ) {
60
+ define( 'SIMPLE_HISTORY_DIR_URL', plugin_dir_url( __FILE__ ) );
61
+ }
62
+
63
+ if ( ! defined( 'SIMPLE_HISTORY_FILE' ) ) {
64
+ define( 'SIMPLE_HISTORY_FILE', __FILE__ );
65
+ }
66
 
67
+ // Prev behavior:
68
+ /*
69
  define( 'SIMPLE_HISTORY_FILE', __FILE__ );
70
  define( 'SIMPLE_HISTORY_PATH', plugin_dir_path( SIMPLE_HISTORY_FILE ) );
71
  define( 'SIMPLE_HISTORY_BASENAME', plugin_basename( SIMPLE_HISTORY_FILE ) );
72
+ */
73
+
74
  // Constants will be like:
75
  /*
76
  SIMPLE_HISTORY_FILE:
js/scripts.js CHANGED
@@ -593,6 +593,8 @@ var simple_history = (function($) {
593
 
594
  manualInitialize: function() {
595
 
 
 
596
  // Don't try to init if our element does not exist
597
  if (!this.$el.length) {
598
  return;
593
 
594
  manualInitialize: function() {
595
 
596
+ console.log("manualInitialize");
597
+
598
  // Don't try to init if our element does not exist
599
  if (!this.$el.length) {
600
  return;
languages/simple-history-fi.mo ADDED
Binary file
languages/simple-history-fi.po ADDED
@@ -0,0 +1,1694 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: Simple History\n"
4
+ "POT-Creation-Date: 2015-06-01 13:03+0200\n"
5
+ "PO-Revision-Date: 2015-06-03 20:00+0200\n"
6
+ "Last-Translator: Roni Laukkarinen <roni@dude.fi>\n"
7
+ "Language-Team: Roni Laukkarinen <roni@dude.fi>\n"
8
+ "Language: fi\n"
9
+ "MIME-Version: 1.0\n"
10
+ "Content-Type: text/plain; charset=UTF-8\n"
11
+ "Content-Transfer-Encoding: 8bit\n"
12
+ "X-Generator: Poedit 1.7.4\n"
13
+ "X-Poedit-Basepath: ..\n"
14
+ "X-Poedit-SourceCharset: UTF-8\n"
15
+ "X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
16
+ "esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
17
+ "_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
18
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
19
+ "X-Poedit-SearchPath-0: .\n"
20
+ "X-Poedit-SearchPathExcluded-0: *.js\n"
21
+
22
+ #: dropins/SimpleHistoryDonateDropin.php:38
23
+ msgid "Donate"
24
+ msgstr "Tee lahjoitus"
25
+
26
+ #: dropins/SimpleHistoryDonateDropin.php:53
27
+ msgctxt "donate settings headline"
28
+ msgid "Donate"
29
+ msgstr "Tee lahjoitus"
30
+
31
+ #: dropins/SimpleHistoryDonateDropin.php:74
32
+ #, php-format
33
+ msgid ""
34
+ "If you find Simple History useful please <a href=\"%1$s\">donate</a> or <a "
35
+ "href=\"%2$s\">buy me something from my Amazon wish list</a>."
36
+ msgstr ""
37
+ "Jos mielestäsi Simple History on hyödyllinen, <a href=\"%1$s\">tee "
38
+ "lahjoitus</a> tai <a href=\"%2$s\">osta minulle jotain Amazonin "
39
+ "toivelistaltani</a>."
40
+
41
+ #: dropins/SimpleHistoryExportDropin.php:28
42
+ msgctxt "Export dropin: Tab name on settings page"
43
+ msgid "Export"
44
+ msgstr "Vie"
45
+
46
+ #: dropins/SimpleHistoryExportDropin.php:226
47
+ msgctxt "Export dropin: introtext"
48
+ msgid "The export function will export the full history."
49
+ msgstr "Vientitoiminto vie koko historian."
50
+
51
+ #: dropins/SimpleHistoryExportDropin.php:230
52
+ msgctxt "Export dropin: format"
53
+ msgid "Choose format to export to"
54
+ msgstr "Valitse mihin muotoon viedään"
55
+
56
+ #: dropins/SimpleHistoryExportDropin.php:235
57
+ msgctxt "Export dropin: export format"
58
+ msgid "JSON"
59
+ msgstr "JSON"
60
+
61
+ #: dropins/SimpleHistoryExportDropin.php:242
62
+ msgctxt "Export dropin: export format"
63
+ msgid "CSV"
64
+ msgstr "CSV"
65
+
66
+ #: dropins/SimpleHistoryExportDropin.php:260
67
+ msgctxt "Export dropin: submit button"
68
+ msgid "Download Export File"
69
+ msgstr "Lataa viety tiedosto"
70
+
71
+ #: dropins/SimpleHistoryFilterDropin.php:46
72
+ msgid "Filter history"
73
+ msgstr "Suodata historia"
74
+
75
+ #: dropins/SimpleHistoryFilterDropin.php:50
76
+ #: dropins/SimpleHistoryFilterDropin.php:161
77
+ msgid "Search events"
78
+ msgstr "Hae tapahtumia"
79
+
80
+ #: dropins/SimpleHistoryFilterDropin.php:52
81
+ msgctxt "Filter dropin: button to show more search options"
82
+ msgid "Show options"
83
+ msgstr "Näytä valinnat"
84
+
85
+ #: dropins/SimpleHistoryFilterDropin.php:58
86
+ msgid "All log levels"
87
+ msgstr "Kaikki lokin tasot"
88
+
89
+ #: dropins/SimpleHistoryFilterDropin.php:72
90
+ msgid "All messages"
91
+ msgstr "Kaikki viestit"
92
+
93
+ #: dropins/SimpleHistoryFilterDropin.php:126
94
+ msgid "All users"
95
+ msgstr "Kaikki käyttäjät"
96
+
97
+ #: dropins/SimpleHistoryFilterDropin.php:147
98
+ msgid "All dates"
99
+ msgstr "Kaikki päivämäärät"
100
+
101
+ #: dropins/SimpleHistoryFilterDropin.php:162
102
+ msgctxt "Filter dropin: button to hide more search options"
103
+ msgid "Hide options"
104
+ msgstr "Piilota valinnat"
105
+
106
+ #: dropins/SimpleHistoryFilterDropin.php:170
107
+ msgid "Search"
108
+ msgstr "Etsi"
109
+
110
+ #: dropins/SimpleHistoryIpInfoDropin.php:68
111
+ msgctxt "IP Info Dropin"
112
+ msgid "That IP address does not seem like a public one."
113
+ msgstr "IP-osoite ei näytä julkiselta IP-osoitteelta."
114
+
115
+ #: dropins/SimpleHistoryIpInfoDropin.php:87
116
+ msgctxt "IP Info Dropin"
117
+ msgid "IP address"
118
+ msgstr "IP-osoite"
119
+
120
+ #: dropins/SimpleHistoryIpInfoDropin.php:98
121
+ msgctxt "IP Info Dropin"
122
+ msgid "Hostname"
123
+ msgstr "Isäntänimi"
124
+
125
+ #: dropins/SimpleHistoryIpInfoDropin.php:109
126
+ #: dropins/SimpleHistoryIpInfoDropin.php:120
127
+ msgctxt "IP Info Dropin"
128
+ msgid "Network"
129
+ msgstr "Verkko"
130
+
131
+ #: dropins/SimpleHistoryIpInfoDropin.php:131
132
+ msgctxt "IP Info Dropin"
133
+ msgid "City"
134
+ msgstr "Kaupunki"
135
+
136
+ #: dropins/SimpleHistoryIpInfoDropin.php:142
137
+ msgctxt "IP Info Dropin"
138
+ msgid "Region"
139
+ msgstr "Alue"
140
+
141
+ #: dropins/SimpleHistoryIpInfoDropin.php:153
142
+ msgctxt "IP Info Dropin"
143
+ msgid "Country"
144
+ msgstr "Maa"
145
+
146
+ #: dropins/SimpleHistoryIpInfoDropin.php:164
147
+ #, php-format
148
+ msgctxt "IP Info Dropin"
149
+ msgid "IP info provided by %1$s ipinfo.io %2$s"
150
+ msgstr "IP:n tiedot tarjoaa %1$s ipinfo.io %2$s"
151
+
152
+ #: dropins/SimpleHistoryNewRowsNotifier.php:40
153
+ msgctxt "New rows notifier: error while checking for new rows"
154
+ msgid "An error occured while checking for new events"
155
+ msgstr "Virhe tarkistettaessa uusia tapahtumia"
156
+
157
+ #: dropins/SimpleHistoryNewRowsNotifier.php:82
158
+ #, php-format
159
+ msgid "1 new event"
160
+ msgid_plural "%d new events"
161
+ msgstr[0] "1 uusi tapahtuma"
162
+ msgstr[1] "%d uutta tapahtumaa"
163
+
164
+ #: dropins/SimpleHistoryRSSDropin.php:49
165
+ msgctxt "rss settings headline"
166
+ msgid "RSS feed"
167
+ msgstr "RSS syöte"
168
+
169
+ #: dropins/SimpleHistoryRSSDropin.php:57
170
+ msgid "Address"
171
+ msgstr "Osoite"
172
+
173
+ #: dropins/SimpleHistoryRSSDropin.php:66
174
+ msgid "Regenerate"
175
+ msgstr "Muodosta uudelleen"
176
+
177
+ #: dropins/SimpleHistoryRSSDropin.php:83
178
+ msgid "Created new secret RSS address"
179
+ msgstr "Luotiin uusi salainen RSS-osoite"
180
+
181
+ #: dropins/SimpleHistoryRSSDropin.php:150
182
+ #: dropins/SimpleHistoryRSSDropin.php:279
183
+ #, php-format
184
+ msgid "History for %s"
185
+ msgstr "Historia kohteelle %s"
186
+
187
+ #: dropins/SimpleHistoryRSSDropin.php:151
188
+ #: dropins/SimpleHistoryRSSDropin.php:280
189
+ #, php-format
190
+ msgid "WordPress History for %s"
191
+ msgstr "WordPressin historia kohteelle %s"
192
+
193
+ #: dropins/SimpleHistoryRSSDropin.php:203
194
+ #, php-format
195
+ msgid "Severity level: %1$s"
196
+ msgstr "Vakavuusaste: %1$s"
197
+
198
+ #: dropins/SimpleHistoryRSSDropin.php:216
199
+ #, php-format
200
+ msgid "+%1$s occasion"
201
+ msgid_plural "+%1$s occasions"
202
+ msgstr[0] "+%1$s kerta"
203
+ msgstr[1] "+%1$s kertaa"
204
+
205
+ #: dropins/SimpleHistoryRSSDropin.php:283
206
+ msgid "Wrong RSS secret"
207
+ msgstr "Väärä RSS-salaus"
208
+
209
+ #: dropins/SimpleHistoryRSSDropin.php:284
210
+ msgid ""
211
+ "Your RSS secret for Simple History RSS feed is wrong. Please see WordPress "
212
+ "settings for current link to the RSS feed."
213
+ msgstr ""
214
+ "RSS-salauksesi Simple History RSS-syötteelle on väärin. Tsekkaa WordPressin "
215
+ "asetukset nykyiseen RSS-feediin."
216
+
217
+ #: dropins/SimpleHistoryRSSDropin.php:335
218
+ msgid ""
219
+ "You can generate a new address for the RSS feed. This is useful if you think "
220
+ "that the address has fallen into the wrong hands."
221
+ msgstr ""
222
+ "Voit luoda uuden osoitteen RSS-feedille. Tämä on erityisen hyödyllinen "
223
+ "silloin kun uskot että osoite on päätynyt vääriin käsiin."
224
+
225
+ #: dropins/SimpleHistoryRSSDropin.php:338
226
+ msgid "Generate new address"
227
+ msgstr "Luo uusi osoite"
228
+
229
+ #: dropins/SimpleHistoryRSSDropin.php:368
230
+ msgid ""
231
+ "Simple History has a RSS feed which you can subscribe to and receive log "
232
+ "updates. Make sure you only share the feed with people you trust, since it "
233
+ "can contain sensitive or confidential information."
234
+ msgstr ""
235
+ "Simple Historylla on RSS-syöte, jonka kautta voit tilata lokipäivityksiä "
236
+ "suoraan. Varmista että jaat linkin ainoastaan ihmisille, joihin luotat, "
237
+ "koska se voi sisältää luottamuksellista tietoa."
238
+
239
+ #: dropins/SimpleHistorySettingsLogtestDropin.php:22
240
+ msgid "Test data (debug)"
241
+ msgstr "Testidata (debug)"
242
+
243
+ #: dropins/SimpleHistorySettingsLogtestDropin.php:227
244
+ msgid "Plugin"
245
+ msgstr "Lisäosa"
246
+
247
+ #: dropins/SimpleHistorySettingsLogtestDropin.php:228
248
+ msgid "Enter title of new page"
249
+ msgstr "Anna uuden sivun otsake"
250
+
251
+ #: dropins/SimpleHistorySettingsStatsDropin.php:29
252
+ msgid "Stats"
253
+ msgstr "Tilastot"
254
+
255
+ #: dropins/SimpleHistorySidebarDropin.php:34
256
+ msgctxt "Sidebar box"
257
+ msgid "Simple History is on GitHub"
258
+ msgstr "Simple History on GitHubissa"
259
+
260
+ #: dropins/SimpleHistorySidebarDropin.php:37
261
+ #, php-format
262
+ msgctxt "Sidebar box"
263
+ msgid ""
264
+ "You can star, fork, or report issues with this plugin over at the <a href="
265
+ "\"%1$s\">GitHub page</a>."
266
+ msgstr ""
267
+ "Voit merkata suosikkeihin, forkata tai ilmoittaa bugeja <a href=\"%1$s"
268
+ "\">lisäosan GitHub-sivulla</a>."
269
+
270
+ #: dropins/SimpleHistorySidebarDropin.php:51
271
+ msgctxt "Sidebar box"
272
+ msgid "Donate to support development"
273
+ msgstr "Lahjoita tukeaksesi kehitystä"
274
+
275
+ #: dropins/SimpleHistorySidebarDropin.php:54
276
+ #, php-format
277
+ msgctxt "Sidebar box"
278
+ msgid ""
279
+ "If you like and use Simple History you should <a href=\"%1$s\">donate to "
280
+ "keep this plugin free</a>."
281
+ msgstr ""
282
+ "Jos pidät Simple Historysta, <a href=\"%1$s\">tee lahjoitus, jotta lisäri "
283
+ "pysyisi ilmaisena</a>."
284
+
285
+ #: dropins/SimpleHistorySidebarDropin.php:68
286
+ msgctxt "Sidebar box"
287
+ msgid "Review this plugin if you like it"
288
+ msgstr "Arvostele lisäosa jos pidät siitä"
289
+
290
+ #: dropins/SimpleHistorySidebarDropin.php:71
291
+ #, php-format
292
+ msgctxt "Sidebar box"
293
+ msgid ""
294
+ "If you like Simple History then please <a href=\"%1$s\">give it a nice "
295
+ "review over at wordpress.org</a>."
296
+ msgstr ""
297
+ "Jos pidät Simple Historysta, <a href=\"%1$s\">voisit antaa hyvän arvion "
298
+ "wordpress.orgissa</a>."
299
+
300
+ #: dropins/SimpleHistorySidebarDropin.php:75
301
+ msgctxt "Sidebar box"
302
+ msgid ""
303
+ "A good review will help new users find this plugin. And it will make the "
304
+ "plugin author very happy :)"
305
+ msgstr ""
306
+ "Hyvä arvio auttaa käyttäjiä löytämään tämän plugarin. Ja se tekee plugarin "
307
+ "tekijän onnelliseksi :)"
308
+
309
+ #: dropins/SimpleHistorySidebarDropin.php:165 loggers/SimpleLogger.php:366
310
+ msgid "Just now"
311
+ msgstr "Juuri nyt"
312
+
313
+ #: examples/example-logger.php:46
314
+ msgid "Got a 404-page when trying to visit \"{request_uri}\""
315
+ msgstr "Saatiin 404-sivu kun yritettiin vierailla \"{request_uri}\""
316
+
317
+ #: examples/example-logger.php:50
318
+ msgctxt "User logger: 404"
319
+ msgid "Pages not found (404 errors)"
320
+ msgstr "Sivuja ei löydy (404 virheitä)"
321
+
322
+ #: examples/example-logger.php:52
323
+ msgctxt "User logger: 404"
324
+ msgid "Pages not found"
325
+ msgstr "Sivuja ei löydy"
326
+
327
+ #: inc/SimpleHistory.php:284
328
+ msgctxt ""
329
+ "Message visible while waiting for log to load from server the first time"
330
+ msgid "Loading history..."
331
+ msgstr "Ladataan historiaa..."
332
+
333
+ #: inc/SimpleHistory.php:321
334
+ msgctxt "page n of n"
335
+ msgid "of"
336
+ msgstr "/"
337
+
338
+ #: inc/SimpleHistory.php:364
339
+ msgid "Sorry, but there are too many similar events to show."
340
+ msgstr "Olen pahoillani, mutta löytyi liian monta samankaltaista tapahtumaa."
341
+
342
+ #: inc/SimpleHistory.php:416
343
+ msgctxt "API: not enought arguments passed"
344
+ msgid "Not enough args specified"
345
+ msgstr "Ei tarpeeksi argumentteja määritelty"
346
+
347
+ #: inc/SimpleHistory.php:568 inc/SimpleHistory.php:894
348
+ msgid "Settings"
349
+ msgstr "Asetukset"
350
+
351
+ #: inc/SimpleHistory.php:579
352
+ msgid "Log (debug)"
353
+ msgstr "Loki (debug)"
354
+
355
+ #: inc/SimpleHistory.php:584
356
+ msgid "Styles example (debug)"
357
+ msgstr "Tyylien esimerkki (debug)"
358
+
359
+ #: inc/SimpleHistory.php:919
360
+ msgid "Simple History"
361
+ msgstr "Tapahtumaloki"
362
+
363
+ #: inc/SimpleHistory.php:997
364
+ msgid "Remove all log items?"
365
+ msgstr "Tyhjennä loki?"
366
+
367
+ #: inc/SimpleHistory.php:999
368
+ msgid "Go to the first page"
369
+ msgstr "Mene ensimmäiselle sivulle"
370
+
371
+ #: inc/SimpleHistory.php:1000
372
+ msgid "Go to the previous page"
373
+ msgstr "Siirry edelliselle sivulle"
374
+
375
+ #: inc/SimpleHistory.php:1001
376
+ msgid "Go to the next page"
377
+ msgstr "Siirry seuraavalle sivulle"
378
+
379
+ #: inc/SimpleHistory.php:1002
380
+ msgid "Go to the last page"
381
+ msgstr "Siirry viimeiselle sivulle"
382
+
383
+ #: inc/SimpleHistory.php:1003
384
+ msgid "Current page"
385
+ msgstr "Nykyinen sivu"
386
+
387
+ #: inc/SimpleHistory.php:1005
388
+ msgid "Oups, the log could not be loaded right now."
389
+ msgstr "Oho, lokia ei voitu ladata juuri nyt."
390
+
391
+ #: inc/SimpleHistory.php:1006
392
+ msgid "Your search did not match any history events."
393
+ msgstr "Hakusi ei vastannut yhtään tapahtumista."
394
+
395
+ #: inc/SimpleHistory.php:1290 inc/SimpleHistory.php:1405
396
+ msgid "Simple History Settings"
397
+ msgstr "Sivuston tapahtumalokin asetukset"
398
+
399
+ #: inc/SimpleHistory.php:1324
400
+ msgid "No valid callback found"
401
+ msgstr "Callbackia ei löytynyt"
402
+
403
+ #: inc/SimpleHistory.php:1387
404
+ msgctxt "dashboard menu name"
405
+ msgid "Simple History"
406
+ msgstr "Tapahtumaloki"
407
+
408
+ #: inc/SimpleHistory.php:1426
409
+ msgid "Cleared database"
410
+ msgstr "Tietokanta tyhjennetty"
411
+
412
+ #: inc/SimpleHistory.php:1453
413
+ msgid "Show history"
414
+ msgstr "Näytä historia"
415
+
416
+ #: inc/SimpleHistory.php:1466
417
+ msgid "Number of items per page"
418
+ msgstr "Kohteiden määrä per sivu"
419
+
420
+ #: inc/SimpleHistory.php:1478
421
+ msgid "Clear log"
422
+ msgstr "Siivoa loki"
423
+
424
+ #: inc/SimpleHistory.php:1514
425
+ msgctxt "history page headline"
426
+ msgid "Simple History"
427
+ msgstr "Tapahtumaloki"
428
+
429
+ #: inc/SimpleHistory.php:1617
430
+ msgid "on the dashboard"
431
+ msgstr "ohjausnäkymässä"
432
+
433
+ #: inc/SimpleHistory.php:1622
434
+ msgid "as a page under the dashboard menu"
435
+ msgstr "sivuna ohjausnäkymän valikossa"
436
+
437
+ #: inc/SimpleHistory.php:1638
438
+ #, php-format
439
+ msgid "Items in the database are automatically removed after %1$s days."
440
+ msgstr "Kohteet tietokannassa poistetaan automaattisesti %1$s päivän jälkeen."
441
+
442
+ #: inc/SimpleHistory.php:1640
443
+ msgid "Items in the database are kept forever."
444
+ msgstr "Kohteet tietokannassa pidetään ikuisesti."
445
+
446
+ #: inc/SimpleHistory.php:1644
447
+ msgid "Clear log now"
448
+ msgstr "Siivoa loki nyt"
449
+
450
+ #: inc/SimpleHistory.php:1696
451
+ msgid "The log for Simple History was cleared ({num_rows} rows were removed)."
452
+ msgstr "Tapahtumaloki siivottiin ({num_rows} riviä poistettiin)."
453
+
454
+ #: inc/SimpleHistory.php:1785
455
+ msgctxt "simple-history"
456
+ msgid "Simple History removed one event that were older than {days} days"
457
+ msgid_plural ""
458
+ "Simple History removed {num_rows} events that were older than {days} days"
459
+ msgstr[0] ""
460
+ "Tapahtumaloki poisti yhden tapahtuman joka oli vanhempi kuin {days} päivää"
461
+ msgstr[1] ""
462
+ "Tapahtumaloki poisti {num_rows} tapahtumaa, jotka olivat vanhempia kuin "
463
+ "{days} päivää"
464
+
465
+ #: inc/SimpleHistory.php:1960
466
+ #, php-format
467
+ msgid "+%1$s similar event"
468
+ msgid_plural "+%1$s similar events"
469
+ msgstr[0] "+%1$s samankaltainen tapahtuma"
470
+ msgstr[1] "+%1$s samankaltaista tapahtumaa"
471
+
472
+ #: inc/SimpleHistory.php:1967
473
+ msgid "Loading…"
474
+ msgstr "Ladataan..."
475
+
476
+ #: inc/SimpleHistory.php:1974
477
+ #, php-format
478
+ msgid "Showing %1$s more"
479
+ msgstr "Näytetään %1$s lisää"
480
+
481
+ #: inc/SimpleHistory.php:2013
482
+ msgid "Context data"
483
+ msgstr "Kontekstidata"
484
+
485
+ #: inc/SimpleHistory.php:2014
486
+ msgid "This is potentially useful meta data that a logger has saved."
487
+ msgstr ""
488
+ "Tämä on potentiaalisesti hyödyllinen metadata, jonka logittaja on "
489
+ "tallentanut."
490
+
491
+ #: inc/SimpleHistory.php:2245
492
+ msgctxt "Log level in gui"
493
+ msgid "emergency"
494
+ msgstr "hätätilanne"
495
+
496
+ #: inc/SimpleHistory.php:2249
497
+ msgctxt "Log level in gui"
498
+ msgid "alert"
499
+ msgstr "hälytys"
500
+
501
+ #: inc/SimpleHistory.php:2253
502
+ msgctxt "Log level in gui"
503
+ msgid "critical"
504
+ msgstr "kriittinne"
505
+
506
+ #: inc/SimpleHistory.php:2257
507
+ msgctxt "Log level in gui"
508
+ msgid "error"
509
+ msgstr "virhe"
510
+
511
+ #: inc/SimpleHistory.php:2261
512
+ msgctxt "Log level in gui"
513
+ msgid "warning"
514
+ msgstr "varoitus"
515
+
516
+ #: inc/SimpleHistory.php:2265
517
+ msgctxt "Log level in gui"
518
+ msgid "notice"
519
+ msgstr "ilmoitus"
520
+
521
+ #: inc/SimpleHistory.php:2269
522
+ msgctxt "Log level in gui"
523
+ msgid "info"
524
+ msgstr "info"
525
+
526
+ #: inc/SimpleHistory.php:2273
527
+ msgctxt "Log level in gui"
528
+ msgid "debug"
529
+ msgstr "virheenkorjaus"
530
+
531
+ #: inc/SimpleHistory.php:2278
532
+ msgctxt "Log level in gui"
533
+ msgid "Emergency"
534
+ msgstr "Hätätapaus"
535
+
536
+ #: inc/SimpleHistory.php:2282
537
+ msgctxt "Log level in gui"
538
+ msgid "Alert"
539
+ msgstr "Hälytys"
540
+
541
+ #: inc/SimpleHistory.php:2286
542
+ msgctxt "Log level in gui"
543
+ msgid "Critical"
544
+ msgstr "Kriittinen"
545
+
546
+ #: inc/SimpleHistory.php:2290
547
+ msgctxt "Log level in gui"
548
+ msgid "Error"
549
+ msgstr "Virhe"
550
+
551
+ #: inc/SimpleHistory.php:2294
552
+ msgctxt "Log level in gui"
553
+ msgid "Warning"
554
+ msgstr "Varoitus"
555
+
556
+ #: inc/SimpleHistory.php:2298
557
+ msgctxt "Log level in gui"
558
+ msgid "Notice"
559
+ msgstr "Ilmoitus"
560
+
561
+ #: inc/SimpleHistory.php:2302
562
+ msgctxt "Log level in gui"
563
+ msgid "Info"
564
+ msgstr "Info"
565
+
566
+ #: inc/SimpleHistory.php:2306
567
+ msgctxt "Log level in gui"
568
+ msgid "Debug"
569
+ msgstr "Virheenkorjaus"
570
+
571
+ #: inc/SimpleHistory.php:2629
572
+ msgid "No events today so far."
573
+ msgstr "Tänään sivustolla ei ole vielä tapahtunut mitään."
574
+
575
+ #: inc/SimpleHistory.php:2648
576
+ msgid "One event today from one user."
577
+ msgstr "Yksi tapahtuma tänään yhdeltä käyttäjältä."
578
+
579
+ #: inc/SimpleHistory.php:2654
580
+ msgid "One event today from one source."
581
+ msgstr "Yksi tapahtuma tänään yhdestä lähteestä."
582
+
583
+ #: inc/SimpleHistory.php:2660
584
+ #, php-format
585
+ msgid "%1$d events today from one user."
586
+ msgstr "%1$d tapahtumaa tänään yhdeltä käyttäjältä."
587
+
588
+ #: inc/SimpleHistory.php:2666
589
+ #, php-format
590
+ msgid "%1$d events today from %2$d users."
591
+ msgstr "%1$d tapahtumaa tänään %2$d käyttäjältä."
592
+
593
+ #: inc/SimpleHistory.php:2672 inc/SimpleHistory.php:2678
594
+ #, php-format
595
+ msgid "%1$d events today from one user and one other source."
596
+ msgstr ""
597
+ "%1$d tapahtumaa tänään yhdeltä käyttäjältä ja yhdestä toisesta lähteestä."
598
+
599
+ #: inc/SimpleHistory.php:2684
600
+ #, php-format
601
+ msgid "%1$d events today from one user and %3$d other sources."
602
+ msgstr "%1$d tapahtumaa tänään yhdeltä käyttäjältä ja %3$d toisesta lähteestä."
603
+
604
+ #: inc/SimpleHistory.php:2690
605
+ #, php-format
606
+ msgid "%1$s events today from %2$d users and %3$d other sources."
607
+ msgstr "%1$s tapahtumaa tänään %2$d käyttäjältä ja %3$d toisesta lähteestä."
608
+
609
+ #: index.php:76
610
+ #, php-format
611
+ msgid ""
612
+ "Simple History is a great plugin, but to use it your server must have at "
613
+ "least PHP 5.3 installed (you have version %s)."
614
+ msgstr ""
615
+ "Tapahtumaloki (Simple History) on mahtava lisäosa, mutta käyttääksesi sitä "
616
+ "palvelimellasi täytyy olla ainakin PHP 5.43 asennettuna (sinulla on versio "
617
+ "%s)."
618
+
619
+ #: loggers/SimpleCommentsLogger.php:98
620
+ msgctxt "A comment was added to the database by a non-logged in internet user"
621
+ msgid "Added a comment to {comment_post_type} \"{comment_post_title}\""
622
+ msgstr "Lisätty kommentti {comment_post_type} \"{comment_post_title}\""
623
+
624
+ #: loggers/SimpleCommentsLogger.php:104
625
+ msgctxt "A comment was added to the database by a logged in user"
626
+ msgid "Added a comment to {comment_post_type} \"{comment_post_title}\""
627
+ msgstr "Lisätty kommentti {comment_post_type} \"{comment_post_title}\""
628
+
629
+ #: loggers/SimpleCommentsLogger.php:110
630
+ msgctxt "A comment was approved"
631
+ msgid ""
632
+ "Approved a comment to \"{comment_post_title}\" by {comment_author} "
633
+ "({comment_author_email})"
634
+ msgstr ""
635
+ "Hyväksytty kommentti: \"{comment_post_title}\", jonka kirjoitti "
636
+ "{comment_author} ({comment_author_email})"
637
+
638
+ #: loggers/SimpleCommentsLogger.php:116
639
+ msgctxt "A comment was was unapproved"
640
+ msgid ""
641
+ "Unapproved a comment to \"{comment_post_title}\" by {comment_author} "
642
+ "({comment_author_email})"
643
+ msgstr ""
644
+ "Hylätty kommentti: \"{comment_post_title}\", jonka kirjoitti "
645
+ "{comment_author} ({comment_author_email})"
646
+
647
+ #: loggers/SimpleCommentsLogger.php:122
648
+ msgctxt "A comment was marked as spam"
649
+ msgid "Marked a comment to post \"{comment_post_title}\" as spam"
650
+ msgstr "Merkattu kommentti \"{comment_post_title}\" roskapostiksi"
651
+
652
+ #: loggers/SimpleCommentsLogger.php:128
653
+ msgctxt "A comment was marked moved to the trash"
654
+ msgid ""
655
+ "Trashed a comment to \"{comment_post_title}\" by {comment_author} "
656
+ "({comment_author_email})"
657
+ msgstr ""
658
+ "Kommentti \"{comment_post_title}\", jonka kirjoitti {comment_author} "
659
+ "({comment_author_email}) on siirretty roskakoriin"
660
+
661
+ #: loggers/SimpleCommentsLogger.php:134
662
+ msgctxt "A comment was restored from the trash"
663
+ msgid ""
664
+ "Restored a comment to \"{comment_post_title}\" by {comment_author} "
665
+ "({comment_author_email}) from the trash"
666
+ msgstr ""
667
+ "Palautettu roskakorista kommentti \"{comment_post_title}\", jonka kirjoitti "
668
+ "{comment_author} ({comment_author_email})"
669
+
670
+ #: loggers/SimpleCommentsLogger.php:140
671
+ msgctxt "A comment was deleted"
672
+ msgid ""
673
+ "Deleted a comment to \"{comment_post_title}\" by {comment_author} "
674
+ "({comment_author_email})"
675
+ msgstr ""
676
+ "Poistettu kommentti \"{comment_post_title}\", jonka kirjoitti "
677
+ "{comment_author} ({comment_author_email})"
678
+
679
+ #: loggers/SimpleCommentsLogger.php:146
680
+ msgctxt "A comment was edited"
681
+ msgid ""
682
+ "Edited a comment to \"{comment_post_title}\" by {comment_author} "
683
+ "({comment_author_email})"
684
+ msgstr ""
685
+ "Muokattu kommenttia \"{comment_post_title}\", jonka kirjoitti "
686
+ "{comment_author} ({comment_author_email})"
687
+
688
+ #: loggers/SimpleCommentsLogger.php:153
689
+ msgctxt ""
690
+ "A trackback was added to the database by a non-logged in internet user"
691
+ msgid "Added a trackback to {comment_post_type} \"{comment_post_title}\""
692
+ msgstr "Lisätty paluuviite {comment_post_type} \"{comment_post_title}\""
693
+
694
+ #: loggers/SimpleCommentsLogger.php:159
695
+ msgctxt "A trackback was added to the database by a logged in user"
696
+ msgid "Added a trackback to {comment_post_type} \"{comment_post_title}\""
697
+ msgstr "Lisätty paluuviite {comment_post_type} \"{comment_post_title}\""
698
+
699
+ #: loggers/SimpleCommentsLogger.php:165
700
+ msgctxt "A trackback was approved"
701
+ msgid ""
702
+ "Approved a trackback to \"{comment_post_title}\" by {comment_author} "
703
+ "({comment_author_email})"
704
+ msgstr ""
705
+ "Sallittu paluuviite \"{comment_post_title}\", jonka kirjoitti "
706
+ "{comment_author} ({comment_author_email})"
707
+
708
+ #: loggers/SimpleCommentsLogger.php:171
709
+ msgctxt "A trackback was was unapproved"
710
+ msgid ""
711
+ "Unapproved a trackback to \"{comment_post_title}\" by {comment_author} "
712
+ "({comment_author_email})"
713
+ msgstr ""
714
+ "Hylätty paluuviite \"{comment_post_title}\" henkilöltä {comment_author} "
715
+ "({comment_author_email})"
716
+
717
+ #: loggers/SimpleCommentsLogger.php:177
718
+ msgctxt "A trackback was marked as spam"
719
+ msgid "Marked a trackback to post \"{comment_post_title}\" as spam"
720
+ msgstr "Merkattu paluuviite \"{comment_post_title}\" spämmiksi"
721
+
722
+ #: loggers/SimpleCommentsLogger.php:183
723
+ msgctxt "A trackback was marked moved to the trash"
724
+ msgid ""
725
+ "Trashed a trackback to \"{comment_post_title}\" by {comment_author} "
726
+ "({comment_author_email})"
727
+ msgstr ""
728
+ "Siirretty paluuviite \"{comment_post_title}\" kirjoittajalta "
729
+ "{comment_author} ({comment_author_email}) roskakoriin"
730
+
731
+ #: loggers/SimpleCommentsLogger.php:189
732
+ msgctxt "A trackback was restored from the trash"
733
+ msgid ""
734
+ "Restored a trackback to \"{comment_post_title}\" by {comment_author} "
735
+ "({comment_author_email}) from the trash"
736
+ msgstr ""
737
+ "Palautettu paluuviite \"{comment_post_title}\" kirjoittajalta "
738
+ "{comment_author} ({comment_author_email}) roskakorista"
739
+
740
+ #: loggers/SimpleCommentsLogger.php:195
741
+ msgctxt "A trackback was deleted"
742
+ msgid ""
743
+ "Deleted a trackback to \"{comment_post_title}\" by {comment_author} "
744
+ "({comment_author_email})"
745
+ msgstr ""
746
+ "Poistettu paluuviite \"{comment_post_title}\" kirjoittajalta "
747
+ "{comment_author} ({comment_author_email})"
748
+
749
+ #: loggers/SimpleCommentsLogger.php:201
750
+ msgctxt "A trackback was edited"
751
+ msgid ""
752
+ "Edited a trackback to \"{comment_post_title}\" by {comment_author} "
753
+ "({comment_author_email})"
754
+ msgstr ""
755
+ "Muokattu paluuviitettä \"{comment_post_title}\" kirjoittajalta "
756
+ "{comment_author} ({comment_author_email})"
757
+
758
+ #: loggers/SimpleCommentsLogger.php:208
759
+ msgctxt ""
760
+ "A trackback was added to the database by a non-logged in internet user"
761
+ msgid "Added a pingback to {comment_post_type} \"{comment_post_title}\""
762
+ msgstr "Lisätty paluuviite {comment_post_type} \"{comment_post_title}\""
763
+
764
+ #: loggers/SimpleCommentsLogger.php:214
765
+ msgctxt "A pingback was added to the database by a logged in user"
766
+ msgid "Added a pingback to {comment_post_type} \"{comment_post_title}\""
767
+ msgstr "Lisätty paluuviite {comment_post_type} \"{comment_post_title}\""
768
+
769
+ #: loggers/SimpleCommentsLogger.php:220
770
+ msgctxt "A pingback was approved"
771
+ msgid ""
772
+ "Approved a pingback to \"{comment_post_title}\" by "
773
+ "\"{comment_author}\"\" ({comment_author_email})"
774
+ msgstr ""
775
+ "Hyväksytty paluuviite \"{comment_post_title}\" kirjoittajalta "
776
+ "\"{comment_author}\"\" ({comment_author_email})"
777
+
778
+ #: loggers/SimpleCommentsLogger.php:226
779
+ msgctxt "A pingback was was unapproved"
780
+ msgid ""
781
+ "Unapproved a pingback to \"{comment_post_title}\" by "
782
+ "\"{comment_author}\" ({comment_author_email})"
783
+ msgstr ""
784
+ "Hylätty paluuviite \"{comment_post_title}\" kirjoittajalta "
785
+ "\"{comment_author}\" ({comment_author_email})"
786
+
787
+ #: loggers/SimpleCommentsLogger.php:232
788
+ msgctxt "A pingback was marked as spam"
789
+ msgid "Marked a pingback to post \"{comment_post_title}\" as spam"
790
+ msgstr "Merkattu paluuviite \"{comment_post_title}\" roskapostiksi"
791
+
792
+ #: loggers/SimpleCommentsLogger.php:238
793
+ msgctxt "A pingback was marked moved to the trash"
794
+ msgid ""
795
+ "Trashed a pingback to \"{comment_post_title}\" by {comment_author} "
796
+ "({comment_author_email})"
797
+ msgstr ""
798
+ "Siirretty paluuviite \"{comment_post_title}\" kirjoittajalta "
799
+ "{comment_author} ({comment_author_email}) roskakoriin"
800
+
801
+ #: loggers/SimpleCommentsLogger.php:244
802
+ msgctxt "A pingback was restored from the trash"
803
+ msgid ""
804
+ "Restored a pingback to \"{comment_post_title}\" by {comment_author} "
805
+ "({comment_author_email}) from the trash"
806
+ msgstr ""
807
+ "Palautettu roskakorista paluuviite \"{comment_post_title}\", jonka kirjoitti "
808
+ "{comment_author} ({comment_author_email})"
809
+
810
+ #: loggers/SimpleCommentsLogger.php:250
811
+ msgctxt "A pingback was deleted"
812
+ msgid ""
813
+ "Deleted a pingback to \"{comment_post_title}\" by {comment_author} "
814
+ "({comment_author_email})"
815
+ msgstr ""
816
+ "Poistettu paluuviite \"{comment_post_title}\", jonka kirjoitti "
817
+ "{comment_author} ({comment_author_email})"
818
+
819
+ #: loggers/SimpleCommentsLogger.php:256
820
+ msgctxt "A pingback was edited"
821
+ msgid ""
822
+ "Edited a pingback to \"{comment_post_title}\" by {comment_author} "
823
+ "({comment_author_email})"
824
+ msgstr ""
825
+ "Muokattu paluuviitettä \"{comment_post_title}\", jonka kirjoitti "
826
+ "{comment_author} ({comment_author_email})"
827
+
828
+ #: loggers/SimpleCommentsLogger.php:266
829
+ msgctxt "Comments logger: search"
830
+ msgid "Comments"
831
+ msgstr "Kommentit"
832
+
833
+ #: loggers/SimpleCommentsLogger.php:267
834
+ msgctxt "Comments logger: search"
835
+ msgid "All comments activity"
836
+ msgstr "Kaikki kommenttien toiminnat"
837
+
838
+ #: loggers/SimpleCommentsLogger.php:269
839
+ msgctxt "Comments logger: search"
840
+ msgid "Added comments"
841
+ msgstr "Lisätyt kommentit"
842
+
843
+ #: loggers/SimpleCommentsLogger.php:277
844
+ msgctxt "Comments logger: search"
845
+ msgid "Edited comments"
846
+ msgstr "Muokatut kommentit"
847
+
848
+ #: loggers/SimpleCommentsLogger.php:282
849
+ msgctxt "Comments logger: search"
850
+ msgid "Approved comments"
851
+ msgstr "Sallitut kommentit"
852
+
853
+ #: loggers/SimpleCommentsLogger.php:287
854
+ msgctxt "Comments logger: search"
855
+ msgid "Held comments"
856
+ msgstr "Pidossa olevat kommentit"
857
+
858
+ #: loggers/SimpleCommentsLogger.php:292
859
+ msgctxt "Comments logger: search"
860
+ msgid "Comments status changed to spam"
861
+ msgstr "Kommentin tila muutettu spämmiksi"
862
+
863
+ #: loggers/SimpleCommentsLogger.php:297
864
+ msgctxt "Comments logger: search"
865
+ msgid "Trashed comments"
866
+ msgstr "Kommentit siirretty roskiin"
867
+
868
+ #: loggers/SimpleCommentsLogger.php:302
869
+ msgctxt "Comments logger: search"
870
+ msgid "Untrashed comments"
871
+ msgstr "Palautetut kommentit"
872
+
873
+ #: loggers/SimpleCommentsLogger.php:307
874
+ msgctxt "Comments logger: search"
875
+ msgid "Deleted comments"
876
+ msgstr "Poistetut kommentit"
877
+
878
+ #: loggers/SimpleCommentsLogger.php:604 loggers/SimpleCommentsLogger.php:617
879
+ #: loggers/SimpleCommentsLogger.php:631
880
+ msgctxt "comments logger - detailed output comment status"
881
+ msgid "Status"
882
+ msgstr "Tila"
883
+
884
+ #: loggers/SimpleCommentsLogger.php:606 loggers/SimpleCommentsLogger.php:619
885
+ #: loggers/SimpleCommentsLogger.php:633
886
+ msgctxt "comments logger - detailed output author"
887
+ msgid "Name"
888
+ msgstr "Nimi"
889
+
890
+ #: loggers/SimpleCommentsLogger.php:607 loggers/SimpleCommentsLogger.php:620
891
+ #: loggers/SimpleCommentsLogger.php:634
892
+ msgctxt "comments logger - detailed output email"
893
+ msgid "Email"
894
+ msgstr "Sähköposti"
895
+
896
+ #: loggers/SimpleCommentsLogger.php:608 loggers/SimpleCommentsLogger.php:621
897
+ msgctxt "comments logger - detailed output content"
898
+ msgid "Content"
899
+ msgstr "Sisältö"
900
+
901
+ #: loggers/SimpleCommentsLogger.php:635
902
+ msgctxt "comments logger - detailed output content"
903
+ msgid "Comment"
904
+ msgstr "Kommentti"
905
+
906
+ #: loggers/SimpleCommentsLogger.php:689
907
+ msgid "Spam"
908
+ msgstr "Roskaposti"
909
+
910
+ #: loggers/SimpleCommentsLogger.php:691
911
+ msgid "Approved"
912
+ msgstr "Hyväksytty"
913
+
914
+ #: loggers/SimpleCommentsLogger.php:693
915
+ msgid "Pending"
916
+ msgstr "Pidossa"
917
+
918
+ #: loggers/SimpleCommentsLogger.php:707
919
+ msgid "Trackback"
920
+ msgstr "Paluuviite"
921
+
922
+ #: loggers/SimpleCommentsLogger.php:709
923
+ msgid "Pingback"
924
+ msgstr "Paluuviite"
925
+
926
+ #: loggers/SimpleCommentsLogger.php:711
927
+ msgid "Comment"
928
+ msgstr "Kommentti"
929
+
930
+ #: loggers/SimpleCommentsLogger.php:771
931
+ msgctxt "comments logger - edit comment"
932
+ msgid "View/Edit"
933
+ msgstr "Näytä/Muokkaa"
934
+
935
+ #: loggers/SimpleCoreUpdatesLogger.php:31
936
+ msgid "Updated WordPress to {new_version} from {prev_version}"
937
+ msgstr "Päivitti WordPressin versioon {new_version} versiosta {prev_version}"
938
+
939
+ #: loggers/SimpleCoreUpdatesLogger.php:32
940
+ msgid "WordPress auto-updated to {new_version} from {prev_version}"
941
+ msgstr ""
942
+ "WordPress päivitetty automaattisesti versioon {new_version} versiosta "
943
+ "{prev_version}"
944
+
945
+ #: loggers/SimpleCoreUpdatesLogger.php:36
946
+ msgctxt "User logger: search"
947
+ msgid "WordPress Core"
948
+ msgstr "WordPressin ydin"
949
+
950
+ #: loggers/SimpleCoreUpdatesLogger.php:38
951
+ msgctxt "User logger: search"
952
+ msgid "WordPress core updates"
953
+ msgstr "Wordpressin ytimen päivitykset"
954
+
955
+ #: loggers/SimpleExportLogger.php:25
956
+ msgid "Created XML export"
957
+ msgstr "Luotu XML-tiedosto"
958
+
959
+ #: loggers/SimpleExportLogger.php:29
960
+ msgctxt "Export logger: search"
961
+ msgid "Export"
962
+ msgstr "Vie"
963
+
964
+ #: loggers/SimpleExportLogger.php:31
965
+ msgctxt "Export logger: search"
966
+ msgid "Created exports"
967
+ msgstr "Luodut viedyt tiedostot"
968
+
969
+ #: loggers/SimpleLegacyLogger.php:90
970
+ #, php-format
971
+ msgid "By %s"
972
+ msgstr "Kirjoittajalta %s"
973
+
974
+ #: loggers/SimpleLegacyLogger.php:95
975
+ #, php-format
976
+ msgid "%d occasions"
977
+ msgstr "%d tilannetta"
978
+
979
+ #: loggers/SimpleLogger.php:220
980
+ msgctxt "header output when initiator is the currently logged in user"
981
+ msgid "You"
982
+ msgstr "Sinä"
983
+
984
+ #: loggers/SimpleLogger.php:234
985
+ #, php-format
986
+ msgid "Deleted user (had id %1$s, email %2$s, login %3$s)"
987
+ msgstr ""
988
+ "Poistettu käyttäjä (oli tunnuksella %1$s, sähköpostilla %2$s, loginilla %3$s)"
989
+
990
+ #: loggers/SimpleLogger.php:260
991
+ msgid "Anonymous web user"
992
+ msgstr "Sivuston anonyymi kävijä"
993
+
994
+ #: loggers/SimpleLogger.php:293
995
+ #, php-format
996
+ msgid "Anonymous user from %1$s"
997
+ msgstr "Sivuston anonyymi kävijä IP-osoitteesta %1$s"
998
+
999
+ #: loggers/SimpleLogger.php:311
1000
+ msgctxt "Event header output, when initiator is unknown"
1001
+ msgid "Other"
1002
+ msgstr "Muu"
1003
+
1004
+ #: loggers/SimpleLogger.php:371
1005
+ msgid "M j, Y \\a\\t G:i"
1006
+ msgstr "M j, Y \\a\\t G:i"
1007
+
1008
+ #: loggers/SimpleLogger.php:379
1009
+ #, php-format
1010
+ msgid "%1$s ago"
1011
+ msgstr "%1$s sitten"
1012
+
1013
+ #: loggers/SimpleMediaLogger.php:25
1014
+ msgid "Created {post_type} \"{attachment_title}\""
1015
+ msgstr "Luotu {post_type} \"{attachment_title}\""
1016
+
1017
+ #: loggers/SimpleMediaLogger.php:26
1018
+ msgid "Edited {post_type} \"{attachment_title}\""
1019
+ msgstr "Muokattu {post_type} \"{attachment_title}\""
1020
+
1021
+ #: loggers/SimpleMediaLogger.php:27
1022
+ msgid "Deleted {post_type} \"{attachment_title}\" (\"{attachment_filename}\")"
1023
+ msgstr ""
1024
+ "Poistettu {post_type} \"{attachment_title}\" (\"{attachment_filename}\")"
1025
+
1026
+ #: loggers/SimpleMediaLogger.php:31
1027
+ msgctxt "Media logger: search"
1028
+ msgid "Media"
1029
+ msgstr "Media"
1030
+
1031
+ #: loggers/SimpleMediaLogger.php:32
1032
+ msgctxt "Media logger: search"
1033
+ msgid "All media activity"
1034
+ msgstr "Kaikki media-aktiviteetti"
1035
+
1036
+ #: loggers/SimpleMediaLogger.php:34
1037
+ msgctxt "Media logger: search"
1038
+ msgid "Added media"
1039
+ msgstr "Lisätty media"
1040
+
1041
+ #: loggers/SimpleMediaLogger.php:37
1042
+ msgctxt "Media logger: search"
1043
+ msgid "Updated media"
1044
+ msgstr "Päivitti mediakirjastoa"
1045
+
1046
+ #: loggers/SimpleMediaLogger.php:40
1047
+ msgctxt "Media logger: search"
1048
+ msgid "Deleted media"
1049
+ msgstr "Poisti mediaa"
1050
+
1051
+ #: loggers/SimpleMediaLogger.php:122
1052
+ msgid "Edited {post_type} <a href=\"{edit_link}\">\"{attachment_title}\"</a>"
1053
+ msgstr ""
1054
+ "Muokattu {post_type} <a href=\"{edit_link}\">\"{attachment_title}\"</a>"
1055
+
1056
+ #: loggers/SimpleMediaLogger.php:126
1057
+ msgid "Uploaded {post_type} <a href=\"{edit_link}\">\"{attachment_title}\"</a>"
1058
+ msgstr "Latasi {post_type} <a href=\"{edit_link}\">\"{attachment_title}\"</a>"
1059
+
1060
+ #: loggers/SimpleMediaLogger.php:238
1061
+ msgid "{attachment_thumb}"
1062
+ msgstr "{attachment_thumb}"
1063
+
1064
+ #: loggers/SimpleMediaLogger.php:247
1065
+ msgid "{attachment_size_format}"
1066
+ msgstr "{attachment_size_format}"
1067
+
1068
+ #: loggers/SimpleMediaLogger.php:248
1069
+ msgid "{attachment_filetype_extension}"
1070
+ msgstr "{attachment_filetype_extension}"
1071
+
1072
+ #: loggers/SimpleMediaLogger.php:250
1073
+ msgid "{full_image_width} × {full_image_height}"
1074
+ msgstr "{full_image_width} × {full_image_height}"
1075
+
1076
+ #: loggers/SimpleMenuLogger.php:25
1077
+ msgid "Created menu \"{menu_name}\""
1078
+ msgstr "Luotu valikko \"{menu_name}\""
1079
+
1080
+ #: loggers/SimpleMenuLogger.php:26
1081
+ msgid "Edited menu \"{menu_name}\""
1082
+ msgstr "Muokattu valikkoa \"{menu_name}\""
1083
+
1084
+ #: loggers/SimpleMenuLogger.php:27
1085
+ msgid "Deleted menu \"{menu_name}\""
1086
+ msgstr "Poistettu valikko \"{menu_name}\""
1087
+
1088
+ #: loggers/SimpleMenuLogger.php:28
1089
+ msgid "Edited a menu item"
1090
+ msgstr "Muokkasi valikon kohtaa"
1091
+
1092
+ #: loggers/SimpleMenuLogger.php:29
1093
+ msgid "Updated menu locations"
1094
+ msgstr "Päivitti valikon sijaintia"
1095
+
1096
+ #: loggers/SimpleMenuLogger.php:33
1097
+ msgctxt "Menu logger: search"
1098
+ msgid "Menus"
1099
+ msgstr "Valikot"
1100
+
1101
+ #: loggers/SimpleMenuLogger.php:34
1102
+ msgctxt "Menu updates logger: search"
1103
+ msgid "All menu activity"
1104
+ msgstr "Kaikki valikko-aktiviteetti"
1105
+
1106
+ #: loggers/SimpleMenuLogger.php:36
1107
+ msgctxt "Menu updates logger: search"
1108
+ msgid "Created menus"
1109
+ msgstr "Luodut valikot"
1110
+
1111
+ #: loggers/SimpleMenuLogger.php:39
1112
+ msgctxt "Menu updates logger: search"
1113
+ msgid "Edited menus"
1114
+ msgstr "Muokatut valikot"
1115
+
1116
+ #: loggers/SimpleMenuLogger.php:44
1117
+ msgctxt "Menu updates logger: search"
1118
+ msgid "Deleted menus"
1119
+ msgstr "Poistetut valikot"
1120
+
1121
+ #: loggers/SimpleMenuLogger.php:329
1122
+ #, php-format
1123
+ msgctxt "menu logger"
1124
+ msgid "%1$s menu item added"
1125
+ msgid_plural "%1$s menu items added"
1126
+ msgstr[0] "%1$s valikon kohta lisätty"
1127
+ msgstr[1] "%1$s valikon kohtaa lisätty"
1128
+
1129
+ #: loggers/SimpleMenuLogger.php:336
1130
+ #, php-format
1131
+ msgctxt "menu logger"
1132
+ msgid "%1$s menu item removed"
1133
+ msgid_plural "%1$s menu items removed"
1134
+ msgstr[0] "%1$s valikon kohta poistettu"
1135
+ msgstr[1] "%1$s valikon kohtaa poistettu"
1136
+
1137
+ #: loggers/SimpleOptionsLogger.php:142
1138
+ msgid "Updated option \"{option}\""
1139
+ msgstr "Päivitti valintaa \"{option}\""
1140
+
1141
+ #: loggers/SimpleOptionsLogger.php:155
1142
+ msgctxt "Options logger: search"
1143
+ msgid "Options"
1144
+ msgstr "Asetukset"
1145
+
1146
+ #: loggers/SimpleOptionsLogger.php:157
1147
+ msgctxt "Options logger: search"
1148
+ msgid "Changed options"
1149
+ msgstr "Muutetut asetukset"
1150
+
1151
+ #: loggers/SimpleOptionsLogger.php:244 loggers/SimpleThemeLogger.php:572
1152
+ msgid "New value"
1153
+ msgstr "Uusi arvo"
1154
+
1155
+ #: loggers/SimpleOptionsLogger.php:255 loggers/SimpleThemeLogger.php:584
1156
+ msgid "Old value"
1157
+ msgstr "Vanha arvo"
1158
+
1159
+ #: loggers/SimpleOptionsLogger.php:270 loggers/SimpleOptionsLogger.php:287
1160
+ msgid "Settings page"
1161
+ msgstr "Asetukset-sivu"
1162
+
1163
+ #: loggers/SimplePluginLogger.php:28
1164
+ msgctxt "Plugin was non-silently activated by a user"
1165
+ msgid "Activated plugin \"{plugin_name}\""
1166
+ msgstr "Aktivoi lisäosan \"{plugin_name}\""
1167
+
1168
+ #: loggers/SimplePluginLogger.php:34
1169
+ msgctxt "Plugin was non-silently deactivated by a user"
1170
+ msgid "Deactivated plugin \"{plugin_name}\""
1171
+ msgstr "Lisäosa \"{plugin_name}\" otettu pois käytöstä"
1172
+
1173
+ #: loggers/SimplePluginLogger.php:40
1174
+ msgctxt "Plugin was installed"
1175
+ msgid "Installed plugin \"{plugin_name}\""
1176
+ msgstr "Lisäosa \"{plugin_name}\" otettu käyttöön"
1177
+
1178
+ #: loggers/SimplePluginLogger.php:46
1179
+ msgctxt "Plugin failed to install"
1180
+ msgid "Failed to install plugin \"{plugin_name}\""
1181
+ msgstr "Lisäosan \"{plugin_name}\" asennus epäonnistui"
1182
+
1183
+ #: loggers/SimplePluginLogger.php:52
1184
+ msgctxt "Plugin was updated"
1185
+ msgid ""
1186
+ "Updated plugin \"{plugin_name}\" to version {plugin_version} from "
1187
+ "{plugin_prev_version}"
1188
+ msgstr ""
1189
+ "Päivitti lisäosan \"{plugin_name}\" versioon {plugin_version} versiosta "
1190
+ "{plugin_prev_version}"
1191
+
1192
+ #: loggers/SimplePluginLogger.php:58
1193
+ msgctxt "Plugin update failed"
1194
+ msgid "Updated plugin \"{plugin_name}\""
1195
+ msgstr "Päivitti lisäosan \"{plugin_name}\""
1196
+
1197
+ #: loggers/SimplePluginLogger.php:64
1198
+ msgctxt "Plugin file edited"
1199
+ msgid "Edited plugin file \"{plugin_edited_file}\""
1200
+ msgstr "Lisäosan \"{plugin_edited_file}\" tiedostoa muokattu"
1201
+
1202
+ #: loggers/SimplePluginLogger.php:70
1203
+ msgctxt "Plugin files was deleted"
1204
+ msgid "Deleted plugin \"{plugin_name}\""
1205
+ msgstr "Lisäosa \"{plugin_name}\" poistettu"
1206
+
1207
+ #: loggers/SimplePluginLogger.php:77
1208
+ msgctxt "Plugin was updated in bulk"
1209
+ msgid ""
1210
+ "Updated plugin \"{plugin_name}\" to {plugin_version} from "
1211
+ "{plugin_prev_version}"
1212
+ msgstr ""
1213
+ "Päivitti lisäosan \"{plugin_name}\" versioon {plugin_version} versiosta "
1214
+ "{plugin_prev_version}"
1215
+
1216
+ #: loggers/SimplePluginLogger.php:84
1217
+ msgctxt "Plugin logger: search"
1218
+ msgid "Plugins"
1219
+ msgstr "Lisäosat"
1220
+
1221
+ #: loggers/SimplePluginLogger.php:85
1222
+ msgctxt "Plugin logger: search"
1223
+ msgid "All plugin activity"
1224
+ msgstr "Kaikki lisäosa-aktiviteetit"
1225
+
1226
+ #: loggers/SimplePluginLogger.php:87
1227
+ msgctxt "Plugin logger: search"
1228
+ msgid "Activated plugins"
1229
+ msgstr "Aktivoidut lisäosat"
1230
+
1231
+ #: loggers/SimplePluginLogger.php:90
1232
+ msgctxt "Plugin logger: search"
1233
+ msgid "Deactivated plugins"
1234
+ msgstr "Käytöstä poistetut lisäosat"
1235
+
1236
+ #: loggers/SimplePluginLogger.php:93
1237
+ msgctxt "Plugin logger: search"
1238
+ msgid "Installed plugins"
1239
+ msgstr "Asennetut lisäosat"
1240
+
1241
+ #: loggers/SimplePluginLogger.php:96
1242
+ msgctxt "Plugin logger: search"
1243
+ msgid "Failed plugin installs"
1244
+ msgstr "Epäonnistuneet lisäosa-asennukset"
1245
+
1246
+ #: loggers/SimplePluginLogger.php:99
1247
+ msgctxt "Plugin logger: search"
1248
+ msgid "Updated plugins"
1249
+ msgstr "Päivitetyt lisäosat"
1250
+
1251
+ #: loggers/SimplePluginLogger.php:103
1252
+ msgctxt "Plugin logger: search"
1253
+ msgid "Failed plugin updates"
1254
+ msgstr "Epäonnistuneet lisäosien päivitykset"
1255
+
1256
+ #: loggers/SimplePluginLogger.php:106
1257
+ msgctxt "Plugin logger: search"
1258
+ msgid "Edited plugin files"
1259
+ msgstr "Lisäosia, joiden tiedostoja on muokattu"
1260
+
1261
+ #: loggers/SimplePluginLogger.php:109
1262
+ msgctxt "Plugin logger: search"
1263
+ msgid "Deleted plugins"
1264
+ msgstr "Poistetut lisäosat"
1265
+
1266
+ #: loggers/SimplePluginLogger.php:178
1267
+ msgid "You don't have access to this page."
1268
+ msgstr "Sinulla ei ole käyttöoikeuksia tälle sivulle."
1269
+
1270
+ #: loggers/SimplePluginLogger.php:184 loggers/SimplePluginLogger.php:189
1271
+ msgid "Could not find GitHub repository."
1272
+ msgstr "GitHub-repositorya ei löytynyt."
1273
+
1274
+ #: loggers/SimplePluginLogger.php:209
1275
+ #, php-format
1276
+ msgid ""
1277
+ "<p>Viewing <code>readme</code> from repository <code><a target=\"_blank\" "
1278
+ "href=\"%1$s\">%2$s</a></code>.</p>"
1279
+ msgstr ""
1280
+ "<p>Selataa <code>readme</code>-tiedostoa repositorysta <code><a target="
1281
+ "\"_blank\" href=\"%1$s\">%2$s</a></code>.</p>"
1282
+
1283
+ #: loggers/SimplePluginLogger.php:274
1284
+ msgid "You do not have sufficient permissions to delete plugins for this site."
1285
+ msgstr "Sinulla ei ole riittäviä oikeuksia poistaa lisäosia tältä sivustolta."
1286
+
1287
+ #: loggers/SimplePluginLogger.php:1074
1288
+ msgctxt "plugin logger - detailed output"
1289
+ msgid "Description"
1290
+ msgstr "Kuvaus"
1291
+
1292
+ #: loggers/SimplePluginLogger.php:1075
1293
+ msgctxt "plugin logger - detailed output install source"
1294
+ msgid "Source"
1295
+ msgstr "Lähde"
1296
+
1297
+ #: loggers/SimplePluginLogger.php:1076
1298
+ msgctxt "plugin logger - detailed output install source"
1299
+ msgid "Source file name"
1300
+ msgstr "Lähdetiedoston nimi"
1301
+
1302
+ #: loggers/SimplePluginLogger.php:1077
1303
+ msgctxt "plugin logger - detailed output version"
1304
+ msgid "Version"
1305
+ msgstr "Versio"
1306
+
1307
+ #: loggers/SimplePluginLogger.php:1078
1308
+ msgctxt "plugin logger - detailed output author"
1309
+ msgid "Author"
1310
+ msgstr "Tekijä"
1311
+
1312
+ #: loggers/SimplePluginLogger.php:1079
1313
+ msgctxt "plugin logger - detailed output url"
1314
+ msgid "URL"
1315
+ msgstr "URL"
1316
+
1317
+ #: loggers/SimplePluginLogger.php:1122
1318
+ msgid "WordPress Plugin Repository"
1319
+ msgstr "WordPressin lisäosatietokanta"
1320
+
1321
+ #: loggers/SimplePluginLogger.php:1125
1322
+ msgid "Uploaded ZIP archive"
1323
+ msgstr "Latasi ZIP-arkiston"
1324
+
1325
+ #: loggers/SimplePluginLogger.php:1187 loggers/SimplePluginLogger.php:1206
1326
+ #: loggers/SimplePluginLogger.php:1245
1327
+ msgctxt "plugin logger: plugin info thickbox title view all info"
1328
+ msgid "View plugin info"
1329
+ msgstr "Näytä lisäosan tiedot"
1330
+
1331
+ #: loggers/SimplePluginLogger.php:1221
1332
+ msgctxt "plugin logger: plugin info thickbox title"
1333
+ msgid "View plugin info"
1334
+ msgstr "Näytä lisäosan tiedot"
1335
+
1336
+ #: loggers/SimplePluginLogger.php:1225
1337
+ msgctxt "plugin logger: plugin info thickbox title"
1338
+ msgid "View changelog"
1339
+ msgstr "Tarkastele muutoksia"
1340
+
1341
+ #: loggers/SimplePostLogger.php:119
1342
+ msgid "Created {post_type} \"{post_title}\""
1343
+ msgstr "Luotu {post_type} \"{post_title}\""
1344
+
1345
+ #: loggers/SimplePostLogger.php:120
1346
+ msgid "Updated {post_type} \"{post_title}\""
1347
+ msgstr "Päivitti sivua {post_type} \"{post_title}\""
1348
+
1349
+ #: loggers/SimplePostLogger.php:121
1350
+ msgid "Restored {post_type} \"{post_title}\" from trash"
1351
+ msgstr "Palautettu roskakorista {post_type} \"{post_title}\""
1352
+
1353
+ #: loggers/SimplePostLogger.php:122 loggers/SimplePostLogger.php:687
1354
+ msgid "Deleted {post_type} \"{post_title}\""
1355
+ msgstr "Poistettu {post_type} \"{post_title}\""
1356
+
1357
+ #: loggers/SimplePostLogger.php:123
1358
+ msgid "Moved {post_type} \"{post_title}\" to the trash"
1359
+ msgstr "Siirretty {post_type} \"{post_title}\" roskakoriin"
1360
+
1361
+ #: loggers/SimplePostLogger.php:127
1362
+ msgctxt "Post logger: search"
1363
+ msgid "Posts & Pages"
1364
+ msgstr "Artikkelit & sivut"
1365
+
1366
+ #: loggers/SimplePostLogger.php:128
1367
+ msgctxt "Post logger: search"
1368
+ msgid "All posts & pages activity"
1369
+ msgstr "Kaikki artikkeleihin ja sivuihin liittyvä toiminta"
1370
+
1371
+ #: loggers/SimplePostLogger.php:130
1372
+ msgctxt "Post logger: search"
1373
+ msgid "Posts created"
1374
+ msgstr "Artikkeleja luotu"
1375
+
1376
+ #: loggers/SimplePostLogger.php:133
1377
+ msgctxt "Post logger: search"
1378
+ msgid "Posts updated"
1379
+ msgstr "Sivuja päivitetty"
1380
+
1381
+ #: loggers/SimplePostLogger.php:136
1382
+ msgctxt "Post logger: search"
1383
+ msgid "Posts trashed"
1384
+ msgstr "Artikkeleja poistettu"
1385
+
1386
+ #: loggers/SimplePostLogger.php:139
1387
+ msgctxt "Post logger: search"
1388
+ msgid "Posts deleted"
1389
+ msgstr "Artikkeleja poistettu pysyvästi"
1390
+
1391
+ #: loggers/SimplePostLogger.php:142
1392
+ msgctxt "Post logger: search"
1393
+ msgid "Posts restored"
1394
+ msgstr "Artikkeleja palautettu"
1395
+
1396
+ #: loggers/SimplePostLogger.php:683
1397
+ msgid "Updated {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a>"
1398
+ msgstr ""
1399
+ "Päivitti sivutyyppiä {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a>"
1400
+
1401
+ #: loggers/SimplePostLogger.php:691
1402
+ msgid "Created {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a>"
1403
+ msgstr "Luotu {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a>"
1404
+
1405
+ #: loggers/SimplePostLogger.php:696
1406
+ msgid ""
1407
+ "Moved {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a> to the trash"
1408
+ msgstr ""
1409
+ "Siirretty {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a> "
1410
+ "roskakoriin"
1411
+
1412
+ #: loggers/SimplePostLogger.php:748
1413
+ msgid "Title"
1414
+ msgstr "Otsikko"
1415
+
1416
+ #: loggers/SimplePostLogger.php:762
1417
+ msgid "Content"
1418
+ msgstr "Sisältö"
1419
+
1420
+ #: loggers/SimplePostLogger.php:776
1421
+ msgid "Status"
1422
+ msgstr "Tila"
1423
+
1424
+ #: loggers/SimplePostLogger.php:792
1425
+ msgid "Publish date"
1426
+ msgstr "Julkaisupäivämäärä"
1427
+
1428
+ #: loggers/SimplePostLogger.php:807
1429
+ msgid "Permalink"
1430
+ msgstr "Pysyvä linkki"
1431
+
1432
+ #: loggers/SimplePostLogger.php:821
1433
+ msgid "Comment status"
1434
+ msgstr "Kommentin tila"
1435
+
1436
+ #: loggers/SimplePostLogger.php:844
1437
+ msgid "Author"
1438
+ msgstr "Tekijä"
1439
+
1440
+ #: loggers/SimplePostLogger.php:846
1441
+ msgid ""
1442
+ "Changed from {prev_user_display_name} ({prev_user_email}) to "
1443
+ "{new_user_display_name} ({new_user_email})"
1444
+ msgstr ""
1445
+ "Muutettu arvosta {prev_user_display_name} ({prev_user_email}) arvoon "
1446
+ "{new_user_display_name} ({new_user_email})"
1447
+
1448
+ #: loggers/SimplePostLogger.php:880
1449
+ msgid "Changed from {prev_page_template} to {new_page_template}"
1450
+ msgstr "Muutettu {prev_page_template} -> {new_page_template}"
1451
+
1452
+ #: loggers/SimplePostLogger.php:882
1453
+ msgid ""
1454
+ "Changed from \"{prev_page_template_name}\" to \"{new_page_template_name}\""
1455
+ msgstr "Muutettu \"{prev_page_template_name}\" -> \"{new_page_template_name}\""
1456
+
1457
+ #: loggers/SimplePostLogger.php:890
1458
+ msgid "Template"
1459
+ msgstr "Sivupohja"
1460
+
1461
+ #: loggers/SimplePostLogger.php:934
1462
+ msgid "Custom fields"
1463
+ msgstr "Custom fieldit"
1464
+
1465
+ #: loggers/SimpleThemeLogger.php:27
1466
+ msgid "Switched theme to \"{theme_name}\" from \"{prev_theme_name}\""
1467
+ msgstr "Vaihdettu teemaa \"{theme_name}\" -> \"{prev_theme_name}\""
1468
+
1469
+ #: loggers/SimpleThemeLogger.php:28
1470
+ msgid "Customized theme appearance \"{setting_id}\""
1471
+ msgstr "Kustomoitu teeman ulkonäköä \"{setting_id}\""
1472
+
1473
+ #: loggers/SimpleThemeLogger.php:29
1474
+ msgid "Removed widget \"{widget_id_base}\" from sidebar \"{sidebar_id}\""
1475
+ msgstr "Poistettu vimpain \"{widget_id_base}\" sivupalkista \"{sidebar_id}\""
1476
+
1477
+ #: loggers/SimpleThemeLogger.php:30
1478
+ msgid "Added widget \"{widget_id_base}\" to sidebar \"{sidebar_id}\""
1479
+ msgstr "Lisätty vimpain \"{widget_id_base}\" sivupalkkiin \"{sidebar_id}\""
1480
+
1481
+ #: loggers/SimpleThemeLogger.php:31
1482
+ msgid "Changed widget order \"{widget_id_base}\" in sidebar \"{sidebar_id}\""
1483
+ msgstr ""
1484
+ "Vaihdettu vimpainten järjestystä \"{widget_id_base}\" sivupalkissa "
1485
+ "\"{sidebar_id}\""
1486
+
1487
+ #: loggers/SimpleThemeLogger.php:32
1488
+ msgid "Changed widget \"{widget_id_base}\" in sidebar \"{sidebar_id}\""
1489
+ msgstr "Vaihdettu vimpainta \"{widget_id_base}\" sivupalkissa \"{sidebar_id}\""
1490
+
1491
+ #: loggers/SimpleThemeLogger.php:33
1492
+ msgid "Changed settings for the theme custom background"
1493
+ msgstr "Vaihdettu teeman taustan asetuksia"
1494
+
1495
+ #: loggers/SimpleThemeLogger.php:37
1496
+ msgctxt "Theme logger: search"
1497
+ msgid "Themes & Widgets"
1498
+ msgstr "Teemat & Vimpaimet"
1499
+
1500
+ #: loggers/SimpleThemeLogger.php:38
1501
+ msgctxt "Theme logger: search"
1502
+ msgid "All theme activity"
1503
+ msgstr "Kaikki teemoihin liittyvä toiminta"
1504
+
1505
+ #: loggers/SimpleThemeLogger.php:40
1506
+ msgctxt "Theme logger: search"
1507
+ msgid "Switched themes"
1508
+ msgstr "Teemojen vaihdot"
1509
+
1510
+ #: loggers/SimpleThemeLogger.php:43
1511
+ msgctxt "Theme logger: search"
1512
+ msgid "Changed appearance of themes"
1513
+ msgstr "Teemojen ulkonäön muutokset"
1514
+
1515
+ #: loggers/SimpleThemeLogger.php:46
1516
+ msgctxt "Theme logger: search"
1517
+ msgid "Added widgets"
1518
+ msgstr "Teemojen vimpaimet"
1519
+
1520
+ #: loggers/SimpleThemeLogger.php:49
1521
+ msgctxt "Theme logger: search"
1522
+ msgid "Removed widgets"
1523
+ msgstr "Poistetut vimpaimet"
1524
+
1525
+ #: loggers/SimpleThemeLogger.php:52
1526
+ msgctxt "Theme logger: search"
1527
+ msgid "Changed widgets order"
1528
+ msgstr "Vimpainjärjestysten muutokset"
1529
+
1530
+ #: loggers/SimpleThemeLogger.php:55
1531
+ msgctxt "Theme logger: search"
1532
+ msgid "Edited widgets"
1533
+ msgstr "Vimpainten muokkaaminen"
1534
+
1535
+ #: loggers/SimpleThemeLogger.php:58
1536
+ msgctxt "Theme logger: search"
1537
+ msgid "Background of themes changed"
1538
+ msgstr "Teeman taustakuvavaihdokset"
1539
+
1540
+ #: loggers/SimpleThemeLogger.php:534
1541
+ msgid "Section"
1542
+ msgstr "Alue"
1543
+
1544
+ #: loggers/SimpleUserLogger.php:24
1545
+ msgid ""
1546
+ "Failed to login to account with username \"{login_user_login}\" because an "
1547
+ "incorrect password was entered"
1548
+ msgstr ""
1549
+ "Ei voitu kirjautua käyttäjätunnuksella \"{login_user_login}\" väärän "
1550
+ "salasanan vuoksi"
1551
+
1552
+ #: loggers/SimpleUserLogger.php:25
1553
+ msgid ""
1554
+ "Failed to login with username \"{failed_login_username}\" because no user "
1555
+ "with that username exists"
1556
+ msgstr ""
1557
+ "Ei voitu kirjautua käyttäjätunnuksella \"{failed_login_username}\", koska "
1558
+ "tunnus on jo olemassa"
1559
+
1560
+ #: loggers/SimpleUserLogger.php:26
1561
+ msgid "Logged in"
1562
+ msgstr "Kirjauduttu sisään"
1563
+
1564
+ #: loggers/SimpleUserLogger.php:27
1565
+ msgid "Unknown user logged in"
1566
+ msgstr "Tuntematon käyttäjä on kirjautunut sisään"
1567
+
1568
+ #: loggers/SimpleUserLogger.php:28
1569
+ msgid "Logged out"
1570
+ msgstr "Kirjautui ulos"
1571
+
1572
+ #: loggers/SimpleUserLogger.php:29
1573
+ msgid "Edited the profile for user {edited_user_login} ({edited_user_email})"
1574
+ msgstr "Muokkasi profiilia {edited_user_login} ({edited_user_email})"
1575
+
1576
+ #: loggers/SimpleUserLogger.php:30
1577
+ msgid ""
1578
+ "Created user {created_user_login} ({created_user_email}) with role "
1579
+ "{created_user_role}"
1580
+ msgstr ""
1581
+ "Loi käyttäjän {created_user_login} ({created_user_email}) käyttäjäroolilla "
1582
+ "{created_user_role}"
1583
+
1584
+ #: loggers/SimpleUserLogger.php:31
1585
+ msgid "Deleted user {deleted_user_login} ({deleted_user_email})"
1586
+ msgstr "Poisti käyttäjän {deleted_user_login} ({deleted_user_email})"
1587
+
1588
+ #: loggers/SimpleUserLogger.php:39
1589
+ msgctxt "User destroys other login sessions for themself"
1590
+ msgid "Logged out from all other sessions"
1591
+ msgstr "Kirjautui ulos kaikista sessioista"
1592
+
1593
+ #: loggers/SimpleUserLogger.php:48
1594
+ msgctxt "User destroys all login sessions for a user"
1595
+ msgid "Logged out \"{user_display_name}\" from all sessions"
1596
+ msgstr "Kirjasi ulos käyttäjän \"{user_display_name}\" kaikista sessioista"
1597
+
1598
+ #: loggers/SimpleUserLogger.php:56
1599
+ msgctxt "User logger: search"
1600
+ msgid "Users"
1601
+ msgstr "Käyttäjät"
1602
+
1603
+ #: loggers/SimpleUserLogger.php:57
1604
+ msgctxt "User logger: search"
1605
+ msgid "All user activity"
1606
+ msgstr "Kaikki käyttäjätoiminta"
1607
+
1608
+ #: loggers/SimpleUserLogger.php:59
1609
+ msgctxt "User logger: search"
1610
+ msgid "Successful user logins"
1611
+ msgstr "Onnistuneet kirjautumiset"
1612
+
1613
+ #: loggers/SimpleUserLogger.php:63
1614
+ msgctxt "User logger: search"
1615
+ msgid "Failed user logins"
1616
+ msgstr "Epäonnistuneet kirjautumiset"
1617
+
1618
+ #: loggers/SimpleUserLogger.php:67
1619
+ msgctxt "User logger: search"
1620
+ msgid "User logouts"
1621
+ msgstr "Uloskirjautumiset"
1622
+
1623
+ #: loggers/SimpleUserLogger.php:70
1624
+ msgctxt "User logger: search"
1625
+ msgid "Created users"
1626
+ msgstr "Luodut käyttäjät"
1627
+
1628
+ #: loggers/SimpleUserLogger.php:73
1629
+ msgctxt "User logger: search"
1630
+ msgid "User profile updates"
1631
+ msgstr "Profiilipäivitykset"
1632
+
1633
+ #: loggers/SimpleUserLogger.php:76
1634
+ msgctxt "User logger: search"
1635
+ msgid "User deletions"
1636
+ msgstr "Käyttäjien poistot"
1637
+
1638
+ #: loggers/SimpleUserLogger.php:229
1639
+ msgid "Edited <a href=\"{edit_profile_link}\">your profile</a>"
1640
+ msgstr "Muokkasi <a href=\"{edit_profile_link}\">sinun profiiliasi</a>"
1641
+
1642
+ #: loggers/SimpleUserLogger.php:233
1643
+ msgid "Edited <a href=\"{edit_profile_link}\">their profile</a>"
1644
+ msgstr "Muokkasi <a href=\"{edit_profile_link}\">heidän profiilejaan</a>"
1645
+
1646
+ #: loggers/SimpleUserLogger.php:242
1647
+ msgid "Edited your profile"
1648
+ msgstr "Muokkasi sinun profiiliasi"
1649
+
1650
+ #: loggers/SimpleUserLogger.php:253
1651
+ msgid ""
1652
+ "Edited the profile for user <a href="
1653
+ "\"{edit_profile_link}\">{edited_user_login} ({edited_user_email})</a>"
1654
+ msgstr ""
1655
+ "Muokkasi profiilia käyttäjälle <a href="
1656
+ "\"{edit_profile_link}\">{edited_user_login} ({edited_user_email})</a>"
1657
+
1658
+ #: templates/settings-statsIntro.php:21
1659
+ #, php-format
1660
+ msgid "<b>%1$s rows</b> have been logged the last <b>%2$s days</b>"
1661
+ msgstr "<b>%1$s riviä</b> kirjattu lokiin viimeisen <b>%2$s päivän aikana</b>"
1662
+
1663
+ #: templates/settings-statsLogLevels.php:6
1664
+ msgid "Log levels"
1665
+ msgstr "Logituksen tasot"
1666
+
1667
+ #: templates/settings-statsLogLevels.php:8
1668
+ msgid "Number of rows logged for each log level."
1669
+ msgstr "Logitettujen tasojen rivien lukumäärät."
1670
+
1671
+ #: templates/settings-statsLoggers.php:5
1672
+ msgid "Loggers"
1673
+ msgstr "Logittajat"
1674
+
1675
+ #: templates/settings-statsRowsPerDay.php:6
1676
+ msgid "Rows per day"
1677
+ msgstr "Riviä per päivä"
1678
+
1679
+ #: templates/settings-statsRowsPerDay.php:38
1680
+ msgctxt "stats: date in rows per day chart"
1681
+ msgid "M j"
1682
+ msgstr "M j"
1683
+
1684
+ #: templates/settings-statsUsers.php:7
1685
+ msgid "Users"
1686
+ msgstr "Käyttäjät"
1687
+
1688
+ #: templates/settings-statsUsers.php:9
1689
+ msgid "Number of logged items for the 5 users with most logged rows."
1690
+ msgstr "Rivien lukumäärä viidelle eniten rivejä loganneille käyttäjille."
1691
+
1692
+ #: templates/settings-statsUsers.php:10
1693
+ msgid "Deleted users are also included."
1694
+ msgstr "Poistetut käyttäjät ovat myös mukana."
languages/simple-history-sv_SE.mo CHANGED
Binary file
languages/simple-history-sv_SE.po CHANGED
@@ -4,21 +4,21 @@ msgid ""
4
  msgstr ""
5
  "Project-Id-Version: Simple History 2\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/Simple-History\n"
7
- "POT-Creation-Date: 2015-04-01 14:16:45+00:00\n"
8
- "PO-Revision-Date: 2015-04-01 16:16+0100\n"
9
  "Last-Translator: Pär Thernström <par.thernstrom@gmail.com>\n"
10
  "Language-Team: \n"
11
  "Language: sv\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.7.3\n"
16
  "X-Poedit-KeywordsList: __;_e;_x:1,2c;_ex:1,2c;_n:1,2;_nx:1,2,4c;_n_noop:1,2;"
17
  "_nx_noop:1,2,3c;esc_attr__;esc_html__;esc_attr_e;esc_html_e;esc_attr_x:1,2c;"
18
  "esc_html_x:1,2c\n"
19
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
20
  "X-Poedit-SourceCharset: UTF-8\n"
21
- "X-Poedit-Basepath: ../\n"
22
  "X-Textdomain-Support: yes\n"
23
  "X-Poedit-SearchPath-0: .\n"
24
 
@@ -34,32 +34,36 @@ msgstr ""
34
  "Om Simple History är användbar för dig så <a href=\"%1$s\">donera</a> eller "
35
  "<a href=\"%2$s\">köp mig något från min Amazon wish list</a>."
36
 
37
- #: dropins/SimpleHistoryFilterDropin.php:46
38
  msgid "Filter history"
39
  msgstr "Filtrera historik"
40
 
41
- #: dropins/SimpleHistoryFilterDropin.php:50
42
- #: dropins/SimpleHistoryFilterDropin.php:161
 
 
 
 
 
 
 
 
43
  msgid "Search events"
44
  msgstr "Sök händelser"
45
 
46
- #: dropins/SimpleHistoryFilterDropin.php:58
47
  msgid "All log levels"
48
  msgstr "Alla loggnivåer"
49
 
50
- #: dropins/SimpleHistoryFilterDropin.php:72
51
  msgid "All messages"
52
  msgstr "Alla meddelanden"
53
 
54
- #: dropins/SimpleHistoryFilterDropin.php:126
55
  msgid "All users"
56
  msgstr "Alla användare"
57
 
58
- #: dropins/SimpleHistoryFilterDropin.php:147
59
- msgid "All dates"
60
- msgstr "Alla datum"
61
-
62
- #: dropins/SimpleHistoryFilterDropin.php:170
63
  msgid "Search"
64
  msgstr "Sök"
65
 
@@ -82,30 +86,30 @@ msgid "Created new secret RSS address"
82
  msgstr "Skapade en ny hemlig RSS-adress"
83
 
84
  #: dropins/SimpleHistoryRSSDropin.php:150
85
- #: dropins/SimpleHistoryRSSDropin.php:277
86
  msgid "History for %s"
87
  msgstr "Historik för %s"
88
 
89
  #: dropins/SimpleHistoryRSSDropin.php:151
90
- #: dropins/SimpleHistoryRSSDropin.php:278
91
  msgid "WordPress History for %s"
92
  msgstr "WordPress-historik för %s"
93
 
94
- #: dropins/SimpleHistoryRSSDropin.php:201
95
  msgid "Severity level: %1$s"
96
- msgstr ""
97
 
98
- #: dropins/SimpleHistoryRSSDropin.php:214
99
  msgid "+%1$s occasion"
100
  msgid_plural "+%1$s occasions"
101
  msgstr[0] "+%1$s tillfälle"
102
  msgstr[1] "+%1$s tillfällen"
103
 
104
- #: dropins/SimpleHistoryRSSDropin.php:281
105
  msgid "Wrong RSS secret"
106
  msgstr "Fel RSS-lösenord"
107
 
108
- #: dropins/SimpleHistoryRSSDropin.php:282
109
  msgid ""
110
  "Your RSS secret for Simple History RSS feed is wrong. Please see WordPress "
111
  "settings for current link to the RSS feed."
@@ -113,7 +117,7 @@ msgstr ""
113
  "Ditt RSS-lösenord för RSS-flödet för Simple History är felaktigt. Gå till "
114
  "WordPress-inställningarna för att få en aktuell länk till RSS-flöded."
115
 
116
- #: dropins/SimpleHistoryRSSDropin.php:333
117
  msgid ""
118
  "You can generate a new address for the RSS feed. This is useful if you think "
119
  "that the address has fallen into the wrong hands."
@@ -121,11 +125,11 @@ msgstr ""
121
  "Du kan skapa en ny adress för RSS-flödet. Detta är användbart om du "
122
  "misstänker att adressen kommit i orätta händer."
123
 
124
- #: dropins/SimpleHistoryRSSDropin.php:336
125
  msgid "Generate new address"
126
  msgstr "Skapa ny adress"
127
 
128
- #: dropins/SimpleHistoryRSSDropin.php:364
129
  msgid ""
130
  "Simple History has a RSS feed which you can subscribe to and receive log "
131
  "updates. Make sure you only share the feed with people you trust, since it "
@@ -145,168 +149,176 @@ msgstr "Tillägg"
145
 
146
  #: dropins/SimpleHistorySettingsLogtestDropin.php:228
147
  msgid "Enter title of new page"
148
- msgstr ""
149
 
150
  #: dropins/SimpleHistorySettingsStatsDropin.php:29
151
  msgid "Stats"
152
  msgstr "Statistik"
153
 
154
- #: dropins/SimpleHistorySidebarDropin.php:162 loggers/SimpleLogger.php:305
155
  msgid "Just now"
156
  msgstr "Just nu"
157
 
158
- #: inc/SimpleHistory.php:538 inc/SimpleHistory.php:821
 
 
 
 
 
 
 
 
159
  msgid "Settings"
160
  msgstr "Inställningar"
161
 
162
- #: inc/SimpleHistory.php:549
163
  msgid "Log (debug)"
164
  msgstr "Logg (debug)"
165
 
166
- #: inc/SimpleHistory.php:554
167
  msgid "Styles example (debug)"
168
  msgstr "Stilexempel (debug)"
169
 
170
  #. Plugin Name of the plugin/theme
171
- #: inc/SimpleHistory.php:846
172
  msgid "Simple History"
173
  msgstr "Simple History"
174
 
175
- #: inc/SimpleHistory.php:924
176
  msgid "Remove all log items?"
177
  msgstr "Ta bort alla händelser?"
178
 
179
- #: inc/SimpleHistory.php:926
180
  msgid "Go to the first page"
181
  msgstr "Gå till första sidan"
182
 
183
- #: inc/SimpleHistory.php:927
184
  msgid "Go to the previous page"
185
  msgstr "Gå till föregående sida"
186
 
187
- #: inc/SimpleHistory.php:928
188
  msgid "Go to the next page"
189
  msgstr "Gå till nästa sida"
190
 
191
- #: inc/SimpleHistory.php:929
192
  msgid "Go to the last page"
193
  msgstr "Gå till sista sidan"
194
 
195
- #: inc/SimpleHistory.php:930
196
  msgid "Current page"
197
  msgstr "Aktuell sida"
198
 
199
- #: inc/SimpleHistory.php:932
200
  msgid "Oups, the log could not be loaded right now."
201
  msgstr "Hoppsan, historiken kunde inte laddas just nu."
202
 
203
- #: inc/SimpleHistory.php:933
204
  msgid "Your search did not match any history events."
205
  msgstr "Din sökning matchade inte några händelser i historiken."
206
 
207
- #: inc/SimpleHistory.php:1217 inc/SimpleHistory.php:1332
208
  msgid "Simple History Settings"
209
  msgstr "Inställningar för Simple History"
210
 
211
- #: inc/SimpleHistory.php:1251
212
  msgid "No valid callback found"
213
  msgstr "Inget giltigt callback hittades."
214
 
215
- #: inc/SimpleHistory.php:1353
216
  msgid "Cleared database"
217
  msgstr "Databasen rensades"
218
 
219
- #: inc/SimpleHistory.php:1380
220
  msgid "Show history"
221
  msgstr "Visa historik"
222
 
223
- #: inc/SimpleHistory.php:1393
224
  msgid "Number of items per page"
225
  msgstr "Antal händelser per sida"
226
 
227
- #: inc/SimpleHistory.php:1405
228
  msgid "Clear log"
229
  msgstr "Rensa logg"
230
 
231
- #: inc/SimpleHistory.php:1544
232
  msgid "on the dashboard"
233
  msgstr "i panelen"
234
 
235
- #: inc/SimpleHistory.php:1549
236
  msgid "as a page under the dashboard menu"
237
  msgstr "som en sida under panel-menyn"
238
 
239
- #: inc/SimpleHistory.php:1565
240
  msgid "Items in the database are automatically removed after %1$s days."
241
  msgstr "Händelser i databasen tas automatiskt bort efter %1$s dagar."
242
 
243
- #: inc/SimpleHistory.php:1567
244
  msgid "Items in the database are kept forever."
245
  msgstr "Händelser i databasen lagras för evigt."
246
 
247
- #: inc/SimpleHistory.php:1571
248
  msgid "Clear log now"
249
  msgstr "Rensa loggen nu"
250
 
251
- #: inc/SimpleHistory.php:1621
252
  msgid "The log for Simple History was cleared ({num_rows} rows were removed)."
253
  msgstr "Rensade historiken för Simple History. ({num_rows} rader togs bort)."
254
 
255
- #: inc/SimpleHistory.php:1885
256
  msgid "+%1$s similar event"
257
  msgid_plural "+%1$s similar events"
258
  msgstr[0] "+%1$s liknande händelse"
259
  msgstr[1] "+%1$s liknande händelser"
260
 
261
- #: inc/SimpleHistory.php:1892
262
  msgid "Loading…"
263
  msgstr "Laddar historik..."
264
 
265
- #: inc/SimpleHistory.php:1899
266
  msgid "Showing %1$s more"
267
  msgstr "+%1$s fler"
268
 
269
- #: inc/SimpleHistory.php:1927
270
  msgid "Context data"
271
  msgstr "Kontextuell data"
272
 
273
- #: inc/SimpleHistory.php:1928
274
  msgid "This is potentially useful meta data that a logger has saved."
275
  msgstr "Detta eventuellt användbar metadata som en logger har sparat."
276
 
277
- #: inc/SimpleHistory.php:2448
278
  msgid "No events today so far."
279
  msgstr "Inga händelser idag ännu."
280
 
281
- #: inc/SimpleHistory.php:2467
282
  msgid "One event today from one user."
283
  msgstr "En händelse idag från en användare."
284
 
285
- #: inc/SimpleHistory.php:2473
286
  msgid "One event today from one source."
287
  msgstr "En händelse idag från en källa."
288
 
289
- #: inc/SimpleHistory.php:2479
290
  msgid "%1$d events today from one user."
291
  msgstr "%1$d händelser idag från en användare."
292
 
293
- #: inc/SimpleHistory.php:2485
294
  msgid "%1$d events today from %2$d users."
295
  msgstr "%1$d händelser idag från %2$d användare."
296
 
297
- #: inc/SimpleHistory.php:2491 inc/SimpleHistory.php:2497
298
  msgid "%1$d events today from one user and one other source."
299
  msgstr "%1$d händelser idag från en användare och från en annan källa."
300
 
301
- #: inc/SimpleHistory.php:2503
302
  msgid "%1$d events today from one user and %3$d other sources."
303
  msgstr "%1$d händelser idag från en användare och från %3$d andra källor."
304
 
305
- #: inc/SimpleHistory.php:2509
306
  msgid "%1$s events today from %2$d users and %3$d other sources."
307
  msgstr "%1$s händelser idag från %2$d användare och %3$d andra källor."
308
 
309
- #: index.php:74
310
  msgid ""
311
  "Simple History is a great plugin, but to use it your server must have at "
312
  "least PHP 5.3 installed (you have version %s)."
@@ -359,25 +371,25 @@ msgstr "Av %s"
359
  msgid "%d occasions"
360
  msgstr "%d tillfällen"
361
 
362
- #: loggers/SimpleLogger.php:212
363
  msgid "Deleted user (had id %1$s, email %2$s, login %3$s)"
364
  msgstr "Raderad användare (hade id %1$s, epost %2$s, login %3$s)"
365
 
366
- #: loggers/SimpleLogger.php:227
367
  msgid "Anonymous web user"
368
  msgstr "Anonym webbanvändare"
369
 
370
- #: loggers/SimpleLogger.php:235
371
  msgid "Anonymous user from %1$s"
372
  msgstr "Anonym användare från %1$s"
373
 
374
  #. translators: Date format for log row header, see http:php.net/date
375
- #: loggers/SimpleLogger.php:310
376
  msgid "M j, Y \\a\\t G:i"
377
  msgstr "M j, Y \\a\\t G:i"
378
 
379
  #. translators: 1: last modified date and time in human time diff-format
380
- #: loggers/SimpleLogger.php:318
381
  msgid "%1$s ago"
382
  msgstr "%1$s sedan"
383
 
@@ -393,29 +405,29 @@ msgstr "Redigerade {post_type} \"{attachment_title}\""
393
  msgid "Deleted {post_type} \"{attachment_title}\" (\"{attachment_filename}\")"
394
  msgstr "Raderade {post_type} \"{attachment_title}\" (\"{attachment_filename}\")"
395
 
396
- #: loggers/SimpleMediaLogger.php:121
397
  msgid "Edited {post_type} <a href=\"{edit_link}\">\"{attachment_title}\"</a>"
398
  msgstr ""
399
  "Redigerade {post_type} <a href=\"{edit_link}\">\"{attachment_title}\"</a>"
400
 
401
- #: loggers/SimpleMediaLogger.php:125
402
  msgid "Uploaded {post_type} <a href=\"{edit_link}\">\"{attachment_title}\"</a>"
403
  msgstr ""
404
  "Laddade upp {post_type} <a href=\"{edit_link}\">\"{attachment_title}\"</a>"
405
 
406
- #: loggers/SimpleMediaLogger.php:237
407
  msgid "{attachment_thumb}"
408
  msgstr "{attachment_thumb}"
409
 
410
- #: loggers/SimpleMediaLogger.php:246
411
  msgid "{attachment_size_format}"
412
  msgstr "{attachment_size_format}"
413
 
414
- #: loggers/SimpleMediaLogger.php:247
415
  msgid "{attachment_filetype_extension}"
416
  msgstr "{attachment_filetype_extension}"
417
 
418
- #: loggers/SimpleMediaLogger.php:249
419
  msgid "{full_image_width} × {full_image_height}"
420
  msgstr "{full_image_width} × {full_image_height}"
421
 
@@ -443,11 +455,11 @@ msgstr "Uppdaterade meny-platser"
443
  msgid "Updated option \"{option}\""
444
  msgstr "Uppdaterade inställningen \"{option}\""
445
 
446
- #: loggers/SimpleOptionsLogger.php:244 loggers/SimpleThemeLogger.php:571
447
  msgid "New value"
448
  msgstr "Nytt värde"
449
 
450
- #: loggers/SimpleOptionsLogger.php:255 loggers/SimpleThemeLogger.php:583
451
  msgid "Old value"
452
  msgstr "Gammalt värde"
453
 
@@ -455,15 +467,15 @@ msgstr "Gammalt värde"
455
  msgid "Settings page"
456
  msgstr "Inställningssida"
457
 
458
- #: loggers/SimplePluginLogger.php:177
459
  msgid "You don't have access to this page."
460
  msgstr "Du har inte tillgång till den här sidan."
461
 
462
- #: loggers/SimplePluginLogger.php:183 loggers/SimplePluginLogger.php:188
463
  msgid "Could not find GitHub repository."
464
  msgstr "Kunde inte hitta GitHub-repository."
465
 
466
- #: loggers/SimplePluginLogger.php:208
467
  msgid ""
468
  "<p>Viewing <code>readme</code> from repository <code><a target=\"_blank\" "
469
  "href=\"%1$s\">%2$s</a></code>.</p>"
@@ -471,53 +483,109 @@ msgstr ""
471
  "<p>Visar <code>readme</code> från repository <code><a target=\"_blank\" href="
472
  "\"%1$s\">%2$s</a></code>.</p>"
473
 
474
- #: loggers/SimplePluginLogger.php:281
475
  msgid "You do not have sufficient permissions to delete plugins for this site."
476
  msgstr ""
 
 
477
 
478
- #: loggers/SimplePluginLogger.php:1129
479
  msgid "WordPress Plugin Repository"
480
  msgstr "WordPress Plugin Repository"
481
 
482
- #: loggers/SimplePluginLogger.php:1132
483
  msgid "Uploaded ZIP archive"
484
  msgstr "Uppladdat ZIP-arkiv"
485
 
486
- #: loggers/SimplePostLogger.php:184
487
  msgid "Created {post_type} \"{post_title}\""
488
  msgstr "Skapade {post_type} \"{post_title}\""
489
 
490
- #: loggers/SimplePostLogger.php:185
491
  msgid "Updated {post_type} \"{post_title}\""
492
  msgstr "Uppdaterade {post_type} \"{post_title}\""
493
 
494
- #: loggers/SimplePostLogger.php:186
495
  msgid "Restored {post_type} \"{post_title}\" from trash"
496
  msgstr "Återställde {post_type} \"{post_title}\" från papperskorgen"
497
 
498
- #: loggers/SimplePostLogger.php:187 loggers/SimplePostLogger.php:456
499
  msgid "Deleted {post_type} \"{post_title}\""
500
  msgstr "Raderade {post_type} \"{post_title}\""
501
 
502
- #: loggers/SimplePostLogger.php:188
503
  msgid "Moved {post_type} \"{post_title}\" to the trash"
504
  msgstr "Flyttade {post_type} \"{post_title}\" till papperskorgen"
505
 
506
- #: loggers/SimplePostLogger.php:452
507
  msgid "Updated {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a>"
508
  msgstr "Uppdaterade {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a>"
509
 
510
- #: loggers/SimplePostLogger.php:460
511
  msgid "Created {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a>"
512
  msgstr "Skapade {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a>"
513
 
514
- #: loggers/SimplePostLogger.php:465
515
  msgid ""
516
  "Moved {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a> to the trash"
517
  msgstr ""
518
  "Flyttade {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a> till "
519
  "papperskorgen"
520
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
521
  #: loggers/SimpleThemeLogger.php:27
522
  msgid "Switched theme to \"{theme_name}\" from \"{prev_theme_name}\""
523
  msgstr "Bytte tema till \"{theme_name}\" från \"{prev_theme_name}\""
@@ -547,7 +615,7 @@ msgstr "Ändrade widgeten \"{widget_id_base}\" i sidebar \"{sidebar_id}\""
547
  msgid "Changed settings for the theme custom background"
548
  msgstr "Ändrade inställningar för temats anpassade bakgrund"
549
 
550
- #: loggers/SimpleThemeLogger.php:533
551
  msgid "Section"
552
  msgstr "Sektion"
553
 
@@ -689,12 +757,62 @@ msgctxt "donate settings headline"
689
  msgid "Donate"
690
  msgstr "Donera"
691
 
692
- #: dropins/SimpleHistoryFilterDropin.php:52
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
693
  msgctxt "Filter dropin: button to show more search options"
694
  msgid "Show options"
695
  msgstr "Visa alternativ"
696
 
697
- #: dropins/SimpleHistoryFilterDropin.php:162
698
  msgctxt "Filter dropin: button to hide more search options"
699
  msgid "Hide options"
700
  msgstr "Göm alternativ"
@@ -801,33 +919,43 @@ msgstr ""
801
  "En bra recension hjälper nya användare att hitta tillägget. Och det kommer "
802
  "göra utvecklaren väldigt glad!"
803
 
804
- #: inc/SimpleHistory.php:282
 
 
 
 
 
 
 
 
 
 
805
  msgctxt ""
806
  "Message visible while waiting for log to load from server the first time"
807
  msgid "Loading history..."
808
  msgstr "Laddar historik..."
809
 
810
- #: inc/SimpleHistory.php:319
811
  msgctxt "page n of n"
812
  msgid "of"
813
  msgstr "av"
814
 
815
- #: inc/SimpleHistory.php:390
816
  msgctxt "API: not enought arguments passed"
817
  msgid "Not enough args specified"
818
  msgstr "Inte tillräckligt med arguments specifierade"
819
 
820
- #: inc/SimpleHistory.php:1314
821
  msgctxt "dashboard menu name"
822
  msgid "Simple History"
823
  msgstr "Simple History"
824
 
825
- #: inc/SimpleHistory.php:1441
826
  msgctxt "history page headline"
827
  msgid "Simple History"
828
  msgstr "Simple History"
829
 
830
- #: inc/SimpleHistory.php:1709
831
  msgctxt "simple-history"
832
  msgid "Simple History removed one event that were older than {days} days"
833
  msgid_plural ""
@@ -836,82 +964,82 @@ msgstr[0] "Simple History raderade en händelse som var äldre än {days} dagar.
836
  msgstr[1] ""
837
  "Simple History radera {num_rows} händelser som var äldre än {days} dagar"
838
 
839
- #: inc/SimpleHistory.php:2064
840
  msgctxt "Log level in gui"
841
  msgid "emergency"
842
  msgstr "kritiskt"
843
 
844
- #: inc/SimpleHistory.php:2068
845
  msgctxt "Log level in gui"
846
  msgid "alert"
847
  msgstr "alert"
848
 
849
- #: inc/SimpleHistory.php:2072
850
  msgctxt "Log level in gui"
851
  msgid "critical"
852
  msgstr "kritiskt"
853
 
854
- #: inc/SimpleHistory.php:2076
855
  msgctxt "Log level in gui"
856
  msgid "error"
857
  msgstr "error"
858
 
859
- #: inc/SimpleHistory.php:2080
860
  msgctxt "Log level in gui"
861
  msgid "warning"
862
  msgstr "warning"
863
 
864
- #: inc/SimpleHistory.php:2084
865
  msgctxt "Log level in gui"
866
  msgid "notice"
867
  msgstr "notice"
868
 
869
- #: inc/SimpleHistory.php:2088
870
  msgctxt "Log level in gui"
871
  msgid "info"
872
  msgstr "info"
873
 
874
- #: inc/SimpleHistory.php:2092
875
  msgctxt "Log level in gui"
876
  msgid "debug"
877
  msgstr "debug"
878
 
879
- #: inc/SimpleHistory.php:2097
880
  msgctxt "Log level in gui"
881
  msgid "Emergency"
882
  msgstr "Emergency"
883
 
884
- #: inc/SimpleHistory.php:2101
885
  msgctxt "Log level in gui"
886
  msgid "Alert"
887
  msgstr "Alert"
888
 
889
- #: inc/SimpleHistory.php:2105
890
  msgctxt "Log level in gui"
891
  msgid "Critical"
892
  msgstr "Critical"
893
 
894
- #: inc/SimpleHistory.php:2109
895
  msgctxt "Log level in gui"
896
  msgid "Error"
897
  msgstr "Error"
898
 
899
- #: inc/SimpleHistory.php:2113
900
  msgctxt "Log level in gui"
901
  msgid "Warning"
902
  msgstr "Warning"
903
 
904
- #: inc/SimpleHistory.php:2117
905
  msgctxt "Log level in gui"
906
  msgid "Notice"
907
  msgstr "Notice"
908
 
909
- #: inc/SimpleHistory.php:2121
910
  msgctxt "Log level in gui"
911
  msgid "Info"
912
  msgstr "Info"
913
 
914
- #: inc/SimpleHistory.php:2125
915
  msgctxt "Log level in gui"
916
  msgid "Debug"
917
  msgstr "Debug"
@@ -1270,27 +1398,37 @@ msgctxt "Export logger: search"
1270
  msgid "Created exports"
1271
  msgstr "Skapade exporter"
1272
 
1273
- #: loggers/SimpleLogger.php:199
1274
  msgctxt "header output when initiator is the currently logged in user"
1275
  msgid "You"
1276
  msgstr "Du"
1277
 
 
 
 
 
 
1278
  #: loggers/SimpleMediaLogger.php:31
1279
  msgctxt "Media logger: search"
1280
  msgid "Media"
1281
  msgstr "Media"
1282
 
1283
- #: loggers/SimpleMediaLogger.php:33
 
 
 
 
 
1284
  msgctxt "Media logger: search"
1285
  msgid "Added media"
1286
  msgstr "Tillagda media"
1287
 
1288
- #: loggers/SimpleMediaLogger.php:36
1289
  msgctxt "Media logger: search"
1290
  msgid "Updated media"
1291
  msgstr "Uppdaterade medier"
1292
 
1293
- #: loggers/SimpleMediaLogger.php:39
1294
  msgctxt "Media logger: search"
1295
  msgid "Deleted media"
1296
  msgstr "Raderade media"
@@ -1300,29 +1438,34 @@ msgctxt "Menu logger: search"
1300
  msgid "Menus"
1301
  msgstr "Menyer"
1302
 
1303
- #: loggers/SimpleMenuLogger.php:35
 
 
 
 
 
1304
  msgctxt "Menu updates logger: search"
1305
  msgid "Created menus"
1306
  msgstr "Skapade menyer"
1307
 
1308
- #: loggers/SimpleMenuLogger.php:38
1309
  msgctxt "Menu updates logger: search"
1310
  msgid "Edited menus"
1311
  msgstr "Ändrade menyer"
1312
 
1313
- #: loggers/SimpleMenuLogger.php:43
1314
  msgctxt "Menu updates logger: search"
1315
  msgid "Deleted menus"
1316
  msgstr "Raderade menyer"
1317
 
1318
- #: loggers/SimpleMenuLogger.php:328
1319
  msgctxt "menu logger"
1320
  msgid "%1$s menu item added"
1321
  msgid_plural "%1$s menu items added"
1322
  msgstr[0] "%1$s menyval tillagt"
1323
  msgstr[1] "%1$s menyval tillagda"
1324
 
1325
- #: loggers/SimpleMenuLogger.php:335
1326
  msgctxt "menu logger"
1327
  msgid "%1$s menu item removed"
1328
  msgid_plural "%1$s menu items removed"
@@ -1397,118 +1540,128 @@ msgctxt "Plugin logger: search"
1397
  msgid "Plugins"
1398
  msgstr "Tillägg"
1399
 
1400
- #: loggers/SimplePluginLogger.php:86
 
 
 
 
 
1401
  msgctxt "Plugin logger: search"
1402
  msgid "Activated plugins"
1403
  msgstr "Aktiverade tillägg"
1404
 
1405
- #: loggers/SimplePluginLogger.php:89
1406
  msgctxt "Plugin logger: search"
1407
  msgid "Deactivated plugins"
1408
  msgstr "Inaktiverade tillägg"
1409
 
1410
- #: loggers/SimplePluginLogger.php:92
1411
  msgctxt "Plugin logger: search"
1412
  msgid "Installed plugins"
1413
  msgstr "Installerade tillägg"
1414
 
1415
- #: loggers/SimplePluginLogger.php:95
1416
  msgctxt "Plugin logger: search"
1417
  msgid "Failed plugin installs"
1418
  msgstr "Misslyckade installationer av plugins"
1419
 
1420
- #: loggers/SimplePluginLogger.php:98
1421
  msgctxt "Plugin logger: search"
1422
  msgid "Updated plugins"
1423
  msgstr "Uppdaterade plugins"
1424
 
1425
- #: loggers/SimplePluginLogger.php:102
1426
  msgctxt "Plugin logger: search"
1427
  msgid "Failed plugin updates"
1428
  msgstr "Misslyckades uppdateringar av plugins"
1429
 
1430
- #: loggers/SimplePluginLogger.php:105
1431
  msgctxt "Plugin logger: search"
1432
  msgid "Edited plugin files"
1433
  msgstr "Redigerade pluginfiler"
1434
 
1435
- #: loggers/SimplePluginLogger.php:108
1436
  msgctxt "Plugin logger: search"
1437
  msgid "Deleted plugins"
1438
  msgstr "Raderade plugins"
1439
 
1440
- #: loggers/SimplePluginLogger.php:1081
1441
  msgctxt "plugin logger - detailed output"
1442
  msgid "Description"
1443
  msgstr "Beskrivning"
1444
 
1445
- #: loggers/SimplePluginLogger.php:1082
1446
  msgctxt "plugin logger - detailed output install source"
1447
  msgid "Source"
1448
  msgstr "Källa"
1449
 
1450
- #: loggers/SimplePluginLogger.php:1083
1451
  msgctxt "plugin logger - detailed output install source"
1452
  msgid "Source file name"
1453
  msgstr "Källans filnamn"
1454
 
1455
- #: loggers/SimplePluginLogger.php:1084
1456
  msgctxt "plugin logger - detailed output version"
1457
  msgid "Version"
1458
  msgstr "Version"
1459
 
1460
- #: loggers/SimplePluginLogger.php:1085
1461
  msgctxt "plugin logger - detailed output author"
1462
  msgid "Author"
1463
  msgstr "Författare"
1464
 
1465
- #: loggers/SimplePluginLogger.php:1086
1466
  msgctxt "plugin logger - detailed output url"
1467
  msgid "URL"
1468
  msgstr "URL"
1469
 
1470
- #: loggers/SimplePluginLogger.php:1194 loggers/SimplePluginLogger.php:1213
1471
- #: loggers/SimplePluginLogger.php:1252
1472
  msgctxt "plugin logger: plugin info thickbox title view all info"
1473
  msgid "View plugin info"
1474
  msgstr "Visa information om plugin"
1475
 
1476
- #: loggers/SimplePluginLogger.php:1228
1477
  msgctxt "plugin logger: plugin info thickbox title"
1478
  msgid "View plugin info"
1479
  msgstr "Visa information om plugin"
1480
 
1481
- #: loggers/SimplePluginLogger.php:1232
1482
  msgctxt "plugin logger: plugin info thickbox title"
1483
  msgid "View changelog"
1484
  msgstr "Visa ändringslogg"
1485
 
1486
- #: loggers/SimplePostLogger.php:192
1487
  msgctxt "Post logger: search"
1488
  msgid "Posts & Pages"
1489
  msgstr "Poster & sidor"
1490
 
1491
- #: loggers/SimplePostLogger.php:194
 
 
 
 
 
1492
  msgctxt "Post logger: search"
1493
  msgid "Posts created"
1494
  msgstr "Poster skapade"
1495
 
1496
- #: loggers/SimplePostLogger.php:197
1497
  msgctxt "Post logger: search"
1498
  msgid "Posts updated"
1499
  msgstr "Poster uppdaterade"
1500
 
1501
- #: loggers/SimplePostLogger.php:200
1502
  msgctxt "Post logger: search"
1503
  msgid "Posts trashed"
1504
  msgstr "Poster kastade"
1505
 
1506
- #: loggers/SimplePostLogger.php:203
1507
  msgctxt "Post logger: search"
1508
  msgid "Posts deleted"
1509
  msgstr "Poster raderade"
1510
 
1511
- #: loggers/SimplePostLogger.php:206
1512
  msgctxt "Post logger: search"
1513
  msgid "Posts restored"
1514
  msgstr "Posterar återställda"
@@ -1518,37 +1671,42 @@ msgctxt "Theme logger: search"
1518
  msgid "Themes & Widgets"
1519
  msgstr "Teman & Widgets"
1520
 
1521
- #: loggers/SimpleThemeLogger.php:39
 
 
 
 
 
1522
  msgctxt "Theme logger: search"
1523
  msgid "Switched themes"
1524
  msgstr "Byten av teman"
1525
 
1526
- #: loggers/SimpleThemeLogger.php:42
1527
  msgctxt "Theme logger: search"
1528
  msgid "Changed appearance of themes"
1529
  msgstr "Ändrade utseende av teman"
1530
 
1531
- #: loggers/SimpleThemeLogger.php:45
1532
  msgctxt "Theme logger: search"
1533
  msgid "Added widgets"
1534
  msgstr "Tillagda widgets"
1535
 
1536
- #: loggers/SimpleThemeLogger.php:48
1537
  msgctxt "Theme logger: search"
1538
  msgid "Removed widgets"
1539
  msgstr "Borttagna widgets"
1540
 
1541
- #: loggers/SimpleThemeLogger.php:51
1542
  msgctxt "Theme logger: search"
1543
  msgid "Changed widgets order"
1544
  msgstr "Ändrad ordning av widgets"
1545
 
1546
- #: loggers/SimpleThemeLogger.php:54
1547
  msgctxt "Theme logger: search"
1548
  msgid "Edited widgets"
1549
  msgstr "Ändrade widgets"
1550
 
1551
- #: loggers/SimpleThemeLogger.php:57
1552
  msgctxt "Theme logger: search"
1553
  msgid "Background of themes changed"
1554
  msgstr "Ändrade bakgrunder för teman"
4
  msgstr ""
5
  "Project-Id-Version: Simple History 2\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/Simple-History\n"
7
+ "POT-Creation-Date: 2015-07-17 22:01+0200\n"
8
+ "PO-Revision-Date: 2015-07-17 22:10+0200\n"
9
  "Last-Translator: Pär Thernström <par.thernstrom@gmail.com>\n"
10
  "Language-Team: \n"
11
  "Language: sv\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.8.2\n"
16
  "X-Poedit-KeywordsList: __;_e;_x:1,2c;_ex:1,2c;_n:1,2;_nx:1,2,4c;_n_noop:1,2;"
17
  "_nx_noop:1,2,3c;esc_attr__;esc_html__;esc_attr_e;esc_html_e;esc_attr_x:1,2c;"
18
  "esc_html_x:1,2c\n"
19
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
20
  "X-Poedit-SourceCharset: UTF-8\n"
21
+ "X-Poedit-Basepath: ..\n"
22
  "X-Textdomain-Support: yes\n"
23
  "X-Poedit-SearchPath-0: .\n"
24
 
34
  "Om Simple History är användbar för dig så <a href=\"%1$s\">donera</a> eller "
35
  "<a href=\"%2$s\">köp mig något från min Amazon wish list</a>."
36
 
37
+ #: dropins/SimpleHistoryFilterDropin.php:89
38
  msgid "Filter history"
39
  msgstr "Filtrera historik"
40
 
41
+ #: dropins/SimpleHistoryFilterDropin.php:155
42
+ msgid "All dates"
43
+ msgstr "Alla datum"
44
+
45
+ #: dropins/SimpleHistoryFilterDropin.php:216
46
+ msgid "Containing words"
47
+ msgstr "Innehåller ord"
48
+
49
+ #: dropins/SimpleHistoryFilterDropin.php:223
50
+ #: dropins/SimpleHistoryFilterDropin.php:365
51
  msgid "Search events"
52
  msgstr "Sök händelser"
53
 
54
+ #: dropins/SimpleHistoryFilterDropin.php:241
55
  msgid "All log levels"
56
  msgstr "Alla loggnivåer"
57
 
58
+ #: dropins/SimpleHistoryFilterDropin.php:269
59
  msgid "All messages"
60
  msgstr "Alla meddelanden"
61
 
62
+ #: dropins/SimpleHistoryFilterDropin.php:358
63
  msgid "All users"
64
  msgstr "Alla användare"
65
 
66
+ #: dropins/SimpleHistoryFilterDropin.php:374
 
 
 
 
67
  msgid "Search"
68
  msgstr "Sök"
69
 
86
  msgstr "Skapade en ny hemlig RSS-adress"
87
 
88
  #: dropins/SimpleHistoryRSSDropin.php:150
89
+ #: dropins/SimpleHistoryRSSDropin.php:279
90
  msgid "History for %s"
91
  msgstr "Historik för %s"
92
 
93
  #: dropins/SimpleHistoryRSSDropin.php:151
94
+ #: dropins/SimpleHistoryRSSDropin.php:280
95
  msgid "WordPress History for %s"
96
  msgstr "WordPress-historik för %s"
97
 
98
+ #: dropins/SimpleHistoryRSSDropin.php:203
99
  msgid "Severity level: %1$s"
100
+ msgstr "Allvarlighetsgrad: %1$s"
101
 
102
+ #: dropins/SimpleHistoryRSSDropin.php:216
103
  msgid "+%1$s occasion"
104
  msgid_plural "+%1$s occasions"
105
  msgstr[0] "+%1$s tillfälle"
106
  msgstr[1] "+%1$s tillfällen"
107
 
108
+ #: dropins/SimpleHistoryRSSDropin.php:283
109
  msgid "Wrong RSS secret"
110
  msgstr "Fel RSS-lösenord"
111
 
112
+ #: dropins/SimpleHistoryRSSDropin.php:284
113
  msgid ""
114
  "Your RSS secret for Simple History RSS feed is wrong. Please see WordPress "
115
  "settings for current link to the RSS feed."
117
  "Ditt RSS-lösenord för RSS-flödet för Simple History är felaktigt. Gå till "
118
  "WordPress-inställningarna för att få en aktuell länk till RSS-flöded."
119
 
120
+ #: dropins/SimpleHistoryRSSDropin.php:335
121
  msgid ""
122
  "You can generate a new address for the RSS feed. This is useful if you think "
123
  "that the address has fallen into the wrong hands."
125
  "Du kan skapa en ny adress för RSS-flödet. Detta är användbart om du "
126
  "misstänker att adressen kommit i orätta händer."
127
 
128
+ #: dropins/SimpleHistoryRSSDropin.php:338
129
  msgid "Generate new address"
130
  msgstr "Skapa ny adress"
131
 
132
+ #: dropins/SimpleHistoryRSSDropin.php:368
133
  msgid ""
134
  "Simple History has a RSS feed which you can subscribe to and receive log "
135
  "updates. Make sure you only share the feed with people you trust, since it "
149
 
150
  #: dropins/SimpleHistorySettingsLogtestDropin.php:228
151
  msgid "Enter title of new page"
152
+ msgstr "Ange titel på ny sida"
153
 
154
  #: dropins/SimpleHistorySettingsStatsDropin.php:29
155
  msgid "Stats"
156
  msgstr "Statistik"
157
 
158
+ #: dropins/SimpleHistorySidebarDropin.php:165 loggers/SimpleLogger.php:366
159
  msgid "Just now"
160
  msgstr "Just nu"
161
 
162
+ #: examples/example-logger.php:46
163
+ msgid "Got a 404-page when trying to visit \"{request_uri}\""
164
+ msgstr "Fick en 404-sida när \"{request_uri}\" försökte besökas"
165
+
166
+ #: inc/SimpleHistory.php:370
167
+ msgid "Sorry, but there are too many similar events to show."
168
+ msgstr "Ledsen, men det finns för många liknande händelser att visa."
169
+
170
+ #: inc/SimpleHistory.php:573 inc/SimpleHistory.php:899
171
  msgid "Settings"
172
  msgstr "Inställningar"
173
 
174
+ #: inc/SimpleHistory.php:584
175
  msgid "Log (debug)"
176
  msgstr "Logg (debug)"
177
 
178
+ #: inc/SimpleHistory.php:589
179
  msgid "Styles example (debug)"
180
  msgstr "Stilexempel (debug)"
181
 
182
  #. Plugin Name of the plugin/theme
183
+ #: inc/SimpleHistory.php:924
184
  msgid "Simple History"
185
  msgstr "Simple History"
186
 
187
+ #: inc/SimpleHistory.php:1000
188
  msgid "Remove all log items?"
189
  msgstr "Ta bort alla händelser?"
190
 
191
+ #: inc/SimpleHistory.php:1002
192
  msgid "Go to the first page"
193
  msgstr "Gå till första sidan"
194
 
195
+ #: inc/SimpleHistory.php:1003
196
  msgid "Go to the previous page"
197
  msgstr "Gå till föregående sida"
198
 
199
+ #: inc/SimpleHistory.php:1004
200
  msgid "Go to the next page"
201
  msgstr "Gå till nästa sida"
202
 
203
+ #: inc/SimpleHistory.php:1005
204
  msgid "Go to the last page"
205
  msgstr "Gå till sista sidan"
206
 
207
+ #: inc/SimpleHistory.php:1006
208
  msgid "Current page"
209
  msgstr "Aktuell sida"
210
 
211
+ #: inc/SimpleHistory.php:1008
212
  msgid "Oups, the log could not be loaded right now."
213
  msgstr "Hoppsan, historiken kunde inte laddas just nu."
214
 
215
+ #: inc/SimpleHistory.php:1009
216
  msgid "Your search did not match any history events."
217
  msgstr "Din sökning matchade inte några händelser i historiken."
218
 
219
+ #: inc/SimpleHistory.php:1293 inc/SimpleHistory.php:1408
220
  msgid "Simple History Settings"
221
  msgstr "Inställningar för Simple History"
222
 
223
+ #: inc/SimpleHistory.php:1327
224
  msgid "No valid callback found"
225
  msgstr "Inget giltigt callback hittades."
226
 
227
+ #: inc/SimpleHistory.php:1429
228
  msgid "Cleared database"
229
  msgstr "Databasen rensades"
230
 
231
+ #: inc/SimpleHistory.php:1456
232
  msgid "Show history"
233
  msgstr "Visa historik"
234
 
235
+ #: inc/SimpleHistory.php:1469
236
  msgid "Number of items per page"
237
  msgstr "Antal händelser per sida"
238
 
239
+ #: inc/SimpleHistory.php:1481
240
  msgid "Clear log"
241
  msgstr "Rensa logg"
242
 
243
+ #: inc/SimpleHistory.php:1620
244
  msgid "on the dashboard"
245
  msgstr "i panelen"
246
 
247
+ #: inc/SimpleHistory.php:1625
248
  msgid "as a page under the dashboard menu"
249
  msgstr "som en sida under panel-menyn"
250
 
251
+ #: inc/SimpleHistory.php:1641
252
  msgid "Items in the database are automatically removed after %1$s days."
253
  msgstr "Händelser i databasen tas automatiskt bort efter %1$s dagar."
254
 
255
+ #: inc/SimpleHistory.php:1643
256
  msgid "Items in the database are kept forever."
257
  msgstr "Händelser i databasen lagras för evigt."
258
 
259
+ #: inc/SimpleHistory.php:1647
260
  msgid "Clear log now"
261
  msgstr "Rensa loggen nu"
262
 
263
+ #: inc/SimpleHistory.php:1699
264
  msgid "The log for Simple History was cleared ({num_rows} rows were removed)."
265
  msgstr "Rensade historiken för Simple History. ({num_rows} rader togs bort)."
266
 
267
+ #: inc/SimpleHistory.php:1963
268
  msgid "+%1$s similar event"
269
  msgid_plural "+%1$s similar events"
270
  msgstr[0] "+%1$s liknande händelse"
271
  msgstr[1] "+%1$s liknande händelser"
272
 
273
+ #: inc/SimpleHistory.php:1970
274
  msgid "Loading…"
275
  msgstr "Laddar historik..."
276
 
277
+ #: inc/SimpleHistory.php:1977
278
  msgid "Showing %1$s more"
279
  msgstr "+%1$s fler"
280
 
281
+ #: inc/SimpleHistory.php:2016
282
  msgid "Context data"
283
  msgstr "Kontextuell data"
284
 
285
+ #: inc/SimpleHistory.php:2017
286
  msgid "This is potentially useful meta data that a logger has saved."
287
  msgstr "Detta eventuellt användbar metadata som en logger har sparat."
288
 
289
+ #: inc/SimpleHistory.php:2639
290
  msgid "No events today so far."
291
  msgstr "Inga händelser idag ännu."
292
 
293
+ #: inc/SimpleHistory.php:2658
294
  msgid "One event today from one user."
295
  msgstr "En händelse idag från en användare."
296
 
297
+ #: inc/SimpleHistory.php:2664
298
  msgid "One event today from one source."
299
  msgstr "En händelse idag från en källa."
300
 
301
+ #: inc/SimpleHistory.php:2670
302
  msgid "%1$d events today from one user."
303
  msgstr "%1$d händelser idag från en användare."
304
 
305
+ #: inc/SimpleHistory.php:2676
306
  msgid "%1$d events today from %2$d users."
307
  msgstr "%1$d händelser idag från %2$d användare."
308
 
309
+ #: inc/SimpleHistory.php:2682 inc/SimpleHistory.php:2688
310
  msgid "%1$d events today from one user and one other source."
311
  msgstr "%1$d händelser idag från en användare och från en annan källa."
312
 
313
+ #: inc/SimpleHistory.php:2694
314
  msgid "%1$d events today from one user and %3$d other sources."
315
  msgstr "%1$d händelser idag från en användare och från %3$d andra källor."
316
 
317
+ #: inc/SimpleHistory.php:2700
318
  msgid "%1$s events today from %2$d users and %3$d other sources."
319
  msgstr "%1$s händelser idag från %2$d användare och %3$d andra källor."
320
 
321
+ #: index.php:97
322
  msgid ""
323
  "Simple History is a great plugin, but to use it your server must have at "
324
  "least PHP 5.3 installed (you have version %s)."
371
  msgid "%d occasions"
372
  msgstr "%d tillfällen"
373
 
374
+ #: loggers/SimpleLogger.php:234
375
  msgid "Deleted user (had id %1$s, email %2$s, login %3$s)"
376
  msgstr "Raderad användare (hade id %1$s, epost %2$s, login %3$s)"
377
 
378
+ #: loggers/SimpleLogger.php:260
379
  msgid "Anonymous web user"
380
  msgstr "Anonym webbanvändare"
381
 
382
+ #: loggers/SimpleLogger.php:293
383
  msgid "Anonymous user from %1$s"
384
  msgstr "Anonym användare från %1$s"
385
 
386
  #. translators: Date format for log row header, see http:php.net/date
387
+ #: loggers/SimpleLogger.php:371
388
  msgid "M j, Y \\a\\t G:i"
389
  msgstr "M j, Y \\a\\t G:i"
390
 
391
  #. translators: 1: last modified date and time in human time diff-format
392
+ #: loggers/SimpleLogger.php:379
393
  msgid "%1$s ago"
394
  msgstr "%1$s sedan"
395
 
405
  msgid "Deleted {post_type} \"{attachment_title}\" (\"{attachment_filename}\")"
406
  msgstr "Raderade {post_type} \"{attachment_title}\" (\"{attachment_filename}\")"
407
 
408
+ #: loggers/SimpleMediaLogger.php:122
409
  msgid "Edited {post_type} <a href=\"{edit_link}\">\"{attachment_title}\"</a>"
410
  msgstr ""
411
  "Redigerade {post_type} <a href=\"{edit_link}\">\"{attachment_title}\"</a>"
412
 
413
+ #: loggers/SimpleMediaLogger.php:126
414
  msgid "Uploaded {post_type} <a href=\"{edit_link}\">\"{attachment_title}\"</a>"
415
  msgstr ""
416
  "Laddade upp {post_type} <a href=\"{edit_link}\">\"{attachment_title}\"</a>"
417
 
418
+ #: loggers/SimpleMediaLogger.php:242
419
  msgid "{attachment_thumb}"
420
  msgstr "{attachment_thumb}"
421
 
422
+ #: loggers/SimpleMediaLogger.php:251
423
  msgid "{attachment_size_format}"
424
  msgstr "{attachment_size_format}"
425
 
426
+ #: loggers/SimpleMediaLogger.php:252
427
  msgid "{attachment_filetype_extension}"
428
  msgstr "{attachment_filetype_extension}"
429
 
430
+ #: loggers/SimpleMediaLogger.php:254
431
  msgid "{full_image_width} × {full_image_height}"
432
  msgstr "{full_image_width} × {full_image_height}"
433
 
455
  msgid "Updated option \"{option}\""
456
  msgstr "Uppdaterade inställningen \"{option}\""
457
 
458
+ #: loggers/SimpleOptionsLogger.php:244 loggers/SimpleThemeLogger.php:572
459
  msgid "New value"
460
  msgstr "Nytt värde"
461
 
462
+ #: loggers/SimpleOptionsLogger.php:255 loggers/SimpleThemeLogger.php:584
463
  msgid "Old value"
464
  msgstr "Gammalt värde"
465
 
467
  msgid "Settings page"
468
  msgstr "Inställningssida"
469
 
470
+ #: loggers/SimplePluginLogger.php:178
471
  msgid "You don't have access to this page."
472
  msgstr "Du har inte tillgång till den här sidan."
473
 
474
+ #: loggers/SimplePluginLogger.php:184 loggers/SimplePluginLogger.php:189
475
  msgid "Could not find GitHub repository."
476
  msgstr "Kunde inte hitta GitHub-repository."
477
 
478
+ #: loggers/SimplePluginLogger.php:209
479
  msgid ""
480
  "<p>Viewing <code>readme</code> from repository <code><a target=\"_blank\" "
481
  "href=\"%1$s\">%2$s</a></code>.</p>"
483
  "<p>Visar <code>readme</code> från repository <code><a target=\"_blank\" href="
484
  "\"%1$s\">%2$s</a></code>.</p>"
485
 
486
+ #: loggers/SimplePluginLogger.php:274
487
  msgid "You do not have sufficient permissions to delete plugins for this site."
488
  msgstr ""
489
+ "Du har inte tillräckligt med rättigheter för att radera tillägg för den här "
490
+ "sajten."
491
 
492
+ #: loggers/SimplePluginLogger.php:1122
493
  msgid "WordPress Plugin Repository"
494
  msgstr "WordPress Plugin Repository"
495
 
496
+ #: loggers/SimplePluginLogger.php:1125
497
  msgid "Uploaded ZIP archive"
498
  msgstr "Uppladdat ZIP-arkiv"
499
 
500
+ #: loggers/SimplePostLogger.php:119
501
  msgid "Created {post_type} \"{post_title}\""
502
  msgstr "Skapade {post_type} \"{post_title}\""
503
 
504
+ #: loggers/SimplePostLogger.php:120
505
  msgid "Updated {post_type} \"{post_title}\""
506
  msgstr "Uppdaterade {post_type} \"{post_title}\""
507
 
508
+ #: loggers/SimplePostLogger.php:121
509
  msgid "Restored {post_type} \"{post_title}\" from trash"
510
  msgstr "Återställde {post_type} \"{post_title}\" från papperskorgen"
511
 
512
+ #: loggers/SimplePostLogger.php:122 loggers/SimplePostLogger.php:687
513
  msgid "Deleted {post_type} \"{post_title}\""
514
  msgstr "Raderade {post_type} \"{post_title}\""
515
 
516
+ #: loggers/SimplePostLogger.php:123
517
  msgid "Moved {post_type} \"{post_title}\" to the trash"
518
  msgstr "Flyttade {post_type} \"{post_title}\" till papperskorgen"
519
 
520
+ #: loggers/SimplePostLogger.php:683
521
  msgid "Updated {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a>"
522
  msgstr "Uppdaterade {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a>"
523
 
524
+ #: loggers/SimplePostLogger.php:691
525
  msgid "Created {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a>"
526
  msgstr "Skapade {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a>"
527
 
528
+ #: loggers/SimplePostLogger.php:696
529
  msgid ""
530
  "Moved {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a> to the trash"
531
  msgstr ""
532
  "Flyttade {post_type} <a href=\"{edit_link}\">\"{post_title}\"</a> till "
533
  "papperskorgen"
534
 
535
+ #: loggers/SimplePostLogger.php:748
536
+ msgid "Title"
537
+ msgstr "Titel"
538
+
539
+ #: loggers/SimplePostLogger.php:762
540
+ msgid "Content"
541
+ msgstr "Innehåll"
542
+
543
+ #: loggers/SimplePostLogger.php:776
544
+ msgid "Status"
545
+ msgstr "Status"
546
+
547
+ #: loggers/SimplePostLogger.php:792
548
+ msgid "Publish date"
549
+ msgstr "Publiceringsdatum"
550
+
551
+ #: loggers/SimplePostLogger.php:807
552
+ msgid "Permalink"
553
+ msgstr "Permalänk"
554
+
555
+ #: loggers/SimplePostLogger.php:821
556
+ msgid "Comment status"
557
+ msgstr "Status på kommentar"
558
+
559
+ #: loggers/SimplePostLogger.php:844
560
+ msgid "Author"
561
+ msgstr "Författare"
562
+
563
+ #: loggers/SimplePostLogger.php:846
564
+ msgid ""
565
+ "Changed from {prev_user_display_name} ({prev_user_email}) to "
566
+ "{new_user_display_name} ({new_user_email})"
567
+ msgstr ""
568
+ "Ändrad från {prev_user_display_name} ({prev_user_email}) till "
569
+ "{new_user_display_name} ({new_user_email})"
570
+
571
+ #: loggers/SimplePostLogger.php:880
572
+ msgid "Changed from {prev_page_template} to {new_page_template}"
573
+ msgstr "Ändrad från {prev_page_template} till {new_page_template}"
574
+
575
+ #: loggers/SimplePostLogger.php:882
576
+ msgid ""
577
+ "Changed from \"{prev_page_template_name}\" to \"{new_page_template_name}\""
578
+ msgstr ""
579
+ "Ändrad från \"{prev_page_template_name}\" till \"{new_page_template_name}\""
580
+
581
+ #: loggers/SimplePostLogger.php:890
582
+ msgid "Template"
583
+ msgstr "Sidmall"
584
+
585
+ #: loggers/SimplePostLogger.php:934
586
+ msgid "Custom fields"
587
+ msgstr "Egna fält"
588
+
589
  #: loggers/SimpleThemeLogger.php:27
590
  msgid "Switched theme to \"{theme_name}\" from \"{prev_theme_name}\""
591
  msgstr "Bytte tema till \"{theme_name}\" från \"{prev_theme_name}\""
615
  msgid "Changed settings for the theme custom background"
616
  msgstr "Ändrade inställningar för temats anpassade bakgrund"
617
 
618
+ #: loggers/SimpleThemeLogger.php:534
619
  msgid "Section"
620
  msgstr "Sektion"
621
 
757
  msgid "Donate"
758
  msgstr "Donera"
759
 
760
+ #: dropins/SimpleHistoryExportDropin.php:23
761
+ msgctxt "Export dropin: Tab name on settings page"
762
+ msgid "Export"
763
+ msgstr "Export"
764
+
765
+ #: dropins/SimpleHistoryExportDropin.php:221
766
+ msgctxt "Export dropin: introtext"
767
+ msgid "The export function will export the full history."
768
+ msgstr "Exportfunktionen kommer exportera hela historiken."
769
+
770
+ #: dropins/SimpleHistoryExportDropin.php:225
771
+ msgctxt "Export dropin: format"
772
+ msgid "Choose format to export to"
773
+ msgstr "Välj format att exportera till"
774
+
775
+ #: dropins/SimpleHistoryExportDropin.php:230
776
+ msgctxt "Export dropin: export format"
777
+ msgid "JSON"
778
+ msgstr "JSON"
779
+
780
+ #: dropins/SimpleHistoryExportDropin.php:237
781
+ msgctxt "Export dropin: export format"
782
+ msgid "CSV"
783
+ msgstr "CSV"
784
+
785
+ #: dropins/SimpleHistoryExportDropin.php:255
786
+ msgctxt "Export dropin: submit button"
787
+ msgid "Download Export File"
788
+ msgstr "Ladda hem exportfil"
789
+
790
+ #: dropins/SimpleHistoryFilterDropin.php:162
791
+ msgctxt "Filter dropin: filter week"
792
+ msgid "Last 7 days"
793
+ msgstr "Senaste 7 dagarna"
794
+
795
+ #: dropins/SimpleHistoryFilterDropin.php:169
796
+ msgctxt "Filter dropin: filter week"
797
+ msgid "Last 14 days"
798
+ msgstr "Senaste 14 dagarna"
799
+
800
+ #: dropins/SimpleHistoryFilterDropin.php:176
801
+ msgctxt "Filter dropin: filter week"
802
+ msgid "Last 30 days"
803
+ msgstr "Senaste 30 dagarna"
804
+
805
+ #: dropins/SimpleHistoryFilterDropin.php:183
806
+ msgctxt "Filter dropin: filter week"
807
+ msgid "Last 60 days"
808
+ msgstr "Senaste 60 dagarna"
809
+
810
+ #: dropins/SimpleHistoryFilterDropin.php:225
811
  msgctxt "Filter dropin: button to show more search options"
812
  msgid "Show options"
813
  msgstr "Visa alternativ"
814
 
815
+ #: dropins/SimpleHistoryFilterDropin.php:366
816
  msgctxt "Filter dropin: button to hide more search options"
817
  msgid "Hide options"
818
  msgstr "Göm alternativ"
919
  "En bra recension hjälper nya användare att hitta tillägget. Och det kommer "
920
  "göra utvecklaren väldigt glad!"
921
 
922
+ #: examples/example-logger.php:50
923
+ msgctxt "User logger: 404"
924
+ msgid "Pages not found (404 errors)"
925
+ msgstr "Inte hittade sidor (404-fel)"
926
+
927
+ #: examples/example-logger.php:52
928
+ msgctxt "User logger: 404"
929
+ msgid "Pages not found"
930
+ msgstr "Inte hittade sidor"
931
+
932
+ #: inc/SimpleHistory.php:290
933
  msgctxt ""
934
  "Message visible while waiting for log to load from server the first time"
935
  msgid "Loading history..."
936
  msgstr "Laddar historik..."
937
 
938
+ #: inc/SimpleHistory.php:327
939
  msgctxt "page n of n"
940
  msgid "of"
941
  msgstr "av"
942
 
943
+ #: inc/SimpleHistory.php:422
944
  msgctxt "API: not enought arguments passed"
945
  msgid "Not enough args specified"
946
  msgstr "Inte tillräckligt med arguments specifierade"
947
 
948
+ #: inc/SimpleHistory.php:1390
949
  msgctxt "dashboard menu name"
950
  msgid "Simple History"
951
  msgstr "Simple History"
952
 
953
+ #: inc/SimpleHistory.php:1517
954
  msgctxt "history page headline"
955
  msgid "Simple History"
956
  msgstr "Simple History"
957
 
958
+ #: inc/SimpleHistory.php:1787
959
  msgctxt "simple-history"
960
  msgid "Simple History removed one event that were older than {days} days"
961
  msgid_plural ""
964
  msgstr[1] ""
965
  "Simple History radera {num_rows} händelser som var äldre än {days} dagar"
966
 
967
+ #: inc/SimpleHistory.php:2248
968
  msgctxt "Log level in gui"
969
  msgid "emergency"
970
  msgstr "kritiskt"
971
 
972
+ #: inc/SimpleHistory.php:2252
973
  msgctxt "Log level in gui"
974
  msgid "alert"
975
  msgstr "alert"
976
 
977
+ #: inc/SimpleHistory.php:2256
978
  msgctxt "Log level in gui"
979
  msgid "critical"
980
  msgstr "kritiskt"
981
 
982
+ #: inc/SimpleHistory.php:2260
983
  msgctxt "Log level in gui"
984
  msgid "error"
985
  msgstr "error"
986
 
987
+ #: inc/SimpleHistory.php:2264
988
  msgctxt "Log level in gui"
989
  msgid "warning"
990
  msgstr "warning"
991
 
992
+ #: inc/SimpleHistory.php:2268
993
  msgctxt "Log level in gui"
994
  msgid "notice"
995
  msgstr "notice"
996
 
997
+ #: inc/SimpleHistory.php:2272
998
  msgctxt "Log level in gui"
999
  msgid "info"
1000
  msgstr "info"
1001
 
1002
+ #: inc/SimpleHistory.php:2276
1003
  msgctxt "Log level in gui"
1004
  msgid "debug"
1005
  msgstr "debug"
1006
 
1007
+ #: inc/SimpleHistory.php:2281
1008
  msgctxt "Log level in gui"
1009
  msgid "Emergency"
1010
  msgstr "Emergency"
1011
 
1012
+ #: inc/SimpleHistory.php:2285
1013
  msgctxt "Log level in gui"
1014
  msgid "Alert"
1015
  msgstr "Alert"
1016
 
1017
+ #: inc/SimpleHistory.php:2289
1018
  msgctxt "Log level in gui"
1019
  msgid "Critical"
1020
  msgstr "Critical"
1021
 
1022
+ #: inc/SimpleHistory.php:2293
1023
  msgctxt "Log level in gui"
1024
  msgid "Error"
1025
  msgstr "Error"
1026
 
1027
+ #: inc/SimpleHistory.php:2297
1028
  msgctxt "Log level in gui"
1029
  msgid "Warning"
1030
  msgstr "Warning"
1031
 
1032
+ #: inc/SimpleHistory.php:2301
1033
  msgctxt "Log level in gui"
1034
  msgid "Notice"
1035
  msgstr "Notice"
1036
 
1037
+ #: inc/SimpleHistory.php:2305
1038
  msgctxt "Log level in gui"
1039
  msgid "Info"
1040
  msgstr "Info"
1041
 
1042
+ #: inc/SimpleHistory.php:2309
1043
  msgctxt "Log level in gui"
1044
  msgid "Debug"
1045
  msgstr "Debug"
1398
  msgid "Created exports"
1399
  msgstr "Skapade exporter"
1400
 
1401
+ #: loggers/SimpleLogger.php:220
1402
  msgctxt "header output when initiator is the currently logged in user"
1403
  msgid "You"
1404
  msgstr "Du"
1405
 
1406
+ #: loggers/SimpleLogger.php:311
1407
+ msgctxt "Event header output, when initiator is unknown"
1408
+ msgid "Other"
1409
+ msgstr "Annan"
1410
+
1411
  #: loggers/SimpleMediaLogger.php:31
1412
  msgctxt "Media logger: search"
1413
  msgid "Media"
1414
  msgstr "Media"
1415
 
1416
+ #: loggers/SimpleMediaLogger.php:32
1417
+ msgctxt "Media logger: search"
1418
+ msgid "All media activity"
1419
+ msgstr "All mediaaktivitet"
1420
+
1421
+ #: loggers/SimpleMediaLogger.php:34
1422
  msgctxt "Media logger: search"
1423
  msgid "Added media"
1424
  msgstr "Tillagda media"
1425
 
1426
+ #: loggers/SimpleMediaLogger.php:37
1427
  msgctxt "Media logger: search"
1428
  msgid "Updated media"
1429
  msgstr "Uppdaterade medier"
1430
 
1431
+ #: loggers/SimpleMediaLogger.php:40
1432
  msgctxt "Media logger: search"
1433
  msgid "Deleted media"
1434
  msgstr "Raderade media"
1438
  msgid "Menus"
1439
  msgstr "Menyer"
1440
 
1441
+ #: loggers/SimpleMenuLogger.php:34
1442
+ msgctxt "Menu updates logger: search"
1443
+ msgid "All menu activity"
1444
+ msgstr "All aktivitet från menyer"
1445
+
1446
+ #: loggers/SimpleMenuLogger.php:36
1447
  msgctxt "Menu updates logger: search"
1448
  msgid "Created menus"
1449
  msgstr "Skapade menyer"
1450
 
1451
+ #: loggers/SimpleMenuLogger.php:39
1452
  msgctxt "Menu updates logger: search"
1453
  msgid "Edited menus"
1454
  msgstr "Ändrade menyer"
1455
 
1456
+ #: loggers/SimpleMenuLogger.php:44
1457
  msgctxt "Menu updates logger: search"
1458
  msgid "Deleted menus"
1459
  msgstr "Raderade menyer"
1460
 
1461
+ #: loggers/SimpleMenuLogger.php:329
1462
  msgctxt "menu logger"
1463
  msgid "%1$s menu item added"
1464
  msgid_plural "%1$s menu items added"
1465
  msgstr[0] "%1$s menyval tillagt"
1466
  msgstr[1] "%1$s menyval tillagda"
1467
 
1468
+ #: loggers/SimpleMenuLogger.php:336
1469
  msgctxt "menu logger"
1470
  msgid "%1$s menu item removed"
1471
  msgid_plural "%1$s menu items removed"
1540
  msgid "Plugins"
1541
  msgstr "Tillägg"
1542
 
1543
+ #: loggers/SimplePluginLogger.php:85
1544
+ msgctxt "Plugin logger: search"
1545
+ msgid "All plugin activity"
1546
+ msgstr "All tilläggsaktivitet"
1547
+
1548
+ #: loggers/SimplePluginLogger.php:87
1549
  msgctxt "Plugin logger: search"
1550
  msgid "Activated plugins"
1551
  msgstr "Aktiverade tillägg"
1552
 
1553
+ #: loggers/SimplePluginLogger.php:90
1554
  msgctxt "Plugin logger: search"
1555
  msgid "Deactivated plugins"
1556
  msgstr "Inaktiverade tillägg"
1557
 
1558
+ #: loggers/SimplePluginLogger.php:93
1559
  msgctxt "Plugin logger: search"
1560
  msgid "Installed plugins"
1561
  msgstr "Installerade tillägg"
1562
 
1563
+ #: loggers/SimplePluginLogger.php:96
1564
  msgctxt "Plugin logger: search"
1565
  msgid "Failed plugin installs"
1566
  msgstr "Misslyckade installationer av plugins"
1567
 
1568
+ #: loggers/SimplePluginLogger.php:99
1569
  msgctxt "Plugin logger: search"
1570
  msgid "Updated plugins"
1571
  msgstr "Uppdaterade plugins"
1572
 
1573
+ #: loggers/SimplePluginLogger.php:103
1574
  msgctxt "Plugin logger: search"
1575
  msgid "Failed plugin updates"
1576
  msgstr "Misslyckades uppdateringar av plugins"
1577
 
1578
+ #: loggers/SimplePluginLogger.php:106
1579
  msgctxt "Plugin logger: search"
1580
  msgid "Edited plugin files"
1581
  msgstr "Redigerade pluginfiler"
1582
 
1583
+ #: loggers/SimplePluginLogger.php:109
1584
  msgctxt "Plugin logger: search"
1585
  msgid "Deleted plugins"
1586
  msgstr "Raderade plugins"
1587
 
1588
+ #: loggers/SimplePluginLogger.php:1074
1589
  msgctxt "plugin logger - detailed output"
1590
  msgid "Description"
1591
  msgstr "Beskrivning"
1592
 
1593
+ #: loggers/SimplePluginLogger.php:1075
1594
  msgctxt "plugin logger - detailed output install source"
1595
  msgid "Source"
1596
  msgstr "Källa"
1597
 
1598
+ #: loggers/SimplePluginLogger.php:1076
1599
  msgctxt "plugin logger - detailed output install source"
1600
  msgid "Source file name"
1601
  msgstr "Källans filnamn"
1602
 
1603
+ #: loggers/SimplePluginLogger.php:1077
1604
  msgctxt "plugin logger - detailed output version"
1605
  msgid "Version"
1606
  msgstr "Version"
1607
 
1608
+ #: loggers/SimplePluginLogger.php:1078
1609
  msgctxt "plugin logger - detailed output author"
1610
  msgid "Author"
1611
  msgstr "Författare"
1612
 
1613
+ #: loggers/SimplePluginLogger.php:1079
1614
  msgctxt "plugin logger - detailed output url"
1615
  msgid "URL"
1616
  msgstr "URL"
1617
 
1618
+ #: loggers/SimplePluginLogger.php:1187 loggers/SimplePluginLogger.php:1206
1619
+ #: loggers/SimplePluginLogger.php:1245
1620
  msgctxt "plugin logger: plugin info thickbox title view all info"
1621
  msgid "View plugin info"
1622
  msgstr "Visa information om plugin"
1623
 
1624
+ #: loggers/SimplePluginLogger.php:1221
1625
  msgctxt "plugin logger: plugin info thickbox title"
1626
  msgid "View plugin info"
1627
  msgstr "Visa information om plugin"
1628
 
1629
+ #: loggers/SimplePluginLogger.php:1225
1630
  msgctxt "plugin logger: plugin info thickbox title"
1631
  msgid "View changelog"
1632
  msgstr "Visa ändringslogg"
1633
 
1634
+ #: loggers/SimplePostLogger.php:127
1635
  msgctxt "Post logger: search"
1636
  msgid "Posts & Pages"
1637
  msgstr "Poster & sidor"
1638
 
1639
+ #: loggers/SimplePostLogger.php:128
1640
+ msgctxt "Post logger: search"
1641
+ msgid "All posts & pages activity"
1642
+ msgstr "All aktivitet från sidor och blogginlägg"
1643
+
1644
+ #: loggers/SimplePostLogger.php:130
1645
  msgctxt "Post logger: search"
1646
  msgid "Posts created"
1647
  msgstr "Poster skapade"
1648
 
1649
+ #: loggers/SimplePostLogger.php:133
1650
  msgctxt "Post logger: search"
1651
  msgid "Posts updated"
1652
  msgstr "Poster uppdaterade"
1653
 
1654
+ #: loggers/SimplePostLogger.php:136
1655
  msgctxt "Post logger: search"
1656
  msgid "Posts trashed"
1657
  msgstr "Poster kastade"
1658
 
1659
+ #: loggers/SimplePostLogger.php:139
1660
  msgctxt "Post logger: search"
1661
  msgid "Posts deleted"
1662
  msgstr "Poster raderade"
1663
 
1664
+ #: loggers/SimplePostLogger.php:142
1665
  msgctxt "Post logger: search"
1666
  msgid "Posts restored"
1667
  msgstr "Posterar återställda"
1671
  msgid "Themes & Widgets"
1672
  msgstr "Teman & Widgets"
1673
 
1674
+ #: loggers/SimpleThemeLogger.php:38
1675
+ msgctxt "Theme logger: search"
1676
+ msgid "All theme activity"
1677
+ msgstr "All aktivitet från teman"
1678
+
1679
+ #: loggers/SimpleThemeLogger.php:40
1680
  msgctxt "Theme logger: search"
1681
  msgid "Switched themes"
1682
  msgstr "Byten av teman"
1683
 
1684
+ #: loggers/SimpleThemeLogger.php:43
1685
  msgctxt "Theme logger: search"
1686
  msgid "Changed appearance of themes"
1687
  msgstr "Ändrade utseende av teman"
1688
 
1689
+ #: loggers/SimpleThemeLogger.php:46
1690
  msgctxt "Theme logger: search"
1691
  msgid "Added widgets"
1692
  msgstr "Tillagda widgets"
1693
 
1694
+ #: loggers/SimpleThemeLogger.php:49
1695
  msgctxt "Theme logger: search"
1696
  msgid "Removed widgets"
1697
  msgstr "Borttagna widgets"
1698
 
1699
+ #: loggers/SimpleThemeLogger.php:52
1700
  msgctxt "Theme logger: search"
1701
  msgid "Changed widgets order"
1702
  msgstr "Ändrad ordning av widgets"
1703
 
1704
+ #: loggers/SimpleThemeLogger.php:55
1705
  msgctxt "Theme logger: search"
1706
  msgid "Edited widgets"
1707
  msgstr "Ändrade widgets"
1708
 
1709
+ #: loggers/SimpleThemeLogger.php:58
1710
  msgctxt "Theme logger: search"
1711
  msgid "Background of themes changed"
1712
  msgstr "Ändrade bakgrunder för teman"
languages/simple-history.pot CHANGED
@@ -2,9 +2,9 @@
2
  # This file is distributed under the same license as the Simple History package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: Simple History 2.1\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/Simple-History\n"
7
- "POT-Creation-Date: 2015-05-26 19:52:54+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
@@ -34,32 +34,36 @@ msgid ""
34
  "href=\"%2$s\">buy me something from my Amazon wish list</a>."
35
  msgstr ""
36
 
37
- #: dropins/SimpleHistoryFilterDropin.php:46
38
  msgid "Filter history"
39
  msgstr ""
40
 
41
- #: dropins/SimpleHistoryFilterDropin.php:50
42
- #: dropins/SimpleHistoryFilterDropin.php:161
 
 
 
 
 
 
 
 
43
  msgid "Search events"
44
  msgstr ""
45
 
46
- #: dropins/SimpleHistoryFilterDropin.php:58
47
  msgid "All log levels"
48
  msgstr ""
49
 
50
- #: dropins/SimpleHistoryFilterDropin.php:72
51
  msgid "All messages"
52
  msgstr ""
53
 
54
- #: dropins/SimpleHistoryFilterDropin.php:126
55
  msgid "All users"
56
  msgstr ""
57
 
58
- #: dropins/SimpleHistoryFilterDropin.php:147
59
- msgid "All dates"
60
- msgstr ""
61
-
62
- #: dropins/SimpleHistoryFilterDropin.php:170
63
  msgid "Search"
64
  msgstr ""
65
 
@@ -152,163 +156,163 @@ msgstr ""
152
  msgid "Got a 404-page when trying to visit \"{request_uri}\""
153
  msgstr ""
154
 
155
- #: inc/SimpleHistory.php:364
156
  msgid "Sorry, but there are too many similar events to show."
157
  msgstr ""
158
 
159
- #: inc/SimpleHistory.php:568 inc/SimpleHistory.php:894
160
  msgid "Settings"
161
  msgstr ""
162
 
163
- #: inc/SimpleHistory.php:579
164
  msgid "Log (debug)"
165
  msgstr ""
166
 
167
- #: inc/SimpleHistory.php:584
168
  msgid "Styles example (debug)"
169
  msgstr ""
170
 
171
- #: inc/SimpleHistory.php:919
172
- #. #-#-#-#-# simple-history.pot (Simple History 2.1) #-#-#-#-#
173
  #. Plugin Name of the plugin/theme
174
  msgid "Simple History"
175
  msgstr ""
176
 
177
- #: inc/SimpleHistory.php:997
178
  msgid "Remove all log items?"
179
  msgstr ""
180
 
181
- #: inc/SimpleHistory.php:999
182
  msgid "Go to the first page"
183
  msgstr ""
184
 
185
- #: inc/SimpleHistory.php:1000
186
  msgid "Go to the previous page"
187
  msgstr ""
188
 
189
- #: inc/SimpleHistory.php:1001
190
  msgid "Go to the next page"
191
  msgstr ""
192
 
193
- #: inc/SimpleHistory.php:1002
194
  msgid "Go to the last page"
195
  msgstr ""
196
 
197
- #: inc/SimpleHistory.php:1003
198
  msgid "Current page"
199
  msgstr ""
200
 
201
- #: inc/SimpleHistory.php:1005
202
  msgid "Oups, the log could not be loaded right now."
203
  msgstr ""
204
 
205
- #: inc/SimpleHistory.php:1006
206
  msgid "Your search did not match any history events."
207
  msgstr ""
208
 
209
- #: inc/SimpleHistory.php:1290 inc/SimpleHistory.php:1405
210
  msgid "Simple History Settings"
211
  msgstr ""
212
 
213
- #: inc/SimpleHistory.php:1324
214
  msgid "No valid callback found"
215
  msgstr ""
216
 
217
- #: inc/SimpleHistory.php:1426
218
  msgid "Cleared database"
219
  msgstr ""
220
 
221
- #: inc/SimpleHistory.php:1453
222
  msgid "Show history"
223
  msgstr ""
224
 
225
- #: inc/SimpleHistory.php:1466
226
  msgid "Number of items per page"
227
  msgstr ""
228
 
229
- #: inc/SimpleHistory.php:1478
230
  msgid "Clear log"
231
  msgstr ""
232
 
233
- #: inc/SimpleHistory.php:1617
234
  msgid "on the dashboard"
235
  msgstr ""
236
 
237
- #: inc/SimpleHistory.php:1622
238
  msgid "as a page under the dashboard menu"
239
  msgstr ""
240
 
241
- #: inc/SimpleHistory.php:1638
242
  msgid "Items in the database are automatically removed after %1$s days."
243
  msgstr ""
244
 
245
- #: inc/SimpleHistory.php:1640
246
  msgid "Items in the database are kept forever."
247
  msgstr ""
248
 
249
- #: inc/SimpleHistory.php:1644
250
  msgid "Clear log now"
251
  msgstr ""
252
 
253
- #: inc/SimpleHistory.php:1696
254
  msgid "The log for Simple History was cleared ({num_rows} rows were removed)."
255
  msgstr ""
256
 
257
- #: inc/SimpleHistory.php:1960
258
  msgid "+%1$s similar event"
259
  msgid_plural "+%1$s similar events"
260
  msgstr[0] ""
261
  msgstr[1] ""
262
 
263
- #: inc/SimpleHistory.php:1967
264
  msgid "Loading…"
265
  msgstr ""
266
 
267
- #: inc/SimpleHistory.php:1974
268
  msgid "Showing %1$s more"
269
  msgstr ""
270
 
271
- #: inc/SimpleHistory.php:2013
272
  msgid "Context data"
273
  msgstr ""
274
 
275
- #: inc/SimpleHistory.php:2014
276
  msgid "This is potentially useful meta data that a logger has saved."
277
  msgstr ""
278
 
279
- #: inc/SimpleHistory.php:2629
280
  msgid "No events today so far."
281
  msgstr ""
282
 
283
- #: inc/SimpleHistory.php:2648
284
  msgid "One event today from one user."
285
  msgstr ""
286
 
287
- #: inc/SimpleHistory.php:2654
288
  msgid "One event today from one source."
289
  msgstr ""
290
 
291
- #: inc/SimpleHistory.php:2660
292
  msgid "%1$d events today from one user."
293
  msgstr ""
294
 
295
- #: inc/SimpleHistory.php:2666
296
  msgid "%1$d events today from %2$d users."
297
  msgstr ""
298
 
299
- #: inc/SimpleHistory.php:2672 inc/SimpleHistory.php:2678
300
  msgid "%1$d events today from one user and one other source."
301
  msgstr ""
302
 
303
- #: inc/SimpleHistory.php:2684
304
  msgid "%1$d events today from one user and %3$d other sources."
305
  msgstr ""
306
 
307
- #: inc/SimpleHistory.php:2690
308
  msgid "%1$s events today from %2$d users and %3$d other sources."
309
  msgstr ""
310
 
311
- #: index.php:76
312
  msgid ""
313
  "Simple History is a great plugin, but to use it your server must have at "
314
  "least PHP 5.3 installed (you have version %s)."
@@ -400,19 +404,19 @@ msgstr ""
400
  msgid "Uploaded {post_type} <a href=\"{edit_link}\">\"{attachment_title}\"</a>"
401
  msgstr ""
402
 
403
- #: loggers/SimpleMediaLogger.php:238
404
  msgid "{attachment_thumb}"
405
  msgstr ""
406
 
407
- #: loggers/SimpleMediaLogger.php:247
408
  msgid "{attachment_size_format}"
409
  msgstr ""
410
 
411
- #: loggers/SimpleMediaLogger.php:248
412
  msgid "{attachment_filetype_extension}"
413
  msgstr ""
414
 
415
- #: loggers/SimpleMediaLogger.php:250
416
  msgid "{full_image_width} × {full_image_height}"
417
  msgstr ""
418
 
@@ -718,42 +722,62 @@ msgctxt "donate settings headline"
718
  msgid "Donate"
719
  msgstr ""
720
 
721
- #: dropins/SimpleHistoryExportDropin.php:28
722
  msgctxt "Export dropin: Tab name on settings page"
723
  msgid "Export"
724
  msgstr ""
725
 
726
- #: dropins/SimpleHistoryExportDropin.php:226
727
  msgctxt "Export dropin: introtext"
728
  msgid "The export function will export the full history."
729
  msgstr ""
730
 
731
- #: dropins/SimpleHistoryExportDropin.php:230
732
  msgctxt "Export dropin: format"
733
  msgid "Choose format to export to"
734
  msgstr ""
735
 
736
- #: dropins/SimpleHistoryExportDropin.php:235
737
  msgctxt "Export dropin: export format"
738
  msgid "JSON"
739
  msgstr ""
740
 
741
- #: dropins/SimpleHistoryExportDropin.php:242
742
  msgctxt "Export dropin: export format"
743
  msgid "CSV"
744
  msgstr ""
745
 
746
- #: dropins/SimpleHistoryExportDropin.php:260
747
  msgctxt "Export dropin: submit button"
748
  msgid "Download Export File"
749
  msgstr ""
750
 
751
- #: dropins/SimpleHistoryFilterDropin.php:52
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
752
  msgctxt "Filter dropin: button to show more search options"
753
  msgid "Show options"
754
  msgstr ""
755
 
756
- #: dropins/SimpleHistoryFilterDropin.php:162
757
  msgctxt "Filter dropin: button to hide more search options"
758
  msgid "Hide options"
759
  msgstr ""
@@ -862,114 +886,114 @@ msgctxt "User logger: 404"
862
  msgid "Pages not found"
863
  msgstr ""
864
 
865
- #: inc/SimpleHistory.php:284
866
  msgctxt "Message visible while waiting for log to load from server the first time"
867
  msgid "Loading history..."
868
  msgstr ""
869
 
870
- #: inc/SimpleHistory.php:321
871
  msgctxt "page n of n"
872
  msgid "of"
873
  msgstr ""
874
 
875
- #: inc/SimpleHistory.php:416
876
  msgctxt "API: not enought arguments passed"
877
  msgid "Not enough args specified"
878
  msgstr ""
879
 
880
- #: inc/SimpleHistory.php:1387
881
  msgctxt "dashboard menu name"
882
  msgid "Simple History"
883
  msgstr ""
884
 
885
- #: inc/SimpleHistory.php:1514
886
  msgctxt "history page headline"
887
  msgid "Simple History"
888
  msgstr ""
889
 
890
- #: inc/SimpleHistory.php:1784
891
  msgctxt "simple-history"
892
  msgid "Simple History removed one event that were older than {days} days"
893
  msgid_plural "Simple History removed {num_rows} events that were older than {days} days"
894
  msgstr[0] ""
895
  msgstr[1] ""
896
 
897
- #: inc/SimpleHistory.php:2245
898
  msgctxt "Log level in gui"
899
  msgid "emergency"
900
  msgstr ""
901
 
902
- #: inc/SimpleHistory.php:2249
903
  msgctxt "Log level in gui"
904
  msgid "alert"
905
  msgstr ""
906
 
907
- #: inc/SimpleHistory.php:2253
908
  msgctxt "Log level in gui"
909
  msgid "critical"
910
  msgstr ""
911
 
912
- #: inc/SimpleHistory.php:2257
913
  msgctxt "Log level in gui"
914
  msgid "error"
915
  msgstr ""
916
 
917
- #: inc/SimpleHistory.php:2261
918
  msgctxt "Log level in gui"
919
  msgid "warning"
920
  msgstr ""
921
 
922
- #: inc/SimpleHistory.php:2265
923
  msgctxt "Log level in gui"
924
  msgid "notice"
925
  msgstr ""
926
 
927
- #: inc/SimpleHistory.php:2269
928
  msgctxt "Log level in gui"
929
  msgid "info"
930
  msgstr ""
931
 
932
- #: inc/SimpleHistory.php:2273
933
  msgctxt "Log level in gui"
934
  msgid "debug"
935
  msgstr ""
936
 
937
- #: inc/SimpleHistory.php:2278
938
  msgctxt "Log level in gui"
939
  msgid "Emergency"
940
  msgstr ""
941
 
942
- #: inc/SimpleHistory.php:2282
943
  msgctxt "Log level in gui"
944
  msgid "Alert"
945
  msgstr ""
946
 
947
- #: inc/SimpleHistory.php:2286
948
  msgctxt "Log level in gui"
949
  msgid "Critical"
950
  msgstr ""
951
 
952
- #: inc/SimpleHistory.php:2290
953
  msgctxt "Log level in gui"
954
  msgid "Error"
955
  msgstr ""
956
 
957
- #: inc/SimpleHistory.php:2294
958
  msgctxt "Log level in gui"
959
  msgid "Warning"
960
  msgstr ""
961
 
962
- #: inc/SimpleHistory.php:2298
963
  msgctxt "Log level in gui"
964
  msgid "Notice"
965
  msgstr ""
966
 
967
- #: inc/SimpleHistory.php:2302
968
  msgctxt "Log level in gui"
969
  msgid "Info"
970
  msgstr ""
971
 
972
- #: inc/SimpleHistory.php:2306
973
  msgctxt "Log level in gui"
974
  msgid "Debug"
975
  msgstr ""
2
  # This file is distributed under the same license as the Simple History package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: Simple History 2.1.1\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/support/plugin/Simple-History\n"
7
+ "POT-Creation-Date: 2015-07-16 19:15:38+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
34
  "href=\"%2$s\">buy me something from my Amazon wish list</a>."
35
  msgstr ""
36
 
37
+ #: dropins/SimpleHistoryFilterDropin.php:89
38
  msgid "Filter history"
39
  msgstr ""
40
 
41
+ #: dropins/SimpleHistoryFilterDropin.php:155
42
+ msgid "All dates"
43
+ msgstr ""
44
+
45
+ #: dropins/SimpleHistoryFilterDropin.php:216
46
+ msgid "Containing words"
47
+ msgstr ""
48
+
49
+ #: dropins/SimpleHistoryFilterDropin.php:223
50
+ #: dropins/SimpleHistoryFilterDropin.php:365
51
  msgid "Search events"
52
  msgstr ""
53
 
54
+ #: dropins/SimpleHistoryFilterDropin.php:241
55
  msgid "All log levels"
56
  msgstr ""
57
 
58
+ #: dropins/SimpleHistoryFilterDropin.php:269
59
  msgid "All messages"
60
  msgstr ""
61
 
62
+ #: dropins/SimpleHistoryFilterDropin.php:358
63
  msgid "All users"
64
  msgstr ""
65
 
66
+ #: dropins/SimpleHistoryFilterDropin.php:374
 
 
 
 
67
  msgid "Search"
68
  msgstr ""
69
 
156
  msgid "Got a 404-page when trying to visit \"{request_uri}\""
157
  msgstr ""
158
 
159
+ #: inc/SimpleHistory.php:370
160
  msgid "Sorry, but there are too many similar events to show."
161
  msgstr ""
162
 
163
+ #: inc/SimpleHistory.php:573 inc/SimpleHistory.php:899
164
  msgid "Settings"
165
  msgstr ""
166
 
167
+ #: inc/SimpleHistory.php:584
168
  msgid "Log (debug)"
169
  msgstr ""
170
 
171
+ #: inc/SimpleHistory.php:589
172
  msgid "Styles example (debug)"
173
  msgstr ""
174
 
175
+ #: inc/SimpleHistory.php:924
176
+ #. #-#-#-#-# simple-history.pot (Simple History 2.1.1) #-#-#-#-#
177
  #. Plugin Name of the plugin/theme
178
  msgid "Simple History"
179
  msgstr ""
180
 
181
+ #: inc/SimpleHistory.php:1000
182
  msgid "Remove all log items?"
183
  msgstr ""
184
 
185
+ #: inc/SimpleHistory.php:1002
186
  msgid "Go to the first page"
187
  msgstr ""
188
 
189
+ #: inc/SimpleHistory.php:1003
190
  msgid "Go to the previous page"
191
  msgstr ""
192
 
193
+ #: inc/SimpleHistory.php:1004
194
  msgid "Go to the next page"
195
  msgstr ""
196
 
197
+ #: inc/SimpleHistory.php:1005
198
  msgid "Go to the last page"
199
  msgstr ""
200
 
201
+ #: inc/SimpleHistory.php:1006
202
  msgid "Current page"
203
  msgstr ""
204
 
205
+ #: inc/SimpleHistory.php:1008
206
  msgid "Oups, the log could not be loaded right now."
207
  msgstr ""
208
 
209
+ #: inc/SimpleHistory.php:1009
210
  msgid "Your search did not match any history events."
211
  msgstr ""
212
 
213
+ #: inc/SimpleHistory.php:1293 inc/SimpleHistory.php:1408
214
  msgid "Simple History Settings"
215
  msgstr ""
216
 
217
+ #: inc/SimpleHistory.php:1327
218
  msgid "No valid callback found"
219
  msgstr ""
220
 
221
+ #: inc/SimpleHistory.php:1429
222
  msgid "Cleared database"
223
  msgstr ""
224
 
225
+ #: inc/SimpleHistory.php:1456
226
  msgid "Show history"
227
  msgstr ""
228
 
229
+ #: inc/SimpleHistory.php:1469
230
  msgid "Number of items per page"
231
  msgstr ""
232
 
233
+ #: inc/SimpleHistory.php:1481
234
  msgid "Clear log"
235
  msgstr ""
236
 
237
+ #: inc/SimpleHistory.php:1620
238
  msgid "on the dashboard"
239
  msgstr ""
240
 
241
+ #: inc/SimpleHistory.php:1625
242
  msgid "as a page under the dashboard menu"
243
  msgstr ""
244
 
245
+ #: inc/SimpleHistory.php:1641
246
  msgid "Items in the database are automatically removed after %1$s days."
247
  msgstr ""
248
 
249
+ #: inc/SimpleHistory.php:1643
250
  msgid "Items in the database are kept forever."
251
  msgstr ""
252
 
253
+ #: inc/SimpleHistory.php:1647
254
  msgid "Clear log now"
255
  msgstr ""
256
 
257
+ #: inc/SimpleHistory.php:1699
258
  msgid "The log for Simple History was cleared ({num_rows} rows were removed)."
259
  msgstr ""
260
 
261
+ #: inc/SimpleHistory.php:1963
262
  msgid "+%1$s similar event"
263
  msgid_plural "+%1$s similar events"
264
  msgstr[0] ""
265
  msgstr[1] ""
266
 
267
+ #: inc/SimpleHistory.php:1970
268
  msgid "Loading…"
269
  msgstr ""
270
 
271
+ #: inc/SimpleHistory.php:1977
272
  msgid "Showing %1$s more"
273
  msgstr ""
274
 
275
+ #: inc/SimpleHistory.php:2016
276
  msgid "Context data"
277
  msgstr ""
278
 
279
+ #: inc/SimpleHistory.php:2017
280
  msgid "This is potentially useful meta data that a logger has saved."
281
  msgstr ""
282
 
283
+ #: inc/SimpleHistory.php:2639
284
  msgid "No events today so far."
285
  msgstr ""
286
 
287
+ #: inc/SimpleHistory.php:2658
288
  msgid "One event today from one user."
289
  msgstr ""
290
 
291
+ #: inc/SimpleHistory.php:2664
292
  msgid "One event today from one source."
293
  msgstr ""
294
 
295
+ #: inc/SimpleHistory.php:2670
296
  msgid "%1$d events today from one user."
297
  msgstr ""
298
 
299
+ #: inc/SimpleHistory.php:2676
300
  msgid "%1$d events today from %2$d users."
301
  msgstr ""
302
 
303
+ #: inc/SimpleHistory.php:2682 inc/SimpleHistory.php:2688
304
  msgid "%1$d events today from one user and one other source."
305
  msgstr ""
306
 
307
+ #: inc/SimpleHistory.php:2694
308
  msgid "%1$d events today from one user and %3$d other sources."
309
  msgstr ""
310
 
311
+ #: inc/SimpleHistory.php:2700
312
  msgid "%1$s events today from %2$d users and %3$d other sources."
313
  msgstr ""
314
 
315
+ #: index.php:97
316
  msgid ""
317
  "Simple History is a great plugin, but to use it your server must have at "
318
  "least PHP 5.3 installed (you have version %s)."
404
  msgid "Uploaded {post_type} <a href=\"{edit_link}\">\"{attachment_title}\"</a>"
405
  msgstr ""
406
 
407
+ #: loggers/SimpleMediaLogger.php:242
408
  msgid "{attachment_thumb}"
409
  msgstr ""
410
 
411
+ #: loggers/SimpleMediaLogger.php:251
412
  msgid "{attachment_size_format}"
413
  msgstr ""
414
 
415
+ #: loggers/SimpleMediaLogger.php:252
416
  msgid "{attachment_filetype_extension}"
417
  msgstr ""
418
 
419
+ #: loggers/SimpleMediaLogger.php:254
420
  msgid "{full_image_width} × {full_image_height}"
421
  msgstr ""
422
 
722
  msgid "Donate"
723
  msgstr ""
724
 
725
+ #: dropins/SimpleHistoryExportDropin.php:23
726
  msgctxt "Export dropin: Tab name on settings page"
727
  msgid "Export"
728
  msgstr ""
729
 
730
+ #: dropins/SimpleHistoryExportDropin.php:221
731
  msgctxt "Export dropin: introtext"
732
  msgid "The export function will export the full history."
733
  msgstr ""
734
 
735
+ #: dropins/SimpleHistoryExportDropin.php:225
736
  msgctxt "Export dropin: format"
737
  msgid "Choose format to export to"
738
  msgstr ""
739
 
740
+ #: dropins/SimpleHistoryExportDropin.php:230
741
  msgctxt "Export dropin: export format"
742
  msgid "JSON"
743
  msgstr ""
744
 
745
+ #: dropins/SimpleHistoryExportDropin.php:237
746
  msgctxt "Export dropin: export format"
747
  msgid "CSV"
748
  msgstr ""
749
 
750
+ #: dropins/SimpleHistoryExportDropin.php:255
751
  msgctxt "Export dropin: submit button"
752
  msgid "Download Export File"
753
  msgstr ""
754
 
755
+ #: dropins/SimpleHistoryFilterDropin.php:162
756
+ msgctxt "Filter dropin: filter week"
757
+ msgid "Last 7 days"
758
+ msgstr ""
759
+
760
+ #: dropins/SimpleHistoryFilterDropin.php:169
761
+ msgctxt "Filter dropin: filter week"
762
+ msgid "Last 14 days"
763
+ msgstr ""
764
+
765
+ #: dropins/SimpleHistoryFilterDropin.php:176
766
+ msgctxt "Filter dropin: filter week"
767
+ msgid "Last 30 days"
768
+ msgstr ""
769
+
770
+ #: dropins/SimpleHistoryFilterDropin.php:183
771
+ msgctxt "Filter dropin: filter week"
772
+ msgid "Last 60 days"
773
+ msgstr ""
774
+
775
+ #: dropins/SimpleHistoryFilterDropin.php:225
776
  msgctxt "Filter dropin: button to show more search options"
777
  msgid "Show options"
778
  msgstr ""
779
 
780
+ #: dropins/SimpleHistoryFilterDropin.php:366
781
  msgctxt "Filter dropin: button to hide more search options"
782
  msgid "Hide options"
783
  msgstr ""
886
  msgid "Pages not found"
887
  msgstr ""
888
 
889
+ #: inc/SimpleHistory.php:290
890
  msgctxt "Message visible while waiting for log to load from server the first time"
891
  msgid "Loading history..."
892
  msgstr ""
893
 
894
+ #: inc/SimpleHistory.php:327
895
  msgctxt "page n of n"
896
  msgid "of"
897
  msgstr ""
898
 
899
+ #: inc/SimpleHistory.php:422
900
  msgctxt "API: not enought arguments passed"
901
  msgid "Not enough args specified"
902
  msgstr ""
903
 
904
+ #: inc/SimpleHistory.php:1390
905
  msgctxt "dashboard menu name"
906
  msgid "Simple History"
907
  msgstr ""
908
 
909
+ #: inc/SimpleHistory.php:1517
910
  msgctxt "history page headline"
911
  msgid "Simple History"
912
  msgstr ""
913
 
914
+ #: inc/SimpleHistory.php:1787
915
  msgctxt "simple-history"
916
  msgid "Simple History removed one event that were older than {days} days"
917
  msgid_plural "Simple History removed {num_rows} events that were older than {days} days"
918
  msgstr[0] ""
919
  msgstr[1] ""
920
 
921
+ #: inc/SimpleHistory.php:2248
922
  msgctxt "Log level in gui"
923
  msgid "emergency"
924
  msgstr ""
925
 
926
+ #: inc/SimpleHistory.php:2252
927
  msgctxt "Log level in gui"
928
  msgid "alert"
929
  msgstr ""
930
 
931
+ #: inc/SimpleHistory.php:2256
932
  msgctxt "Log level in gui"
933
  msgid "critical"
934
  msgstr ""
935
 
936
+ #: inc/SimpleHistory.php:2260
937
  msgctxt "Log level in gui"
938
  msgid "error"
939
  msgstr ""
940
 
941
+ #: inc/SimpleHistory.php:2264
942
  msgctxt "Log level in gui"
943
  msgid "warning"
944
  msgstr ""
945
 
946
+ #: inc/SimpleHistory.php:2268
947
  msgctxt "Log level in gui"
948
  msgid "notice"
949
  msgstr ""
950
 
951
+ #: inc/SimpleHistory.php:2272
952
  msgctxt "Log level in gui"
953
  msgid "info"
954
  msgstr ""
955
 
956
+ #: inc/SimpleHistory.php:2276
957
  msgctxt "Log level in gui"
958
  msgid "debug"
959
  msgstr ""
960
 
961
+ #: inc/SimpleHistory.php:2281
962
  msgctxt "Log level in gui"
963
  msgid "Emergency"
964
  msgstr ""
965
 
966
+ #: inc/SimpleHistory.php:2285
967
  msgctxt "Log level in gui"
968
  msgid "Alert"
969
  msgstr ""
970
 
971
+ #: inc/SimpleHistory.php:2289
972
  msgctxt "Log level in gui"
973
  msgid "Critical"
974
  msgstr ""
975
 
976
+ #: inc/SimpleHistory.php:2293
977
  msgctxt "Log level in gui"
978
  msgid "Error"
979
  msgstr ""
980
 
981
+ #: inc/SimpleHistory.php:2297
982
  msgctxt "Log level in gui"
983
  msgid "Warning"
984
  msgstr ""
985
 
986
+ #: inc/SimpleHistory.php:2301
987
  msgctxt "Log level in gui"
988
  msgid "Notice"
989
  msgstr ""
990
 
991
+ #: inc/SimpleHistory.php:2305
992
  msgctxt "Log level in gui"
993
  msgid "Info"
994
  msgstr ""
995
 
996
+ #: inc/SimpleHistory.php:2309
997
  msgctxt "Log level in gui"
998
  msgid "Debug"
999
  msgstr ""
loggers/SimpleLogger.php CHANGED
@@ -855,7 +855,6 @@ class SimpleLogger {
855
  $sh_latest_translations = $this->simpleHistory->gettextLatestTranslations;
856
 
857
  if ( ! empty( $sh_latest_translations ) ) {
858
-
859
  if ( isset( $sh_latest_translations[ $message ] ) ) {
860
 
861
  // Translation of this phrase was found, so use original phrase instead of translated one
@@ -1080,9 +1079,9 @@ class SimpleLogger {
1080
 
1081
  // Add remote addr to context
1082
  // Good to always have
1083
- if (!isset($context["_server_remote_addr"])) {
1084
 
1085
- $context["_server_remote_addr"] = $_SERVER["REMOTE_ADDR"];
1086
 
1087
  // If web server is behind a load balancer then the ip address will always be the same
1088
  // See bug report: https://wordpress.org/support/topic/use-x-forwarded-for-http-header-when-logging-remote_addr?replies=1#post-6422981
@@ -1096,7 +1095,7 @@ class SimpleLogger {
1096
  // http://blackbe.lt/advanced-method-to-obtain-the-client-ip-in-php/
1097
  $ip_keys = $this->get_ip_number_header_keys();
1098
 
1099
- foreach ($ip_keys as $key) {
1100
 
1101
  if (array_key_exists($key, $_SERVER) === true) {
1102
 
@@ -1146,6 +1145,11 @@ class SimpleLogger {
1146
  // Insert all context values into db
1147
  foreach ($context as $key => $value) {
1148
 
 
 
 
 
 
1149
  $data = array(
1150
  "history_id" => $history_inserted_id,
1151
  "key" => $key,
855
  $sh_latest_translations = $this->simpleHistory->gettextLatestTranslations;
856
 
857
  if ( ! empty( $sh_latest_translations ) ) {
 
858
  if ( isset( $sh_latest_translations[ $message ] ) ) {
859
 
860
  // Translation of this phrase was found, so use original phrase instead of translated one
1079
 
1080
  // Add remote addr to context
1081
  // Good to always have
1082
+ if ( ! isset($context["_server_remote_addr"]) ) {
1083
 
1084
+ $context["_server_remote_addr"] = empty($_SERVER["REMOTE_ADDR"]) ? "" : $_SERVER["REMOTE_ADDR"];
1085
 
1086
  // If web server is behind a load balancer then the ip address will always be the same
1087
  // See bug report: https://wordpress.org/support/topic/use-x-forwarded-for-http-header-when-logging-remote_addr?replies=1#post-6422981
1095
  // http://blackbe.lt/advanced-method-to-obtain-the-client-ip-in-php/
1096
  $ip_keys = $this->get_ip_number_header_keys();
1097
 
1098
+ foreach ( $ip_keys as $key ) {
1099
 
1100
  if (array_key_exists($key, $_SERVER) === true) {
1101
 
1145
  // Insert all context values into db
1146
  foreach ($context as $key => $value) {
1147
 
1148
+ // If value is array or object then use json_encode to store it
1149
+ if (is_object($value) || is_array($value)) {
1150
+ $value = simpleHistory::json_encode($value);
1151
+ }
1152
+
1153
  $data = array(
1154
  "history_id" => $history_inserted_id,
1155
  "key" => $key,
loggers/SimpleMediaLogger.php CHANGED
@@ -173,6 +173,7 @@ class SimpleMediaLogger extends SimpleLogger
173
  $filetype = wp_check_filetype( $context["attachment_filename"] );
174
  $file_url = wp_get_attachment_url( $attachment_id );
175
  $edit_link = get_edit_post_link( $attachment_id );
 
176
  $message = "";
177
  $full_src = false;
178
 
@@ -187,8 +188,6 @@ class SimpleMediaLogger extends SimpleLogger
187
 
188
  $thumb_src = wp_get_attachment_image_src($attachment_id, array(350,500));
189
  $full_src = wp_get_attachment_image_src($attachment_id, "full");
190
- #sf_d($thumb_src, '$thumb_src');
191
- #sf_d($full_src, '$full_src');
192
 
193
  $full_image_width = $full_src[1];
194
  $full_image_height = $full_src[2];
@@ -199,16 +198,21 @@ class SimpleMediaLogger extends SimpleLogger
199
 
200
  $context["full_image_width"] = $full_image_width;
201
  $context["full_image_height"] = $full_image_height;
202
- $context["attachment_thumb"] = sprintf('<div class="SimpleHistoryLogitemThumbnail"><img src="%1$s" alt=""></div>', $thumb_src[0] );
 
 
 
 
 
203
 
204
  }
205
 
206
- } else if ($is_audio) {
207
 
208
  $content = sprintf('[audio src="%1$s"]', $file_url);
209
  $context["attachment_thumb"] = do_shortcode( $content );
210
 
211
- } else if ($is_video) {
212
 
213
  $content = sprintf('[video src="%1$s"]', $file_url);
214
  $context["attachment_thumb"] = do_shortcode( $content );
173
  $filetype = wp_check_filetype( $context["attachment_filename"] );
174
  $file_url = wp_get_attachment_url( $attachment_id );
175
  $edit_link = get_edit_post_link( $attachment_id );
176
+ $attached_file = get_attached_file( $attachment_id );
177
  $message = "";
178
  $full_src = false;
179
 
188
 
189
  $thumb_src = wp_get_attachment_image_src($attachment_id, array(350,500));
190
  $full_src = wp_get_attachment_image_src($attachment_id, "full");
 
 
191
 
192
  $full_image_width = $full_src[1];
193
  $full_image_height = $full_src[2];
198
 
199
  $context["full_image_width"] = $full_image_width;
200
  $context["full_image_height"] = $full_image_height;
201
+
202
+ // Only output thumb if file exists
203
+ // For example images deleted on file system but not in WP cause broken images (rare case, but has happened to me.)
204
+ if ( file_exists( $attached_file ) ) {
205
+ $context["attachment_thumb"] = sprintf('<div class="SimpleHistoryLogitemThumbnail"><img src="%1$s" alt=""></div>' );
206
+ }
207
 
208
  }
209
 
210
+ } else if ( $is_audio ) {
211
 
212
  $content = sprintf('[audio src="%1$s"]', $file_url);
213
  $context["attachment_thumb"] = do_shortcode( $content );
214
 
215
+ } else if ( $is_video ) {
216
 
217
  $content = sprintf('[video src="%1$s"]', $file_url);
218
  $context["attachment_thumb"] = do_shortcode( $content );
loggers/SimpleUserLogger.php CHANGED
@@ -424,17 +424,30 @@ class SimpleUserLogger extends SimpleLogger {
424
 
425
  /**
426
  * Attempt to login to user that does not exist
 
 
 
 
427
  */
428
  function on_authenticate($user, $username, $password) {
429
 
430
  // Don't log empty usernames
431
- if (!trim($username)) {
432
  return $user;
433
  }
434
 
435
- // If username is not a user in the system then this
436
- // is consideraded a failed login attempt
437
- $wp_user = get_user_by("login", $username);
 
 
 
 
 
 
 
 
 
438
 
439
  if (false === $wp_user) {
440
 
424
 
425
  /**
426
  * Attempt to login to user that does not exist
427
+ *
428
+ * @param $user (null or WP_User or WP_Error) (required) null indicates no process has authenticated the user yet. A WP_Error object indicates another process has failed the authentication. A WP_User object indicates another process has authenticated the user.
429
+ * @param $username The user's username.
430
+ * @param $password The user's password (encrypted)
431
  */
432
  function on_authenticate($user, $username, $password) {
433
 
434
  // Don't log empty usernames
435
+ if ( ! trim($username) ) {
436
  return $user;
437
  }
438
 
439
+ // If already auth ok
440
+ if ( is_a( $user, 'WP_User' ) ) {
441
+
442
+ $wp_user = $user;
443
+
444
+ } else {
445
+
446
+ // If username is not a user in the system then this
447
+ // is consideraded a failed login attempt
448
+ $wp_user = get_user_by("login", $username);
449
+
450
+ }
451
 
452
  if (false === $wp_user) {
453
 
phpunit.xml ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <phpunit
2
+ bootstrap="tests/bootstrap.php"
3
+ backupGlobals="false"
4
+ colors="true"
5
+ convertErrorsToExceptions="true"
6
+ convertNoticesToExceptions="true"
7
+ convertWarningsToExceptions="true"
8
+ >
9
+ <testsuites>
10
+ <testsuite>
11
+ <directory prefix="test-" suffix=".php">./tests/</directory>
12
+ </testsuite>
13
+ </testsuites>
14
+ <php>
15
+ <ini name="display_errors" value="true"/>
16
+ </php>
17
+ </phpunit>
18
+
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link: http://eskapism.se/sida/donate/
4
  Tags: history, log, changes, changelog, audit, trail, pages, attachments, users, cms, dashboard, admin, syslog, feed, activity, stream
5
  Requires at least: 3.6.0
6
  Tested up to: 4.2.2
7
- Stable tag: 2.1.1
8
 
9
  View changes made by users within WordPress. See who created a page, uploaded an attachment or approved an comment, and more.
10
 
@@ -85,6 +85,7 @@ So far Simple History is translated to:
85
  * Polish
86
  * Danish
87
  * Dutch
 
88
 
89
  I'm looking for translations of Simple History in more languages! If you're interested please check out the [localization](https://developer.wordpress.org/plugins/internationalization/localization/) part of the Plugin Handbook for info on how to translate plugins. When you're done with your translation email it to me at par.thernstrom@gmail.com, or [add a pull request](https://github.com/bonny/WordPress-Simple-History/).
90
 
@@ -116,6 +117,21 @@ initiated by a specific user.
116
 
117
  ## Changelog
118
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
119
  = 2.1.1 (May 2015) =
120
 
121
  - Removed: filter `simple_history/dropins_dir` removed.
@@ -124,7 +140,6 @@ initiated by a specific user.
124
  - Fixed: POT file updated for translators.
125
  - Fixed: Better sanitization of API arguments.
126
 
127
-
128
  = 2.1 (May 2015) =
129
 
130
  - Added: Export! Now it's possible to export the events log to a JSON or CSV formatted file. It's your data so you should be able to export it any time you want or need. And now you can do that. You will find the export function in the Simple History settings page (Settings -> Simple History).
4
  Tags: history, log, changes, changelog, audit, trail, pages, attachments, users, cms, dashboard, admin, syslog, feed, activity, stream
5
  Requires at least: 3.6.0
6
  Tested up to: 4.2.2
7
+ Stable tag: 2.1.2
8
 
9
  View changes made by users within WordPress. See who created a page, uploaded an attachment or approved an comment, and more.
10
 
85
  * Polish
86
  * Danish
87
  * Dutch
88
+ * Finnish
89
 
90
  I'm looking for translations of Simple History in more languages! If you're interested please check out the [localization](https://developer.wordpress.org/plugins/internationalization/localization/) part of the Plugin Handbook for info on how to translate plugins. When you're done with your translation email it to me at par.thernstrom@gmail.com, or [add a pull request](https://github.com/bonny/WordPress-Simple-History/).
91
 
117
 
118
  ## Changelog
119
 
120
+ = 2.1.2 (July 2015) =
121
+
122
+ - Changed: By default the log now shows events from the last week, last two weeks or last 30 days, all depending on how many events you have in your log. The previous behavior was to not apply any filtering what so ever during the first load. Anyway: this change makes it possible to load the log very quickly even for very large logs. A large amount of users + keeping the log forver = millions of rows of data. Previosly this could stall the log or make it load almost forever. Now = almost always very fast. I have tried it with over 5.000 users and a million row and yes - zing! - much faster. Fixes https://wordpress.org/support/topic/load-with-pagination-mysql.
123
+ - Added: Finnish translation. Thanks a lot to the translator!
124
+ - Updated: Swedish translation updated
125
+ - Added: Cache is used on a few more places.
126
+ - Added: Plugin now works as a ["must-use-plugin"](https://codex.wordpress.org/Must_Use_Plugins). Props [jacquesletesson](https://github.com/jacquesletesson).
127
+ - Added: Filter `SimpleHistoryFilterDropin/show_more_filters_on_load` that is used to control if the search options should be expanded by default when the history page is loaded. Default is false, to have a less cluttered GUI.
128
+ - Added: Filter `SimpleHistoryFilterDropin/filter_default_user_ids` that is used to search/filter specific user ids by default (no need to search and select users). Should fix https://wordpress.org/support/topic/how-to-pass-array-of-user-ids-to-history-query.
129
+ - Added: Filter `SimpleHistoryFilterDropin/filter_default_loglevel` that is used to search/filter for log levels by default.
130
+ - Fixed: if trying to log an array or an object the logger now automagically runs `json_encode()` on the value to make it a string. Previously is just tried to run `$wpdb->insert() with the array and that gave errors. Should fix https://wordpress.org/support/topic/mysql_real_escape_string.
131
+ - Fixed: The function that checks for new rows each second (or actually each tenth second to spare resourced) was called an extra time each time the submit button for the filter was clicked. Kinda stupid. Kinda fixed now.
132
+ - Fixed: The export feature that was added in version 2.1 was actually not enabled for all users. Now it is!
133
+ - Fixed: Image attachments that is deleted from file system no longer result in "broken image" in the log. (Rare case, I know, but it does happen for me that local dev server and remote prod server gets out of "sync" when it comes to attachments.)
134
+
135
  = 2.1.1 (May 2015) =
136
 
137
  - Removed: filter `simple_history/dropins_dir` removed.
140
  - Fixed: POT file updated for translators.
141
  - Fixed: Better sanitization of API arguments.
142
 
 
143
  = 2.1 (May 2015) =
144
 
145
  - Added: Export! Now it's possible to export the events log to a JSON or CSV formatted file. It's your data so you should be able to export it any time you want or need. And now you can do that. You will find the export function in the Simple History settings page (Settings -> Simple History).
tests/bootstrap.php ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ $_tests_dir = getenv( 'WP_TESTS_DIR' );
4
+ if ( ! $_tests_dir ) {
5
+ $_tests_dir = '/tmp/wordpress-tests-lib';
6
+ }
7
+
8
+ require_once $_tests_dir . '/includes/functions.php';
9
+
10
+ function _manually_load_plugin() {
11
+ require dirname( dirname( __FILE__ ) ) . '/index.php';
12
+ }
13
+ tests_add_filter( 'muplugins_loaded', '_manually_load_plugin' );
14
+
15
+ require $_tests_dir . '/includes/bootstrap.php';
tests/test-sample.php ADDED
@@ -0,0 +1,115 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class SampleTest extends WP_UnitTestCase {
4
+
5
+ function test_sample() {
6
+
7
+ // replace this with some actual testing code
8
+ $this->assertTrue( true );
9
+ }
10
+
11
+ function test_history_setup() {
12
+
13
+ $this->assertTrue( defined("SIMPLE_HISTORY_VERSION") );
14
+ $this->assertTrue( defined("SIMPLE_HISTORY_PATH") );
15
+ $this->assertTrue( defined("SIMPLE_HISTORY_BASENAME") );
16
+ $this->assertTrue( defined("SIMPLE_HISTORY_DIR_URL") );
17
+ $this->assertTrue( defined("SIMPLE_HISTORY_FILE") );
18
+
19
+ $this->assertFalse( defined("SIMPLE_HISTORY_DEV") );
20
+ $this->assertFalse( defined("SIMPLE_HISTORY_LOG_DEBUG") );
21
+
22
+ }
23
+
24
+ function test_history_classes() {
25
+
26
+ $this->assertTrue( class_exists("SimpleHistory") );
27
+ $this->assertTrue( class_exists("SimpleHistoryLogQuery") );
28
+
29
+ $sh = SimpleHistory::get_instance();
30
+ $this->assertTrue( is_object($sh) );
31
+ $this->assertTrue( is_a($sh, "SimpleHistory") );
32
+
33
+ }
34
+
35
+ function test_default_loggers() {
36
+
37
+ $sh = SimpleHistory::get_instance();
38
+ $loggers = $sh->getInstantiatedLoggers();
39
+
40
+ $arr_default_loggers = array(
41
+ "SimpleCommentsLogger",
42
+ "SimpleCoreUpdatesLogger",
43
+ "SimpleExportLogger",
44
+ "SimpleLegacyLogger",
45
+ "SimpleLogger",
46
+ "SimpleMediaLogger",
47
+ "SimpleMenuLogger",
48
+ "SimpleOptionsLogger",
49
+ "SimplePluginLogger",
50
+ "SimplePostLogger",
51
+ "SimpleThemeLogger",
52
+ "SimpleUserLogger",
53
+ );
54
+
55
+ foreach ($arr_default_loggers as $slug) {
56
+
57
+ $this->assertArrayHasKey( $slug, $loggers );
58
+
59
+ }
60
+
61
+ }
62
+
63
+ function test_default_dropins() {
64
+
65
+ $sh = SimpleHistory::get_instance();
66
+ $dropins = $sh->getInstantiatedDropins();
67
+
68
+ $arr_default_dropins = array(
69
+ "SimpleHistoryDonateDropin",
70
+ "SimpleHistoryExportDropin",
71
+ "SimpleHistoryFilterDropin",
72
+ "SimpleHistoryIpInfoDropin",
73
+ "SimpleHistoryNewRowsNotifier",
74
+ "SimpleHistoryRSSDropin",
75
+ "SimpleHistorySettingsLogtestDropin",
76
+ "SimpleHistorySettingsStatsDropin",
77
+ "SimpleHistorySidebarDropin",
78
+ );
79
+
80
+ foreach ($arr_default_dropins as $slug) {
81
+
82
+ $this->assertArrayHasKey( $slug, $dropins );
83
+
84
+ }
85
+
86
+ }
87
+
88
+ function test_default_settings_tabs() {
89
+
90
+ $sh = SimpleHistory::get_instance();
91
+ $settings_tabs = $sh->getSettingsTabs();
92
+ $arr_default_settings = array(
93
+ "settings",
94
+ "export"
95
+ );
96
+
97
+ $loaded_settings_slugs = wp_list_pluck( $settings_tabs, "slug" );
98
+ $this->assertEquals($arr_default_settings, $loaded_settings_slugs);
99
+
100
+ }
101
+
102
+ /*
103
+
104
+ # Todo
105
+
106
+ - test loggers and dropins loaded
107
+ - test logging a thing
108
+ - test logging of different log levels
109
+ - test context
110
+ - test api query
111
+
112
+ */
113
+
114
+ }
115
+