2015-08-02 18:59:11 +00:00
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<feed xmlns="http://www.w3.org/2005/Atom">
|
|
|
|
<id>urn:uuid:2853dacf-ed79-42f5-8e8a-a7bb3d1ae6a2</id>
|
|
|
|
<link rel="self"
|
2017-01-09 18:10:39 +00:00
|
|
|
href="{{request.script_root + request.full_path}}"
|
2017-01-07 17:08:12 +00:00
|
|
|
type="application/atom+xml;profile=opds-catalog;type=feed;kind=navigation"/>
|
2015-08-02 18:59:11 +00:00
|
|
|
<link rel="start"
|
|
|
|
href="{{url_for('feed_index')}}"
|
2017-01-07 17:08:12 +00:00
|
|
|
type="application/atom+xml;profile=opds-catalog;type=feed;kind=navigation"/>
|
2015-08-02 18:59:11 +00:00
|
|
|
<link rel="up"
|
|
|
|
href="{{url_for('feed_index')}}"
|
2017-01-07 17:08:12 +00:00
|
|
|
type="application/atom+xml;profile=opds-catalog;type=feed;kind=navigation"/>
|
2017-01-09 18:10:39 +00:00
|
|
|
<link rel="first"
|
|
|
|
href="{{request.script_root + request.path}}"
|
|
|
|
type="application/atom+xml;profile=opds-catalog;type=feed;kind=navigation"/>
|
|
|
|
<link rel="last"
|
|
|
|
href="{{request.script_root + request.path}}?offset={{ pagination.last_offset }}"
|
|
|
|
type="application/atom+xml;profile=opds-catalog;type=feed;kind=navigation"/>
|
2017-01-07 17:08:12 +00:00
|
|
|
{% if pagination.has_next %}
|
2016-11-09 18:24:33 +00:00
|
|
|
<link rel="next"
|
|
|
|
title="{{_('Next')}}"
|
2017-01-09 18:10:39 +00:00
|
|
|
href="{{ request.script_root + request.path }}?offset={{ pagination.next_offset }}"
|
|
|
|
type="application/atom+xml;profile=opds-catalog;type=feed;kind=navigation"/>
|
|
|
|
{% endif %}
|
|
|
|
{% if pagination.has_prev %}
|
|
|
|
<link rel="previous"
|
|
|
|
href="{{request.script_root + request.path}}?offset={{ pagination.previous_offset }}"
|
2017-01-07 17:08:12 +00:00
|
|
|
type="application/atom+xml;profile=opds-catalog;type=feed;kind=navigation"/>
|
|
|
|
{% endif %}
|
2015-08-02 18:59:11 +00:00
|
|
|
<link rel="search"
|
|
|
|
href="{{url_for('feed_osd')}}"
|
|
|
|
type="application/opensearchdescription+xml"/>
|
2016-04-15 16:23:00 +00:00
|
|
|
<title>Calibre Web</title>
|
2015-08-02 18:59:11 +00:00
|
|
|
<author>
|
2016-04-15 16:23:00 +00:00
|
|
|
<name>Calibre Web</name>
|
|
|
|
<uri>https://github.com/janeczku/calibre-web</uri>
|
2015-08-02 18:59:11 +00:00
|
|
|
</author>
|
|
|
|
|
|
|
|
{% for entry in entries %}
|
|
|
|
<entry>
|
|
|
|
<title>{{entry.title}}</title>
|
|
|
|
<id>{{entry.uuid}}</id>
|
2016-11-09 18:24:33 +00:00
|
|
|
<updated>{{entry.timestamp}}</updated>
|
2015-08-02 18:59:11 +00:00
|
|
|
<author>
|
|
|
|
<name>{{entry.authors[0].name}}</name>
|
|
|
|
</author>
|
|
|
|
<language>{{entry.language}}</language>
|
|
|
|
{% for tag in entry.tags %}
|
|
|
|
<category scheme="http://www.bisg.org/standards/bisac_subject/index.html"
|
|
|
|
term="{{tag.name}}"
|
|
|
|
label="{{tag.name}}"/>
|
|
|
|
{% endfor %}
|
2017-01-07 17:08:12 +00:00
|
|
|
{% if entry.comments[0] %}<summary>{{entry.comments[0].text|striptags}}</summary>{% endif %}
|
2015-08-02 18:59:11 +00:00
|
|
|
{% if entry.has_cover %}
|
2017-01-07 17:08:12 +00:00
|
|
|
<link type="image/jpeg" href="{{url_for('feed_get_cover', book_id=entry.id)}}" rel="http://opds-spec.org/image"/>
|
|
|
|
<link type="image/jpeg" href="{{url_for('feed_get_cover', book_id=entry.id)}}" rel="http://opds-spec.org/image/thumbnail"/>
|
2015-08-02 18:59:11 +00:00
|
|
|
{% endif %}
|
|
|
|
{% for format in entry.data %}
|
2016-12-29 18:19:40 +00:00
|
|
|
<link rel="http://opds-spec.org/acquisition" href="{{ url_for('get_opds_download_link', book_id=entry.id, format=format.format|lower)}}"
|
|
|
|
length="{{format.uncompressed_size}}" mtime="{{entry.timestamp}}"
|
|
|
|
{% if format.format|lower == "epub" %}
|
2015-08-02 18:59:11 +00:00
|
|
|
type="application/epub+zip"/>
|
2017-01-07 17:08:12 +00:00
|
|
|
{% elif format.format|lower == "cbr" %}
|
|
|
|
type="application/x-cbr"/>
|
2015-08-02 18:59:11 +00:00
|
|
|
{% else %}
|
|
|
|
type="application/x-mobipocket-ebook"/>
|
|
|
|
{% endif %}
|
|
|
|
{% endfor %}
|
|
|
|
</entry>
|
|
|
|
{% endfor %}
|
2016-11-09 18:24:33 +00:00
|
|
|
{% for author in authors %}
|
|
|
|
<entry>
|
|
|
|
<title>{{author.name}}</title>
|
2017-01-09 18:10:39 +00:00
|
|
|
<id>{{ url_for('feed_author', id=author.id) }}</id>
|
|
|
|
<link type="application/atom+xml;profile=opds-catalog;type=feed;kind=acquisition" href="{{url_for('feed_author', id=author.id)}}"/>
|
|
|
|
<link type="application/atom+xml" href="{{url_for('feed_author', id=author.id)}}" rel="subsection"/>
|
2016-11-09 18:24:33 +00:00
|
|
|
</entry>
|
|
|
|
{% endfor %}
|
|
|
|
{% for entry in categorys %}
|
|
|
|
<entry>
|
|
|
|
<title>{{entry.name}}</title>
|
2017-01-09 18:10:39 +00:00
|
|
|
<id>{{ url_for('feed_category', id=entry.id) }}</id>
|
|
|
|
<link type="application/atom+xml;profile=opds-catalog;type=feed;kind=acquisition" href="{{url_for('feed_category', id=entry.id)}}"/>
|
|
|
|
<link type="application/atom+xml" href="{{url_for('feed_category', id=entry.id)}}" rel="subsection"/>
|
2016-11-09 18:24:33 +00:00
|
|
|
</entry>
|
|
|
|
{% endfor %}
|
|
|
|
{% for entry in series %}
|
|
|
|
<entry>
|
|
|
|
<title>{{entry.name}}</title>
|
2017-01-09 18:10:39 +00:00
|
|
|
<id>{{ url_for('feed_series', id=entry.id) }}</id>
|
|
|
|
<link type="application/atom+xml;profile=opds-catalog;type=feed;kind=acquisition" href="{{url_for('feed_series', id=entry.id)}}" />
|
|
|
|
<link type="application/atom+xml" href="{{url_for('feed_series', id=entry.id)}}" rel="subsection"/>
|
2016-12-28 14:51:58 +00:00
|
|
|
</entry>
|
2016-11-09 18:24:33 +00:00
|
|
|
{% endfor %}
|
2015-08-02 18:59:11 +00:00
|
|
|
</feed>
|