aboutsummaryrefslogtreecommitdiffstats
path: root/admin/picture_modify.php
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--admin/picture_modify.php49
1 files changed, 7 insertions, 42 deletions
diff --git a/admin/picture_modify.php b/admin/picture_modify.php
index 83bf09a23..ac7310ddd 100644
--- a/admin/picture_modify.php
+++ b/admin/picture_modify.php
@@ -121,56 +121,23 @@ if (isset($_POST['associate'])
and isset($_POST['cat_dissociated'])
and count($_POST['cat_dissociated']) > 0)
{
- $datas = array();
-
- foreach ($_POST['cat_dissociated'] as $category_id)
- {
- array_push(
- $datas,
- array(
- 'image_id' => $_GET['image_id'],
- 'category_id' => $category_id
- )
- );
- }
-
- mass_inserts(
- IMAGE_CATEGORY_TABLE,
- array('image_id', 'category_id'),
- $datas
+ associate_images_to_categories(
+ array($_GET['image_id']),
+ $_POST['cat_dissociated']
);
-
- check_links();
- update_category($_POST['cat_dissociated']);
}
// dissociate the element from categories (but not from its storage category)
if (isset($_POST['dissociate'])
and isset($_POST['cat_associated'])
and count($_POST['cat_associated']) > 0)
{
- $associated_categories = $_POST['cat_associated'];
-
- // If the same element is associated to a source and its destinations,
- // dissociating the element with the source implies dissociating the
- // element fwith the destination.
- $destinations_of = get_destinations($_POST['cat_associated']);
- foreach ($destinations_of as $source => $destinations)
- {
- $associated_categories = array_merge(
- $associated_categories,
- $destinations
- );
- }
-
$query = '
DELETE FROM '.IMAGE_CATEGORY_TABLE.'
WHERE image_id = '.$_GET['image_id'].'
- AND category_id IN ('.implode(',', $associated_categories).')
- AND is_storage = \'false\'
+ AND category_id IN ('.implode(',', $_POST['cat_associated']).')
';
pwg_query($query);
-
- check_links();
+
update_category($_POST['cat_associated']);
}
// elect the element to represent the given categories
@@ -201,13 +168,11 @@ if (isset($_POST['dismiss'])
$query = '
SELECT *
FROM '.IMAGES_TABLE.'
- INNER JOIN '.IMAGE_CATEGORY_TABLE.' ON image_id = id
WHERE id = '.$_GET['image_id'].'
- AND is_storage = \'true\'
;';
$row = mysql_fetch_array(pwg_query($query));
-$storage_category_id = $row['category_id'];
+$storage_category_id = $row['storage_category_id'];
$image_file = $row['file'];
// tags
@@ -396,7 +361,7 @@ SELECT id,name,uppercats,global_rank
FROM '.CATEGORIES_TABLE.'
INNER JOIN '.IMAGE_CATEGORY_TABLE.' ON id = category_id
WHERE image_id = '.$_GET['image_id'].'
- AND is_storage = \'false\'
+ AND id != '.$storage_category_id.'
;';
display_select_cat_wrapper($query, array(), 'associated_option');