aboutsummaryrefslogtreecommitdiffstats
path: root/admin/batch_manager.php
diff options
context:
space:
mode:
authorplegall <plg@piwigo.org>2011-11-15 11:48:37 +0000
committerplegall <plg@piwigo.org>2011-11-15 11:48:37 +0000
commitbc1650816156f7d778d03c81923474fd66f445b3 (patch)
tree7765ab72fb17da9e9cffacfbdfb96d8d6f2dbc99 /admin/batch_manager.php
parent836df2292003bc2f42a6a511738f7afd0e90c9c6 (diff)
bug 2506 fixed: Batch Manager does not take permissions into account when
filtering on tags feature 2507 added: Batch Manager can filter on "all tags" or "any tag" git-svn-id: http://piwigo.org/svn/branches/2.3@12629 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to 'admin/batch_manager.php')
-rw-r--r--admin/batch_manager.php23
1 files changed, 14 insertions, 9 deletions
diff --git a/admin/batch_manager.php b/admin/batch_manager.php
index fae54f4ba..5856c0586 100644
--- a/admin/batch_manager.php
+++ b/admin/batch_manager.php
@@ -71,6 +71,11 @@ if (isset($_POST['submitFilter']))
if (isset($_POST['filter_tags_use']))
{
$_SESSION['bulk_manager_filter']['tags'] = get_tag_ids($_POST['filter_tags'], false);
+
+ if (isset($_POST['tag_mode']) and in_array($_POST['tag_mode'], array('AND', 'OR')))
+ {
+ $_SESSION['bulk_manager_filter']['tag_mode'] = $_POST['tag_mode'];
+ }
}
if (isset($_POST['filter_level_use']))
@@ -297,16 +302,16 @@ SELECT id
if (!empty($_SESSION['bulk_manager_filter']['tags']))
{
- $query = '
-SELECT image_id
- FROM '.IMAGE_TAG_TABLE.
- 'WHERE tag_id IN('.implode(',',$_SESSION['bulk_manager_filter']['tags']).')
- GROUP BY image_id
- HAVING COUNT(tag_id)='.count($_SESSION['bulk_manager_filter']['tags']);
- array_push(
+ array_push(
$filter_sets,
- get_image_ids_for_tags($_SESSION['bulk_manager_filter']['tags'])
- );
+ get_image_ids_for_tags(
+ $_SESSION['bulk_manager_filter']['tags'],
+ $_SESSION['bulk_manager_filter']['tag_mode'],
+ null,
+ null,
+ false // we don't apply permissions in administration screens
+ )
+ );
}
$current_set = array_shift($filter_sets);