Fix Friendica Photo GET API endpoint to work without explicit scale term

This commit is contained in:
Hank Grabowski 2022-12-12 11:27:59 -05:00
parent 9b8b1be3e7
commit 46607598f3
2 changed files with 3 additions and 3 deletions

View file

@ -57,14 +57,14 @@ class Photo extends BaseFactory
* @param string $type * @param string $type
* @return Array * @return Array
*/ */
public function createFromId(string $photo_id, int $scale = null, int $uid, string $type = 'json', bool $with_posts = true): array public function createFromId(string $photo_id, int $scale, int $uid, string $type = 'json', bool $with_posts = true): array
{ {
$fields = ['resource-id', 'created', 'edited', 'title', 'desc', 'album', 'filename','type', $fields = ['resource-id', 'created', 'edited', 'title', 'desc', 'album', 'filename','type',
'height', 'width', 'datasize', 'profile', 'allow_cid', 'deny_cid', 'allow_gid', 'deny_gid', 'height', 'width', 'datasize', 'profile', 'allow_cid', 'deny_cid', 'allow_gid', 'deny_gid',
'backend-class', 'backend-ref', 'id', 'scale']; 'backend-class', 'backend-ref', 'id', 'scale'];
$condition = ['uid' => $uid, 'resource-id' => $photo_id]; $condition = ['uid' => $uid, 'resource-id' => $photo_id];
if (is_int($scale)) { if ($scale >= 0) {
$fields = array_merge(['data'], $fields); $fields = array_merge(['data'], $fields);
$condition['scale'] = $scale; $condition['scale'] = $scale;

View file

@ -54,7 +54,7 @@ class Photo extends BaseApi
throw new HTTPException\BadRequestException('No photo id.'); throw new HTTPException\BadRequestException('No photo id.');
} }
$scale = (!empty($request['scale']) ? intval($request['scale']) : false); $scale = (!empty($request['scale']) ? intval($request['scale']) : -1);
$photo_id = $request['photo_id']; $photo_id = $request['photo_id'];
// prepare json/xml output with data from database for the requested photo // prepare json/xml output with data from database for the requested photo