Backport(バックポート) #2147
[api] /albums/@me/@self で取得したアルバムのサムネイルが未設定の場合 thumbnailUrl フィールドに間違った値が入る
Start date:
2011-06-03
Due date:
% Done:
100%
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()
メソッドを使用してサムネイルの有無をチェックする。
Related issues
Associated revisions
History
#1 Updated by Youichi Kimura over 13 years ago
- Status changed from Pending Fixing(修正待ち) to Pending Review(レビュー待ち)
- % Done changed from 0 to 50
更新履歴 ac27031aff0ada1fac730936f267fea1f17b4e0c で適用されました。
#2 Updated by Shogo Kawahara over 13 years ago
- Status changed from Pending Review(レビュー待ち) to Fixed(完了)
- % Done changed from 50 to 100