From ab8b4d5c3669543a6166390d433569656692f9b8 Mon Sep 17 00:00:00 2001 From: Mario Vavti Date: Sat, 24 Oct 2015 21:44:25 +0200 Subject: another try to avoid dubble photo deletion. allow to set a photo caption and simple status body (if create status post is enabled) on upload --- include/attach.php | 15 ++++++++++----- include/photos.php | 25 +++++++++++++++---------- 2 files changed, 25 insertions(+), 15 deletions(-) (limited to 'include') diff --git a/include/attach.php b/include/attach.php index f95feed2d..f5d2c69b6 100644 --- a/include/attach.php +++ b/include/attach.php @@ -815,6 +815,12 @@ function attach_store($channel, $observer_hash, $options = '', $arr = null) { if($arr['item']) $args['item'] = $arr['item']; + if($arr['body']) + $args['body'] = $arr['body']; + + if($arr['description']) + $args['description'] = $arr['description']; + $p = photo_upload($channel,$observer,$args); if($p['success']) { $ret['body'] = $p['body']; @@ -1282,12 +1288,11 @@ function attach_delete($channel_id, $resource, $is_photo = 0) { ); if($x) { drop_item($x[0]['id'],false,(($x[0]['item_hidden']) ? DROPITEM_NORMAL : DROPITEM_PHASE1),true); - - q("DELETE FROM photo WHERE uid = %d AND resource_id = '%s'", - intval($channel_id), - dbesc($resource) - ); } + q("DELETE FROM photo WHERE uid = %d AND resource_id = '%s'", + intval($channel_id), + dbesc($resource) + ); } // update the parent folder's lastmodified timestamp diff --git a/include/photos.php b/include/photos.php index a203b9b6a..d89c0fca1 100644 --- a/include/photos.php +++ b/include/photos.php @@ -7,6 +7,7 @@ require_once('include/permissions.php'); require_once('include/items.php'); require_once('include/photo/photo_driver.php'); +require_once('include/text.php'); /** * @brief @@ -18,6 +19,8 @@ require_once('include/photo/photo_driver.php'); */ function photo_upload($channel, $observer, $args) { + $a = get_app(); + $ret = array('success' => false); $channel_id = $channel['channel_id']; $account_id = $channel['channel_account_id']; @@ -186,8 +189,8 @@ function photo_upload($channel, $observer, $args) { $p['description'] = $args['description']; $r0 = $ph->save($p); - $r0width = $ph->getWidth(); - $r0height = $ph->getHeight(); + $r0width = $ph->getWidth(); + $r0height = $ph->getHeight(); if(! $r0) $errors = true; @@ -199,8 +202,8 @@ function photo_upload($channel, $observer, $args) { $p['scale'] = 1; $r1 = $ph->save($p); - $r1width = $ph->getWidth(); - $r1height = $ph->getHeight(); + $r1width = $ph->getWidth(); + $r1height = $ph->getHeight(); if(! $r1) $errors = true; @@ -209,8 +212,8 @@ function photo_upload($channel, $observer, $args) { $p['scale'] = 2; $r2 = $ph->save($p); - $r2width = $ph->getWidth(); - $r2height = $ph->getHeight(); + $r2width = $ph->getWidth(); + $r2height = $ph->getHeight(); if(! $r2) $errors = true; @@ -219,8 +222,8 @@ function photo_upload($channel, $observer, $args) { $p['scale'] = 3; $r3 = $ph->save($p); - $r3width = $ph->getWidth(); - $r3height = $ph->getHeight(); + $r3width = $ph->getWidth(); + $r3height = $ph->getHeight(); if(! $r3) $errors = true; @@ -246,10 +249,12 @@ function photo_upload($channel, $observer, $args) { } } - $title = (($args['filename']) ? $args['filename'] : ''); + $title = (($args['description']) ? $args['description'] : $args['filename']); $large_photos = feature_enabled($channel['channel_id'], 'large_photos'); + linkify_tags($a, $args['body'], $channel_id); + if($large_photos) { $scale = 1; $width = $r1width; @@ -360,7 +365,7 @@ function photo_upload($channel, $observer, $args) { $arr['item_thread_top'] = 1; $arr['item_private'] = intval($acl->is_private()); $arr['plink'] = z_root() . '/channel/' . $channel['channel_address'] . '/?f=&mid=' . $arr['mid']; - $arr['body'] = (($object) ? '' : $body); + $arr['body'] = (($object) ? $args['body'] : $body . $args['body']); $result = item_store($arr); $item_id = $result['item_id']; -- cgit v1.2.3