diff --git a/client/components/modals/rssfeed/OpenCloseModal.vue b/client/components/modals/rssfeed/OpenCloseModal.vue
index 576bb4d7..e50e2bca 100644
--- a/client/components/modals/rssfeed/OpenCloseModal.vue
+++ b/client/components/modals/rssfeed/OpenCloseModal.vue
@@ -14,6 +14,21 @@
content_copy
+
+
+
+
{{ $strings.LabelRssFeedPreventIndexing }}
+
{{ currentFeed.meta.preventIndexing ? 'Yes' : 'No' }}
+
+
+
{{ $strings.LabelRssFeedCustomOwnerName }}
+
{{ currentFeed.meta.ownerName }}
+
+
+
{{ $strings.LabelRssFeedCustomOwnerEmail }}
+
{{ currentFeed.meta.ownerEmail }}
+
+
{{ $strings.HeaderOpenRSSFeed }}
@@ -22,6 +37,7 @@
{{ $getString('MessageFeedURLWillBe', [demoFeedUrl]) }}
+
{{ $strings.NoteRSSFeedPodcastAppsHttps }}
{{ $strings.NoteRSSFeedPodcastAppsPubDate }}
@@ -41,7 +57,12 @@ export default {
return {
processing: false,
newFeedSlug: null,
- currentFeed: null
+ currentFeed: null,
+ metadataDetails: {
+ preventIndexing: true,
+ ownerName: '',
+ ownerEmail: ''
+ },
}
},
watch: {
@@ -107,7 +128,8 @@ export default {
const payload = {
serverAddress: window.origin,
- slug: this.newFeedSlug
+ slug: this.newFeedSlug,
+ metadataDetails: this.metadataDetails
}
if (this.$isDev) payload.serverAddress = `http://localhost:3333${this.$config.routerBasePath}`
diff --git a/client/components/widgets/RssFeedMetadataBuilder.vue b/client/components/widgets/RssFeedMetadataBuilder.vue
new file mode 100644
index 00000000..93a114ab
--- /dev/null
+++ b/client/components/widgets/RssFeedMetadataBuilder.vue
@@ -0,0 +1,92 @@
+
+
+
+
+
{{ $strings.HeaderRSSFeedGeneral }}
+
+
+
{{ $strings.HeaderAdvanced }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/client/strings/de.json b/client/strings/de.json
index 62c22aa3..0dfdac31 100644
--- a/client/strings/de.json
+++ b/client/strings/de.json
@@ -127,6 +127,7 @@
"HeaderRemoveEpisode": "Episode löschen",
"HeaderRemoveEpisodes": "Lösche {0} Episoden",
"HeaderRSSFeedIsOpen": "RSS-Feed ist geöffnet",
+ "HeaderRSSFeedGeneral": "RSS Detailss",
"HeaderSavedMediaProgress": "Gespeicherte Hörfortschritte",
"HeaderSchedule": "Zeitplan",
"HeaderScheduleLibraryScans": "Automatische Bibliotheksscans",
@@ -304,6 +305,7 @@
"LabelPodcasts": "Podcasts",
"LabelPodcastType": "Podcast Type",
"LabelPrefixesToIgnore": "Zu ignorierende(s) Vorwort(e) (Groß- und Kleinschreibung wird nicht berücksichtigt)",
+ "LabelPreventIndexing": "Prevent your feed from being indexed by iTunes and Google podcast directories",
"LabelProgress": "Fortschritt",
"LabelProvider": "Anbieter",
"LabelPubDate": "Veröffentlichungsdatum",
@@ -318,6 +320,9 @@
"LabelRSSFeedOpen": "RSS Feed Offen",
"LabelRSSFeedSlug": "RSS Feed Schlagwort",
"LabelRSSFeedURL": "RSS Feed URL",
+ "LabelRssFeedCustomOwnerName": "Custom owner Name",
+ "LabelRssFeedCustomOwnerEmail": "Custom owner Email",
+ "LabelRssFeedPreventIndexing": "Prevent Indexing",
"LabelSearchTerm": "Begriff suchen",
"LabelSearchTitle": "Titel",
"LabelSearchTitleOrASIN": "Titel oder ASIN",
diff --git a/client/strings/en-us.json b/client/strings/en-us.json
index d8ab94c2..29efde63 100644
--- a/client/strings/en-us.json
+++ b/client/strings/en-us.json
@@ -127,6 +127,7 @@
"HeaderRemoveEpisode": "Remove Episode",
"HeaderRemoveEpisodes": "Remove {0} Episodes",
"HeaderRSSFeedIsOpen": "RSS Feed is Open",
+ "HeaderRSSFeedGeneral": "RSS Detailss",
"HeaderSavedMediaProgress": "Saved Media Progress",
"HeaderSchedule": "Schedule",
"HeaderScheduleLibraryScans": "Schedule Automatic Library Scans",
@@ -304,6 +305,7 @@
"LabelPodcasts": "Podcasts",
"LabelPodcastType": "Podcast Type",
"LabelPrefixesToIgnore": "Prefixes to Ignore (case insensitive)",
+ "LabelPreventIndexing": "Prevent your feed from being indexed by iTunes and Google podcast directories",
"LabelProgress": "Progress",
"LabelProvider": "Provider",
"LabelPubDate": "Pub Date",
@@ -318,6 +320,9 @@
"LabelRSSFeedOpen": "RSS Feed Open",
"LabelRSSFeedSlug": "RSS Feed Slug",
"LabelRSSFeedURL": "RSS Feed URL",
+ "LabelRssFeedCustomOwnerName": "Custom owner Name",
+ "LabelRssFeedCustomOwnerEmail": "Custom owner Email",
+ "LabelRssFeedPreventIndexing": "Prevent Indexing",
"LabelSearchTerm": "Search Term",
"LabelSearchTitle": "Search Title",
"LabelSearchTitleOrASIN": "Search Title or ASIN",
diff --git a/client/strings/es.json b/client/strings/es.json
index d8ab94c2..710d5ef8 100644
--- a/client/strings/es.json
+++ b/client/strings/es.json
@@ -127,6 +127,7 @@
"HeaderRemoveEpisode": "Remove Episode",
"HeaderRemoveEpisodes": "Remove {0} Episodes",
"HeaderRSSFeedIsOpen": "RSS Feed is Open",
+ "HeaderRSSFeedGeneral": "RSS Details",
"HeaderSavedMediaProgress": "Saved Media Progress",
"HeaderSchedule": "Schedule",
"HeaderScheduleLibraryScans": "Schedule Automatic Library Scans",
@@ -304,6 +305,7 @@
"LabelPodcasts": "Podcasts",
"LabelPodcastType": "Podcast Type",
"LabelPrefixesToIgnore": "Prefixes to Ignore (case insensitive)",
+ "LabelPreventIndexing": "Prevent your feed from being indexed by iTunes and Google podcast directories",
"LabelProgress": "Progress",
"LabelProvider": "Provider",
"LabelPubDate": "Pub Date",
@@ -318,6 +320,9 @@
"LabelRSSFeedOpen": "RSS Feed Open",
"LabelRSSFeedSlug": "RSS Feed Slug",
"LabelRSSFeedURL": "RSS Feed URL",
+ "LabelRssFeedCustomOwnerName": "Custom owner Name",
+ "LabelRssFeedCustomOwnerEmail": "Custom owner Email",
+ "LabelRssFeedPreventIndexing": "Prevent Indexing",
"LabelSearchTerm": "Search Term",
"LabelSearchTitle": "Search Title",
"LabelSearchTitleOrASIN": "Search Title or ASIN",
diff --git a/client/strings/fr.json b/client/strings/fr.json
index 5f0b1f3c..447330eb 100644
--- a/client/strings/fr.json
+++ b/client/strings/fr.json
@@ -127,6 +127,7 @@
"HeaderRemoveEpisode": "Supprimer l'épisode",
"HeaderRemoveEpisodes": "Suppression de {0} épisodes",
"HeaderRSSFeedIsOpen": "Le Flux RSS est actif",
+ "HeaderRSSFeedGeneral": "RSS Detailss",
"HeaderSavedMediaProgress": "Progression de la sauvegarde des médias",
"HeaderSchedule": "Programmation",
"HeaderScheduleLibraryScans": "Analyse automatique de la bibliothèque",
@@ -304,6 +305,7 @@
"LabelPodcasts": "Podcasts",
"LabelPodcastType": "Podcast Type",
"LabelPrefixesToIgnore": "Préfixes à Ignorer (Insensible à la Casse)",
+ "LabelPreventIndexing": "Prevent your feed from being indexed by iTunes and Google podcast directories",
"LabelProgress": "Progression",
"LabelProvider": "Fournisseur",
"LabelPubDate": "Date de publication",
@@ -318,6 +320,9 @@
"LabelRSSFeedOpen": "Flux RSS ouvert",
"LabelRSSFeedSlug": "Identificateur d'adresse du Flux RSS ",
"LabelRSSFeedURL": "Adresse du flux RSS",
+ "LabelRssFeedCustomOwnerName": "Custom owner Name",
+ "LabelRssFeedCustomOwnerEmail": "Custom owner Email",
+ "LabelRssFeedPreventIndexing": "Prevent Indexing",
"LabelSearchTerm": "Terme de recherche",
"LabelSearchTitle": "Titre de recherche",
"LabelSearchTitleOrASIN": "Recherche du titre ou ASIN",
diff --git a/client/strings/hr.json b/client/strings/hr.json
index 9b7b4edb..c41645b9 100644
--- a/client/strings/hr.json
+++ b/client/strings/hr.json
@@ -127,6 +127,7 @@
"HeaderRemoveEpisode": "Ukloni epizodu",
"HeaderRemoveEpisodes": "Ukloni {0} epizoda/-e",
"HeaderRSSFeedIsOpen": "RSS Feed je otvoren",
+ "HeaderRSSFeedGeneral": "RSS Detailss",
"HeaderSavedMediaProgress": "Spremljen Media Progress",
"HeaderSchedule": "Schedule",
"HeaderScheduleLibraryScans": "Zakaži automatsko skeniranje biblioteke",
@@ -304,6 +305,7 @@
"LabelPodcasts": "Podcasts",
"LabelPodcastType": "Podcast Type",
"LabelPrefixesToIgnore": "Prefiksi za ignorirati (mala i velika slova nisu bitna)",
+ "LabelPreventIndexing": "Prevent your feed from being indexed by iTunes and Google podcast directories",
"LabelProgress": "Napredak",
"LabelProvider": "Dobavljač",
"LabelPubDate": "Datam izdavanja",
@@ -318,6 +320,9 @@
"LabelRSSFeedOpen": "RSS Feed Open",
"LabelRSSFeedSlug": "RSS Feed Slug",
"LabelRSSFeedURL": "RSS Feed URL",
+ "LabelRssFeedCustomOwnerName": "Custom owner Name",
+ "LabelRssFeedCustomOwnerEmail": "Custom owner Email",
+ "LabelRssFeedPreventIndexing": "Prevent Indexing",
"LabelSearchTerm": "Traži pojam",
"LabelSearchTitle": "Traži naslov",
"LabelSearchTitleOrASIN": "Traži naslov ili ASIN",
diff --git a/client/strings/it.json b/client/strings/it.json
index 9aa3a7b0..9d3c7145 100644
--- a/client/strings/it.json
+++ b/client/strings/it.json
@@ -127,6 +127,7 @@
"HeaderRemoveEpisode": "Rimuovi Episodi",
"HeaderRemoveEpisodes": "Rimuovi {0} Episodi",
"HeaderRSSFeedIsOpen": "RSS Feed è aperto",
+ "HeaderRSSFeedGeneral": "RSS Detailss",
"HeaderSavedMediaProgress": "Progressi salvati",
"HeaderSchedule": "Schedula",
"HeaderScheduleLibraryScans": "Schedula la scansione della libreria",
@@ -304,6 +305,7 @@
"LabelPodcasts": "Podcasts",
"LabelPodcastType": "Podcast Type",
"LabelPrefixesToIgnore": "Suffissi da ignorare (specificando maiuscole e minuscole)",
+ "LabelPreventIndexing": "Prevent your feed from being indexed by iTunes and Google podcast directories",
"LabelProgress": "Cominciati",
"LabelProvider": "Provider",
"LabelPubDate": "Data Pubblicazione",
@@ -318,6 +320,9 @@
"LabelRSSFeedOpen": "RSS Feed Aperto",
"LabelRSSFeedSlug": "RSS Feed Slug",
"LabelRSSFeedURL": "RSS Feed URL",
+ "LabelRssFeedCustomOwnerName": "Custom owner Name",
+ "LabelRssFeedCustomOwnerEmail": "Custom owner Email",
+ "LabelRssFeedPreventIndexing": "Prevent Indexing",
"LabelSearchTerm": "Ricerca",
"LabelSearchTitle": "Cerca Titolo",
"LabelSearchTitleOrASIN": "Cerca titolo o ASIN",
diff --git a/client/strings/pl.json b/client/strings/pl.json
index 50576dd0..ab152a4f 100644
--- a/client/strings/pl.json
+++ b/client/strings/pl.json
@@ -127,6 +127,7 @@
"HeaderRemoveEpisode": "Usuń odcinek",
"HeaderRemoveEpisodes": "Usuń {0} odcinków",
"HeaderRSSFeedIsOpen": "Kanał RSS jest otwarty",
+ "HeaderRSSFeedGeneral": "RSS Detailss",
"HeaderSavedMediaProgress": "Zapisany postęp",
"HeaderSchedule": "Harmonogram",
"HeaderScheduleLibraryScans": "Zaplanuj automatyczne skanowanie biblioteki",
@@ -304,6 +305,7 @@
"LabelPodcasts": "Podcasty",
"LabelPodcastType": "Podcast Type",
"LabelPrefixesToIgnore": "Ignorowane prefiksy (wielkość liter nie ma znaczenia)",
+ "LabelPreventIndexing": "Prevent your feed from being indexed by iTunes and Google podcast directories",
"LabelProgress": "Postęp",
"LabelProvider": "Dostawca",
"LabelPubDate": "Data publikacji",
@@ -318,6 +320,9 @@
"LabelRSSFeedOpen": "RSS Feed otwarty",
"LabelRSSFeedSlug": "RSS Feed Slug",
"LabelRSSFeedURL": "URL kanały RSS",
+ "LabelRssFeedCustomOwnerName": "Custom owner Name",
+ "LabelRssFeedCustomOwnerEmail": "Custom owner Email",
+ "LabelRssFeedPreventIndexing": "Prevent Indexing",
"LabelSearchTerm": "Wyszukiwanie frazy",
"LabelSearchTitle": "Wyszukaj tytuł",
"LabelSearchTitleOrASIN": "Szukaj tytuł lub ASIN",
diff --git a/client/strings/ru.json b/client/strings/ru.json
index ca398672..fa45363b 100644
--- a/client/strings/ru.json
+++ b/client/strings/ru.json
@@ -127,6 +127,7 @@
"HeaderRemoveEpisode": "Удалить Эпизод",
"HeaderRemoveEpisodes": "Удалить {0} Эпизодов",
"HeaderRSSFeedIsOpen": "RSS-канал Открыт",
+ "HeaderRSSFeedGeneral": "RSS Detailss",
"HeaderSavedMediaProgress": "Прогресс Медиа Сохранен",
"HeaderSchedule": "Планировщик",
"HeaderScheduleLibraryScans": "Планировщик Автоматического Сканирования Библиотеки",
@@ -304,6 +305,7 @@
"LabelPodcasts": "Подкасты",
"LabelPodcastType": "Podcast Type",
"LabelPrefixesToIgnore": "Игнорируемые Префиксы (без учета регистра)",
+ "LabelPreventIndexing": "Prevent your feed from being indexed by iTunes and Google podcast directories",
"LabelProgress": "Прогресс",
"LabelProvider": "Провайдер",
"LabelPubDate": "Дата Публикации",
@@ -318,6 +320,9 @@
"LabelRSSFeedOpen": "Открыть RSS-канал",
"LabelRSSFeedSlug": "Встроить RSS-канал",
"LabelRSSFeedURL": "URL RSS-канала",
+ "LabelRssFeedCustomOwnerName": "Custom owner Name",
+ "LabelRssFeedCustomOwnerEmail": "Custom owner Email",
+ "LabelRssFeedPreventIndexing": "Prevent Indexing",
"LabelSearchTerm": "Поисковый Запрос",
"LabelSearchTitle": "Поиск по Названию",
"LabelSearchTitleOrASIN": "Поиск по Названию или ASIN",
diff --git a/client/strings/zh-cn.json b/client/strings/zh-cn.json
index 32927a79..54d17dca 100644
--- a/client/strings/zh-cn.json
+++ b/client/strings/zh-cn.json
@@ -127,6 +127,7 @@
"HeaderRemoveEpisode": "移除剧集",
"HeaderRemoveEpisodes": "移除 {0} 剧集",
"HeaderRSSFeedIsOpen": "RSS 源已打开",
+ "HeaderRSSFeedGeneral": "RSS Detailss",
"HeaderSavedMediaProgress": "保存媒体进度",
"HeaderSchedule": "计划任务",
"HeaderScheduleLibraryScans": "自动扫描媒体库",
@@ -304,6 +305,7 @@
"LabelPodcasts": "播客",
"LabelPodcastType": "Podcast Type",
"LabelPrefixesToIgnore": "忽略的前缀 (不区分大小写)",
+ "LabelPreventIndexing": "Prevent your feed from being indexed by iTunes and Google podcast directories",
"LabelProgress": "进度",
"LabelProvider": "供应商",
"LabelPubDate": "出版日期",
@@ -318,6 +320,9 @@
"LabelRSSFeedOpen": "打开 RSS 源",
"LabelRSSFeedSlug": "RSS 源段",
"LabelRSSFeedURL": "RSS 源 URL",
+ "LabelRssFeedCustomOwnerName": "Custom owner Name",
+ "LabelRssFeedCustomOwnerEmail": "Custom owner Email",
+ "LabelRssFeedPreventIndexing": "Prevent Indexing",
"LabelSearchTerm": "搜索项",
"LabelSearchTitle": "搜索标题",
"LabelSearchTitleOrASIN": "搜索标题或 ASIN",
diff --git a/server/controllers/RSSFeedController.js b/server/controllers/RSSFeedController.js
index 86c37d72..9732368d 100644
--- a/server/controllers/RSSFeedController.js
+++ b/server/controllers/RSSFeedController.js
@@ -18,7 +18,7 @@ class RSSFeedController {
}
// Check request body options exist
- if (!options.serverAddress || !options.slug) {
+ if (!options.serverAddress || !options.slug || options.metadataDetails == null) {
Logger.error(`[RSSFeedController] Invalid request body to open RSS feed`)
return res.status(400).send('Invalid request body')
}
@@ -49,7 +49,7 @@ class RSSFeedController {
if (!collection) return res.sendStatus(404)
// Check request body options exist
- if (!options.serverAddress || !options.slug) {
+ if (!options.serverAddress || !options.slug || options.metadataDetails == null) {
Logger.error(`[RSSFeedController] Invalid request body to open RSS feed`)
return res.status(400).send('Invalid request body')
}
@@ -83,7 +83,7 @@ class RSSFeedController {
if (!series) return res.sendStatus(404)
// Check request body options exist
- if (!options.serverAddress || !options.slug) {
+ if (!options.serverAddress || !options.slug || options.metadataDetails == null) {
Logger.error(`[RSSFeedController] Invalid request body to open RSS feed`)
return res.status(400).send('Invalid request body')
}
@@ -134,4 +134,4 @@ class RSSFeedController {
next()
}
}
-module.exports = new RSSFeedController()
\ No newline at end of file
+module.exports = new RSSFeedController()
diff --git a/server/managers/RssFeedManager.js b/server/managers/RssFeedManager.js
index 1d842559..f5f74313 100644
--- a/server/managers/RssFeedManager.js
+++ b/server/managers/RssFeedManager.js
@@ -188,9 +188,12 @@ class RssFeedManager {
async openFeedForItem(user, libraryItem, options) {
const serverAddress = options.serverAddress
const slug = options.slug
+ const preventIndexing = options.metadataDetails.preventIndexing
+ const ownerName = options.metadataDetails.ownerName
+ const ownerEmail = options.metadataDetails.ownerEmail
const feed = new Feed()
- feed.setFromItem(user.id, slug, libraryItem, serverAddress)
+ feed.setFromItem(user.id, slug, libraryItem, serverAddress, preventIndexing, ownerName, ownerEmail)
this.feeds[feed.id] = feed
Logger.debug(`[RssFeedManager] Opened RSS feed "${feed.feedUrl}"`)
@@ -202,9 +205,12 @@ class RssFeedManager {
async openFeedForCollection(user, collectionExpanded, options) {
const serverAddress = options.serverAddress
const slug = options.slug
+ const preventIndexing = options.metadataDetails.preventIndexing
+ const ownerName = options.metadataDetails.ownerName
+ const ownerEmail = options.metadataDetails.ownerEmail
const feed = new Feed()
- feed.setFromCollection(user.id, slug, collectionExpanded, serverAddress)
+ feed.setFromCollection(user.id, slug, collectionExpanded, serverAddress, preventIndexing, ownerName, ownerEmail)
this.feeds[feed.id] = feed
Logger.debug(`[RssFeedManager] Opened RSS feed "${feed.feedUrl}"`)
@@ -216,9 +222,12 @@ class RssFeedManager {
async openFeedForSeries(user, seriesExpanded, options) {
const serverAddress = options.serverAddress
const slug = options.slug
+ const preventIndexing = options.metadataDetails.preventIndexing
+ const ownerName = options.metadataDetails.ownerName
+ const ownerEmail = options.metadataDetails.ownerEmail
const feed = new Feed()
- feed.setFromSeries(user.id, slug, seriesExpanded, serverAddress)
+ feed.setFromSeries(user.id, slug, seriesExpanded, serverAddress, preventIndexing, ownerName, ownerEmail)
this.feeds[feed.id] = feed
Logger.debug(`[RssFeedManager] Opened RSS feed "${feed.feedUrl}"`)
@@ -246,4 +255,4 @@ class RssFeedManager {
return this.handleCloseFeed(feed)
}
}
-module.exports = RssFeedManager
\ No newline at end of file
+module.exports = RssFeedManager
diff --git a/server/objects/Feed.js b/server/objects/Feed.js
index e557c30a..0e67df8d 100644
--- a/server/objects/Feed.js
+++ b/server/objects/Feed.js
@@ -70,7 +70,8 @@ class Feed {
id: this.id,
entityType: this.entityType,
entityId: this.entityId,
- feedUrl: this.feedUrl
+ feedUrl: this.feedUrl,
+ meta: this.meta.toJSONMinified(),
}
}
@@ -80,7 +81,7 @@ class Feed {
return episode.fullPath
}
- setFromItem(userId, slug, libraryItem, serverAddress) {
+ setFromItem(userId, slug, libraryItem, serverAddress, preventIndexing = true, ownerName = null, ownerEmail = null) {
const media = libraryItem.media
const mediaMetadata = media.metadata
const isPodcast = libraryItem.mediaType === 'podcast'
@@ -108,6 +109,9 @@ class Feed {
this.meta.explicit = !!mediaMetadata.explicit
this.meta.type = mediaMetadata.type
this.meta.language = mediaMetadata.language
+ this.meta.preventIndexing = preventIndexing
+ this.meta.ownerName = ownerName
+ this.meta.ownerEmail = ownerEmail
this.episodes = []
if (isPodcast) { // PODCAST EPISODES
diff --git a/server/objects/FeedMeta.js b/server/objects/FeedMeta.js
index db414159..ed027972 100644
--- a/server/objects/FeedMeta.js
+++ b/server/objects/FeedMeta.js
@@ -9,6 +9,9 @@ class FeedMeta {
this.explicit = null
this.type = null
this.language = null
+ this.preventIndexing = null
+ this.ownerName = null
+ this.ownerEmail = null
if (meta) {
this.construct(meta)
@@ -25,6 +28,9 @@ class FeedMeta {
this.explicit = meta.explicit
this.type = meta.type
this.language = meta.language
+ this.preventIndexing = meta.preventIndexing
+ this.ownerName = meta.ownerName
+ this.ownerEmail = meta.ownerEmail
}
toJSON() {
@@ -37,7 +43,20 @@ class FeedMeta {
link: this.link,
explicit: this.explicit,
type: this.type,
- language: this.language
+ language: this.language,
+ preventIndexing: this.preventIndexing,
+ ownerName: this.ownerName,
+ ownerEmail: this.ownerEmail
+ }
+ }
+
+ toJSONMinified() {
+ return {
+ title: this.title,
+ description: this.description,
+ preventIndexing: this.preventIndexing,
+ ownerName: this.ownerName,
+ ownerEmail: this.ownerEmail
}
}
@@ -52,7 +71,8 @@ class FeedMeta {
custom_namespaces: {
'itunes': 'http://www.itunes.com/dtds/podcast-1.0.dtd',
'psc': 'http://podlove.org/simple-chapters',
- 'podcast': 'https://podcastindex.org/namespace/1.0'
+ 'podcast': 'https://podcastindex.org/namespace/1.0',
+ 'googleplay': 'http://www.google.com/schemas/play-podcasts/1.0'
},
custom_elements: [
{ 'language': this.language || 'en' },
@@ -69,13 +89,13 @@ class FeedMeta {
},
{
'itunes:owner': [
- { 'itunes:name': this.author || '' },
- { 'itunes:email': '' }
+ { 'itunes:name': this.ownerName || this.author || '' },
+ { 'itunes:email': this.ownerEmail || '' }
]
},
- {
- "itunes:explicit": !!this.explicit
- }
+ { 'itunes:explicit': !!this.explicit },
+ { 'itunes:block': !!this.preventIndexing },
+ { 'googleplay:block': !!this.preventIndexing }
]
}
}