mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2025-04-07 01:13:50 +02:00
2022-03-08 Fred Gleason <fredg@paravelsystems.com>
* Added a 'direct' namespace to the 'Apple iTunes' and 'Apple iTunes + Superfeed' RSS schemas. Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
parent
9123bf420a
commit
c8db6bdb8c
2
.gitignore
vendored
2
.gitignore
vendored
@ -35,6 +35,8 @@ configure
|
||||
depcomp
|
||||
docs/apis/*.html
|
||||
docs/apis/*.pdf
|
||||
docs/dtds/direct.html
|
||||
docs/dtds/direct.pdf
|
||||
docs/dtds/superfeed.html
|
||||
docs/dtds/superfeed.pdf
|
||||
docs/opsguide/*.html
|
||||
|
@ -20856,3 +20856,6 @@
|
||||
2022-03-04 Fred Gleason <fredg@paravelsystems.com>
|
||||
* Modified the 'RDCart::setSchedCodesList()' so as to normalize
|
||||
the case of scheduler codes.
|
||||
2022-03-08 Fred Gleason <fredg@paravelsystems.com>
|
||||
* Added a 'direct' namespace to the 'Apple iTunes' and
|
||||
'Apple iTunes + Superfeed' RSS schemas.
|
||||
|
@ -2,7 +2,7 @@
|
||||
##
|
||||
## docs/dtds/Makefile.am for Rivendell
|
||||
##
|
||||
## (C) Copyright 2020 Fred Gleason <fredg@paravelsystems.com>
|
||||
## (C) Copyright 2020-2022 Fred Gleason <fredg@paravelsystems.com>
|
||||
##
|
||||
## This program is free software; you can redistribute it and/or modify
|
||||
## it under the terms of the GNU General Public License version 2 as
|
||||
@ -27,10 +27,15 @@
|
||||
%.pdf: %.xml
|
||||
xsltproc $(DOCBOOK_STYLESHEETS)/fo/docbook.xsl $< | fop - -pdf $@
|
||||
|
||||
all-local: superfeed.html\
|
||||
all-local: direct.html\
|
||||
direct.pdf\
|
||||
superfeed.html\
|
||||
superfeed.pdf
|
||||
|
||||
EXTRA_DIST = superfeed.html\
|
||||
EXTRA_DIST = direct.html\
|
||||
direct.pdf\
|
||||
direct.xml\
|
||||
superfeed.html\
|
||||
superfeed.pdf\
|
||||
superfeed.xml
|
||||
|
||||
|
132
docs/dtds/direct.xml
Normal file
132
docs/dtds/direct.xml
Normal file
@ -0,0 +1,132 @@
|
||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||
<article xmlns="http://docbook.org/ns/docbook" version="5.0">
|
||||
<info>
|
||||
<title>The Rivendell "direct" Namespace</title>
|
||||
<subtitle>Version 0.1</subtitle>
|
||||
<revnumber>v0.1</revnumber>
|
||||
<author>
|
||||
<personname>
|
||||
<firstname>Fred</firstname>
|
||||
<surname>Gleason</surname>
|
||||
<email>fredg@paravelsystems.com</email>
|
||||
</personname>
|
||||
</author>
|
||||
<edition>
|
||||
v0.1
|
||||
</edition>
|
||||
<copyright><year>2022</year><holder>Fred Gleason</holder></copyright>
|
||||
<legalnotice>
|
||||
<para>
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU Free Documentation License, Version 1.3
|
||||
or any later version published by the Free Software Foundation;
|
||||
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
|
||||
</para>
|
||||
</legalnotice>
|
||||
</info>
|
||||
|
||||
<sect1 xml:id="overview">
|
||||
<title>Overview</title>
|
||||
<para>
|
||||
The "direct" XML namespace adds fields for enabling
|
||||
interoperation with the Imogen Direct DAM system.
|
||||
</para>
|
||||
</sect1>
|
||||
<sect1 xml:id="namespace_declaration">
|
||||
<title>Namespace Declaration</title>
|
||||
<para>
|
||||
The namespace declaration is:
|
||||
</para>
|
||||
<para>
|
||||
<code>xmlns:direct="http://www.rivendellaudio.org/dtds/direct-0.1.dtd"</code>
|
||||
</para>
|
||||
</sect1>
|
||||
<sect1 xml:id="fields">
|
||||
<title>Fields</title>
|
||||
<para>
|
||||
The namespace adds the following fields:
|
||||
</para>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term>
|
||||
<code><direct:pubDate></code>
|
||||
</term>
|
||||
<listitem>
|
||||
<para>
|
||||
The value of the RSS-standard <code><pubDate></code> field
|
||||
from the <code><channel></code> and
|
||||
<code><item></code> sections of the feed data, expressed
|
||||
xs:dateTime format.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</sect1>
|
||||
|
||||
<sect1 xml:id="example">
|
||||
<title>Example</title>
|
||||
<para>
|
||||
The following is an example illustrating the use of the namespace:
|
||||
</para>
|
||||
<literallayout>
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<rss version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:superfeed="http://www.rivendellaudio.org/dtds/superfeed-0.1.dtd" xmlns:direct="http://www.rivendellaudio.org/dtds/direct-0.1.dtd">
|
||||
<channel>
|
||||
<title>Feed2</title>
|
||||
<description>This is Feed2</description>
|
||||
<itunes:summary>This is Feed2</itunes:summary>
|
||||
<category>Arts</category>
|
||||
<link></link>
|
||||
<language>en-us</language>
|
||||
<copyright></copyright>
|
||||
<lastBuildDate>Tue, 8 Mar 2022 19:26:13 GMT</lastBuildDate>
|
||||
<pubDate>Mon, 12 Jul 2021 14:24:21 GMT</pubDate>
|
||||
<direct:pubDate>2021-07-12T14:24:21+00:00</direct:pubDate>
|
||||
<managingEditor>Fred Gleason <fredg@paravelsystems.com></managingEditor>
|
||||
<webMaster>Fred Gleason <fredg@paravelsystems.com></webMaster>
|
||||
<generator>Rivendell 4.0.0beta3</generator>
|
||||
<image>
|
||||
<url>http://192.168.21.21/podcasts/feed2/img000009_000002.jpg</url>
|
||||
<title>Feed2</title>
|
||||
<link></link>
|
||||
<width>3000</width>
|
||||
<height>3000</height>
|
||||
<description>Imported from /home/fredg/RFA/ENG/EYES.jpg</description>
|
||||
</image>
|
||||
<atom:link href="http://192.168.21.21/podcasts/feed2/Feed2.rss" rel="self" type="application/rss+xml" />
|
||||
<itunes:author>Fred Gleason <fredg@paravelsystems.com></itunes:author>
|
||||
<itunes:type>episodic</itunes:type>
|
||||
<itunes:owner>
|
||||
<itunes:name>Fred Gleason</itunes:name>
|
||||
<itunes:email>fredg@paravelsystems.com</itunes:email>
|
||||
</itunes:owner>
|
||||
<itunes:image href="http://192.168.21.21/podcasts/feed2/img000009_000002.jpg" />
|
||||
<itunes:category text="Arts">
|
||||
<itunes:category text="Books" />
|
||||
</itunes:category>
|
||||
<itunes:explicit>false</itunes:explicit>
|
||||
<item>
|
||||
<title>Test Tone</title>
|
||||
<itunes:title>Test Tone</itunes:title>
|
||||
<link></link>
|
||||
<guid isPermaLink="false">http://192.168.21.21/podcasts/feed2/000009_000071.mp3_000009_000071</guid>
|
||||
<description>An example item.</description>
|
||||
<itunes:summary>An example item.</itunes:summary>
|
||||
<author></author>
|
||||
<itunes:author></itunes:author>
|
||||
<comments></comments>
|
||||
<source url="http://192.168.21.21/podcasts/feed2/Feed2">Feed2</source>
|
||||
<enclosure url="http://192.168.21.21/podcasts/feed2/000009_000071.mp3" length="60696" type="audio/mpeg" />
|
||||
<category>Arts</category>
|
||||
<pubDate>Tue, 8 Mar 2022 19:22:43 GMT</pubDate>
|
||||
<direct:pubDate>2022-03-08T19:22:43+00:00</direct:pubDate>
|
||||
<itunes:duration>10</itunes:duration>
|
||||
<itunes:image href="http://192.168.21.21/podcasts/feed2/img000009_000002.jpg" />
|
||||
<itunes:explicit>false</itunes:explicit>
|
||||
</item>
|
||||
</channel>
|
||||
</rss>
|
||||
</literallayout>
|
||||
</sect1>
|
||||
|
||||
</article>
|
@ -2,7 +2,7 @@
|
||||
//
|
||||
// Abstract a Rivendell RSS Feed
|
||||
//
|
||||
// (C) Copyright 2002-2020 Fred Gleason <fredg@paravelsystems.com>
|
||||
// (C) Copyright 2002-2022 Fred Gleason <fredg@paravelsystems.com>
|
||||
//
|
||||
// This program is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License version 2 as
|
||||
@ -2021,6 +2021,9 @@ QString RDFeed::ResolveChannelWildcards(const QString &tmplt,RDSqlQuery *chan_q,
|
||||
toString("ddd, d MMM yyyy hh:mm:ss ")+"GMT");
|
||||
ret.replace("%PUBLISH_DATE%",RDLocalToUtc(chan_q->value(13).toDateTime()).
|
||||
toString("ddd, d MMM yyyy hh:mm:ss ")+"GMT");
|
||||
ret.replace("%DIRECT_PUBLISH_DATE%",
|
||||
RDLocalToUtc(chan_q->value(13).toDateTime()).
|
||||
toString("yyyy-MM-ddThh:mm:ss+00:00"));
|
||||
ret.replace("%GENERATOR%",QString("Rivendell ")+VERSION);
|
||||
ret.replace("%FEED_URL%",RDXmlEscape(chan_q->value(17).toString())+"/"+
|
||||
RDXmlEscape(keyName()+"."+RD_RSS_XML_FILE_EXTENSION));
|
||||
@ -2075,6 +2078,9 @@ QString RDFeed::ResolveItemWildcards(const QString &tmplt,RDSqlQuery *item_q,
|
||||
ret.replace("%ITEM_PUBLISH_DATE%",
|
||||
RDLocalToUtc(item_q->value(13).toDateTime()).
|
||||
toString("ddd, d MMM yyyy hh:mm:ss ")+"GMT");
|
||||
ret.replace("%ITEM_DIRECT_PUBLISH_DATE%",
|
||||
RDLocalToUtc(item_q->value(13).toDateTime()).
|
||||
toString("yyyy-MM-ddThh:mm:ss+00:00"));
|
||||
ret.replace("%ITEM_GUID%",RDPodcast::guid(item_q->value(15).toString(),
|
||||
item_q->value(10).toString(),
|
||||
item_q->value(0).toUInt(),
|
||||
|
@ -60,10 +60,10 @@ RDRssSchemas::RDRssSchemas()
|
||||
c_header_templates.push_back("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<rss version=\"2.0\" xmlns:atom=\"http://www.w3.org/2005/Atom\">");
|
||||
|
||||
// AppleSchema
|
||||
c_header_templates.push_back("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<rss version=\"2.0\" xmlns:itunes=\"http://www.itunes.com/dtds/podcast-1.0.dtd\" xmlns:content=\"http://purl.org/rss/1.0/modules/content/\" xmlns:atom=\"http://www.w3.org/2005/Atom\">");
|
||||
c_header_templates.push_back("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<rss version=\"2.0\" xmlns:itunes=\"http://www.itunes.com/dtds/podcast-1.0.dtd\" xmlns:content=\"http://purl.org/rss/1.0/modules/content/\" xmlns:atom=\"http://www.w3.org/2005/Atom\" xmlns:direct=\"http://www.rivendellaudio.org/dtds/direct-0.1.dtd\">");
|
||||
|
||||
// AppleSuperfeedSchema
|
||||
c_header_templates.push_back("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<rss version=\"2.0\" xmlns:itunes=\"http://www.itunes.com/dtds/podcast-1.0.dtd\" xmlns:content=\"http://purl.org/rss/1.0/modules/content/\" xmlns:atom=\"http://www.w3.org/2005/Atom\" xmlns:superfeed=\"http://www.rivendellaudio.org/dtds/superfeed-0.1.dtd\">");
|
||||
c_header_templates.push_back("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<rss version=\"2.0\" xmlns:itunes=\"http://www.itunes.com/dtds/podcast-1.0.dtd\" xmlns:content=\"http://purl.org/rss/1.0/modules/content/\" xmlns:atom=\"http://www.w3.org/2005/Atom\" xmlns:superfeed=\"http://www.rivendellaudio.org/dtds/superfeed-0.1.dtd\"> xmlns:direct=\"http://www.rivendellaudio.org/dtds/direct-0.1.dtd\">");
|
||||
|
||||
//
|
||||
// Channel Templates
|
||||
@ -75,10 +75,10 @@ RDRssSchemas::RDRssSchemas()
|
||||
c_channel_templates.push_back("<title>%TITLE%</title>\n<description>%DESCRIPTION%</description>\n<category>%CATEGORY%</category>\n<link>%LINK%</link>\n<language>%LANGUAGE%</language>\n<copyright>%COPYRIGHT%</copyright>\n<lastBuildDate>%BUILD_DATE%</lastBuildDate>\n<pubDate>%PUBLISH_DATE%</pubDate>\n<managingEditor>%EDITOR%</managingEditor>\n<webMaster>%WEBMASTER%</webMaster>\n<generator>%GENERATOR%</generator>\n<image>\n <url>%IMAGE_URL%</url>\n <title>%TITLE%</title>\n <link>%LINK%</link>\n <width>%IMAGE_WIDTH%</width>\n <height>%IMAGE_HEIGHT%</height>\n <description>%IMAGE_DESCRIPTION%</description>\n</image>\n<atom:link href=\"%FEED_URL%\" rel=\"self\" type=\"application/rss+xml\" />");
|
||||
|
||||
// AppleSchema
|
||||
c_channel_templates.push_back("<title>%TITLE%</title>\n<description>%DESCRIPTION%</description>\n<itunes:summary>%DESCRIPTION%</itunes:summary>\n<category>%CATEGORY%</category>\n<link>%LINK%</link>\n<language>%LANGUAGE%</language>\n<copyright>%COPYRIGHT%</copyright>\n<lastBuildDate>%BUILD_DATE%</lastBuildDate>\n<pubDate>%PUBLISH_DATE%</pubDate>\n<managingEditor>%EDITOR%</managingEditor>\n<webMaster>%WEBMASTER%</webMaster>\n<generator>%GENERATOR%</generator>\n<image>\n <url>%IMAGE_URL%</url>\n <title>%TITLE%</title>\n <link>%LINK%</link>\n <width>%IMAGE_WIDTH%</width>\n <height>%IMAGE_HEIGHT%</height>\n <description>%IMAGE_DESCRIPTION%</description>\n</image>\n<atom:link href=\"%FEED_URL%\" rel=\"self\" type=\"application/rss+xml\" />\n<itunes:author>%AUTHOR%</itunes:author>\n<itunes:type>episodic</itunes:type>\n<itunes:owner>\n <itunes:name>%OWNER_NAME%</itunes:name>\n <itunes:email>%OWNER_EMAIL%</itunes:email>\n</itunes:owner>\n<itunes:image href=\"%IMAGE_URL%\" />\n%ITUNES_CATEGORY%\n<itunes:explicit>%EXPLICIT%</itunes:explicit>");
|
||||
c_channel_templates.push_back("<title>%TITLE%</title>\n<description>%DESCRIPTION%</description>\n<itunes:summary>%DESCRIPTION%</itunes:summary>\n<category>%CATEGORY%</category>\n<link>%LINK%</link>\n<language>%LANGUAGE%</language>\n<copyright>%COPYRIGHT%</copyright>\n<lastBuildDate>%BUILD_DATE%</lastBuildDate>\n<pubDate>%PUBLISH_DATE%</pubDate>\n<direct:pubDate>%DIRECT_PUBLISH_DATE%</direct:pubDate>\n<managingEditor>%EDITOR%</managingEditor>\n<webMaster>%WEBMASTER%</webMaster>\n<generator>%GENERATOR%</generator>\n<image>\n <url>%IMAGE_URL%</url>\n <title>%TITLE%</title>\n <link>%LINK%</link>\n <width>%IMAGE_WIDTH%</width>\n <height>%IMAGE_HEIGHT%</height>\n <description>%IMAGE_DESCRIPTION%</description>\n</image>\n<atom:link href=\"%FEED_URL%\" rel=\"self\" type=\"application/rss+xml\" />\n<itunes:author>%AUTHOR%</itunes:author>\n<itunes:type>episodic</itunes:type>\n<itunes:owner>\n <itunes:name>%OWNER_NAME%</itunes:name>\n <itunes:email>%OWNER_EMAIL%</itunes:email>\n</itunes:owner>\n<itunes:image href=\"%IMAGE_URL%\" />\n%ITUNES_CATEGORY%\n<itunes:explicit>%EXPLICIT%</itunes:explicit>");
|
||||
|
||||
// AppleSuperfeedSchema
|
||||
c_channel_templates.push_back("<title>%TITLE%</title>\n<description>%DESCRIPTION%</description>\n<itunes:summary>%DESCRIPTION%</itunes:summary>\n<category>%CATEGORY%</category>\n<link>%LINK%</link>\n<language>%LANGUAGE%</language>\n<copyright>%COPYRIGHT%</copyright>\n<lastBuildDate>%BUILD_DATE%</lastBuildDate>\n<pubDate>%PUBLISH_DATE%</pubDate>\n<managingEditor>%EDITOR%</managingEditor>\n<webMaster>%WEBMASTER%</webMaster>\n<generator>%GENERATOR%</generator>\n<image>\n <url>%IMAGE_URL%</url>\n <title>%TITLE%</title>\n <link>%LINK%</link>\n <width>%IMAGE_WIDTH%</width>\n <height>%IMAGE_HEIGHT%</height>\n <description>%IMAGE_DESCRIPTION%</description>\n</image>\n<atom:link href=\"%FEED_URL%\" rel=\"self\" type=\"application/rss+xml\" />\n<itunes:author>%AUTHOR%</itunes:author>\n<itunes:type>episodic</itunes:type>\n<itunes:owner>\n <itunes:name>%OWNER_NAME%</itunes:name>\n <itunes:email>%OWNER_EMAIL%</itunes:email>\n</itunes:owner>\n<itunes:image href=\"%IMAGE_URL%\" />\n%ITUNES_CATEGORY%\n<itunes:explicit>%EXPLICIT%</itunes:explicit>");
|
||||
c_channel_templates.push_back("<title>%TITLE%</title>\n<description>%DESCRIPTION%</description>\n<itunes:summary>%DESCRIPTION%</itunes:summary>\n<category>%CATEGORY%</category>\n<link>%LINK%</link>\n<language>%LANGUAGE%</language>\n<copyright>%COPYRIGHT%</copyright>\n<lastBuildDate>%BUILD_DATE%</lastBuildDate>\n<pubDate>%PUBLISH_DATE%</pubDate>\n<direct:pubDate>%DIRECT_PUBLISH_DATE%</direct:pubDate>\n<managingEditor>%EDITOR%</managingEditor>\n<webMaster>%WEBMASTER%</webMaster>\n<generator>%GENERATOR%</generator>\n<image>\n <url>%IMAGE_URL%</url>\n <title>%TITLE%</title>\n <link>%LINK%</link>\n <width>%IMAGE_WIDTH%</width>\n <height>%IMAGE_HEIGHT%</height>\n <description>%IMAGE_DESCRIPTION%</description>\n</image>\n<atom:link href=\"%FEED_URL%\" rel=\"self\" type=\"application/rss+xml\" />\n<itunes:author>%AUTHOR%</itunes:author>\n<itunes:type>episodic</itunes:type>\n<itunes:owner>\n <itunes:name>%OWNER_NAME%</itunes:name>\n <itunes:email>%OWNER_EMAIL%</itunes:email>\n</itunes:owner>\n<itunes:image href=\"%IMAGE_URL%\" />\n%ITUNES_CATEGORY%\n<itunes:explicit>%EXPLICIT%</itunes:explicit>");
|
||||
|
||||
|
||||
//
|
||||
@ -155,10 +155,10 @@ RDRssSchemas::RDRssSchemas()
|
||||
c_item_templates.push_back("<title>%ITEM_TITLE%</title>\n<link>%ITEM_LINK%</link>\n<guid isPermaLink=\"false\">%ITEM_GUID%</guid>\n<description>%ITEM_DESCRIPTION%</description>\n<author>%ITEM_AUTHOR%</author>\n<comments>%ITEM_COMMENTS%</comments>\n<source url=\"%ITEM_SOURCE_URL%\">%ITEM_SOURCE_TEXT%</source>\n<enclosure url=\"%ITEM_AUDIO_URL%\" length=\"%ITEM_AUDIO_LENGTH%\" type=\"audio/mpeg\" />\n<category>%ITEM_CATEGORY%</category>\n<pubDate>%ITEM_PUBLISH_DATE%</pubDate>");
|
||||
|
||||
// AppleSchema
|
||||
c_item_templates.push_back("<title>%ITEM_TITLE%</title>\n<itunes:title>%ITEM_TITLE%</itunes:title>\n<link>%ITEM_LINK%</link>\n<guid isPermaLink=\"false\">%ITEM_GUID%</guid>\n<description>%ITEM_DESCRIPTION%</description>\n<itunes:summary>%ITEM_DESCRIPTION%</itunes:summary>\n<author>%ITEM_AUTHOR%</author>\n<itunes:author>%ITEM_AUTHOR%</itunes:author>\n<comments>%ITEM_COMMENTS%</comments>\n<source url=\"%ITEM_SOURCE_URL%\">%ITEM_SOURCE_TEXT%</source>\n<enclosure url=\"%ITEM_AUDIO_URL%\" length=\"%ITEM_AUDIO_LENGTH%\" type=\"audio/mpeg\" />\n<category>%ITEM_CATEGORY%</category>\n<pubDate>%ITEM_PUBLISH_DATE%</pubDate>\n<itunes:duration>%ITEM_AUDIO_SECONDS%</itunes:duration>\n<itunes:image href=\"%ITEM_IMAGE_URL%\" />\n<itunes:explicit>%ITEM_EXPLICIT%</itunes:explicit>");
|
||||
c_item_templates.push_back("<title>%ITEM_TITLE%</title>\n<itunes:title>%ITEM_TITLE%</itunes:title>\n<link>%ITEM_LINK%</link>\n<guid isPermaLink=\"false\">%ITEM_GUID%</guid>\n<description>%ITEM_DESCRIPTION%</description>\n<itunes:summary>%ITEM_DESCRIPTION%</itunes:summary>\n<author>%ITEM_AUTHOR%</author>\n<itunes:author>%ITEM_AUTHOR%</itunes:author>\n<comments>%ITEM_COMMENTS%</comments>\n<source url=\"%ITEM_SOURCE_URL%\">%ITEM_SOURCE_TEXT%</source>\n<enclosure url=\"%ITEM_AUDIO_URL%\" length=\"%ITEM_AUDIO_LENGTH%\" type=\"audio/mpeg\" />\n<category>%ITEM_CATEGORY%</category>\n<pubDate>%ITEM_PUBLISH_DATE%</pubDate>\n<direct:pubDate>%ITEM_DIRECT_PUBLISH_DATE%</direct:pubDate>\n<itunes:duration>%ITEM_AUDIO_SECONDS%</itunes:duration>\n<itunes:image href=\"%ITEM_IMAGE_URL%\" />\n<itunes:explicit>%ITEM_EXPLICIT%</itunes:explicit>");
|
||||
|
||||
// AppleSuperfeedSchema
|
||||
c_item_templates.push_back("<superfeed:channelTitle>%ITEM_CHANNEL_TITLE%</superfeed:channelTitle>\n<superfeed:channelDescription>%ITEM_CHANNEL_DESCRIPTION%</superfeed:channelDescription>\n<title>%ITEM_TITLE%</title>\n<itunes:title>%ITEM_TITLE%</itunes:title>\n<link>%ITEM_LINK%</link>\n<guid isPermaLink=\"false\">%ITEM_GUID%</guid>\n<description>%ITEM_DESCRIPTION%</description>\n<itunes:summary>%ITEM_DESCRIPTION%</itunes:summary>\n<author>%ITEM_AUTHOR%</author>\n<itunes:author>%ITEM_AUTHOR%</itunes:author>\n<comments>%ITEM_COMMENTS%</comments>\n<source url=\"%ITEM_SOURCE_URL%\">%ITEM_SOURCE_TEXT%</source>\n<enclosure url=\"%ITEM_AUDIO_URL%\" length=\"%ITEM_AUDIO_LENGTH%\" type=\"audio/mpeg\" />\n<category>%ITEM_CATEGORY%</category>\n<pubDate>%ITEM_PUBLISH_DATE%</pubDate>\n<itunes:duration>%ITEM_AUDIO_SECONDS%</itunes:duration>\n<itunes:image href=\"%ITEM_IMAGE_URL%\" />\n<itunes:explicit>%ITEM_EXPLICIT%</itunes:explicit>");
|
||||
c_item_templates.push_back("<superfeed:channelTitle>%ITEM_CHANNEL_TITLE%</superfeed:channelTitle>\n<superfeed:channelDescription>%ITEM_CHANNEL_DESCRIPTION%</superfeed:channelDescription>\n<title>%ITEM_TITLE%</title>\n<itunes:title>%ITEM_TITLE%</itunes:title>\n<link>%ITEM_LINK%</link>\n<guid isPermaLink=\"false\">%ITEM_GUID%</guid>\n<description>%ITEM_DESCRIPTION%</description>\n<itunes:summary>%ITEM_DESCRIPTION%</itunes:summary>\n<author>%ITEM_AUTHOR%</author>\n<itunes:author>%ITEM_AUTHOR%</itunes:author>\n<comments>%ITEM_COMMENTS%</comments>\n<source url=\"%ITEM_SOURCE_URL%\">%ITEM_SOURCE_TEXT%</source>\n<enclosure url=\"%ITEM_AUDIO_URL%\" length=\"%ITEM_AUDIO_LENGTH%\" type=\"audio/mpeg\" />\n<category>%ITEM_CATEGORY%</category>\n<pubDate>%ITEM_PUBLISH_DATE%</pubDate>\n<direct:pubDate>%ITEM_DIRECT_PUBLISH_DATE%</direct:pubDate>\n<itunes:duration>%ITEM_AUDIO_SECONDS%</itunes:duration>\n<itunes:image href=\"%ITEM_IMAGE_URL%\" />\n<itunes:explicit>%ITEM_EXPLICIT%</itunes:explicit>");
|
||||
|
||||
//
|
||||
// Categories
|
||||
|
Loading…
x
Reference in New Issue
Block a user