aboutsummaryrefslogtreecommitdiffstats
path: root/admin/batch_manager.php
diff options
context:
space:
mode:
authorplegall <plg@piwigo.org>2015-10-09 19:13:30 +0200
committerplegall <plg@piwigo.org>2015-10-09 20:17:27 +0200
commit92224bcbf49d58829988eb0485afc17695f6de0c (patch)
tree1009cfcdb5f1f52f36e56e52a20d970f1ea318f1 /admin/batch_manager.php
parent47ebd6c91f630c7b970d5abb9f1451a637afb517 (diff)
fix #357 make orphans photos more obvious
... and easy to delete them all in one click. The orpans, if any, is shown as an entry in the "Photos" menu (link on Batch Manager). In the Batch Manager, new action "delete_orphans" next to prefilter.
Diffstat (limited to 'admin/batch_manager.php')
-rw-r--r--admin/batch_manager.php25
1 files changed, 16 insertions, 9 deletions
diff --git a/admin/batch_manager.php b/admin/batch_manager.php
index 257b11bb9..9393b5b40 100644
--- a/admin/batch_manager.php
+++ b/admin/batch_manager.php
@@ -63,6 +63,21 @@ DELETE FROM '.CADDIE_TABLE.'
redirect(get_root_url().'admin.php?page='.$_GET['page']);
}
+
+ if ('delete_orphans' == $_GET['action'])
+ {
+ $deleted_count = delete_elements(get_orphans(), true);
+
+ if ($deleted_count > 0)
+ {
+ $_SESSION['page_infos'][] = l10n_dec(
+ '%d photo was deleted', '%d photos were deleted',
+ $deleted_count
+ );
+
+ redirect(get_root_url().'admin.php?page='.$_GET['page']);
+ }
+ }
}
// +-----------------------------------------------------------------------+
@@ -323,15 +338,7 @@ SELECT id
break;
case 'no_album':
- $query = '
-SELECT
- id
- FROM '.IMAGES_TABLE.'
- LEFT JOIN '.IMAGE_CATEGORY_TABLE.' ON id = image_id
- WHERE category_id is null
-;';
- $filter_sets[] = query2array($query, null, 'id');
-
+ $filter_sets[] = get_orphans();
break;
case 'no_tag':