mirror of
https://github.com/omnivore-app/omnivore.git
synced 2026-03-11 08:54:26 +00:00
Save icon in the subscription table
This commit is contained in:
parent
94719a5cce
commit
5d62d92974
3 changed files with 31 additions and 15 deletions
|
|
@ -28,6 +28,7 @@ interface ForwardEmailMessage {
|
|||
unsubHttpUrl?: string
|
||||
text?: string
|
||||
forwardedFrom?: string
|
||||
icon?: string
|
||||
}
|
||||
|
||||
const logger = buildLogger('app.dispatch')
|
||||
|
|
@ -92,6 +93,7 @@ export function emailsServiceRouter() {
|
|||
unsubMailTo: data.unsubMailTo,
|
||||
unsubHttpUrl: data.unsubHttpUrl,
|
||||
newsletterEmail,
|
||||
icon: data.icon,
|
||||
},
|
||||
ctx
|
||||
)
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@ interface NewsletterMessage {
|
|||
unsubMailTo?: string
|
||||
unsubHttpUrl?: string
|
||||
newsletterEmail?: NewsletterEmail
|
||||
icon?: string
|
||||
}
|
||||
|
||||
// Returns true if the link was created successfully. Can still fail to
|
||||
|
|
@ -71,14 +72,15 @@ export const saveNewsletterEmail = async (
|
|||
}
|
||||
|
||||
// creates or updates subscription
|
||||
const subscription = await saveSubscription(
|
||||
newsletterEmail.user.id,
|
||||
data.author,
|
||||
newsletterEmail.address,
|
||||
data.unsubMailTo,
|
||||
data.unsubHttpUrl
|
||||
)
|
||||
console.log('subscription', subscription)
|
||||
const subscription = await saveSubscription({
|
||||
userId: newsletterEmail.user.id,
|
||||
name: data.author,
|
||||
newsletterEmail: newsletterEmail.address,
|
||||
unsubscribeMailTo: data.unsubMailTo,
|
||||
unsubscribeHttpUrl: data.unsubHttpUrl,
|
||||
icon: data.icon,
|
||||
})
|
||||
console.log('subscription saved', subscription)
|
||||
|
||||
// adds newsletters label to page
|
||||
const result = await addLabelToPage(saveCtx, page.id, {
|
||||
|
|
|
|||
|
|
@ -6,6 +6,15 @@ import axios from 'axios'
|
|||
import { NewsletterEmail } from '../entity/newsletter_email'
|
||||
import { createNewsletterEmail } from './newsletters'
|
||||
|
||||
interface SaveSubscriptionInput {
|
||||
userId: string
|
||||
name: string
|
||||
newsletterEmail: string
|
||||
unsubscribeMailTo?: string
|
||||
unsubscribeHttpUrl?: string
|
||||
icon?: string
|
||||
}
|
||||
|
||||
const sendUnsubscribeEmail = async (
|
||||
unsubscribeMailTo: string,
|
||||
newsletterEmail: string
|
||||
|
|
@ -30,13 +39,14 @@ const sendUnsubscribeHttpRequest = async (url: string): Promise<void> => {
|
|||
}
|
||||
}
|
||||
|
||||
export const saveSubscription = async (
|
||||
userId: string,
|
||||
name: string,
|
||||
newsletterEmail: string,
|
||||
unsubscribeMailTo?: string,
|
||||
unsubscribeHttpUrl?: string
|
||||
): Promise<Subscription> => {
|
||||
export const saveSubscription = async ({
|
||||
userId,
|
||||
name,
|
||||
newsletterEmail,
|
||||
unsubscribeMailTo,
|
||||
unsubscribeHttpUrl,
|
||||
icon,
|
||||
}: SaveSubscriptionInput): Promise<Subscription> => {
|
||||
const subscription = await getRepository(Subscription).findOneBy({
|
||||
name,
|
||||
user: { id: userId },
|
||||
|
|
@ -46,6 +56,7 @@ export const saveSubscription = async (
|
|||
// if subscription already exists, updates updatedAt
|
||||
subscription.status = SubscriptionStatus.Active
|
||||
subscription.newsletterEmail = newsletterEmail
|
||||
icon && (subscription.icon = icon)
|
||||
unsubscribeMailTo && (subscription.unsubscribeMailTo = unsubscribeMailTo)
|
||||
unsubscribeHttpUrl && (subscription.unsubscribeHttpUrl = unsubscribeHttpUrl)
|
||||
return getRepository(Subscription).save(subscription)
|
||||
|
|
@ -59,6 +70,7 @@ export const saveSubscription = async (
|
|||
status: SubscriptionStatus.Active,
|
||||
unsubscribeHttpUrl,
|
||||
unsubscribeMailTo,
|
||||
icon,
|
||||
})
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue