diff --git a/phpBB/docs/CHANGELOG.html b/phpBB/docs/CHANGELOG.html
index a1b649f2be..8334214de2 100644
--- a/phpBB/docs/CHANGELOG.html
+++ b/phpBB/docs/CHANGELOG.html
@@ -152,6 +152,7 @@
[Fix] Correctly detect GZIP status in debug mode. (Bug #24075 - Patch by rxu)
[Fix] Posting smilies in view more smilies now work again in IE (Bug #46025 - Patch by leviatan21)
[Fix] Properly convert and show filesize information (Bug #47775 - Patch by bantu)
+ [Fix] Add ability to prune users who never logged in. (Bug #44295 - Patch by rxu)
[Fix] Smilies and images not viewed in topic-print view (Bug #47265 - Patch by nickvergessen)
[Fix] Force full date for PMs print-view (Patch by nickvergessen)
[Change] Change the data format of the default file ACM to be more secure from tampering and have better performance.
diff --git a/phpBB/includes/acp/acp_prune.php b/phpBB/includes/acp/acp_prune.php
index a82a438db7..7eeb37133f 100644
--- a/phpBB/includes/acp/acp_prune.php
+++ b/phpBB/includes/acp/acp_prune.php
@@ -406,7 +406,12 @@ class acp_prune
$where_sql .= (sizeof($joined)) ? " AND user_regdate " . $key_match[$joined_select] . ' ' . gmmktime(0, 0, 0, (int) $joined[1], (int) $joined[2], (int) $joined[0]) : '';
$where_sql .= ($count !== '') ? " AND user_posts " . $key_match[$count_select] . ' ' . (int) $count . ' ' : '';
- if (sizeof($active) && $active_select != 'lt')
+ // First handle pruning of users who never logged in, last active date is 0000-00-00
+ if (sizeof($active) && (int) $active[0] == 0 && (int) $active[1] == 0 && (int) $active[2] == 0)
+ {
+ $where_sql .= ' AND user_lastvisit = 0';
+ }
+ else if (sizeof($active) && $active_select != 'lt')
{
$where_sql .= ' AND user_lastvisit ' . $key_match[$active_select] . ' ' . gmmktime(0, 0, 0, (int) $active[1], (int) $active[2], (int) $active[0]);
}
diff --git a/phpBB/language/en/acp/prune.php b/phpBB/language/en/acp/prune.php
index 2f4a9b4984..5e313d20e2 100644
--- a/phpBB/language/en/acp/prune.php
+++ b/phpBB/language/en/acp/prune.php
@@ -47,7 +47,7 @@ $lang = array_merge($lang, array(
'JOINED_EXPLAIN' => 'Enter a date in YYYY-MM-DD format.',
- 'LAST_ACTIVE_EXPLAIN' => 'Enter a date in YYYY-MM-DD format.',
+ 'LAST_ACTIVE_EXPLAIN' => 'Enter a date in YYYY-MM-DD format. Enter 0000-00-00 to prune users who never logged in, Before and After conditions will be ignored.',
'PRUNE_USERS_LIST' => 'Users to be pruned',
'PRUNE_USERS_LIST_DELETE' => 'With the selected critera for pruning users the following accounts will be removed.',