mirror of
https://github.com/standardebooks/web.git
synced 2025-07-06 23:00:28 -04:00
Add subjects OPDS feeds, and switch to a more object-oriented approach to generating the OPDS feeds
This commit is contained in:
parent
a42de8ef4d
commit
133f93cdce
11 changed files with 187 additions and 51 deletions
22
lib/OpdsNavigationFeed.php
Normal file
22
lib/OpdsNavigationFeed.php
Normal file
|
@ -0,0 +1,22 @@
|
|||
<?
|
||||
use function Safe\file_get_contents;
|
||||
use function Safe\file_put_contents;
|
||||
use function Safe\rename;
|
||||
use function Safe\tempnam;
|
||||
|
||||
class OpdsNavigationFeed extends OpdsFeed{
|
||||
public $Entries = [];
|
||||
|
||||
public function __construct(string $url, string $title, ?string $parentUrl, array $entries){
|
||||
parent::__construct($url, $title, $parentUrl);
|
||||
$this->Entries = $entries;
|
||||
}
|
||||
|
||||
public function Save(string $path): void{
|
||||
$updatedTimestamp = gmdate('Y-m-d\TH:i:s\Z');
|
||||
|
||||
$feed = Template::OpdsNavigationFeed(['id' => $this->Id, 'url' => $this->Url, 'title' => $this->Title, 'parentUrl' => $this->ParentUrl, 'updatedTimestamp' => $updatedTimestamp, 'entries' => $this->Entries]);
|
||||
|
||||
$this->SaveIfChanged($path, $feed, $updatedTimestamp);
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue