mirror of
https://code.mensbeam.com/MensBeam/Arsse.git
synced 2024-12-22 21:22:40 +00:00
Defer Fever favicons to a future release
This commit is contained in:
parent
0480465e7e
commit
61b942df70
2 changed files with 19 additions and 4 deletions
|
@ -26,6 +26,8 @@ use Zend\Diactoros\Response\EmptyResponse;
|
|||
|
||||
class API extends \JKingWeb\Arsse\REST\AbstractHandler {
|
||||
const LEVEL = 3;
|
||||
const GENERIC_ICON_TYPE = "image/png;base64";
|
||||
const GENERIC_ICON_DATA = "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMjHxIGmVAAAADUlEQVQYV2NgYGBgAAAABQABijPjAAAAAABJRU5ErkJggg==";
|
||||
|
||||
// GET parameters for which we only check presence: these will be converted to booleans
|
||||
const PARAM_BOOL = ["groups", "feeds", "items", "favicons", "links", "unread_item_ids", "saved_item_ids"];
|
||||
|
@ -143,7 +145,14 @@ class API extends \JKingWeb\Arsse\REST\AbstractHandler {
|
|||
$out['feeds_groups'] = $this->getRelationships();
|
||||
}
|
||||
if ($G['favicons']) {
|
||||
# deal with favicons
|
||||
// TODO: implement favicons properly
|
||||
// we provide a single blank favicon for now
|
||||
$out['favicons'] = [
|
||||
[
|
||||
'id' => 0,
|
||||
'data' => self::GENERIC_ICON_TYPE.",".self::GENERIC_ICON_DATA,
|
||||
],
|
||||
];
|
||||
}
|
||||
if ($G['items']) {
|
||||
$out['items'] = $this->getItems($G);
|
||||
|
@ -318,7 +327,7 @@ class API extends \JKingWeb\Arsse\REST\AbstractHandler {
|
|||
foreach (arsse::$db->subscriptionList(Arsse::$user->id) as $sub) {
|
||||
$out[] = [
|
||||
'id' => (int) $sub['id'],
|
||||
'favicon_id' => (int) ($sub['favicon'] ? $sub['feed'] : 0),
|
||||
'favicon_id' => 0, // TODO: implement favicons
|
||||
'title' => (string) $sub['title'],
|
||||
'url' => $sub['url'],
|
||||
'site_url' => $sub['source'],
|
||||
|
|
|
@ -307,9 +307,9 @@ class TestAPI extends \JKingWeb\Arsse\Test\AbstractTest {
|
|||
]));
|
||||
$exp = new JsonResponse([
|
||||
'feeds' => [
|
||||
['id' => 1, 'favicon_id' => 5, 'title' => "Ankh-Morpork News", 'url' => "http://example.com/feed", 'site_url' => "http://example.com/", 'is_spark' => 0, 'last_updated_on_time' => strtotime("2019-01-01T21:12:00Z")],
|
||||
['id' => 1, 'favicon_id' => 0, 'title' => "Ankh-Morpork News", 'url' => "http://example.com/feed", 'site_url' => "http://example.com/", 'is_spark' => 0, 'last_updated_on_time' => strtotime("2019-01-01T21:12:00Z")],
|
||||
['id' => 2, 'favicon_id' => 0, 'title' => "Ook, Ook Eek Ook!", 'url' => "http://example.net/feed", 'site_url' => "http://example.net/", 'is_spark' => 0, 'last_updated_on_time' => strtotime("1988-06-24T12:21:00Z")],
|
||||
['id' => 3, 'favicon_id' => 1, 'title' => "The Last Soul", 'url' => "http://example.org/feed", 'site_url' => "http://example.org/", 'is_spark' => 0, 'last_updated_on_time' => strtotime("1991-08-12T03:22:00Z")],
|
||||
['id' => 3, 'favicon_id' => 0, 'title' => "The Last Soul", 'url' => "http://example.org/feed", 'site_url' => "http://example.org/", 'is_spark' => 0, 'last_updated_on_time' => strtotime("1991-08-12T03:22:00Z")],
|
||||
],
|
||||
'feeds_groups' => [
|
||||
['group_id' => 1, 'feed_ids' => "1,2"],
|
||||
|
@ -496,4 +496,10 @@ class TestAPI extends \JKingWeb\Arsse\Test\AbstractTest {
|
|||
$act = $this->h->dispatch($this->req("api=xml"));
|
||||
$this->assertMessage($exp, $act);
|
||||
}
|
||||
|
||||
public function testListFeedIcons() {
|
||||
$act = $this->h->dispatch($this->req("api&favicons"));
|
||||
$exp = new JsonResponse(['favicons' => [['id' => 0, 'data' => API::GENERIC_ICON_TYPE.",".API::GENERIC_ICON_DATA]]]);
|
||||
$this->assertMessage($exp, $act);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue