mirror of
https://github.com/comatory/fb2iCal
synced 2025-06-05 22:09:25 +02:00
remove URL requirement for DOM parser
This commit is contained in:
@@ -38,7 +38,7 @@ const createLocationData = (streetText, areaText) => {
|
||||
|
||||
// NOTE: Fallback parser
|
||||
// Attempt reading event data directly from DOM
|
||||
const parseUsingDOM = (html, url, { logger }) => {
|
||||
const parseUsingDOM = (html, { logger }) => {
|
||||
if (logger) {
|
||||
logger.log({
|
||||
message: 'Using fallback DOM parser',
|
||||
@@ -74,7 +74,6 @@ const parseUsingDOM = (html, url, { logger }) => {
|
||||
start,
|
||||
duration,
|
||||
title,
|
||||
url,
|
||||
}
|
||||
|
||||
if (!eventData.title || !eventData.start) {
|
||||
|
@@ -8,13 +8,18 @@ const retrieveICS = async (URLparameter, { logger }) => {
|
||||
const url = getNormalizedUrl(URLparameter)
|
||||
const html = await crawl(url, { logger })
|
||||
const LDJSONEventData = parseUsingLDJSONData(html, { logger })
|
||||
const eventData = LDJSONEventData || parseUsingDOM(html, url, { logger })
|
||||
const rawEventData = LDJSONEventData || parseUsingDOM(html, { logger })
|
||||
|
||||
if (!eventData) {
|
||||
if (!rawEventData) {
|
||||
throw createParserError()
|
||||
return
|
||||
}
|
||||
|
||||
const eventData = {
|
||||
...rawEventData,
|
||||
url: rawEventData.url || url,
|
||||
}
|
||||
|
||||
const icsContent = await generateICS(eventData)
|
||||
return icsContent
|
||||
}
|
||||
|
Reference in New Issue
Block a user