Actions
Backport(バックポート) #2148
closed[api] /albums/@me/@self で取得したアルバムのサムネイルが未設定の場合 thumbnailUrl フィールドに間違った値が入る
Start date:
2011-06-03
Due date:
% Done:
100%
Estimated time:
Description
Overview (現象)¶
/albums/@me/@self
でアルバムのコレクションを取得すると、サムネイルが未設定のアルバムに http://sns.example.com/cache/img/jpg/w180_h180/.jpg
のようなURLが入ってしまう。
{
"entry": [
{
"id": "1",
"title": "test",
"description": "aaaaa",
"mediaItemCount": 2,
"ownerId": "3",
"thumbnailUrl": "http:\/\/sns.localhost\/sqlite\/cache\/img\/jpg\/w180_h180\/.jpg",
"mediaType": "IMAGE"
}
],
"startIndex":0,
"totalResults":1,
"itemsPerPage":10
}
Causes (原因)¶
lib/util/opJsonDbOpensocialService.class.php
で以下のようにサムネイルの有無をチェックしている箇所があるが、サムネイルが未設定の場合 (album.file_id = null) は $object->getFile()
メソッドの実行時に File オブジェクトのインスタンスが新規に生成されてしまうため条件式が偽にならずURLの生成が行われてしまう。
$result['thumbnailUrl'] = '';
if ($object->getFile())
{
sfContext::getInstance()->getConfiguration()->loadHelpers(array('Asset', 'sfImage'));
$result['thumbnailUrl'] = sf_image_path($object->getFile(), array('size' => '180x180'), true);
}
Way to fix (修正内容)¶
getFile()
メソッドではなく getFileId()
メソッドを使用してサムネイルの有無をチェックする。
Updated by Youichi Kimura over 13 years ago
- Status changed from Pending Fixing(修正待ち) to Pending Review(レビュー待ち)
- % Done changed from 0 to 50
更新履歴 9ae56f5eded86ca107b7fde591f98034eb04220c で適用されました。
Updated by Shogo Kawahara over 13 years ago
- Status changed from Pending Review(レビュー待ち) to Fixed(完了)
- % Done changed from 50 to 100
Actions