From f048a74b087f2dc17416316f3d01ba38d60f4c43 Mon Sep 17 00:00:00 2001 From: plegall Date: Sat, 30 Oct 2010 20:03:05 +0000 Subject: [PATCH] bug 1906 fixed: during batch management, for a given category, use the category defined sort order for photos, not the generic order_by. git-svn-id: http://piwigo.org/svn/branches/2.1@7504 68402e56-0260-453c-a942-63ccdbb3a9ee --- admin/element_set_global.php | 18 +++++++++++++++++- admin/element_set_unit.php | 18 +++++++++++++++++- 2 files changed, 34 insertions(+), 2 deletions(-) diff --git a/admin/element_set_global.php b/admin/element_set_global.php index f2c708022..8377bdd41 100644 --- a/admin/element_set_global.php +++ b/admin/element_set_global.php @@ -449,7 +449,23 @@ if (count($page['cat_elements_id']) > 0) $query = ' SELECT id,path,tn_ext,file,filesize,level - FROM '.IMAGES_TABLE.' + FROM '.IMAGES_TABLE; + + if (is_numeric($_GET['cat'])) + { + $category_info = get_cat_info($_GET['cat']); + + $conf['order_by'] = $conf['order_by_inside_category']; + if (!empty($category_info['image_order'])) + { + $conf['order_by'] = ' ORDER BY '.$category_info['image_order']; + } + + $query.= ' + JOIN '.IMAGE_CATEGORY_TABLE.' ON id = image_id'; + } + + $query.= ' WHERE id IN ('.implode(',', $page['cat_elements_id']).') '.$conf['order_by'].' LIMIT '.$page['nb_images'].' OFFSET '.$page['start'].' diff --git a/admin/element_set_unit.php b/admin/element_set_unit.php index 17b83dcef..f4901a343 100644 --- a/admin/element_set_unit.php +++ b/admin/element_set_unit.php @@ -194,7 +194,23 @@ if (count($page['cat_elements_id']) > 0) $query = ' SELECT id,path,tn_ext,name,date_creation,comment,author,level,file - FROM '.IMAGES_TABLE.' + FROM '.IMAGES_TABLE; + + if (is_numeric($_GET['cat'])) + { + $category_info = get_cat_info($_GET['cat']); + + $conf['order_by'] = $conf['order_by_inside_category']; + if (!empty($category_info['image_order'])) + { + $conf['order_by'] = ' ORDER BY '.$category_info['image_order']; + } + + $query.= ' + JOIN '.IMAGE_CATEGORY_TABLE.' ON id = image_id'; + } + + $query.= ' WHERE id IN ('.implode(',', $page['cat_elements_id']).') '.$conf['order_by'].' LIMIT '.$page['nb_images'].' OFFSET '.$page['start'].'