aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/ws_functions.inc.php40
-rw-r--r--tools/piwigo_remote.pl4
2 files changed, 21 insertions, 23 deletions
diff --git a/include/ws_functions.inc.php b/include/ws_functions.inc.php
index 5d12bd5f2..4440b15ac 100644
--- a/include/ws_functions.inc.php
+++ b/include/ws_functions.inc.php
@@ -364,20 +364,6 @@ function ws_categories_getList($params, &$service)
{
global $user,$conf;
- $query = '
-SELECT
- category_id,
- MAX(rank) AS max_rank
- FROM '.IMAGE_CATEGORY_TABLE.'
- WHERE rank IS NOT NULL
- GROUP BY category_id
-;';
- $max_image_rank_of = simple_hash_from_query(
- $query,
- 'category_id',
- 'max_rank'
- );
-
$where = array();
if (!$params['recursive'])
@@ -429,11 +415,6 @@ SELECT id, name, permalink, uppercats, global_rank,
{
$row[$key] = (int)$row[$key];
}
-
- if (isset($max_image_rank_of[ $row['id'] ]))
- {
- $row['images_max_rank'] = $max_image_rank_of[ $row['id'] ];
- }
array_push($cats, $row);
}
@@ -450,7 +431,6 @@ SELECT id, name, permalink, uppercats, global_rank,
'nb_categories',
'date_last',
'max_date_last',
- 'images_max_rank',
)
)
);
@@ -862,6 +842,7 @@ function ws_images_add($params, &$service)
// $fh_log = fopen('/tmp/php.log', 'w');
// fwrite($fh_log, time()."\n");
+ // fwrite($fh_log, 'input rank :'.$params['rank']."\n");
// fwrite($fh_log, 'input: '.$params['file_sum']."\n");
// fwrite($fh_log, 'input: '.$params['thumbnail_sum']."\n");
@@ -958,8 +939,25 @@ function ws_images_add($params, &$service)
$insert = array(
'category_id' => $params['category_id'],
'image_id' => $image_id,
- 'rank' => $params['rank'],
);
+
+ if ('auto' == $params['rank'])
+ {
+ $query = '
+SELECT
+ MAX(rank) AS max_rank
+ FROM '.IMAGE_CATEGORY_TABLE.'
+ WHERE rank IS NOT NULL
+ AND category_id = '.$params['category_id'].'
+;';
+ $row = mysql_fetch_assoc(pwg_query($query));
+ $insert['rank'] = isset($row['max_rank']) ? $row['max_rank']+1 : 1;
+ }
+ else if (is_numeric($params['rank']))
+ {
+ $insert['rank'] = (int)$params['rank'];
+ }
+
mass_inserts(
IMAGE_CATEGORY_TABLE,
array_keys($insert),
diff --git a/tools/piwigo_remote.pl b/tools/piwigo_remote.pl
index 582aca294..dcc6ba2cd 100644
--- a/tools/piwigo_remote.pl
+++ b/tools/piwigo_remote.pl
@@ -10,7 +10,7 @@ use Getopt::Long;
my %opt = ();
GetOptions(
\%opt,
- qw/action=s file=s thumbnail=s category_id=i name=s rank=i/
+ qw/action=s file=s thumbnail=s category_id=i name=s rank=s/
);
our $ua = LWP::UserAgent->new;
@@ -61,7 +61,7 @@ if ($opt{action} eq 'pwg.images.add') {
thumbnail_content => $thumbnail_content,
category_id => $opt{category_id},
name => $opt{name},
- rank => defined($opt{rank}) ? $opt{rank} : 1,
+ rank => defined($opt{rank}) ? $opt{rank} : 'auto',
};
my $response = $ua->post(