From 9296bcdc86494c5a5d61a0afa9086c4e7ce8e70c Mon Sep 17 00:00:00 2001 From: orangecoding Date: Wed, 3 Jun 2026 08:12:30 +0200 Subject: [PATCH] fixing 'open in fredy' link --- lib/notification/adapter/apprise.js | 2 +- lib/notification/adapter/console.js | 2 +- lib/notification/adapter/discord_webhook.js | 2 +- lib/notification/adapter/mattermost.js | 2 +- lib/notification/adapter/ntfy.js | 2 +- lib/notification/adapter/pushover.js | 3 ++- lib/notification/adapter/slack.js | 2 +- lib/notification/adapter/slack_with_webhooks.js | 2 +- lib/notification/adapter/telegram.js | 8 ++++---- package.json | 2 +- 10 files changed, 14 insertions(+), 13 deletions(-) diff --git a/lib/notification/adapter/apprise.js b/lib/notification/adapter/apprise.js index 52b599f..6243300 100644 --- a/lib/notification/adapter/apprise.js +++ b/lib/notification/adapter/apprise.js @@ -13,7 +13,7 @@ export const send = ({ serviceName, newListings, notificationConfig, jobKey, bas const jobName = job == null ? jobKey : job.name; const promises = newListings.map((newListing) => { const title = `${jobName} at ${serviceName}: ${newListing.title}`; - const fredyLine = baseUrl && newListing.id ? `\nOpen in Fredy: ${baseUrl}/listings/listing/${newListing.id}` : ''; + const fredyLine = baseUrl && newListing.id ? `\nOpen in Fredy: ${baseUrl}/#/listings/listing/${newListing.id}` : ''; const message = `Address: ${newListing.address}\nSize: ${newListing.size}\nPrice: ${newListing.price}\nLink: ${newListing.link}${fredyLine}`; return fetch(server, { method: 'POST', diff --git a/lib/notification/adapter/console.js b/lib/notification/adapter/console.js index 57265cb..85405f1 100755 --- a/lib/notification/adapter/console.js +++ b/lib/notification/adapter/console.js @@ -7,7 +7,7 @@ import { markdown2Html } from '../../services/markdown.js'; export const send = ({ serviceName, newListings, jobKey, baseUrl }) => { /* eslint-disable no-console */ - const fredyLinks = baseUrl ? newListings.map((l) => `${baseUrl}/listings/listing/${l.id}`).join(', ') : null; + const fredyLinks = baseUrl ? newListings.map((l) => `${baseUrl}/#/listings/listing/${l.id}`).join(', ') : null; return [ Promise.resolve( console.info( diff --git a/lib/notification/adapter/discord_webhook.js b/lib/notification/adapter/discord_webhook.js index cd6fbd9..a0de1b9 100644 --- a/lib/notification/adapter/discord_webhook.js +++ b/lib/notification/adapter/discord_webhook.js @@ -83,7 +83,7 @@ const buildEmbed = (jobKey, listing, baseUrl) => { if (baseUrl && listing.id) { fields.push({ name: 'Open in Fredy', - value: `[Open in Fredy](${baseUrl}/listings/listing/${listing.id})`, + value: `[Open in Fredy](${baseUrl}/#/listings/listing/${listing.id})`, inline: false, }); } diff --git a/lib/notification/adapter/mattermost.js b/lib/notification/adapter/mattermost.js index 0e0e7ef..f52a254 100644 --- a/lib/notification/adapter/mattermost.js +++ b/lib/notification/adapter/mattermost.js @@ -13,7 +13,7 @@ export const send = ({ serviceName, newListings, notificationConfig, jobKey, bas let message = `### *${jobName}* (${serviceName}) found **${newListings.length}** new listings:\n\n`; message += `| Title | Address | Size | Price |${baseUrl ? ' Open in Fredy |' : ''}\n|:----|:----|:----|:----|${baseUrl ? ':----|\n' : '\n'}`; message += newListings.map((o) => { - const fredyCell = baseUrl && o.id ? ` [Open in Fredy](${baseUrl}/listings/listing/${o.id}) |` : ''; + const fredyCell = baseUrl && o.id ? ` [Open in Fredy](${baseUrl}/#/listings/listing/${o.id}) |` : ''; return ( `| [${o.title}](${o.link}) | ` + [o.address, o.size.replace(/2m/g, '$m^2$'), o.price].join(' | ') + diff --git a/lib/notification/adapter/ntfy.js b/lib/notification/adapter/ntfy.js index fbe060d..0f2fb11 100644 --- a/lib/notification/adapter/ntfy.js +++ b/lib/notification/adapter/ntfy.js @@ -14,7 +14,7 @@ export const send = ({ serviceName, newListings, notificationConfig, jobKey, bas const jobName = job == null ? jobKey : job.name; const promises = newListings.map((newListing) => { - const fredyLine = baseUrl && newListing.id ? `\nOpen in Fredy: ${baseUrl}/listings/listing/${newListing.id}` : ''; + const fredyLine = baseUrl && newListing.id ? `\nOpen in Fredy: ${baseUrl}/#/listings/listing/${newListing.id}` : ''; const message = ` Address: ${newListing.address} Size: ${newListing.size == null ? 'N/A' : newListing.size.replace(/2m/g, '$m^2$')} diff --git a/lib/notification/adapter/pushover.js b/lib/notification/adapter/pushover.js index 1a54f0f..89dcd4b 100644 --- a/lib/notification/adapter/pushover.js +++ b/lib/notification/adapter/pushover.js @@ -15,7 +15,8 @@ export const send = async ({ serviceName, newListings, notificationConfig, jobKe const results = await Promise.all( newListings.map(async (newListing) => { const title = `${jobName} at ${serviceName}: ${newListing.title}`; - const fredyLine = baseUrl && newListing.id ? `\nOpen in Fredy: ${baseUrl}/listings/listing/${newListing.id}` : ''; + const fredyLine = + baseUrl && newListing.id ? `\nOpen in Fredy: ${baseUrl}/#/listings/listing/${newListing.id}` : ''; const message = `Address: ${newListing.address}\nSize: ${newListing.size}\nPrice: ${newListing.price}\nLink: ${newListing.link}${fredyLine}`; const form = new FormData(); diff --git a/lib/notification/adapter/slack.js b/lib/notification/adapter/slack.js index af4cb6f..9b1cb53 100755 --- a/lib/notification/adapter/slack.js +++ b/lib/notification/adapter/slack.js @@ -39,7 +39,7 @@ const buildBlocks = (serviceName, jobKey, p, baseUrl) => { if (baseUrl && p.id) { blocks.push({ type: 'section', - text: { type: 'mrkdwn', text: `<${baseUrl}/listings/listing/${p.id}|Open in Fredy>` }, + text: { type: 'mrkdwn', text: `<${baseUrl}/#/listings/listing/${p.id}|Open in Fredy>` }, }); } diff --git a/lib/notification/adapter/slack_with_webhooks.js b/lib/notification/adapter/slack_with_webhooks.js index 66868d2..35b35e7 100755 --- a/lib/notification/adapter/slack_with_webhooks.js +++ b/lib/notification/adapter/slack_with_webhooks.js @@ -39,7 +39,7 @@ const buildBlocks = (serviceName, jobKey, p, baseUrl) => { if (baseUrl && p.id) { blocks.push({ type: 'section', - text: { type: 'mrkdwn', text: `<${baseUrl}/listings/listing/${p.id}|Open in Fredy>` }, + text: { type: 'mrkdwn', text: `<${baseUrl}/#/listings/listing/${p.id}|Open in Fredy>` }, }); } diff --git a/lib/notification/adapter/telegram.js b/lib/notification/adapter/telegram.js index f999164..eb2c25e 100644 --- a/lib/notification/adapter/telegram.js +++ b/lib/notification/adapter/telegram.js @@ -85,7 +85,7 @@ function buildCaption(jobName, serviceName, o, baseUrl) { const title = shorten((o.title || '').replace(/\*/g, ''), 90); const meta = [o.address, o.price, o.size].filter(Boolean).join(' | '); const fredyLink = - baseUrl && o.id ? `\nOpen in Fredy` : ''; + baseUrl && o.id ? `\nOpen in Fredy` : ''; return `${escapeHtml(jobName)} (${escapeHtml(serviceName)})\n${escapeHtml(title)}\n${escapeHtml(meta)}${fredyLink}`.slice(0, 1024); @@ -102,7 +102,7 @@ function buildText(jobName, serviceName, o, baseUrl) { const title = shorten((o.title || '').replace(/\*/g, ''), 90); const meta = [o.address, o.price, o.size].filter(Boolean).join(' | '); const fredyLink = - baseUrl && o.id ? `\nOpen in Fredy` : ''; + baseUrl && o.id ? `\nOpen in Fredy` : ''; return ( `${escapeHtml(jobName)} (${escapeHtml(serviceName)})\n` + `${escapeHtml(title)}\n` + @@ -121,7 +121,7 @@ function buildText(jobName, serviceName, o, baseUrl) { function buildCaptionPlain(jobName, serviceName, o, baseUrl) { const title = shorten((o.title || '').replace(/\*/g, ''), 90); const meta = [o.address, o.price, o.size].filter(Boolean).join(' | '); - const fredyLine = baseUrl && o.id ? `\nOpen in Fredy: ${baseUrl}/listings/listing/${o.id}` : ''; + const fredyLine = baseUrl && o.id ? `\nOpen in Fredy: ${baseUrl}/#/listings/listing/${o.id}` : ''; return `${jobName} (${serviceName})\n${title}\n${meta}\n\n${o.link || ''}${fredyLine}`.slice(0, 4096); } @@ -135,7 +135,7 @@ function buildCaptionPlain(jobName, serviceName, o, baseUrl) { function buildTextPlain(jobName, serviceName, o, baseUrl) { const title = shorten((o.title || '').replace(/\*/g, ''), 90); const meta = [o.address, o.price, o.size].filter(Boolean).join(' | '); - const fredyLine = baseUrl && o.id ? `\nOpen in Fredy: ${baseUrl}/listings/listing/${o.id}` : ''; + const fredyLine = baseUrl && o.id ? `\nOpen in Fredy: ${baseUrl}/#/listings/listing/${o.id}` : ''; return `${jobName} (${serviceName})\n${title}\n${o.link || ''}\n${meta}${fredyLine}`; } diff --git a/package.json b/package.json index 293f94d..7c0993b 100755 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "fredy", - "version": "22.3.0", + "version": "22.3.1", "description": "[F]ind [R]eal [E]states [d]amn eas[y].", "scripts": { "prepare": "husky",