Version Description
(February 2015) =
- Added: changes via WP-CLI is now detected (was previously shown as "other").
- Added: severity level (info, warning, debug, etc.) of event is includes in the RSS output.
- Changed the way user login is logged. Should fix https://github.com/bonny/WordPress-Simple-History/issues/40 + possible more related issues.
- Added: filter
simple_history/simple_logger/log_message_keyadded, that can be used to shortcut log messages. See example file for usage. Fixes https://wordpress.org/support/topic/stop-logging-certain-types-of-activity. - Added: now uses object caching at some places. Should speed up some parts of the plugin for users with caching enabled.
- Fixed: IP info popup can now be closed with
esc. - Fixed: works better on small screens (like mobile phones) + misc other style related fixes.
Download this release
Release Info
| Developer | eskapism |
| Plugin | |
| Version | 2.0.20 |
| Comparing to | |
| See all releases | |
Code changes from version 2.0.19 to 2.0.20
- SimpleHistory.php +143 -99
- SimpleHistoryLogQuery.php +10 -0
- css/styles.css +49 -17
- dropins/SimpleHistoryIpInfoDropin.css +4 -0
- dropins/SimpleHistoryIpInfoDropin.js +6 -0
- dropins/SimpleHistoryNewRowsNotifier.php +1 -1
- dropins/SimpleHistoryRSSDropin.php +3 -0
- dropins/SimpleHistorySidebarDropin.css +10 -0
- examples.php +17 -0
- index.php +1 -1
- languages/simple-history-sv_SE.mo +0 -0
- languages/simple-history-sv_SE.po +118 -114
- loggers/SimpleCoreUpdatesLogger.php +1 -1
- loggers/SimpleLogger.php +86 -68
- loggers/SimpleMediaLogger.php +1 -1
- loggers/SimpleUserLogger.php +22 -27
- readme.txt +12 -2
SimpleHistory.php
CHANGED
|
@@ -6,7 +6,7 @@
|
|
| 6 |
class SimpleHistory {
|
| 7 |
|
| 8 |
const NAME = "Simple History";
|
| 9 |
-
|
| 10 |
|
| 11 |
/**
|
| 12 |
* Capability required to view the history log
|
|
@@ -119,6 +119,27 @@ class SimpleHistory {
|
|
| 119 |
* @param SimpleHistory $SimpleHistory This class.
|
| 120 |
*/
|
| 121 |
do_action("simple_history/after_init", $this);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 122 |
|
| 123 |
}
|
| 124 |
|
|
@@ -372,6 +393,7 @@ class SimpleHistory {
|
|
| 372 |
}
|
| 373 |
|
| 374 |
$data["log_rows"][$key] = $this->getLogRowHTMLOutput($oneLogRow, $args);
|
|
|
|
| 375 |
|
| 376 |
}
|
| 377 |
|
|
@@ -1516,6 +1538,8 @@ foreach ($arr_settings_tabs as $one_tab) {
|
|
| 1516 |
)
|
| 1517 |
);
|
| 1518 |
|
|
|
|
|
|
|
| 1519 |
}
|
| 1520 |
|
| 1521 |
/**
|
|
@@ -1611,6 +1635,8 @@ foreach ($arr_settings_tabs as $one_tab) {
|
|
| 1611 |
)
|
| 1612 |
);
|
| 1613 |
|
|
|
|
|
|
|
| 1614 |
}
|
| 1615 |
|
| 1616 |
/**
|
|
@@ -2257,8 +2283,16 @@ foreach ($arr_settings_tabs as $one_tab) {
|
|
| 2257 |
$wpdb->prefix . SimpleHistory::DBTABLE_CONTEXTS
|
| 2258 |
);
|
| 2259 |
|
| 2260 |
-
$
|
| 2261 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2262 |
|
| 2263 |
// Get number of other sources (not wp_user)
|
| 2264 |
$sql_other_sources_where = sprintf(
|
|
@@ -2290,7 +2324,16 @@ foreach ($arr_settings_tabs as $one_tab) {
|
|
| 2290 |
);
|
| 2291 |
// sf_d($sql_other_sources, '$sql_other_sources');
|
| 2292 |
|
| 2293 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2294 |
$count_other_sources = sizeof($results_other_sources_today);
|
| 2295 |
|
| 2296 |
#sf_d($logResults, '$logResults');
|
|
@@ -2302,125 +2345,126 @@ foreach ($arr_settings_tabs as $one_tab) {
|
|
| 2302 |
<p>
|
| 2303 |
<?php
|
| 2304 |
|
| 2305 |
-
|
| 2306 |
|
| 2307 |
-
|
| 2308 |
-
|
| 2309 |
|
| 2310 |
-
|
| 2311 |
|
| 2312 |
-
|
| 2313 |
-
|
| 2314 |
-
/*
|
| 2315 |
-
Type of results
|
| 2316 |
-
x1 event today from 1 user.
|
| 2317 |
-
x1 event today from 1 source.
|
| 2318 |
-
3 events today from 1 user.
|
| 2319 |
-
x2 events today from 2 users.
|
| 2320 |
-
x2 events today from 1 user and 1 other source.
|
| 2321 |
-
x3 events today from 2 users and 1 other source.
|
| 2322 |
-
x3 events today from 1 user and 2 other sources.
|
| 2323 |
-
x4 events today from 2 users and 2 other sources.
|
| 2324 |
-
*/
|
| 2325 |
-
|
| 2326 |
-
// A single event existed and was from a user
|
| 2327 |
-
// 1 event today from 1 user.
|
| 2328 |
-
if ($total_row_count == 1 && $count_users_today == 1) {
|
| 2329 |
-
$msg_tmpl .= __('One event today from one user.', "simple-history");
|
| 2330 |
-
}
|
| 2331 |
-
|
| 2332 |
-
// A single event existed and was from another source
|
| 2333 |
-
// 1 event today from 1 source.
|
| 2334 |
-
if ($total_row_count == 1 && !$count_users_today) {
|
| 2335 |
-
$msg_tmpl .= __('One event today from one source.', "simple-history");
|
| 2336 |
-
}
|
| 2337 |
-
|
| 2338 |
-
// Multiple events from a single user
|
| 2339 |
-
// 3 events today from one user.
|
| 2340 |
-
if ($total_row_count > 1 && $count_users_today == 1 && !$count_other_sources) {
|
| 2341 |
-
$msg_tmpl .= __('%1$d events today from one user.', "simple-history");
|
| 2342 |
-
}
|
| 2343 |
-
|
| 2344 |
-
// Multiple events from only users
|
| 2345 |
-
// 2 events today from 2 users.
|
| 2346 |
-
if ($total_row_count > 1 && $count_users_today == $total_row_count) {
|
| 2347 |
-
$msg_tmpl .= __('%1$d events today from %2$d users.', "simple-history");
|
| 2348 |
-
}
|
| 2349 |
|
| 2350 |
-
|
| 2351 |
-
|
| 2352 |
-
|
| 2353 |
-
|
| 2354 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2355 |
|
| 2356 |
-
|
| 2357 |
-
|
| 2358 |
-
|
| 2359 |
-
|
| 2360 |
-
|
| 2361 |
|
| 2362 |
-
|
| 2363 |
-
|
| 2364 |
-
|
| 2365 |
-
|
| 2366 |
-
|
| 2367 |
|
| 2368 |
-
|
| 2369 |
-
|
| 2370 |
-
|
| 2371 |
-
|
| 2372 |
-
|
| 2373 |
|
| 2374 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2375 |
|
| 2376 |
-
|
| 2377 |
-
|
|
|
|
|
|
|
|
|
|
| 2378 |
|
| 2379 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2380 |
|
| 2381 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2382 |
|
| 2383 |
-
|
| 2384 |
|
| 2385 |
-
|
|
|
|
| 2386 |
|
| 2387 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2388 |
|
| 2389 |
-
|
|
|
|
|
|
|
| 2390 |
|
| 2391 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2392 |
|
| 2393 |
-
|
| 2394 |
-
*/
|
| 2395 |
|
| 2396 |
-
|
| 2397 |
-
|
|
|
|
|
|
|
| 2398 |
|
| 2399 |
-
|
| 2400 |
-
$msg_tmpl,
|
| 2401 |
-
$logResults["total_row_count"], // 1
|
| 2402 |
-
$count_users_today, // 2
|
| 2403 |
-
$count_other_sources // 3
|
| 2404 |
-
);
|
| 2405 |
|
| 2406 |
-
|
| 2407 |
-
|
| 2408 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2409 |
|
| 2410 |
-
|
| 2411 |
-
|
| 2412 |
-
'<a href="%1$s">View more stats</a>.',
|
| 2413 |
-
add_query_arg("selected-tab", "stats", menu_page_url(SimpleHistory::SETTINGS_MENU_SLUG, 0))
|
| 2414 |
-
);
|
| 2415 |
-
*/
|
| 2416 |
|
|
|
|
|
|
|
|
|
|
| 2417 |
}
|
| 2418 |
|
| 2419 |
-
|
| 2420 |
-
|
| 2421 |
-
</div>
|
| 2422 |
-
<?php
|
| 2423 |
|
| 2424 |
}
|
| 2425 |
|
| 2426 |
-
}// class
|
| 6 |
class SimpleHistory {
|
| 7 |
|
| 8 |
const NAME = "Simple History";
|
| 9 |
+
const VERSION = "2.0.20";
|
| 10 |
|
| 11 |
/**
|
| 12 |
* Capability required to view the history log
|
| 119 |
* @param SimpleHistory $SimpleHistory This class.
|
| 120 |
*/
|
| 121 |
do_action("simple_history/after_init", $this);
|
| 122 |
+
|
| 123 |
+
// @todo run this when a debug const is defined and true
|
| 124 |
+
/*
|
| 125 |
+
add_filter("simple_history/log_argument/context", function($context, $level, $message, $logger) {
|
| 126 |
+
|
| 127 |
+
$context["_debug_get"] = $this->json_encode( $_GET );
|
| 128 |
+
$context["_debug_post"] = $this->json_encode( $_POST );
|
| 129 |
+
$context["_debug_server"] = $this->json_encode( $_SERVER );
|
| 130 |
+
$context["_debug_php_sapi_name"] = php_sapi_name();
|
| 131 |
+
|
| 132 |
+
global $argv;
|
| 133 |
+
$context["_debug_argv"] = $this->json_encode( $argv );
|
| 134 |
+
|
| 135 |
+
// $context["_debug_env"] = $this->json_encode( $_ENV );
|
| 136 |
+
|
| 137 |
+
$context["_debug_constants"] = $this->json_encode( get_defined_constants(true) );
|
| 138 |
+
|
| 139 |
+
return $context;
|
| 140 |
+
|
| 141 |
+
}, 10, 4);
|
| 142 |
+
*/
|
| 143 |
|
| 144 |
}
|
| 145 |
|
| 393 |
}
|
| 394 |
|
| 395 |
$data["log_rows"][$key] = $this->getLogRowHTMLOutput($oneLogRow, $args);
|
| 396 |
+
$data["num_queries"] = get_num_queries();
|
| 397 |
|
| 398 |
}
|
| 399 |
|
| 1538 |
)
|
| 1539 |
);
|
| 1540 |
|
| 1541 |
+
$this->get_cache_incrementor(true);
|
| 1542 |
+
|
| 1543 |
}
|
| 1544 |
|
| 1545 |
/**
|
| 1635 |
)
|
| 1636 |
);
|
| 1637 |
|
| 1638 |
+
$this->get_cache_incrementor(true);
|
| 1639 |
+
|
| 1640 |
}
|
| 1641 |
|
| 1642 |
/**
|
| 2283 |
$wpdb->prefix . SimpleHistory::DBTABLE_CONTEXTS
|
| 2284 |
);
|
| 2285 |
|
| 2286 |
+
$cache_key = "quick_stats_users_today_" . md5( serialize( $sql_loggers_in ) );
|
| 2287 |
+
$cache_group = "simple-history-" . $this->get_cache_incrementor();
|
| 2288 |
+
$results_users_today = wp_cache_get($cache_key, $cache_group );
|
| 2289 |
+
|
| 2290 |
+
if ( false === $results_users_today ) {
|
| 2291 |
+
$results_users_today = $wpdb->get_results($sql_users_today);
|
| 2292 |
+
wp_cache_set($cache_key, $results_users_today, $cache_group );
|
| 2293 |
+
}
|
| 2294 |
+
|
| 2295 |
+
$count_users_today = sizeof( $results_users_today );
|
| 2296 |
|
| 2297 |
// Get number of other sources (not wp_user)
|
| 2298 |
$sql_other_sources_where = sprintf(
|
| 2324 |
);
|
| 2325 |
// sf_d($sql_other_sources, '$sql_other_sources');
|
| 2326 |
|
| 2327 |
+
$cache_key = "quick_stats_results_other_sources_today_" . md5( serialize($sql_other_sources) );
|
| 2328 |
+
$results_other_sources_today = wp_cache_get($cache_key, $cache_group);
|
| 2329 |
+
|
| 2330 |
+
if ( false === $results_other_sources_today ) {
|
| 2331 |
+
|
| 2332 |
+
$results_other_sources_today = $wpdb->get_results($sql_other_sources);
|
| 2333 |
+
wp_cache_set($cache_key, $results_other_sources_today, $cache_group);
|
| 2334 |
+
|
| 2335 |
+
}
|
| 2336 |
+
|
| 2337 |
$count_other_sources = sizeof($results_other_sources_today);
|
| 2338 |
|
| 2339 |
#sf_d($logResults, '$logResults');
|
| 2345 |
<p>
|
| 2346 |
<?php
|
| 2347 |
|
| 2348 |
+
$msg_tmpl = "";
|
| 2349 |
|
| 2350 |
+
// No results today at all
|
| 2351 |
+
if ( $total_row_count == 0 ) {
|
| 2352 |
|
| 2353 |
+
$msg_tmpl = __("No events today so far.", "simple-history");
|
| 2354 |
|
| 2355 |
+
} else {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2356 |
|
| 2357 |
+
/*
|
| 2358 |
+
Type of results
|
| 2359 |
+
x1 event today from 1 user.
|
| 2360 |
+
x1 event today from 1 source.
|
| 2361 |
+
3 events today from 1 user.
|
| 2362 |
+
x2 events today from 2 users.
|
| 2363 |
+
x2 events today from 1 user and 1 other source.
|
| 2364 |
+
x3 events today from 2 users and 1 other source.
|
| 2365 |
+
x3 events today from 1 user and 2 other sources.
|
| 2366 |
+
x4 events today from 2 users and 2 other sources.
|
| 2367 |
+
*/
|
| 2368 |
+
|
| 2369 |
+
// A single event existed and was from a user
|
| 2370 |
+
// 1 event today from 1 user.
|
| 2371 |
+
if ( $total_row_count == 1 && $count_users_today == 1 ) {
|
| 2372 |
+
$msg_tmpl .= __('One event today from one user.', "simple-history");
|
| 2373 |
+
}
|
| 2374 |
|
| 2375 |
+
// A single event existed and was from another source
|
| 2376 |
+
// 1 event today from 1 source.
|
| 2377 |
+
if ( $total_row_count == 1 && !$count_users_today ) {
|
| 2378 |
+
$msg_tmpl .= __('One event today from one source.', "simple-history");
|
| 2379 |
+
}
|
| 2380 |
|
| 2381 |
+
// Multiple events from a single user
|
| 2382 |
+
// 3 events today from one user.
|
| 2383 |
+
if ( $total_row_count > 1 && $count_users_today == 1 && !$count_other_sources ) {
|
| 2384 |
+
$msg_tmpl .= __('%1$d events today from one user.', "simple-history");
|
| 2385 |
+
}
|
| 2386 |
|
| 2387 |
+
// Multiple events from only users
|
| 2388 |
+
// 2 events today from 2 users.
|
| 2389 |
+
if ( $total_row_count > 1 && $count_users_today == $total_row_count ) {
|
| 2390 |
+
$msg_tmpl .= __('%1$d events today from %2$d users.', "simple-history");
|
| 2391 |
+
}
|
| 2392 |
|
| 2393 |
+
// Multiple events from 1 single user and 1 single other source
|
| 2394 |
+
// 2 events today from 1 user and 1 other source.
|
| 2395 |
+
if ( $total_row_count && 1 == $count_users_today && 1 == $count_other_sources ) {
|
| 2396 |
+
$msg_tmpl .= __('%1$d events today from one user and one other source.', "simple-history");
|
| 2397 |
+
}
|
| 2398 |
|
| 2399 |
+
// Multiple events from multple users but from only 1 single other source
|
| 2400 |
+
// 3 events today from 2 users and 1 other source.
|
| 2401 |
+
if ( $total_row_count > 1 && $count_users_today > 1 && $count_other_sources == 1 ) {
|
| 2402 |
+
$msg_tmpl .= __('%1$d events today from one user and one other source.', "simple-history");
|
| 2403 |
+
}
|
| 2404 |
|
| 2405 |
+
// Multiple events from 1 user but from multiple other source
|
| 2406 |
+
// 3 events today from 1 user and 2 other sources.
|
| 2407 |
+
if ( $total_row_count > 1 && 1 == $count_users_today && $count_other_sources > 1 ) {
|
| 2408 |
+
$msg_tmpl .= __('%1$d events today from one user and %3$d other sources.', "simple-history");
|
| 2409 |
+
}
|
| 2410 |
|
| 2411 |
+
// Multiple events from multiple user and from multiple other sources
|
| 2412 |
+
// 4 events today from 2 users and 2 other sources.
|
| 2413 |
+
if ( $total_row_count > 1 && $count_users_today > 1 && $count_other_sources > 1 ) {
|
| 2414 |
+
$msg_tmpl .= __('%1$s events today from %2$d users and %3$d other sources.', "simple-history");
|
| 2415 |
+
}
|
| 2416 |
|
| 2417 |
+
}
|
| 2418 |
|
| 2419 |
+
// only show stats if we have something to output
|
| 2420 |
+
if ( $msg_tmpl ) {
|
| 2421 |
|
| 2422 |
+
printf(
|
| 2423 |
+
$msg_tmpl,
|
| 2424 |
+
$logResults["total_row_count"], // 1
|
| 2425 |
+
$count_users_today, // 2
|
| 2426 |
+
$count_other_sources // 3
|
| 2427 |
+
);
|
| 2428 |
|
| 2429 |
+
// Space between texts
|
| 2430 |
+
/*
|
| 2431 |
+
echo " ";
|
| 2432 |
|
| 2433 |
+
// http://playground-root.ep/wp-admin/options-general.php?page=simple_history_settings_menu_slug&selected-tab=stats
|
| 2434 |
+
printf(
|
| 2435 |
+
'<a href="%1$s">View more stats</a>.',
|
| 2436 |
+
add_query_arg("selected-tab", "stats", menu_page_url(SimpleHistory::SETTINGS_MENU_SLUG, 0))
|
| 2437 |
+
);
|
| 2438 |
+
*/
|
| 2439 |
|
| 2440 |
+
}
|
|
|
|
| 2441 |
|
| 2442 |
+
?>
|
| 2443 |
+
</p>
|
| 2444 |
+
</div>
|
| 2445 |
+
<?php
|
| 2446 |
|
| 2447 |
+
} // output_quick_stats
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2448 |
|
| 2449 |
+
/**
|
| 2450 |
+
* https://www.tollmanz.com/invalidation-schemes/
|
| 2451 |
+
*
|
| 2452 |
+
* @param $refresh bool
|
| 2453 |
+
* @return string
|
| 2454 |
+
*/
|
| 2455 |
+
public static function get_cache_incrementor( $refresh = false ) {
|
| 2456 |
|
| 2457 |
+
$incrementor_key = 'simple_history_incrementor';
|
| 2458 |
+
$incrementor_value = wp_cache_get( $incrementor_key );
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2459 |
|
| 2460 |
+
if ( false === $incrementor_value || true === $refresh ) {
|
| 2461 |
+
$incrementor_value = time();
|
| 2462 |
+
wp_cache_set( $incrementor_key, $incrementor_value );
|
| 2463 |
}
|
| 2464 |
|
| 2465 |
+
//echo "<br>incrementor_value: $incrementor_value";
|
| 2466 |
+
return $incrementor_value;
|
|
|
|
|
|
|
| 2467 |
|
| 2468 |
}
|
| 2469 |
|
| 2470 |
+
} // class
|
SimpleHistoryLogQuery.php
CHANGED
|
@@ -70,6 +70,14 @@ class SimpleHistoryLogQuery {
|
|
| 70 |
$args = wp_parse_args( $args, $defaults );
|
| 71 |
// sf_d($args, "Run log query with args");
|
| 72 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 73 |
/*
|
| 74 |
Subequent occasions query thanks to this Stack Overflow thread:
|
| 75 |
http://stackoverflow.com/questions/13566303/how-to-group-subsequent-rows-based-on-a-criteria-and-then-count-them-mysql/13567320#13567320
|
|
@@ -734,6 +742,8 @@ class SimpleHistoryLogQuery {
|
|
| 734 |
|
| 735 |
#sf_d($arr_return, '$arr_return');exit;
|
| 736 |
|
|
|
|
|
|
|
| 737 |
return $arr_return;
|
| 738 |
|
| 739 |
} // query
|
| 70 |
$args = wp_parse_args( $args, $defaults );
|
| 71 |
// sf_d($args, "Run log query with args");
|
| 72 |
|
| 73 |
+
$cache_key = "SimpleHistoryLogQuery_" . md5(serialize( $args )) . "_get_" . md5(serialize( $_GET )) . "_userid_" . get_current_user_id();
|
| 74 |
+
$cache_group = "simple-history-" . SimpleHistory::get_cache_incrementor();
|
| 75 |
+
$arr_return = wp_cache_get($cache_key, $cache_group);
|
| 76 |
+
|
| 77 |
+
if ( false !== $arr_return ) {
|
| 78 |
+
return $arr_return;
|
| 79 |
+
}
|
| 80 |
+
|
| 81 |
/*
|
| 82 |
Subequent occasions query thanks to this Stack Overflow thread:
|
| 83 |
http://stackoverflow.com/questions/13566303/how-to-group-subsequent-rows-based-on-a-criteria-and-then-count-them-mysql/13567320#13567320
|
| 742 |
|
| 743 |
#sf_d($arr_return, '$arr_return');exit;
|
| 744 |
|
| 745 |
+
wp_cache_set($cache_key, $arr_return, $cache_group);
|
| 746 |
+
|
| 747 |
return $arr_return;
|
| 748 |
|
| 749 |
} // query
|
css/styles.css
CHANGED
|
@@ -53,7 +53,17 @@ The spinner that wp uses:;
|
|
| 53 |
|
| 54 |
.dashboard_page_simple_history_page .SimpleHistoryGui {
|
| 55 |
width: 100%;
|
| 56 |
-
float: left;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 57 |
}
|
| 58 |
|
| 59 |
|
|
@@ -224,6 +234,7 @@ Style different log levels.
|
|
| 224 |
}
|
| 225 |
|
| 226 |
.SimpleHistoryLogitem__senderImage {
|
|
|
|
| 227 |
border-radius: 50%;
|
| 228 |
overflow: hidden;
|
| 229 |
/*opacity: .8;*/
|
|
@@ -345,25 +356,29 @@ Style different log levels.
|
|
| 345 |
Images/thumbs can be styles nicely
|
| 346 |
*/
|
| 347 |
.SimpleHistoryLogitemThumbnail {
|
| 348 |
-
|
| 349 |
-
|
| 350 |
-
|
| 351 |
-
|
| 352 |
-
|
| 353 |
|
| 354 |
}
|
| 355 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 356 |
.SimpleHistoryLogitemThumbnail img {
|
| 357 |
-
|
| 358 |
-
|
| 359 |
-
|
| 360 |
-
|
| 361 |
-
|
| 362 |
-
|
| 363 |
-
|
| 364 |
-
|
| 365 |
-
|
| 366 |
-
|
| 367 |
}
|
| 368 |
|
| 369 |
|
|
@@ -757,6 +772,7 @@ Modal window with detailss
|
|
| 757 |
/** wordpress as initiator = add wordpress icon */
|
| 758 |
/** anonymous user as initiator = plain user image */
|
| 759 |
.SimpleHistoryLogitem--initiator-wp .SimpleHistoryLogitem__senderImage:before,
|
|
|
|
| 760 |
.SimpleHistoryLogitem--initiator-web_user .SimpleHistoryLogitem__senderImage:before {
|
| 761 |
display: inline-block;
|
| 762 |
-webkit-font-smoothing: antialiased;
|
|
@@ -765,10 +781,25 @@ Modal window with detailss
|
|
| 765 |
color: #999;
|
| 766 |
}
|
| 767 |
|
| 768 |
-
.SimpleHistoryLogitem--initiator-wp .SimpleHistoryLogitem__senderImage:before
|
|
|
|
| 769 |
content: "\f120";
|
| 770 |
}
|
| 771 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 772 |
.SimpleHistoryLogitem--initiator-web_user .SimpleHistoryLogitem__senderImage:before {
|
| 773 |
content: "\f110";
|
| 774 |
}
|
|
@@ -821,3 +852,4 @@ Modal window with detailss
|
|
| 821 |
margin-left: 13px;
|
| 822 |
margin-right: 13px;
|
| 823 |
}
|
|
|
| 53 |
|
| 54 |
.dashboard_page_simple_history_page .SimpleHistoryGui {
|
| 55 |
width: 100%;
|
| 56 |
+
float: left;
|
| 57 |
+
}
|
| 58 |
+
|
| 59 |
+
@media only screen and (max-width: 850px) {
|
| 60 |
+
.dashboard_page_simple_history_page .SimpleHistoryGuiWrap {
|
| 61 |
+
float: none;
|
| 62 |
+
margin-right: auto;
|
| 63 |
+
}
|
| 64 |
+
.dashboard_page_simple_history_page .SimpleHistoryGui {
|
| 65 |
+
float: none;
|
| 66 |
+
}
|
| 67 |
}
|
| 68 |
|
| 69 |
|
| 234 |
}
|
| 235 |
|
| 236 |
.SimpleHistoryLogitem__senderImage {
|
| 237 |
+
position: relative;
|
| 238 |
border-radius: 50%;
|
| 239 |
overflow: hidden;
|
| 240 |
/*opacity: .8;*/
|
| 356 |
Images/thumbs can be styles nicely
|
| 357 |
*/
|
| 358 |
.SimpleHistoryLogitemThumbnail {
|
| 359 |
+
display: inline-block;
|
| 360 |
+
margin: .5em 0 0 0;
|
| 361 |
+
padding: 5px;
|
| 362 |
+
border: 1px solid #ddd;
|
| 363 |
+
border-radius: 2px;
|
| 364 |
|
| 365 |
}
|
| 366 |
|
| 367 |
+
.SimpleHistoryLogitemThumbnailLink {
|
| 368 |
+
display: inline-block;
|
| 369 |
+
}
|
| 370 |
+
|
| 371 |
.SimpleHistoryLogitemThumbnail img {
|
| 372 |
+
/*
|
| 373 |
+
photoshop-like background that represents transparency
|
| 374 |
+
so user can see that an image have transparency
|
| 375 |
+
*/
|
| 376 |
+
display: block;
|
| 377 |
+
background-image: url('data:image/gif;base64,R0lGODlhEAAQAIAAAOXl5f///yH5BAAAAAAALAAAAAAQABAAAAIfhG+hq4jM3IFLJhoswNly/XkcBpIiVaInlLJr9FZWAQA7');
|
| 378 |
+
max-width: 100%;
|
| 379 |
+
max-height: 300px;
|
| 380 |
+
max-height: 200px;
|
| 381 |
+
height: auto;
|
| 382 |
}
|
| 383 |
|
| 384 |
|
| 772 |
/** wordpress as initiator = add wordpress icon */
|
| 773 |
/** anonymous user as initiator = plain user image */
|
| 774 |
.SimpleHistoryLogitem--initiator-wp .SimpleHistoryLogitem__senderImage:before,
|
| 775 |
+
.SimpleHistoryLogitem--initiator-wp_cli .SimpleHistoryLogitem__senderImage:before,
|
| 776 |
.SimpleHistoryLogitem--initiator-web_user .SimpleHistoryLogitem__senderImage:before {
|
| 777 |
display: inline-block;
|
| 778 |
-webkit-font-smoothing: antialiased;
|
| 781 |
color: #999;
|
| 782 |
}
|
| 783 |
|
| 784 |
+
.SimpleHistoryLogitem--initiator-wp .SimpleHistoryLogitem__senderImage:before,
|
| 785 |
+
.SimpleHistoryLogitem--initiator-wp_cli .SimpleHistoryLogitem__senderImage:before {
|
| 786 |
content: "\f120";
|
| 787 |
}
|
| 788 |
|
| 789 |
+
.SimpleHistoryLogitem--initiator-wp_cli .SimpleHistoryLogitem__senderImage:after {
|
| 790 |
+
content: "CLI";
|
| 791 |
+
position: absolute;
|
| 792 |
+
background: rgba(255, 255, 255, 0.7);
|
| 793 |
+
top: 0;
|
| 794 |
+
left: 0;
|
| 795 |
+
right: 0;
|
| 796 |
+
bottom: 0;
|
| 797 |
+
line-height: 36px;
|
| 798 |
+
text-align: center;
|
| 799 |
+
font-family: monospace;
|
| 800 |
+
font-sIze: 12px;
|
| 801 |
+
}
|
| 802 |
+
|
| 803 |
.SimpleHistoryLogitem--initiator-web_user .SimpleHistoryLogitem__senderImage:before {
|
| 804 |
content: "\f110";
|
| 805 |
}
|
| 852 |
margin-left: 13px;
|
| 853 |
margin-right: 13px;
|
| 854 |
}
|
| 855 |
+
|
dropins/SimpleHistoryIpInfoDropin.css
CHANGED
|
@@ -99,6 +99,10 @@
|
|
| 99 |
border-top: 0;
|
| 100 |
}
|
| 101 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 102 |
.SimpleHistoryIpInfoDropin__ipInfoTable__mapRow td {
|
| 103 |
padding: 0;
|
| 104 |
}
|
| 99 |
border-top: 0;
|
| 100 |
}
|
| 101 |
|
| 102 |
+
.SimpleHistoryIpInfoDropin__ipInfoTable__mapRow a {
|
| 103 |
+
display: inline-block;
|
| 104 |
+
}
|
| 105 |
+
|
| 106 |
.SimpleHistoryIpInfoDropin__ipInfoTable__mapRow td {
|
| 107 |
padding: 0;
|
| 108 |
}
|
dropins/SimpleHistoryIpInfoDropin.js
CHANGED
|
@@ -27,6 +27,7 @@
|
|
| 27 |
// Close popup
|
| 28 |
$popup.on("click", ".SimpleHistoryIpInfoDropin__popupCloseButton", hidePopup);
|
| 29 |
$(window).on("click", maybeHidePopup);
|
|
|
|
| 30 |
$(document).on("SimpleHistory:logReloadStart", hidePopup);
|
| 31 |
|
| 32 |
// Position and then show popup.
|
|
@@ -62,6 +63,11 @@
|
|
| 62 |
return true;
|
| 63 |
}
|
| 64 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 65 |
// Else it should be ok to hide
|
| 66 |
hidePopup();
|
| 67 |
|
| 27 |
// Close popup
|
| 28 |
$popup.on("click", ".SimpleHistoryIpInfoDropin__popupCloseButton", hidePopup);
|
| 29 |
$(window).on("click", maybeHidePopup);
|
| 30 |
+
$(window).on("keyup", maybeHidePopup);
|
| 31 |
$(document).on("SimpleHistory:logReloadStart", hidePopup);
|
| 32 |
|
| 33 |
// Position and then show popup.
|
| 63 |
return true;
|
| 64 |
}
|
| 65 |
|
| 66 |
+
// If initiated by keyboard but not esc, then don't close
|
| 67 |
+
if (e.originalEvent.type == "keyup" && e.originalEvent.keyCode != 27) {
|
| 68 |
+
return;
|
| 69 |
+
}
|
| 70 |
+
|
| 71 |
// Else it should be ok to hide
|
| 72 |
hidePopup();
|
| 73 |
|
dropins/SimpleHistoryNewRowsNotifier.php
CHANGED
|
@@ -63,7 +63,6 @@ class SimpleHistoryNewRowsNotifier {
|
|
| 63 |
$logQueryArgs = $apiArgs;
|
| 64 |
|
| 65 |
$logQuery = new SimpleHistoryLogQuery();
|
| 66 |
-
|
| 67 |
$answer = $logQuery->query( $logQueryArgs );
|
| 68 |
|
| 69 |
// Use our own repsonse array instead of $answer to keep size down
|
|
@@ -71,6 +70,7 @@ class SimpleHistoryNewRowsNotifier {
|
|
| 71 |
|
| 72 |
$numNewRows = isset( $answer["total_row_count"] ) ? $answer["total_row_count"] : 0;
|
| 73 |
$json_data["num_new_rows"] = $numNewRows;
|
|
|
|
| 74 |
|
| 75 |
if ($numNewRows) {
|
| 76 |
|
| 63 |
$logQueryArgs = $apiArgs;
|
| 64 |
|
| 65 |
$logQuery = new SimpleHistoryLogQuery();
|
|
|
|
| 66 |
$answer = $logQuery->query( $logQueryArgs );
|
| 67 |
|
| 68 |
// Use our own repsonse array instead of $answer to keep size down
|
| 70 |
|
| 71 |
$numNewRows = isset( $answer["total_row_count"] ) ? $answer["total_row_count"] : 0;
|
| 72 |
$json_data["num_new_rows"] = $numNewRows;
|
| 73 |
+
$json_data["num_mysql_queries"] = get_num_queries();
|
| 74 |
|
| 75 |
if ($numNewRows) {
|
| 76 |
|
dropins/SimpleHistoryRSSDropin.php
CHANGED
|
@@ -183,6 +183,8 @@ class SimpleHistoryRSSDropin {
|
|
| 183 |
#$item_title = wp_kses( $header_output . ": " . $text_output, array() );
|
| 184 |
$item_title = wp_kses( $text_output, array() );
|
| 185 |
|
|
|
|
|
|
|
| 186 |
?>
|
| 187 |
<item>
|
| 188 |
<title><![CDATA[<?php echo $item_title; ?>]]></title>
|
|
@@ -190,6 +192,7 @@ class SimpleHistoryRSSDropin {
|
|
| 190 |
<p><?php echo $header_output ?></p>
|
| 191 |
<p><?php echo $text_output ?></p>
|
| 192 |
<div><?php echo $details_output ?></div>
|
|
|
|
| 193 |
<?php
|
| 194 |
$occasions = $row->subsequentOccasions - 1;
|
| 195 |
if ( $occasions ) {
|
| 183 |
#$item_title = wp_kses( $header_output . ": " . $text_output, array() );
|
| 184 |
$item_title = wp_kses( $text_output, array() );
|
| 185 |
|
| 186 |
+
$level_output = sprintf( __('Severity level: %1$s'), $this->sh->getLogLevelTranslated( $row->level ));
|
| 187 |
+
|
| 188 |
?>
|
| 189 |
<item>
|
| 190 |
<title><![CDATA[<?php echo $item_title; ?>]]></title>
|
| 192 |
<p><?php echo $header_output ?></p>
|
| 193 |
<p><?php echo $text_output ?></p>
|
| 194 |
<div><?php echo $details_output ?></div>
|
| 195 |
+
<p><?php echo $level_output ?></p>
|
| 196 |
<?php
|
| 197 |
$occasions = $row->subsequentOccasions - 1;
|
| 198 |
if ( $occasions ) {
|
dropins/SimpleHistorySidebarDropin.css
CHANGED
|
@@ -5,6 +5,15 @@
|
|
| 5 |
margin-right: -340px;
|
| 6 |
}
|
| 7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 8 |
.SimpleHistory__pageSidebar .inside {
|
| 9 |
margin-bottom: 0;
|
| 10 |
}
|
|
@@ -16,3 +25,4 @@
|
|
| 16 |
.SimpleHistory__pageSidebar .postbox .hndle {
|
| 17 |
cursor: auto;
|
| 18 |
}
|
|
|
| 5 |
margin-right: -340px;
|
| 6 |
}
|
| 7 |
|
| 8 |
+
@media only screen and (max-width: 850px) {
|
| 9 |
+
.SimpleHistory__pageSidebar {
|
| 10 |
+
width: 100%;
|
| 11 |
+
float: none;
|
| 12 |
+
margin-right: auto;
|
| 13 |
+
margin-top: 20px;
|
| 14 |
+
}
|
| 15 |
+
}
|
| 16 |
+
|
| 17 |
.SimpleHistory__pageSidebar .inside {
|
| 18 |
margin-bottom: 0;
|
| 19 |
}
|
| 25 |
.SimpleHistory__pageSidebar .postbox .hndle {
|
| 26 |
cursor: auto;
|
| 27 |
}
|
| 28 |
+
|
examples.php
CHANGED
|
@@ -7,6 +7,23 @@ exit;
|
|
| 7 |
* Some examples of filter usage and so on
|
| 8 |
*/
|
| 9 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10 |
// Never clear the log (default is 60 days)
|
| 11 |
add_filter("simple_history/db_purge_days_interval", "__return_zero");
|
| 12 |
|
| 7 |
* Some examples of filter usage and so on
|
| 8 |
*/
|
| 9 |
|
| 10 |
+
// Don't log failed logins
|
| 11 |
+
add_filter("simple_history/simple_logger/log_message_key", function($doLog, $loggerSlug, $messageKey, $SimpleLoggerLogLevelsLevel, $context) {
|
| 12 |
+
|
| 13 |
+
// Don't log login attempts to non existing users
|
| 14 |
+
if ( "SimpleUserLogger" == $loggerSlug && "user_unknown_login_failed" == $messageKey ) {
|
| 15 |
+
$doLog = false;
|
| 16 |
+
}
|
| 17 |
+
|
| 18 |
+
// Don't log failed logins to existing users
|
| 19 |
+
if ( "SimpleUserLogger" == $loggerSlug && "user_login_failed" == $messageKey ) {
|
| 20 |
+
$doLog = false;
|
| 21 |
+
}
|
| 22 |
+
|
| 23 |
+
return $doLog;
|
| 24 |
+
|
| 25 |
+
}, 10, 5);
|
| 26 |
+
|
| 27 |
// Never clear the log (default is 60 days)
|
| 28 |
add_filter("simple_history/db_purge_days_interval", "__return_zero");
|
| 29 |
|
index.php
CHANGED
|
@@ -3,7 +3,7 @@
|
|
| 3 |
Plugin Name: Simple History
|
| 4 |
Plugin URI: http://simple-history.com
|
| 5 |
Description: Plugin that logs various things that occur in WordPress and then presents those events in a very nice GUI.
|
| 6 |
-
Version: 2.0.
|
| 7 |
Author: Pär Thernström
|
| 8 |
Author URI: http://simple-history.com/
|
| 9 |
License: GPL2
|
| 3 |
Plugin Name: Simple History
|
| 4 |
Plugin URI: http://simple-history.com
|
| 5 |
Description: Plugin that logs various things that occur in WordPress and then presents those events in a very nice GUI.
|
| 6 |
+
Version: 2.0.20
|
| 7 |
Author: Pär Thernström
|
| 8 |
Author URI: http://simple-history.com/
|
| 9 |
License: GPL2
|
languages/simple-history-sv_SE.mo
CHANGED
|
Binary file
|
languages/simple-history-sv_SE.po
CHANGED
|
@@ -4,8 +4,8 @@ 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-01-
|
| 8 |
-
"PO-Revision-Date: 2015-
|
| 9 |
"Last-Translator: Pär Thernström <par.thernstrom@gmail.com>\n"
|
| 10 |
"Language-Team: \n"
|
| 11 |
"Language: sv\n"
|
|
@@ -22,150 +22,154 @@ msgstr ""
|
|
| 22 |
"X-Textdomain-Support: yes\n"
|
| 23 |
"X-Poedit-SearchPath-0: .\n"
|
| 24 |
|
| 25 |
-
#: SimpleHistory.php:
|
| 26 |
msgid "Settings"
|
| 27 |
msgstr "Inställningar"
|
| 28 |
|
| 29 |
-
#: SimpleHistory.php:
|
| 30 |
msgid "Log (debug)"
|
| 31 |
msgstr "Logg (debug)"
|
| 32 |
|
| 33 |
-
#: SimpleHistory.php:
|
| 34 |
msgid "Styles example (debug)"
|
| 35 |
msgstr "Stilexempel (debug)"
|
| 36 |
|
| 37 |
#. Plugin Name of the plugin/theme
|
| 38 |
-
#: SimpleHistory.php:
|
| 39 |
msgid "Simple History"
|
| 40 |
msgstr "Simple History"
|
| 41 |
|
| 42 |
-
#: SimpleHistory.php:
|
| 43 |
msgid "Remove all log items?"
|
| 44 |
msgstr "Ta bort alla händelser?"
|
| 45 |
|
| 46 |
-
#: SimpleHistory.php:
|
| 47 |
msgid "Go to the first page"
|
| 48 |
msgstr "Gå till första sidan"
|
| 49 |
|
| 50 |
-
#: SimpleHistory.php:
|
| 51 |
msgid "Go to the previous page"
|
| 52 |
msgstr "Gå till föregående sida"
|
| 53 |
|
| 54 |
-
#: SimpleHistory.php:
|
| 55 |
msgid "Go to the next page"
|
| 56 |
msgstr "Gå till nästa sida"
|
| 57 |
|
| 58 |
-
#: SimpleHistory.php:
|
| 59 |
msgid "Go to the last page"
|
| 60 |
msgstr "Gå till sista sidan"
|
| 61 |
|
| 62 |
-
#: SimpleHistory.php:
|
| 63 |
msgid "Current page"
|
| 64 |
msgstr "Aktuell sida"
|
| 65 |
|
| 66 |
-
#: SimpleHistory.php:
|
| 67 |
msgid "Oups, the log could not be loaded right now."
|
| 68 |
msgstr "Hoppsan, historiken kunde inte laddas just nu."
|
| 69 |
|
| 70 |
-
#: SimpleHistory.php:
|
| 71 |
msgid "Your search did not match any history events."
|
| 72 |
msgstr "Din sökning matchade inte några händelser i historiken."
|
| 73 |
|
| 74 |
-
#: SimpleHistory.php:
|
| 75 |
msgid "Simple History Settings"
|
| 76 |
msgstr "Inställningar för Simple History"
|
| 77 |
|
| 78 |
-
#: SimpleHistory.php:
|
| 79 |
msgid "No valid callback found"
|
| 80 |
msgstr "Inget giltigt callback hittades."
|
| 81 |
|
| 82 |
-
#: SimpleHistory.php:
|
| 83 |
msgid "Cleared database"
|
| 84 |
msgstr "Databasen rensades"
|
| 85 |
|
| 86 |
-
#: SimpleHistory.php:
|
| 87 |
msgid "Show history"
|
| 88 |
msgstr "Visa historik"
|
| 89 |
|
| 90 |
-
#: SimpleHistory.php:
|
| 91 |
msgid "Number of items per page"
|
| 92 |
msgstr "Antal händelser per sida"
|
| 93 |
|
| 94 |
-
#: SimpleHistory.php:
|
| 95 |
msgid "Clear log"
|
| 96 |
msgstr "Rensa logg"
|
| 97 |
|
| 98 |
-
#: SimpleHistory.php:
|
| 99 |
msgid "on the dashboard"
|
| 100 |
msgstr "i panelen"
|
| 101 |
|
| 102 |
-
#: SimpleHistory.php:
|
| 103 |
msgid "as a page under the dashboard menu"
|
| 104 |
msgstr "som en sida under panel-menyn"
|
| 105 |
|
| 106 |
-
#: SimpleHistory.php:
|
| 107 |
msgid "Items in the database are automatically removed after %1$s days."
|
| 108 |
msgstr "Händelser i databasen tas automatiskt bort efter %1$s dagar."
|
| 109 |
|
| 110 |
-
#: SimpleHistory.php:
|
| 111 |
msgid "Items in the database are kept forever."
|
| 112 |
msgstr "Händelser i databasen lagras för evigt."
|
| 113 |
|
| 114 |
-
#: SimpleHistory.php:
|
| 115 |
msgid "Clear log now"
|
| 116 |
msgstr "Rensa loggen nu"
|
| 117 |
|
| 118 |
-
#: SimpleHistory.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
| 119 |
msgid "+%1$s similar event"
|
| 120 |
msgid_plural "+%1$s similar events"
|
| 121 |
msgstr[0] "+%1$s liknande händelse"
|
| 122 |
msgstr[1] "+%1$s liknande händelser"
|
| 123 |
|
| 124 |
-
#: SimpleHistory.php:
|
| 125 |
msgid "Loading…"
|
| 126 |
msgstr "Laddar historik..."
|
| 127 |
|
| 128 |
-
#: SimpleHistory.php:
|
| 129 |
msgid "Showing %1$s more"
|
| 130 |
msgstr "+%1$s fler"
|
| 131 |
|
| 132 |
-
#: SimpleHistory.php:
|
| 133 |
msgid "Context data"
|
| 134 |
msgstr "Kontextuell data"
|
| 135 |
|
| 136 |
-
#: SimpleHistory.php:
|
| 137 |
msgid "This is potentially useful meta data that a logger has saved."
|
| 138 |
msgstr "Detta eventuellt användbar metadata som en logger har sparat."
|
| 139 |
|
| 140 |
-
#: SimpleHistory.php:
|
| 141 |
msgid "No events today so far."
|
| 142 |
msgstr "Inga händelser idag ännu."
|
| 143 |
|
| 144 |
-
#: SimpleHistory.php:
|
| 145 |
msgid "One event today from one user."
|
| 146 |
msgstr "En händelse idag från en användare."
|
| 147 |
|
| 148 |
-
#: SimpleHistory.php:
|
| 149 |
msgid "One event today from one source."
|
| 150 |
msgstr "En händelse idag från en källa."
|
| 151 |
|
| 152 |
-
#: SimpleHistory.php:
|
| 153 |
msgid "%1$d events today from one user."
|
| 154 |
msgstr "%1$d händelser idag från en användare."
|
| 155 |
|
| 156 |
-
#: SimpleHistory.php:
|
| 157 |
msgid "%1$d events today from %2$d users."
|
| 158 |
msgstr "%1$d händelser idag från %2$d användare."
|
| 159 |
|
| 160 |
-
#: SimpleHistory.php:
|
| 161 |
msgid "%1$d events today from one user and one other source."
|
| 162 |
msgstr "%1$d händelser idag från en användare och från en annan källa."
|
| 163 |
|
| 164 |
-
#: SimpleHistory.php:
|
| 165 |
msgid "%1$d events today from one user and %3$d other sources."
|
| 166 |
msgstr "%1$d händelser idag från en användare och från %3$d andra källor."
|
| 167 |
|
| 168 |
-
#: SimpleHistory.php:
|
| 169 |
msgid "%1$s events today from %2$d users and %3$d other sources."
|
| 170 |
msgstr "%1$s händelser idag från %2$d användare och %3$d andra källor."
|
| 171 |
|
|
@@ -286,7 +290,7 @@ msgstr "Testdata (debug)"
|
|
| 286 |
msgid "Stats"
|
| 287 |
msgstr "Statistik"
|
| 288 |
|
| 289 |
-
#: dropins/SimpleHistorySidebarDropin.php:159 loggers/SimpleLogger.php:
|
| 290 |
msgid "Just now"
|
| 291 |
msgstr "Just nu"
|
| 292 |
|
|
@@ -298,27 +302,27 @@ msgstr ""
|
|
| 298 |
"Simple History är en rackarns bra plugin, men för att använda den måste din "
|
| 299 |
"server ha minst PHP 5.3 installerat (du har version %s)."
|
| 300 |
|
| 301 |
-
#: loggers/SimpleCommentsLogger.php:
|
| 302 |
msgid "Spam"
|
| 303 |
msgstr "Skräp"
|
| 304 |
|
| 305 |
-
#: loggers/SimpleCommentsLogger.php:
|
| 306 |
msgid "Approved"
|
| 307 |
msgstr "Godkänd"
|
| 308 |
|
| 309 |
-
#: loggers/SimpleCommentsLogger.php:
|
| 310 |
msgid "Pending"
|
| 311 |
msgstr "Väntande"
|
| 312 |
|
| 313 |
-
#: loggers/SimpleCommentsLogger.php:
|
| 314 |
msgid "Trackback"
|
| 315 |
msgstr "Trackback"
|
| 316 |
|
| 317 |
-
#: loggers/SimpleCommentsLogger.php:
|
| 318 |
msgid "Pingback"
|
| 319 |
msgstr "Pingback"
|
| 320 |
|
| 321 |
-
#: loggers/SimpleCommentsLogger.php:
|
| 322 |
msgid "Comment"
|
| 323 |
msgstr "Kommentar"
|
| 324 |
|
|
@@ -343,25 +347,25 @@ msgstr "Av %s"
|
|
| 343 |
msgid "%d occasions"
|
| 344 |
msgstr "%d tillfällen"
|
| 345 |
|
| 346 |
-
#: loggers/SimpleLogger.php:
|
| 347 |
msgid "Deleted user (had id %1$s, email %2$s, login %3$s)"
|
| 348 |
msgstr "Raderad användare (hade id %1$s, epost %2$s, login %3$s)"
|
| 349 |
|
| 350 |
-
#: loggers/SimpleLogger.php:
|
| 351 |
msgid "Anonymous web user"
|
| 352 |
msgstr "Anonym webbanvändare"
|
| 353 |
|
| 354 |
-
#: loggers/SimpleLogger.php:
|
| 355 |
msgid "Anonymous user from %1$s"
|
| 356 |
msgstr "Anonym användare från %1$s"
|
| 357 |
|
| 358 |
#. translators: Date format for log row header, see http:php.net/date
|
| 359 |
-
#: loggers/SimpleLogger.php:
|
| 360 |
msgid "M j, Y \\a\\t G:i"
|
| 361 |
msgstr "M j, Y \\a\\t G:i"
|
| 362 |
|
| 363 |
#. translators: 1: last modified date and time in human time diff-format
|
| 364 |
-
#: loggers/SimpleLogger.php:
|
| 365 |
msgid "%1$s ago"
|
| 366 |
msgstr "%1$s sedan"
|
| 367 |
|
|
@@ -507,7 +511,7 @@ msgstr "Ändrade inställningar för temats anpassade bakgrund"
|
|
| 507 |
msgid "Section"
|
| 508 |
msgstr "Sektion"
|
| 509 |
|
| 510 |
-
#: loggers/SimpleUserLogger.php:
|
| 511 |
msgid ""
|
| 512 |
"Failed to login to account with username \"{login_user_login}\" because an "
|
| 513 |
"incorrect password was entered"
|
|
@@ -515,32 +519,32 @@ msgstr ""
|
|
| 515 |
"Misslyckades att logga in på kontot med användarnamnet \"{login_user_login}\" "
|
| 516 |
"eftersom ett felaktigt lösenord angavs"
|
| 517 |
|
| 518 |
-
#: loggers/SimpleUserLogger.php:
|
| 519 |
msgid ""
|
| 520 |
"Failed to login with username \"{failed_login_username}\" because no user "
|
| 521 |
"with that username exists"
|
| 522 |
msgstr ""
|
| 523 |
-
"
|
| 524 |
"eftersom ingen användare med det användarnamnet existerar"
|
| 525 |
|
| 526 |
-
#: loggers/SimpleUserLogger.php:
|
| 527 |
msgid "Logged in"
|
| 528 |
msgstr "Loggade in"
|
| 529 |
|
| 530 |
-
#: loggers/SimpleUserLogger.php:
|
| 531 |
msgid "Unknown user logged in"
|
| 532 |
msgstr "Okänd användare loggade in"
|
| 533 |
|
| 534 |
-
#: loggers/SimpleUserLogger.php:
|
| 535 |
msgid "Logged out"
|
| 536 |
msgstr "Loggade ut"
|
| 537 |
|
| 538 |
-
#: loggers/SimpleUserLogger.php:
|
| 539 |
msgid "Edited the profile for user {edited_user_login} ({edited_user_email})"
|
| 540 |
msgstr ""
|
| 541 |
"Redigerade profilen för användaren {edited_user_login} ({edited_user_email})"
|
| 542 |
|
| 543 |
-
#: loggers/SimpleUserLogger.php:
|
| 544 |
msgid ""
|
| 545 |
"Created user {created_user_login} ({created_user_email}) with role "
|
| 546 |
"{created_user_role}"
|
|
@@ -548,23 +552,23 @@ msgstr ""
|
|
| 548 |
"Skapade användare {created_user_login} ({created_user_email}) med rollen "
|
| 549 |
"{created_user_role}"
|
| 550 |
|
| 551 |
-
#: loggers/SimpleUserLogger.php:
|
| 552 |
msgid "Deleted user {deleted_user_login} ({deleted_user_email})"
|
| 553 |
msgstr "Raderade användaren {deleted_user_login} ({deleted_user_email})"
|
| 554 |
|
| 555 |
-
#: loggers/SimpleUserLogger.php:
|
| 556 |
msgid "Edited <a href=\"{edit_profile_link}\">your profile</a>"
|
| 557 |
msgstr "Redigerade <a href=\"{edit_profile_link}\">din profl</a>"
|
| 558 |
|
| 559 |
-
#: loggers/SimpleUserLogger.php:
|
| 560 |
msgid "Edited <a href=\"{edit_profile_link}\">their profile</a>"
|
| 561 |
msgstr "Redigerade <a href=\"{edit_profile_link}\">sin profil</a>"
|
| 562 |
|
| 563 |
-
#: loggers/SimpleUserLogger.php:
|
| 564 |
msgid "Edited your profile"
|
| 565 |
msgstr "Redigerade din profil"
|
| 566 |
|
| 567 |
-
#: loggers/SimpleUserLogger.php:
|
| 568 |
msgid ""
|
| 569 |
"Edited the profile for user <a href="
|
| 570 |
"\"{edit_profile_link}\">{edited_user_login} ({edited_user_email})</a>"
|
|
@@ -640,33 +644,33 @@ msgstr "Pär Thernström"
|
|
| 640 |
msgid "http://simple-history.com/"
|
| 641 |
msgstr "http://simple-history.com"
|
| 642 |
|
| 643 |
-
#: SimpleHistory.php:
|
| 644 |
msgctxt ""
|
| 645 |
"Message visible while waiting for log to load from server the first time"
|
| 646 |
msgid "Loading history..."
|
| 647 |
msgstr "Laddar historik..."
|
| 648 |
|
| 649 |
-
#: SimpleHistory.php:
|
| 650 |
msgctxt "page n of n"
|
| 651 |
msgid "of"
|
| 652 |
msgstr "av"
|
| 653 |
|
| 654 |
-
#: SimpleHistory.php:
|
| 655 |
msgctxt "API: not enought arguments passed"
|
| 656 |
msgid "Not enough args specified"
|
| 657 |
msgstr "Inte tillräckligt med arguments specifierade"
|
| 658 |
|
| 659 |
-
#: SimpleHistory.php:
|
| 660 |
msgctxt "dashboard menu name"
|
| 661 |
msgid "Simple History"
|
| 662 |
msgstr "Simple History"
|
| 663 |
|
| 664 |
-
#: SimpleHistory.php:
|
| 665 |
msgctxt "history page headline"
|
| 666 |
msgid "Simple History"
|
| 667 |
msgstr "Simple History"
|
| 668 |
|
| 669 |
-
#: SimpleHistory.php:
|
| 670 |
msgctxt "simple-history"
|
| 671 |
msgid "Simple History removed one event that were older than {days} days"
|
| 672 |
msgid_plural ""
|
|
@@ -675,82 +679,82 @@ msgstr[0] "Simple History raderade en händelse som var äldre än {days} dagar.
|
|
| 675 |
msgstr[1] ""
|
| 676 |
"Simple History radera {num_rows} händelser som var äldre än {days} dagar"
|
| 677 |
|
| 678 |
-
#: SimpleHistory.php:
|
| 679 |
msgctxt "Log level in gui"
|
| 680 |
msgid "emergency"
|
| 681 |
msgstr "kritiskt"
|
| 682 |
|
| 683 |
-
#: SimpleHistory.php:
|
| 684 |
msgctxt "Log level in gui"
|
| 685 |
msgid "alert"
|
| 686 |
msgstr "alert"
|
| 687 |
|
| 688 |
-
#: SimpleHistory.php:
|
| 689 |
msgctxt "Log level in gui"
|
| 690 |
msgid "critical"
|
| 691 |
msgstr "kritiskt"
|
| 692 |
|
| 693 |
-
#: SimpleHistory.php:
|
| 694 |
msgctxt "Log level in gui"
|
| 695 |
msgid "error"
|
| 696 |
msgstr "error"
|
| 697 |
|
| 698 |
-
#: SimpleHistory.php:
|
| 699 |
msgctxt "Log level in gui"
|
| 700 |
msgid "warning"
|
| 701 |
msgstr "warning"
|
| 702 |
|
| 703 |
-
#: SimpleHistory.php:
|
| 704 |
msgctxt "Log level in gui"
|
| 705 |
msgid "notice"
|
| 706 |
msgstr "notice"
|
| 707 |
|
| 708 |
-
#: SimpleHistory.php:
|
| 709 |
msgctxt "Log level in gui"
|
| 710 |
msgid "info"
|
| 711 |
msgstr "info"
|
| 712 |
|
| 713 |
-
#: SimpleHistory.php:
|
| 714 |
msgctxt "Log level in gui"
|
| 715 |
msgid "debug"
|
| 716 |
msgstr "debug"
|
| 717 |
|
| 718 |
-
#: SimpleHistory.php:
|
| 719 |
msgctxt "Log level in gui"
|
| 720 |
msgid "Emergency"
|
| 721 |
msgstr "Emergency"
|
| 722 |
|
| 723 |
-
#: SimpleHistory.php:
|
| 724 |
msgctxt "Log level in gui"
|
| 725 |
msgid "Alert"
|
| 726 |
msgstr "Alert"
|
| 727 |
|
| 728 |
-
#: SimpleHistory.php:
|
| 729 |
msgctxt "Log level in gui"
|
| 730 |
msgid "Critical"
|
| 731 |
msgstr "Critical"
|
| 732 |
|
| 733 |
-
#: SimpleHistory.php:
|
| 734 |
msgctxt "Log level in gui"
|
| 735 |
msgid "Error"
|
| 736 |
msgstr "Error"
|
| 737 |
|
| 738 |
-
#: SimpleHistory.php:
|
| 739 |
msgctxt "Log level in gui"
|
| 740 |
msgid "Warning"
|
| 741 |
msgstr "Warning"
|
| 742 |
|
| 743 |
-
#: SimpleHistory.php:
|
| 744 |
msgctxt "Log level in gui"
|
| 745 |
msgid "Notice"
|
| 746 |
msgstr "Notice"
|
| 747 |
|
| 748 |
-
#: SimpleHistory.php:
|
| 749 |
msgctxt "Log level in gui"
|
| 750 |
msgid "Info"
|
| 751 |
msgstr "Info"
|
| 752 |
|
| 753 |
-
#: SimpleHistory.php:
|
| 754 |
msgctxt "Log level in gui"
|
| 755 |
msgid "Debug"
|
| 756 |
msgstr "Debug"
|
|
@@ -1133,35 +1137,35 @@ msgctxt "Comments logger: search"
|
|
| 1133 |
msgid "Deleted comments"
|
| 1134 |
msgstr "Borttagna kommentarer"
|
| 1135 |
|
| 1136 |
-
#: loggers/SimpleCommentsLogger.php:
|
| 1137 |
-
#: loggers/SimpleCommentsLogger.php:
|
| 1138 |
msgctxt "comments logger - detailed output comment status"
|
| 1139 |
msgid "Status"
|
| 1140 |
msgstr "Status"
|
| 1141 |
|
| 1142 |
-
#: loggers/SimpleCommentsLogger.php:
|
| 1143 |
-
#: loggers/SimpleCommentsLogger.php:
|
| 1144 |
msgctxt "comments logger - detailed output author"
|
| 1145 |
msgid "Name"
|
| 1146 |
msgstr "Namn"
|
| 1147 |
|
| 1148 |
-
#: loggers/SimpleCommentsLogger.php:
|
| 1149 |
-
#: loggers/SimpleCommentsLogger.php:
|
| 1150 |
msgctxt "comments logger - detailed output email"
|
| 1151 |
msgid "Email"
|
| 1152 |
msgstr "E-post"
|
| 1153 |
|
| 1154 |
-
#: loggers/SimpleCommentsLogger.php:
|
| 1155 |
msgctxt "comments logger - detailed output content"
|
| 1156 |
msgid "Content"
|
| 1157 |
msgstr "Innehåll"
|
| 1158 |
|
| 1159 |
-
#: loggers/SimpleCommentsLogger.php:
|
| 1160 |
msgctxt "comments logger - detailed output content"
|
| 1161 |
msgid "Comment"
|
| 1162 |
msgstr "Kommentar"
|
| 1163 |
|
| 1164 |
-
#: loggers/SimpleCommentsLogger.php:
|
| 1165 |
msgctxt "comments logger - edit comment"
|
| 1166 |
msgid "View/Edit"
|
| 1167 |
msgstr "Visa/Redigera"
|
|
@@ -1176,42 +1180,42 @@ msgctxt "User logger: search"
|
|
| 1176 |
msgid "WordPress core updates"
|
| 1177 |
msgstr "WordPress core uppdateringar"
|
| 1178 |
|
| 1179 |
-
#: loggers/SimpleUserLogger.php:
|
| 1180 |
msgctxt "User logger: search"
|
| 1181 |
msgid "Users"
|
| 1182 |
msgstr "Användare"
|
| 1183 |
|
| 1184 |
-
#: loggers/SimpleUserLogger.php:
|
| 1185 |
msgctxt "User logger: search"
|
| 1186 |
msgid "All user activity"
|
| 1187 |
msgstr "All användaraktivitet"
|
| 1188 |
|
| 1189 |
-
#: loggers/SimpleUserLogger.php:
|
| 1190 |
msgctxt "User logger: search"
|
| 1191 |
msgid "Successful user logins"
|
| 1192 |
msgstr "Lyckade inloggningar av användare"
|
| 1193 |
|
| 1194 |
-
#: loggers/SimpleUserLogger.php:
|
| 1195 |
msgctxt "User logger: search"
|
| 1196 |
msgid "Failed user logins"
|
| 1197 |
msgstr "Misslyckade inloggningar av användare"
|
| 1198 |
|
| 1199 |
-
#: loggers/SimpleUserLogger.php:
|
| 1200 |
msgctxt "User logger: search"
|
| 1201 |
msgid "User logouts"
|
| 1202 |
msgstr "Utloggning av användare"
|
| 1203 |
|
| 1204 |
-
#: loggers/SimpleUserLogger.php:
|
| 1205 |
msgctxt "User logger: search"
|
| 1206 |
msgid "Created users"
|
| 1207 |
msgstr "Skapade användare"
|
| 1208 |
|
| 1209 |
-
#: loggers/SimpleUserLogger.php:
|
| 1210 |
msgctxt "User logger: search"
|
| 1211 |
msgid "User profile updates"
|
| 1212 |
msgstr "Uppdateringar av användarprofiler"
|
| 1213 |
|
| 1214 |
-
#: loggers/SimpleUserLogger.php:
|
| 1215 |
msgctxt "User logger: search"
|
| 1216 |
msgid "User deletions"
|
| 1217 |
msgstr "Radering av användare"
|
|
@@ -1226,7 +1230,7 @@ msgctxt "Export logger: search"
|
|
| 1226 |
msgid "Created exports"
|
| 1227 |
msgstr "Skapade exporter"
|
| 1228 |
|
| 1229 |
-
#: loggers/SimpleLogger.php:
|
| 1230 |
msgctxt "header output when initiator is the currently logged in user"
|
| 1231 |
msgid "You"
|
| 1232 |
msgstr "Du"
|
|
@@ -1393,47 +1397,47 @@ msgctxt "Plugin logger: search"
|
|
| 1393 |
msgid "Deleted plugins"
|
| 1394 |
msgstr "Raderade plugins"
|
| 1395 |
|
| 1396 |
-
#: loggers/SimplePluginLogger.php:
|
| 1397 |
msgctxt "plugin logger - detailed output version"
|
| 1398 |
msgid "Version"
|
| 1399 |
msgstr "Version"
|
| 1400 |
|
| 1401 |
-
#: loggers/SimplePluginLogger.php:
|
| 1402 |
msgctxt "plugin logger - detailed output author"
|
| 1403 |
msgid "Author"
|
| 1404 |
msgstr "Författare"
|
| 1405 |
|
| 1406 |
-
#: loggers/SimplePluginLogger.php:
|
| 1407 |
msgctxt "plugin logger - detailed output author"
|
| 1408 |
msgid "Requires"
|
| 1409 |
msgstr "Kräver"
|
| 1410 |
|
| 1411 |
-
#: loggers/SimplePluginLogger.php:
|
| 1412 |
msgctxt "plugin logger - detailed output url"
|
| 1413 |
msgid "URL"
|
| 1414 |
msgstr "URL"
|
| 1415 |
|
| 1416 |
-
#: loggers/SimplePluginLogger.php:
|
| 1417 |
msgctxt "plugin logger - detailed output compatible"
|
| 1418 |
msgid "Compatible up to"
|
| 1419 |
msgstr "Kompatibel upp till"
|
| 1420 |
|
| 1421 |
-
#: loggers/SimplePluginLogger.php:
|
| 1422 |
msgctxt "plugin logger - detailed output downloaded"
|
| 1423 |
msgid "Downloads"
|
| 1424 |
msgstr "Nedladdningar"
|
| 1425 |
|
| 1426 |
-
#: loggers/SimplePluginLogger.php:
|
| 1427 |
msgctxt "plugin logger: plugin info thickbox title view all info"
|
| 1428 |
msgid "View plugin info"
|
| 1429 |
msgstr "Visa information om plugin"
|
| 1430 |
|
| 1431 |
-
#: loggers/SimplePluginLogger.php:
|
| 1432 |
msgctxt "plugin logger: plugin info thickbox title"
|
| 1433 |
msgid "View plugin info"
|
| 1434 |
msgstr "Visa information om plugin"
|
| 1435 |
|
| 1436 |
-
#: loggers/SimplePluginLogger.php:
|
| 1437 |
msgctxt "plugin logger: plugin info thickbox title"
|
| 1438 |
msgid "View changelog"
|
| 1439 |
msgstr "Visa ändringslogg"
|
|
@@ -1508,12 +1512,12 @@ msgctxt "Theme logger: search"
|
|
| 1508 |
msgid "Background of themes changed"
|
| 1509 |
msgstr "Ändrade bakgrunder för teman"
|
| 1510 |
|
| 1511 |
-
#: loggers/SimpleUserLogger.php:
|
| 1512 |
msgctxt "User destroys other login sessions for themself"
|
| 1513 |
msgid "Logged out from all other sessions"
|
| 1514 |
msgstr "Loggade ut från alla andra sessioner"
|
| 1515 |
|
| 1516 |
-
#: loggers/SimpleUserLogger.php:
|
| 1517 |
msgctxt "User destroys all login sessions for a user"
|
| 1518 |
msgid "Logged out \"{user_display_name}\" from all sessions"
|
| 1519 |
msgstr "Loggade ut \"{user_display_name}\" från alla sessioner"
|
| 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-01-26 15:41:57+00:00\n"
|
| 8 |
+
"PO-Revision-Date: 2015-02-11 13:42+0100\n"
|
| 9 |
"Last-Translator: Pär Thernström <par.thernstrom@gmail.com>\n"
|
| 10 |
"Language-Team: \n"
|
| 11 |
"Language: sv\n"
|
| 22 |
"X-Textdomain-Support: yes\n"
|
| 23 |
"X-Poedit-SearchPath-0: .\n"
|
| 24 |
|
| 25 |
+
#: SimpleHistory.php:504 SimpleHistory.php:765
|
| 26 |
msgid "Settings"
|
| 27 |
msgstr "Inställningar"
|
| 28 |
|
| 29 |
+
#: SimpleHistory.php:515
|
| 30 |
msgid "Log (debug)"
|
| 31 |
msgstr "Logg (debug)"
|
| 32 |
|
| 33 |
+
#: SimpleHistory.php:520
|
| 34 |
msgid "Styles example (debug)"
|
| 35 |
msgstr "Stilexempel (debug)"
|
| 36 |
|
| 37 |
#. Plugin Name of the plugin/theme
|
| 38 |
+
#: SimpleHistory.php:780
|
| 39 |
msgid "Simple History"
|
| 40 |
msgstr "Simple History"
|
| 41 |
|
| 42 |
+
#: SimpleHistory.php:856
|
| 43 |
msgid "Remove all log items?"
|
| 44 |
msgstr "Ta bort alla händelser?"
|
| 45 |
|
| 46 |
+
#: SimpleHistory.php:858
|
| 47 |
msgid "Go to the first page"
|
| 48 |
msgstr "Gå till första sidan"
|
| 49 |
|
| 50 |
+
#: SimpleHistory.php:859
|
| 51 |
msgid "Go to the previous page"
|
| 52 |
msgstr "Gå till föregående sida"
|
| 53 |
|
| 54 |
+
#: SimpleHistory.php:860
|
| 55 |
msgid "Go to the next page"
|
| 56 |
msgstr "Gå till nästa sida"
|
| 57 |
|
| 58 |
+
#: SimpleHistory.php:861
|
| 59 |
msgid "Go to the last page"
|
| 60 |
msgstr "Gå till sista sidan"
|
| 61 |
|
| 62 |
+
#: SimpleHistory.php:862
|
| 63 |
msgid "Current page"
|
| 64 |
msgstr "Aktuell sida"
|
| 65 |
|
| 66 |
+
#: SimpleHistory.php:864
|
| 67 |
msgid "Oups, the log could not be loaded right now."
|
| 68 |
msgstr "Hoppsan, historiken kunde inte laddas just nu."
|
| 69 |
|
| 70 |
+
#: SimpleHistory.php:865
|
| 71 |
msgid "Your search did not match any history events."
|
| 72 |
msgstr "Din sökning matchade inte några händelser i historiken."
|
| 73 |
|
| 74 |
+
#: SimpleHistory.php:1149 SimpleHistory.php:1250
|
| 75 |
msgid "Simple History Settings"
|
| 76 |
msgstr "Inställningar för Simple History"
|
| 77 |
|
| 78 |
+
#: SimpleHistory.php:1183
|
| 79 |
msgid "No valid callback found"
|
| 80 |
msgstr "Inget giltigt callback hittades."
|
| 81 |
|
| 82 |
+
#: SimpleHistory.php:1271
|
| 83 |
msgid "Cleared database"
|
| 84 |
msgstr "Databasen rensades"
|
| 85 |
|
| 86 |
+
#: SimpleHistory.php:1298
|
| 87 |
msgid "Show history"
|
| 88 |
msgstr "Visa historik"
|
| 89 |
|
| 90 |
+
#: SimpleHistory.php:1311
|
| 91 |
msgid "Number of items per page"
|
| 92 |
msgstr "Antal händelser per sida"
|
| 93 |
|
| 94 |
+
#: SimpleHistory.php:1323
|
| 95 |
msgid "Clear log"
|
| 96 |
msgstr "Rensa logg"
|
| 97 |
|
| 98 |
+
#: SimpleHistory.php:1462
|
| 99 |
msgid "on the dashboard"
|
| 100 |
msgstr "i panelen"
|
| 101 |
|
| 102 |
+
#: SimpleHistory.php:1467
|
| 103 |
msgid "as a page under the dashboard menu"
|
| 104 |
msgstr "som en sida under panel-menyn"
|
| 105 |
|
| 106 |
+
#: SimpleHistory.php:1483
|
| 107 |
msgid "Items in the database are automatically removed after %1$s days."
|
| 108 |
msgstr "Händelser i databasen tas automatiskt bort efter %1$s dagar."
|
| 109 |
|
| 110 |
+
#: SimpleHistory.php:1485
|
| 111 |
msgid "Items in the database are kept forever."
|
| 112 |
msgstr "Händelser i databasen lagras för evigt."
|
| 113 |
|
| 114 |
+
#: SimpleHistory.php:1489
|
| 115 |
msgid "Clear log now"
|
| 116 |
msgstr "Rensa loggen nu"
|
| 117 |
|
| 118 |
+
#: SimpleHistory.php:1533
|
| 119 |
+
msgid "The log for Simple History was cleared ({num_rows} rows were removed)."
|
| 120 |
+
msgstr "Rensade historiken för Simple History. ({num_rows} rader togs bort)."
|
| 121 |
+
|
| 122 |
+
#: SimpleHistory.php:1793
|
| 123 |
msgid "+%1$s similar event"
|
| 124 |
msgid_plural "+%1$s similar events"
|
| 125 |
msgstr[0] "+%1$s liknande händelse"
|
| 126 |
msgstr[1] "+%1$s liknande händelser"
|
| 127 |
|
| 128 |
+
#: SimpleHistory.php:1800
|
| 129 |
msgid "Loading…"
|
| 130 |
msgstr "Laddar historik..."
|
| 131 |
|
| 132 |
+
#: SimpleHistory.php:1807
|
| 133 |
msgid "Showing %1$s more"
|
| 134 |
msgstr "+%1$s fler"
|
| 135 |
|
| 136 |
+
#: SimpleHistory.php:1826
|
| 137 |
msgid "Context data"
|
| 138 |
msgstr "Kontextuell data"
|
| 139 |
|
| 140 |
+
#: SimpleHistory.php:1827
|
| 141 |
msgid "This is potentially useful meta data that a logger has saved."
|
| 142 |
msgstr "Detta eventuellt användbar metadata som en logger har sparat."
|
| 143 |
|
| 144 |
+
#: SimpleHistory.php:2302
|
| 145 |
msgid "No events today so far."
|
| 146 |
msgstr "Inga händelser idag ännu."
|
| 147 |
|
| 148 |
+
#: SimpleHistory.php:2321
|
| 149 |
msgid "One event today from one user."
|
| 150 |
msgstr "En händelse idag från en användare."
|
| 151 |
|
| 152 |
+
#: SimpleHistory.php:2327
|
| 153 |
msgid "One event today from one source."
|
| 154 |
msgstr "En händelse idag från en källa."
|
| 155 |
|
| 156 |
+
#: SimpleHistory.php:2333
|
| 157 |
msgid "%1$d events today from one user."
|
| 158 |
msgstr "%1$d händelser idag från en användare."
|
| 159 |
|
| 160 |
+
#: SimpleHistory.php:2339
|
| 161 |
msgid "%1$d events today from %2$d users."
|
| 162 |
msgstr "%1$d händelser idag från %2$d användare."
|
| 163 |
|
| 164 |
+
#: SimpleHistory.php:2345 SimpleHistory.php:2351
|
| 165 |
msgid "%1$d events today from one user and one other source."
|
| 166 |
msgstr "%1$d händelser idag från en användare och från en annan källa."
|
| 167 |
|
| 168 |
+
#: SimpleHistory.php:2357
|
| 169 |
msgid "%1$d events today from one user and %3$d other sources."
|
| 170 |
msgstr "%1$d händelser idag från en användare och från %3$d andra källor."
|
| 171 |
|
| 172 |
+
#: SimpleHistory.php:2363
|
| 173 |
msgid "%1$s events today from %2$d users and %3$d other sources."
|
| 174 |
msgstr "%1$s händelser idag från %2$d användare och %3$d andra källor."
|
| 175 |
|
| 290 |
msgid "Stats"
|
| 291 |
msgstr "Statistik"
|
| 292 |
|
| 293 |
+
#: dropins/SimpleHistorySidebarDropin.php:159 loggers/SimpleLogger.php:296
|
| 294 |
msgid "Just now"
|
| 295 |
msgstr "Just nu"
|
| 296 |
|
| 302 |
"Simple History är en rackarns bra plugin, men för att använda den måste din "
|
| 303 |
"server ha minst PHP 5.3 installerat (du har version %s)."
|
| 304 |
|
| 305 |
+
#: loggers/SimpleCommentsLogger.php:685
|
| 306 |
msgid "Spam"
|
| 307 |
msgstr "Skräp"
|
| 308 |
|
| 309 |
+
#: loggers/SimpleCommentsLogger.php:687
|
| 310 |
msgid "Approved"
|
| 311 |
msgstr "Godkänd"
|
| 312 |
|
| 313 |
+
#: loggers/SimpleCommentsLogger.php:689
|
| 314 |
msgid "Pending"
|
| 315 |
msgstr "Väntande"
|
| 316 |
|
| 317 |
+
#: loggers/SimpleCommentsLogger.php:703
|
| 318 |
msgid "Trackback"
|
| 319 |
msgstr "Trackback"
|
| 320 |
|
| 321 |
+
#: loggers/SimpleCommentsLogger.php:705
|
| 322 |
msgid "Pingback"
|
| 323 |
msgstr "Pingback"
|
| 324 |
|
| 325 |
+
#: loggers/SimpleCommentsLogger.php:707
|
| 326 |
msgid "Comment"
|
| 327 |
msgstr "Kommentar"
|
| 328 |
|
| 347 |
msgid "%d occasions"
|
| 348 |
msgstr "%d tillfällen"
|
| 349 |
|
| 350 |
+
#: loggers/SimpleLogger.php:203
|
| 351 |
msgid "Deleted user (had id %1$s, email %2$s, login %3$s)"
|
| 352 |
msgstr "Raderad användare (hade id %1$s, epost %2$s, login %3$s)"
|
| 353 |
|
| 354 |
+
#: loggers/SimpleLogger.php:218
|
| 355 |
msgid "Anonymous web user"
|
| 356 |
msgstr "Anonym webbanvändare"
|
| 357 |
|
| 358 |
+
#: loggers/SimpleLogger.php:226
|
| 359 |
msgid "Anonymous user from %1$s"
|
| 360 |
msgstr "Anonym användare från %1$s"
|
| 361 |
|
| 362 |
#. translators: Date format for log row header, see http:php.net/date
|
| 363 |
+
#: loggers/SimpleLogger.php:301
|
| 364 |
msgid "M j, Y \\a\\t G:i"
|
| 365 |
msgstr "M j, Y \\a\\t G:i"
|
| 366 |
|
| 367 |
#. translators: 1: last modified date and time in human time diff-format
|
| 368 |
+
#: loggers/SimpleLogger.php:309
|
| 369 |
msgid "%1$s ago"
|
| 370 |
msgstr "%1$s sedan"
|
| 371 |
|
| 511 |
msgid "Section"
|
| 512 |
msgstr "Sektion"
|
| 513 |
|
| 514 |
+
#: loggers/SimpleUserLogger.php:22
|
| 515 |
msgid ""
|
| 516 |
"Failed to login to account with username \"{login_user_login}\" because an "
|
| 517 |
"incorrect password was entered"
|
| 519 |
"Misslyckades att logga in på kontot med användarnamnet \"{login_user_login}\" "
|
| 520 |
"eftersom ett felaktigt lösenord angavs"
|
| 521 |
|
| 522 |
+
#: loggers/SimpleUserLogger.php:23
|
| 523 |
msgid ""
|
| 524 |
"Failed to login with username \"{failed_login_username}\" because no user "
|
| 525 |
"with that username exists"
|
| 526 |
msgstr ""
|
| 527 |
+
"Det gick inte att logga in med användarnamn \"{failed_login_username}\" "
|
| 528 |
"eftersom ingen användare med det användarnamnet existerar"
|
| 529 |
|
| 530 |
+
#: loggers/SimpleUserLogger.php:24
|
| 531 |
msgid "Logged in"
|
| 532 |
msgstr "Loggade in"
|
| 533 |
|
| 534 |
+
#: loggers/SimpleUserLogger.php:25
|
| 535 |
msgid "Unknown user logged in"
|
| 536 |
msgstr "Okänd användare loggade in"
|
| 537 |
|
| 538 |
+
#: loggers/SimpleUserLogger.php:26
|
| 539 |
msgid "Logged out"
|
| 540 |
msgstr "Loggade ut"
|
| 541 |
|
| 542 |
+
#: loggers/SimpleUserLogger.php:27
|
| 543 |
msgid "Edited the profile for user {edited_user_login} ({edited_user_email})"
|
| 544 |
msgstr ""
|
| 545 |
"Redigerade profilen för användaren {edited_user_login} ({edited_user_email})"
|
| 546 |
|
| 547 |
+
#: loggers/SimpleUserLogger.php:28
|
| 548 |
msgid ""
|
| 549 |
"Created user {created_user_login} ({created_user_email}) with role "
|
| 550 |
"{created_user_role}"
|
| 552 |
"Skapade användare {created_user_login} ({created_user_email}) med rollen "
|
| 553 |
"{created_user_role}"
|
| 554 |
|
| 555 |
+
#: loggers/SimpleUserLogger.php:29
|
| 556 |
msgid "Deleted user {deleted_user_login} ({deleted_user_email})"
|
| 557 |
msgstr "Raderade användaren {deleted_user_login} ({deleted_user_email})"
|
| 558 |
|
| 559 |
+
#: loggers/SimpleUserLogger.php:227
|
| 560 |
msgid "Edited <a href=\"{edit_profile_link}\">your profile</a>"
|
| 561 |
msgstr "Redigerade <a href=\"{edit_profile_link}\">din profl</a>"
|
| 562 |
|
| 563 |
+
#: loggers/SimpleUserLogger.php:231
|
| 564 |
msgid "Edited <a href=\"{edit_profile_link}\">their profile</a>"
|
| 565 |
msgstr "Redigerade <a href=\"{edit_profile_link}\">sin profil</a>"
|
| 566 |
|
| 567 |
+
#: loggers/SimpleUserLogger.php:240
|
| 568 |
msgid "Edited your profile"
|
| 569 |
msgstr "Redigerade din profil"
|
| 570 |
|
| 571 |
+
#: loggers/SimpleUserLogger.php:251
|
| 572 |
msgid ""
|
| 573 |
"Edited the profile for user <a href="
|
| 574 |
"\"{edit_profile_link}\">{edited_user_login} ({edited_user_email})</a>"
|
| 644 |
msgid "http://simple-history.com/"
|
| 645 |
msgstr "http://simple-history.com"
|
| 646 |
|
| 647 |
+
#: SimpleHistory.php:249
|
| 648 |
msgctxt ""
|
| 649 |
"Message visible while waiting for log to load from server the first time"
|
| 650 |
msgid "Loading history..."
|
| 651 |
msgstr "Laddar historik..."
|
| 652 |
|
| 653 |
+
#: SimpleHistory.php:286
|
| 654 |
msgctxt "page n of n"
|
| 655 |
msgid "of"
|
| 656 |
msgstr "av"
|
| 657 |
|
| 658 |
+
#: SimpleHistory.php:357
|
| 659 |
msgctxt "API: not enought arguments passed"
|
| 660 |
msgid "Not enough args specified"
|
| 661 |
msgstr "Inte tillräckligt med arguments specifierade"
|
| 662 |
|
| 663 |
+
#: SimpleHistory.php:1235
|
| 664 |
msgctxt "dashboard menu name"
|
| 665 |
msgid "Simple History"
|
| 666 |
msgstr "Simple History"
|
| 667 |
|
| 668 |
+
#: SimpleHistory.php:1359
|
| 669 |
msgctxt "history page headline"
|
| 670 |
msgid "Simple History"
|
| 671 |
msgstr "Simple History"
|
| 672 |
|
| 673 |
+
#: SimpleHistory.php:1619
|
| 674 |
msgctxt "simple-history"
|
| 675 |
msgid "Simple History removed one event that were older than {days} days"
|
| 676 |
msgid_plural ""
|
| 679 |
msgstr[1] ""
|
| 680 |
"Simple History radera {num_rows} händelser som var äldre än {days} dagar"
|
| 681 |
|
| 682 |
+
#: SimpleHistory.php:1963
|
| 683 |
msgctxt "Log level in gui"
|
| 684 |
msgid "emergency"
|
| 685 |
msgstr "kritiskt"
|
| 686 |
|
| 687 |
+
#: SimpleHistory.php:1967
|
| 688 |
msgctxt "Log level in gui"
|
| 689 |
msgid "alert"
|
| 690 |
msgstr "alert"
|
| 691 |
|
| 692 |
+
#: SimpleHistory.php:1971
|
| 693 |
msgctxt "Log level in gui"
|
| 694 |
msgid "critical"
|
| 695 |
msgstr "kritiskt"
|
| 696 |
|
| 697 |
+
#: SimpleHistory.php:1975
|
| 698 |
msgctxt "Log level in gui"
|
| 699 |
msgid "error"
|
| 700 |
msgstr "error"
|
| 701 |
|
| 702 |
+
#: SimpleHistory.php:1979
|
| 703 |
msgctxt "Log level in gui"
|
| 704 |
msgid "warning"
|
| 705 |
msgstr "warning"
|
| 706 |
|
| 707 |
+
#: SimpleHistory.php:1983
|
| 708 |
msgctxt "Log level in gui"
|
| 709 |
msgid "notice"
|
| 710 |
msgstr "notice"
|
| 711 |
|
| 712 |
+
#: SimpleHistory.php:1987
|
| 713 |
msgctxt "Log level in gui"
|
| 714 |
msgid "info"
|
| 715 |
msgstr "info"
|
| 716 |
|
| 717 |
+
#: SimpleHistory.php:1991
|
| 718 |
msgctxt "Log level in gui"
|
| 719 |
msgid "debug"
|
| 720 |
msgstr "debug"
|
| 721 |
|
| 722 |
+
#: SimpleHistory.php:1996
|
| 723 |
msgctxt "Log level in gui"
|
| 724 |
msgid "Emergency"
|
| 725 |
msgstr "Emergency"
|
| 726 |
|
| 727 |
+
#: SimpleHistory.php:2000
|
| 728 |
msgctxt "Log level in gui"
|
| 729 |
msgid "Alert"
|
| 730 |
msgstr "Alert"
|
| 731 |
|
| 732 |
+
#: SimpleHistory.php:2004
|
| 733 |
msgctxt "Log level in gui"
|
| 734 |
msgid "Critical"
|
| 735 |
msgstr "Critical"
|
| 736 |
|
| 737 |
+
#: SimpleHistory.php:2008
|
| 738 |
msgctxt "Log level in gui"
|
| 739 |
msgid "Error"
|
| 740 |
msgstr "Error"
|
| 741 |
|
| 742 |
+
#: SimpleHistory.php:2012
|
| 743 |
msgctxt "Log level in gui"
|
| 744 |
msgid "Warning"
|
| 745 |
msgstr "Warning"
|
| 746 |
|
| 747 |
+
#: SimpleHistory.php:2016
|
| 748 |
msgctxt "Log level in gui"
|
| 749 |
msgid "Notice"
|
| 750 |
msgstr "Notice"
|
| 751 |
|
| 752 |
+
#: SimpleHistory.php:2020
|
| 753 |
msgctxt "Log level in gui"
|
| 754 |
msgid "Info"
|
| 755 |
msgstr "Info"
|
| 756 |
|
| 757 |
+
#: SimpleHistory.php:2024
|
| 758 |
msgctxt "Log level in gui"
|
| 759 |
msgid "Debug"
|
| 760 |
msgstr "Debug"
|
| 1137 |
msgid "Deleted comments"
|
| 1138 |
msgstr "Borttagna kommentarer"
|
| 1139 |
|
| 1140 |
+
#: loggers/SimpleCommentsLogger.php:602 loggers/SimpleCommentsLogger.php:615
|
| 1141 |
+
#: loggers/SimpleCommentsLogger.php:629
|
| 1142 |
msgctxt "comments logger - detailed output comment status"
|
| 1143 |
msgid "Status"
|
| 1144 |
msgstr "Status"
|
| 1145 |
|
| 1146 |
+
#: loggers/SimpleCommentsLogger.php:604 loggers/SimpleCommentsLogger.php:617
|
| 1147 |
+
#: loggers/SimpleCommentsLogger.php:631
|
| 1148 |
msgctxt "comments logger - detailed output author"
|
| 1149 |
msgid "Name"
|
| 1150 |
msgstr "Namn"
|
| 1151 |
|
| 1152 |
+
#: loggers/SimpleCommentsLogger.php:605 loggers/SimpleCommentsLogger.php:618
|
| 1153 |
+
#: loggers/SimpleCommentsLogger.php:632
|
| 1154 |
msgctxt "comments logger - detailed output email"
|
| 1155 |
msgid "Email"
|
| 1156 |
msgstr "E-post"
|
| 1157 |
|
| 1158 |
+
#: loggers/SimpleCommentsLogger.php:606 loggers/SimpleCommentsLogger.php:619
|
| 1159 |
msgctxt "comments logger - detailed output content"
|
| 1160 |
msgid "Content"
|
| 1161 |
msgstr "Innehåll"
|
| 1162 |
|
| 1163 |
+
#: loggers/SimpleCommentsLogger.php:633
|
| 1164 |
msgctxt "comments logger - detailed output content"
|
| 1165 |
msgid "Comment"
|
| 1166 |
msgstr "Kommentar"
|
| 1167 |
|
| 1168 |
+
#: loggers/SimpleCommentsLogger.php:759
|
| 1169 |
msgctxt "comments logger - edit comment"
|
| 1170 |
msgid "View/Edit"
|
| 1171 |
msgstr "Visa/Redigera"
|
| 1180 |
msgid "WordPress core updates"
|
| 1181 |
msgstr "WordPress core uppdateringar"
|
| 1182 |
|
| 1183 |
+
#: loggers/SimpleUserLogger.php:54
|
| 1184 |
msgctxt "User logger: search"
|
| 1185 |
msgid "Users"
|
| 1186 |
msgstr "Användare"
|
| 1187 |
|
| 1188 |
+
#: loggers/SimpleUserLogger.php:55
|
| 1189 |
msgctxt "User logger: search"
|
| 1190 |
msgid "All user activity"
|
| 1191 |
msgstr "All användaraktivitet"
|
| 1192 |
|
| 1193 |
+
#: loggers/SimpleUserLogger.php:57
|
| 1194 |
msgctxt "User logger: search"
|
| 1195 |
msgid "Successful user logins"
|
| 1196 |
msgstr "Lyckade inloggningar av användare"
|
| 1197 |
|
| 1198 |
+
#: loggers/SimpleUserLogger.php:61
|
| 1199 |
msgctxt "User logger: search"
|
| 1200 |
msgid "Failed user logins"
|
| 1201 |
msgstr "Misslyckade inloggningar av användare"
|
| 1202 |
|
| 1203 |
+
#: loggers/SimpleUserLogger.php:65
|
| 1204 |
msgctxt "User logger: search"
|
| 1205 |
msgid "User logouts"
|
| 1206 |
msgstr "Utloggning av användare"
|
| 1207 |
|
| 1208 |
+
#: loggers/SimpleUserLogger.php:68
|
| 1209 |
msgctxt "User logger: search"
|
| 1210 |
msgid "Created users"
|
| 1211 |
msgstr "Skapade användare"
|
| 1212 |
|
| 1213 |
+
#: loggers/SimpleUserLogger.php:71
|
| 1214 |
msgctxt "User logger: search"
|
| 1215 |
msgid "User profile updates"
|
| 1216 |
msgstr "Uppdateringar av användarprofiler"
|
| 1217 |
|
| 1218 |
+
#: loggers/SimpleUserLogger.php:74
|
| 1219 |
msgctxt "User logger: search"
|
| 1220 |
msgid "User deletions"
|
| 1221 |
msgstr "Radering av användare"
|
| 1230 |
msgid "Created exports"
|
| 1231 |
msgstr "Skapade exporter"
|
| 1232 |
|
| 1233 |
+
#: loggers/SimpleLogger.php:190
|
| 1234 |
msgctxt "header output when initiator is the currently logged in user"
|
| 1235 |
msgid "You"
|
| 1236 |
msgstr "Du"
|
| 1397 |
msgid "Deleted plugins"
|
| 1398 |
msgstr "Raderade plugins"
|
| 1399 |
|
| 1400 |
+
#: loggers/SimplePluginLogger.php:887
|
| 1401 |
msgctxt "plugin logger - detailed output version"
|
| 1402 |
msgid "Version"
|
| 1403 |
msgstr "Version"
|
| 1404 |
|
| 1405 |
+
#: loggers/SimplePluginLogger.php:889
|
| 1406 |
msgctxt "plugin logger - detailed output author"
|
| 1407 |
msgid "Author"
|
| 1408 |
msgstr "Författare"
|
| 1409 |
|
| 1410 |
+
#: loggers/SimplePluginLogger.php:891
|
| 1411 |
msgctxt "plugin logger - detailed output author"
|
| 1412 |
msgid "Requires"
|
| 1413 |
msgstr "Kräver"
|
| 1414 |
|
| 1415 |
+
#: loggers/SimplePluginLogger.php:890
|
| 1416 |
msgctxt "plugin logger - detailed output url"
|
| 1417 |
msgid "URL"
|
| 1418 |
msgstr "URL"
|
| 1419 |
|
| 1420 |
+
#: loggers/SimplePluginLogger.php:892
|
| 1421 |
msgctxt "plugin logger - detailed output compatible"
|
| 1422 |
msgid "Compatible up to"
|
| 1423 |
msgstr "Kompatibel upp till"
|
| 1424 |
|
| 1425 |
+
#: loggers/SimplePluginLogger.php:893
|
| 1426 |
msgctxt "plugin logger - detailed output downloaded"
|
| 1427 |
msgid "Downloads"
|
| 1428 |
msgstr "Nedladdningar"
|
| 1429 |
|
| 1430 |
+
#: loggers/SimplePluginLogger.php:953
|
| 1431 |
msgctxt "plugin logger: plugin info thickbox title view all info"
|
| 1432 |
msgid "View plugin info"
|
| 1433 |
msgstr "Visa information om plugin"
|
| 1434 |
|
| 1435 |
+
#: loggers/SimplePluginLogger.php:968
|
| 1436 |
msgctxt "plugin logger: plugin info thickbox title"
|
| 1437 |
msgid "View plugin info"
|
| 1438 |
msgstr "Visa information om plugin"
|
| 1439 |
|
| 1440 |
+
#: loggers/SimplePluginLogger.php:972
|
| 1441 |
msgctxt "plugin logger: plugin info thickbox title"
|
| 1442 |
msgid "View changelog"
|
| 1443 |
msgstr "Visa ändringslogg"
|
| 1512 |
msgid "Background of themes changed"
|
| 1513 |
msgstr "Ändrade bakgrunder för teman"
|
| 1514 |
|
| 1515 |
+
#: loggers/SimpleUserLogger.php:36
|
| 1516 |
msgctxt "User destroys other login sessions for themself"
|
| 1517 |
msgid "Logged out from all other sessions"
|
| 1518 |
msgstr "Loggade ut från alla andra sessioner"
|
| 1519 |
|
| 1520 |
+
#: loggers/SimpleUserLogger.php:45
|
| 1521 |
msgctxt "User destroys all login sessions for a user"
|
| 1522 |
msgid "Logged out \"{user_display_name}\" from all sessions"
|
| 1523 |
msgstr "Loggade ut \"{user_display_name}\" från alla sessioner"
|
loggers/SimpleCoreUpdatesLogger.php
CHANGED
|
@@ -27,7 +27,7 @@ class SimpleCoreUpdatesLogger extends SimpleLogger
|
|
| 27 |
"capability" => "update_core",
|
| 28 |
"messages" => array(
|
| 29 |
'core_updated' => __('Updated WordPress from {prev_version} to {new_version}', 'simple-history'),
|
| 30 |
-
'core_auto_updated' => __('WordPress auto-updated
|
| 31 |
),
|
| 32 |
"labels" => array(
|
| 33 |
"search" => array(
|
| 27 |
"capability" => "update_core",
|
| 28 |
"messages" => array(
|
| 29 |
'core_updated' => __('Updated WordPress from {prev_version} to {new_version}', 'simple-history'),
|
| 30 |
+
'core_auto_updated' => __('WordPress auto-updated to {new_version} from {prev_version}', 'simple-history')
|
| 31 |
),
|
| 32 |
"labels" => array(
|
| 33 |
"search" => array(
|
loggers/SimpleLogger.php
CHANGED
|
@@ -144,6 +144,10 @@ class SimpleLogger {
|
|
| 144 |
$initiator_html .= '<strong class="SimpleHistoryLogitem__inlineDivided">WordPress</strong> ';
|
| 145 |
break;
|
| 146 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 147 |
// wp_user = wordpress uses, but user may have been deleted since log entry was added
|
| 148 |
case "wp_user":
|
| 149 |
|
|
@@ -172,14 +176,14 @@ class SimpleLogger {
|
|
| 172 |
' ;
|
| 173 |
}
|
| 174 |
|
| 175 |
-
|
| 176 |
-
|
| 177 |
-
|
| 178 |
-
|
| 179 |
-
|
| 180 |
-
|
| 181 |
-
|
| 182 |
-
|
| 183 |
|
| 184 |
$initiator_html .= sprintf(
|
| 185 |
$tmpl_initiator_html,
|
|
@@ -517,17 +521,51 @@ class SimpleLogger {
|
|
| 517 |
*/
|
| 518 |
public function emergencyMessage($message, array $context = array()) {
|
| 519 |
|
| 520 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 521 |
return;
|
| 522 |
}
|
| 523 |
|
| 524 |
-
|
| 525 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 526 |
|
| 527 |
-
$this->log(
|
| 528 |
|
| 529 |
}
|
| 530 |
|
|
|
|
| 531 |
/**
|
| 532 |
* Action must be taken immediately.
|
| 533 |
*
|
|
@@ -549,14 +587,7 @@ class SimpleLogger {
|
|
| 549 |
*/
|
| 550 |
public function alertMessage($message, array $context = array()) {
|
| 551 |
|
| 552 |
-
|
| 553 |
-
return;
|
| 554 |
-
}
|
| 555 |
-
|
| 556 |
-
$context["_message_key"] = $message;
|
| 557 |
-
$message = $this->messages[$message]["untranslated_text"];
|
| 558 |
-
|
| 559 |
-
$this->log(SimpleLoggerLogLevels::ALERT, $message, $context);
|
| 560 |
|
| 561 |
}
|
| 562 |
|
|
@@ -619,14 +650,7 @@ class SimpleLogger {
|
|
| 619 |
*/
|
| 620 |
public function errorMessage($message, array $context = array()) {
|
| 621 |
|
| 622 |
-
|
| 623 |
-
return;
|
| 624 |
-
}
|
| 625 |
-
|
| 626 |
-
$context["_message_key"] = $message;
|
| 627 |
-
$message = $this->messages[$message]["untranslated_text"];
|
| 628 |
-
|
| 629 |
-
$this->log(SimpleLoggerLogLevels::ERROR, $message, $context);
|
| 630 |
|
| 631 |
}
|
| 632 |
|
|
@@ -655,14 +679,7 @@ class SimpleLogger {
|
|
| 655 |
*/
|
| 656 |
public function warningMessage($message, array $context = array()) {
|
| 657 |
|
| 658 |
-
|
| 659 |
-
return;
|
| 660 |
-
}
|
| 661 |
-
|
| 662 |
-
$context["_message_key"] = $message;
|
| 663 |
-
$message = $this->messages[$message]["untranslated_text"];
|
| 664 |
-
|
| 665 |
-
$this->log(SimpleLoggerLogLevels::WARNING, $message, $context);
|
| 666 |
|
| 667 |
}
|
| 668 |
|
|
@@ -688,14 +705,7 @@ class SimpleLogger {
|
|
| 688 |
*/
|
| 689 |
public function noticeMessage($message, array $context = array()) {
|
| 690 |
|
| 691 |
-
|
| 692 |
-
return;
|
| 693 |
-
}
|
| 694 |
-
|
| 695 |
-
$context["_message_key"] = $message;
|
| 696 |
-
$message = $this->messages[$message]["untranslated_text"];
|
| 697 |
-
|
| 698 |
-
$this->log(SimpleLoggerLogLevels::NOTICE, $message, $context);
|
| 699 |
|
| 700 |
}
|
| 701 |
|
|
@@ -725,14 +735,7 @@ class SimpleLogger {
|
|
| 725 |
*/
|
| 726 |
public function infoMessage($message, array $context = array()) {
|
| 727 |
|
| 728 |
-
|
| 729 |
-
return;
|
| 730 |
-
}
|
| 731 |
-
|
| 732 |
-
$context["_message_key"] = $message;
|
| 733 |
-
$message = $this->messages[$message]["untranslated_text"];
|
| 734 |
-
|
| 735 |
-
$this->log(SimpleLoggerLogLevels::INFO, $message, $context);
|
| 736 |
|
| 737 |
}
|
| 738 |
|
|
@@ -758,14 +761,7 @@ class SimpleLogger {
|
|
| 758 |
*/
|
| 759 |
public function debugMessage($message, array $context = array()) {
|
| 760 |
|
| 761 |
-
|
| 762 |
-
return;
|
| 763 |
-
}
|
| 764 |
-
|
| 765 |
-
$context["_message_key"] = $message;
|
| 766 |
-
$message = $this->messages[$message]["untranslated_text"];
|
| 767 |
-
|
| 768 |
-
$this->log(SimpleLoggerLogLevels::DEBUG, $message, $context);
|
| 769 |
|
| 770 |
}
|
| 771 |
|
|
@@ -810,8 +806,12 @@ class SimpleLogger {
|
|
| 810 |
* @param string $level
|
| 811 |
* @param string $message
|
| 812 |
* @param array $context
|
|
|
|
| 813 |
*/
|
| 814 |
-
apply_filters("simple_history/log_arguments", $level, $message, $context);
|
|
|
|
|
|
|
|
|
|
| 815 |
|
| 816 |
/* Store date at utc or local time?
|
| 817 |
* Some info here:
|
|
@@ -888,24 +888,25 @@ class SimpleLogger {
|
|
| 888 |
*/
|
| 889 |
|
| 890 |
// Log initiator, defaults to current user if exists, or other if not user exist
|
| 891 |
-
if (isset($context["_initiator"])) {
|
| 892 |
|
| 893 |
// Manually set in context
|
| 894 |
$data["initiator"] = $context["_initiator"];
|
| 895 |
-
unset($context["_initiator"]);
|
| 896 |
|
| 897 |
} else {
|
| 898 |
|
| 899 |
-
// No initiator set
|
| 900 |
|
|
|
|
| 901 |
$data["initiator"] = SimpleLoggerLogInitiators::OTHER;
|
| 902 |
|
| 903 |
// Check if user is responsible.
|
| 904 |
-
if (function_exists("wp_get_current_user")) {
|
| 905 |
|
| 906 |
$current_user = wp_get_current_user();
|
| 907 |
|
| 908 |
-
if (isset($current_user->ID) && $current_user->ID) {
|
| 909 |
|
| 910 |
$data["initiator"] = SimpleLoggerLogInitiators::WP_USER;
|
| 911 |
$context["_user_id"] = $current_user->ID;
|
|
@@ -917,7 +918,7 @@ class SimpleLogger {
|
|
| 917 |
}
|
| 918 |
|
| 919 |
// If cron then set WordPress as responsible
|
| 920 |
-
if (defined('DOING_CRON') && DOING_CRON) {
|
| 921 |
|
| 922 |
// Seems to be wp cron running and doing this
|
| 923 |
$data["initiator"] = SimpleLoggerLogInitiators::WORDPRESS;
|
|
@@ -925,6 +926,18 @@ class SimpleLogger {
|
|
| 925 |
|
| 926 |
}
|
| 927 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 928 |
}
|
| 929 |
|
| 930 |
/**
|
|
@@ -1055,10 +1068,12 @@ class SimpleLogger {
|
|
| 1055 |
|
| 1056 |
$this->lastInsertID = $history_inserted_id;
|
| 1057 |
|
|
|
|
|
|
|
| 1058 |
// Return $this so we can chain methods
|
| 1059 |
return $this;
|
| 1060 |
|
| 1061 |
-
}// log
|
| 1062 |
|
| 1063 |
/**
|
| 1064 |
* Ensures an ip address is both a valid IP and does not fall within
|
|
@@ -1125,6 +1140,9 @@ class SimpleLoggerLogInitiators {
|
|
| 1125 |
// WordPress core or plugins updated automatically via wp-cron
|
| 1126 |
const WORDPRESS = "wp";
|
| 1127 |
|
|
|
|
|
|
|
|
|
|
| 1128 |
// I dunno
|
| 1129 |
const OTHER = 'other';
|
| 1130 |
}
|
| 144 |
$initiator_html .= '<strong class="SimpleHistoryLogitem__inlineDivided">WordPress</strong> ';
|
| 145 |
break;
|
| 146 |
|
| 147 |
+
case "wp_cli":
|
| 148 |
+
$initiator_html .= '<strong class="SimpleHistoryLogitem__inlineDivided">WP-CLI</strong> ';
|
| 149 |
+
break;
|
| 150 |
+
|
| 151 |
// wp_user = wordpress uses, but user may have been deleted since log entry was added
|
| 152 |
case "wp_user":
|
| 153 |
|
| 176 |
' ;
|
| 177 |
}
|
| 178 |
|
| 179 |
+
/**
|
| 180 |
+
* Filter the format for the user output
|
| 181 |
+
*
|
| 182 |
+
* @since 2.0
|
| 183 |
+
*
|
| 184 |
+
* @param string $format.
|
| 185 |
+
*/
|
| 186 |
+
$tmpl_initiator_html = apply_filters("simple_history/header_initiator_html_existing_user", $tmpl_initiator_html);
|
| 187 |
|
| 188 |
$initiator_html .= sprintf(
|
| 189 |
$tmpl_initiator_html,
|
| 521 |
*/
|
| 522 |
public function emergencyMessage($message, array $context = array()) {
|
| 523 |
|
| 524 |
+
return $this->logByMessageKey(SimpleLoggerLogLevels::EMERGENCY, $message, $context);
|
| 525 |
+
|
| 526 |
+
}
|
| 527 |
+
|
| 528 |
+
/**
|
| 529 |
+
* Log with message
|
| 530 |
+
* Called from infoMessage(), errorMessage(), and so on
|
| 531 |
+
*
|
| 532 |
+
* Call like this:
|
| 533 |
+
*
|
| 534 |
+
* return $this->logByMessageKey(SimpleLoggerLogLevels::EMERGENCY, $message, $context);
|
| 535 |
+
*/
|
| 536 |
+
private function logByMessageKey($SimpleLoggerLogLevelsLevel, $messageKey, $context) {
|
| 537 |
+
|
| 538 |
+
// When logging by message then the key must exist
|
| 539 |
+
if ( ! isset( $this->messages[ $messageKey ]["untranslated_text"] ) ) {
|
| 540 |
return;
|
| 541 |
}
|
| 542 |
|
| 543 |
+
/**
|
| 544 |
+
* Filter so plugins etc. can shortut logging
|
| 545 |
+
*
|
| 546 |
+
* @since 2.0.20
|
| 547 |
+
*
|
| 548 |
+
* @param true yes, we default to do the logging
|
| 549 |
+
* @param string logger slug
|
| 550 |
+
* @param string messageKey
|
| 551 |
+
* @param string log level
|
| 552 |
+
* @param array context
|
| 553 |
+
* @return bool false to abort logging
|
| 554 |
+
*/
|
| 555 |
+
$doLog = apply_filters("simple_history/simple_logger/log_message_key", true, $this->slug, $messageKey, $SimpleLoggerLogLevelsLevel, $context);
|
| 556 |
+
|
| 557 |
+
if ( ! $doLog ) {
|
| 558 |
+
return;
|
| 559 |
+
}
|
| 560 |
+
|
| 561 |
+
$context["_message_key"] = $messageKey;
|
| 562 |
+
$message = $this->messages[ $messageKey ]["untranslated_text"];
|
| 563 |
|
| 564 |
+
$this->log( $SimpleLoggerLogLevelsLevel, $message, $context );
|
| 565 |
|
| 566 |
}
|
| 567 |
|
| 568 |
+
|
| 569 |
/**
|
| 570 |
* Action must be taken immediately.
|
| 571 |
*
|
| 587 |
*/
|
| 588 |
public function alertMessage($message, array $context = array()) {
|
| 589 |
|
| 590 |
+
return $this->logByMessageKey(SimpleLoggerLogLevels::ALERT, $message, $context);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 591 |
|
| 592 |
}
|
| 593 |
|
| 650 |
*/
|
| 651 |
public function errorMessage($message, array $context = array()) {
|
| 652 |
|
| 653 |
+
return $this->logByMessageKey(SimpleLoggerLogLevels::ERROR, $message, $context);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 654 |
|
| 655 |
}
|
| 656 |
|
| 679 |
*/
|
| 680 |
public function warningMessage($message, array $context = array()) {
|
| 681 |
|
| 682 |
+
return $this->logByMessageKey(SimpleLoggerLogLevels::WARNING, $message, $context);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 683 |
|
| 684 |
}
|
| 685 |
|
| 705 |
*/
|
| 706 |
public function noticeMessage($message, array $context = array()) {
|
| 707 |
|
| 708 |
+
return $this->logByMessageKey(SimpleLoggerLogLevels::NOTICE, $message, $context);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 709 |
|
| 710 |
}
|
| 711 |
|
| 735 |
*/
|
| 736 |
public function infoMessage($message, array $context = array()) {
|
| 737 |
|
| 738 |
+
return $this->logByMessageKey(SimpleLoggerLogLevels::INFO, $message, $context);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 739 |
|
| 740 |
}
|
| 741 |
|
| 761 |
*/
|
| 762 |
public function debugMessage($message, array $context = array()) {
|
| 763 |
|
| 764 |
+
return $this->logByMessageKey(SimpleLoggerLogLevels::DEBUG, $message, $context);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 765 |
|
| 766 |
}
|
| 767 |
|
| 806 |
* @param string $level
|
| 807 |
* @param string $message
|
| 808 |
* @param array $context
|
| 809 |
+
* @param object SimpleLogger object
|
| 810 |
*/
|
| 811 |
+
apply_filters("simple_history/log_arguments", $level, $message, $context, $this);
|
| 812 |
+
$context = apply_filters("simple_history/log_argument/context", $context, $level, $message, $this);
|
| 813 |
+
$level = apply_filters("simple_history/log_argument/level", $level, $context, $message, $this);
|
| 814 |
+
$message = apply_filters("simple_history/log_argument/message", $message, $level, $context, $this);
|
| 815 |
|
| 816 |
/* Store date at utc or local time?
|
| 817 |
* Some info here:
|
| 888 |
*/
|
| 889 |
|
| 890 |
// Log initiator, defaults to current user if exists, or other if not user exist
|
| 891 |
+
if ( isset( $context["_initiator"] ) ) {
|
| 892 |
|
| 893 |
// Manually set in context
|
| 894 |
$data["initiator"] = $context["_initiator"];
|
| 895 |
+
unset( $context["_initiator"] );
|
| 896 |
|
| 897 |
} else {
|
| 898 |
|
| 899 |
+
// No initiator set, try to determine
|
| 900 |
|
| 901 |
+
// Default to other
|
| 902 |
$data["initiator"] = SimpleLoggerLogInitiators::OTHER;
|
| 903 |
|
| 904 |
// Check if user is responsible.
|
| 905 |
+
if ( function_exists("wp_get_current_user") ) {
|
| 906 |
|
| 907 |
$current_user = wp_get_current_user();
|
| 908 |
|
| 909 |
+
if ( isset( $current_user->ID ) && $current_user->ID ) {
|
| 910 |
|
| 911 |
$data["initiator"] = SimpleLoggerLogInitiators::WP_USER;
|
| 912 |
$context["_user_id"] = $current_user->ID;
|
| 918 |
}
|
| 919 |
|
| 920 |
// If cron then set WordPress as responsible
|
| 921 |
+
if ( defined('DOING_CRON') && DOING_CRON ) {
|
| 922 |
|
| 923 |
// Seems to be wp cron running and doing this
|
| 924 |
$data["initiator"] = SimpleLoggerLogInitiators::WORDPRESS;
|
| 926 |
|
| 927 |
}
|
| 928 |
|
| 929 |
+
// If running as CLI and WP_CLI_PHP_USED is set then it is WP CLI that is doing it
|
| 930 |
+
// How to log this? Is this a user, is it WordPress, or what?
|
| 931 |
+
// I'm thinking:
|
| 932 |
+
// - it is a user that is manually doing this, on purpose, with intent, so not auto wordpress
|
| 933 |
+
// - it is a specific user, but we don't know who
|
| 934 |
+
// - sounds like a special case, set initiator to wp_cli
|
| 935 |
+
if ( isset( $_SERVER["WP_CLI_PHP_USED"] ) && "cli" == php_sapi_name() ) {
|
| 936 |
+
|
| 937 |
+
$data["initiator"] = SimpleLoggerLogInitiators::WP_CLI;
|
| 938 |
+
|
| 939 |
+
}
|
| 940 |
+
|
| 941 |
}
|
| 942 |
|
| 943 |
/**
|
| 1068 |
|
| 1069 |
$this->lastInsertID = $history_inserted_id;
|
| 1070 |
|
| 1071 |
+
$this->simpleHistory->get_cache_incrementor(true);
|
| 1072 |
+
|
| 1073 |
// Return $this so we can chain methods
|
| 1074 |
return $this;
|
| 1075 |
|
| 1076 |
+
} // log
|
| 1077 |
|
| 1078 |
/**
|
| 1079 |
* Ensures an ip address is both a valid IP and does not fall within
|
| 1140 |
// WordPress core or plugins updated automatically via wp-cron
|
| 1141 |
const WORDPRESS = "wp";
|
| 1142 |
|
| 1143 |
+
// WP CLI / terminal
|
| 1144 |
+
const WP_CLI = "wp_cli";
|
| 1145 |
+
|
| 1146 |
// I dunno
|
| 1147 |
const OTHER = 'other';
|
| 1148 |
}
|
loggers/SimpleMediaLogger.php
CHANGED
|
@@ -191,7 +191,7 @@ class SimpleMediaLogger extends SimpleLogger
|
|
| 191 |
if ( ! empty( $context["attachment_thumb"] ) ) {
|
| 192 |
|
| 193 |
if ( $is_image ) {
|
| 194 |
-
$message .= "<a href='".$edit_link."'>";
|
| 195 |
}
|
| 196 |
|
| 197 |
$message .= __('{attachment_thumb}', 'simple-history');
|
| 191 |
if ( ! empty( $context["attachment_thumb"] ) ) {
|
| 192 |
|
| 193 |
if ( $is_image ) {
|
| 194 |
+
$message .= "<a class='SimpleHistoryLogitemThumbnailLink' href='".$edit_link."'>";
|
| 195 |
}
|
| 196 |
|
| 197 |
$message .= __('{attachment_thumb}', 'simple-history');
|
loggers/SimpleUserLogger.php
CHANGED
|
@@ -272,49 +272,44 @@ class SimpleUserLogger extends SimpleLogger {
|
|
| 272 |
*/
|
| 273 |
function on_wp_login($user_login, $user) {
|
| 274 |
|
| 275 |
-
$context = array(
|
|
|
|
|
|
|
| 276 |
|
| 277 |
-
if ($
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 278 |
|
| 279 |
$context = array(
|
| 280 |
-
"user_id" => $
|
| 281 |
-
"user_email" => $
|
| 282 |
-
"user_login" => $
|
| 283 |
);
|
| 284 |
|
| 285 |
// Override some data that is usually set automagically by Simple History
|
| 286 |
// Because wp_get_current_user() does not return any data yet at this point
|
| 287 |
$context["_initiator"] = SimpleLoggerLogInitiators::WP_USER;
|
| 288 |
-
$context["_user_id"] = $
|
| 289 |
-
$context["_user_login"] = $
|
| 290 |
-
$context["_user_email"] = $
|
| 291 |
$context["server_http_user_agent"] = $_SERVER["HTTP_USER_AGENT"];
|
| 292 |
|
| 293 |
$this->infoMessage("user_logged_in", $context);
|
| 294 |
|
| 295 |
} else {
|
| 296 |
|
| 297 |
-
//
|
| 298 |
-
// Aha! I can happen when a plugin is logging in the user, for example the "WP-OAuth"-plugin:
|
| 299 |
-
// https://github.com/bonny/WordPress-Simple-History/issues/40
|
| 300 |
-
|
| 301 |
-
// @TODO: does this still count as a valid login?
|
| 302 |
-
// It should be valid right, because this action should not be called otherwise
|
| 303 |
-
|
| 304 |
-
// Some temp debug things
|
| 305 |
-
/*
|
| 306 |
-
$context["_debug_user_login"] = $user_login;
|
| 307 |
-
$context["_debug_user"] = simpleHistory::json_encode($user);
|
| 308 |
-
$context["_debug_server"] = simpleHistory::json_encode($_SERVER);
|
| 309 |
-
$context["_debug_get"] = simpleHistory::json_encode($_GET);
|
| 310 |
-
$context["_debug_get"] = simpleHistory::json_encode($_POST);
|
| 311 |
-
$context["_debug_cookies"] = simpleHistory::json_encode($_COOKIES);
|
| 312 |
-
*/
|
| 313 |
-
|
| 314 |
$this->warningMessage("user_unknown_logged_in", $context);
|
| 315 |
-
|
| 316 |
}
|
| 317 |
-
|
| 318 |
}
|
| 319 |
|
| 320 |
/**
|
| 272 |
*/
|
| 273 |
function on_wp_login($user_login, $user) {
|
| 274 |
|
| 275 |
+
$context = array(
|
| 276 |
+
"user_login" => $user_login
|
| 277 |
+
);
|
| 278 |
|
| 279 |
+
if ( isset( $user_login ) ) {
|
| 280 |
+
|
| 281 |
+
$user_obj = get_user_by( "login", $user_login );
|
| 282 |
+
|
| 283 |
+
} else if ( isset( $user ) && isset( $user->ID ) ) {
|
| 284 |
+
|
| 285 |
+
$user_obj = get_user_by( "id", $user->ID );
|
| 286 |
+
|
| 287 |
+
}
|
| 288 |
+
|
| 289 |
+
if ( is_a( $user_obj, "WP_User" ) ) {
|
| 290 |
|
| 291 |
$context = array(
|
| 292 |
+
"user_id" => $user_obj->ID,
|
| 293 |
+
"user_email" => $user_obj->user_email,
|
| 294 |
+
"user_login" => $user_obj->user_login,
|
| 295 |
);
|
| 296 |
|
| 297 |
// Override some data that is usually set automagically by Simple History
|
| 298 |
// Because wp_get_current_user() does not return any data yet at this point
|
| 299 |
$context["_initiator"] = SimpleLoggerLogInitiators::WP_USER;
|
| 300 |
+
$context["_user_id"] = $user_obj->ID;
|
| 301 |
+
$context["_user_login"] = $user_obj->user_login;
|
| 302 |
+
$context["_user_email"] = $user_obj->user_email;
|
| 303 |
$context["server_http_user_agent"] = $_SERVER["HTTP_USER_AGENT"];
|
| 304 |
|
| 305 |
$this->infoMessage("user_logged_in", $context);
|
| 306 |
|
| 307 |
} else {
|
| 308 |
|
| 309 |
+
// Could not get any info about the user logging in
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 310 |
$this->warningMessage("user_unknown_logged_in", $context);
|
|
|
|
| 311 |
}
|
| 312 |
+
|
| 313 |
}
|
| 314 |
|
| 315 |
/**
|
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.1
|
| 7 |
-
Stable tag: 2.0.
|
| 8 |
|
| 9 |
View changes made by users within WordPress. See who created a page, uploaded an attachment or approved an comment, and more.
|
| 10 |
|
|
@@ -111,9 +111,19 @@ initiated by a specific user.
|
|
| 111 |
|
| 112 |
== Changelog ==
|
| 113 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 114 |
= 2.0.19 (February 2015) =
|
| 115 |
|
| 116 |
-
- Added: Dutch translation by
|
| 117 |
- Changed: better compatibilty with plugins like [WP User Avatar](https://wordpress.org/plugins/wp-user-avatar/).
|
| 118 |
- Updated: German translation update.
|
| 119 |
|
| 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.1
|
| 7 |
+
Stable tag: 2.0.20
|
| 8 |
|
| 9 |
View changes made by users within WordPress. See who created a page, uploaded an attachment or approved an comment, and more.
|
| 10 |
|
| 111 |
|
| 112 |
== Changelog ==
|
| 113 |
|
| 114 |
+
= 2.0.20 (February 2015) =
|
| 115 |
+
|
| 116 |
+
- Added: changes via [WP-CLI](http://wp-cli.org) is now detected (was previously shown as "other").
|
| 117 |
+
- Added: severity level (info, warning, debug, etc.) of event is includes in the RSS output.
|
| 118 |
+
- Changed the way user login is logged. Should fix https://github.com/bonny/WordPress-Simple-History/issues/40 + possible more related issues.
|
| 119 |
+
- Added: filter `simple_history/simple_logger/log_message_key` added, that can be used to shortcut log messages. See [example file](https://github.com/bonny/WordPress-Simple-History/blob/master/examples.php) for usage. Fixes https://wordpress.org/support/topic/stop-logging-certain-types-of-activity.
|
| 120 |
+
- Added: now uses object caching at some places. Should speed up some parts of the plugin for users with caching enabled.
|
| 121 |
+
- Fixed: IP info popup can now be closed with `esc`.
|
| 122 |
+
- Fixed: works better on small screens (like mobile phones) + misc other style related fixes.
|
| 123 |
+
|
| 124 |
= 2.0.19 (February 2015) =
|
| 125 |
|
| 126 |
+
- Added: Dutch translation by [https://github.com/niknetniko](https://github.com/niknetniko). Thanks!
|
| 127 |
- Changed: better compatibilty with plugins like [WP User Avatar](https://wordpress.org/plugins/wp-user-avatar/).
|
| 128 |
- Updated: German translation update.
|
| 129 |
|
