mirror of
https://github.com/IT4Change/gradido.git
synced 2025-12-13 07:45:54 +00:00
Merge branch 'master' into eslint-comments
This commit is contained in:
commit
c9599f9449
@ -7,7 +7,7 @@ module.exports = {
|
|||||||
collectCoverageFrom: ['src/**/*.ts', '!**/node_modules/**', '!src/seeds/**', '!build/**'],
|
collectCoverageFrom: ['src/**/*.ts', '!**/node_modules/**', '!src/seeds/**', '!build/**'],
|
||||||
coverageThreshold: {
|
coverageThreshold: {
|
||||||
global: {
|
global: {
|
||||||
lines: 85,
|
lines: 86,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
setupFiles: ['<rootDir>/test/testSetup.ts'],
|
setupFiles: ['<rootDir>/test/testSetup.ts'],
|
||||||
|
|||||||
@ -12,7 +12,7 @@ import KlicktippConnector from 'klicktipp-api'
|
|||||||
|
|
||||||
const klicktippConnector = new KlicktippConnector()
|
const klicktippConnector = new KlicktippConnector()
|
||||||
|
|
||||||
export const klicktippSignIn = async (
|
export const subscribe = async (
|
||||||
email: string,
|
email: string,
|
||||||
language: string,
|
language: string,
|
||||||
firstName?: string,
|
firstName?: string,
|
||||||
@ -28,13 +28,6 @@ export const klicktippSignIn = async (
|
|||||||
return result
|
return result
|
||||||
}
|
}
|
||||||
|
|
||||||
export const signout = async (email: string, language: string): Promise<boolean> => {
|
|
||||||
if (!CONFIG.KLICKTIPP) return true
|
|
||||||
const apiKey = language === 'de' ? CONFIG.KLICKTIPP_APIKEY_DE : CONFIG.KLICKTIPP_APIKEY_EN
|
|
||||||
const result = await klicktippConnector.signoff(apiKey, email)
|
|
||||||
return result
|
|
||||||
}
|
|
||||||
|
|
||||||
export const unsubscribe = async (email: string): Promise<boolean> => {
|
export const unsubscribe = async (email: string): Promise<boolean> => {
|
||||||
if (!CONFIG.KLICKTIPP) return true
|
if (!CONFIG.KLICKTIPP) return true
|
||||||
const isLogin = await loginKlicktippUser()
|
const isLogin = await loginKlicktippUser()
|
||||||
@ -60,38 +53,6 @@ export const loginKlicktippUser = async (): Promise<boolean> => {
|
|||||||
return await klicktippConnector.login(CONFIG.KLICKTIPP_USER, CONFIG.KLICKTIPP_PASSWORD)
|
return await klicktippConnector.login(CONFIG.KLICKTIPP_USER, CONFIG.KLICKTIPP_PASSWORD)
|
||||||
}
|
}
|
||||||
|
|
||||||
export const logoutKlicktippUser = async (): Promise<boolean> => {
|
|
||||||
if (!CONFIG.KLICKTIPP) return true
|
|
||||||
return await klicktippConnector.logout()
|
|
||||||
}
|
|
||||||
|
|
||||||
export const untagUser = async (email: string, tagId: string): Promise<boolean> => {
|
|
||||||
if (!CONFIG.KLICKTIPP) return true
|
|
||||||
const isLogin = await loginKlicktippUser()
|
|
||||||
if (isLogin) {
|
|
||||||
return await klicktippConnector.untag(email, tagId)
|
|
||||||
}
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
export const tagUser = async (email: string, tagIds: string): Promise<boolean> => {
|
|
||||||
if (!CONFIG.KLICKTIPP) return true
|
|
||||||
const isLogin = await loginKlicktippUser()
|
|
||||||
if (isLogin) {
|
|
||||||
return await klicktippConnector.tag(email, tagIds)
|
|
||||||
}
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
export const getKlicktippTagMap = async () => {
|
|
||||||
if (!CONFIG.KLICKTIPP) return true
|
|
||||||
const isLogin = await loginKlicktippUser()
|
|
||||||
if (isLogin) {
|
|
||||||
return await klicktippConnector.tagIndex()
|
|
||||||
}
|
|
||||||
return ''
|
|
||||||
}
|
|
||||||
|
|
||||||
export const addFieldsToSubscriber = async (
|
export const addFieldsToSubscriber = async (
|
||||||
email: string,
|
email: string,
|
||||||
fields: any = {},
|
fields: any = {},
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
import { Resolver, Authorized, Mutation, Ctx } from 'type-graphql'
|
import { Resolver, Authorized, Mutation, Ctx } from 'type-graphql'
|
||||||
|
|
||||||
import { unsubscribe, klicktippSignIn } from '@/apis/KlicktippController'
|
import { unsubscribe, subscribe } from '@/apis/KlicktippController'
|
||||||
import { RIGHTS } from '@/auth/RIGHTS'
|
import { RIGHTS } from '@/auth/RIGHTS'
|
||||||
import { EVENT_NEWSLETTER_SUBSCRIBE, EVENT_NEWSLETTER_UNSUBSCRIBE } from '@/event/Events'
|
import { EVENT_NEWSLETTER_SUBSCRIBE, EVENT_NEWSLETTER_UNSUBSCRIBE } from '@/event/Events'
|
||||||
import { Context, getUser } from '@/server/context'
|
import { Context, getUser } from '@/server/context'
|
||||||
@ -20,6 +20,6 @@ export class KlicktippResolver {
|
|||||||
async subscribeNewsletter(@Ctx() context: Context): Promise<boolean> {
|
async subscribeNewsletter(@Ctx() context: Context): Promise<boolean> {
|
||||||
const user = getUser(context)
|
const user = getUser(context)
|
||||||
await EVENT_NEWSLETTER_SUBSCRIBE(user)
|
await EVENT_NEWSLETTER_SUBSCRIBE(user)
|
||||||
return klicktippSignIn(user.emailContact.email, user.language)
|
return subscribe(user.emailContact.email, user.language)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -20,6 +20,7 @@ import { ContributionLink } from '@model/ContributionLink'
|
|||||||
import { testEnvironment, headerPushMock, resetToken, cleanDB } from '@test/helpers'
|
import { testEnvironment, headerPushMock, resetToken, cleanDB } from '@test/helpers'
|
||||||
import { logger, i18n as localization } from '@test/testSetup'
|
import { logger, i18n as localization } from '@test/testSetup'
|
||||||
|
|
||||||
|
import { subscribe } from '@/apis/KlicktippController'
|
||||||
import { CONFIG } from '@/config'
|
import { CONFIG } from '@/config'
|
||||||
import {
|
import {
|
||||||
sendAccountActivationEmail,
|
sendAccountActivationEmail,
|
||||||
@ -61,8 +62,6 @@ import { stephenHawking } from '@/seeds/users/stephen-hawking'
|
|||||||
import { printTimeDuration } from '@/util/time'
|
import { printTimeDuration } from '@/util/time'
|
||||||
import { objectValuesToArray } from '@/util/utilities'
|
import { objectValuesToArray } from '@/util/utilities'
|
||||||
|
|
||||||
// import { klicktippSignIn } from '@/apis/KlicktippController'
|
|
||||||
|
|
||||||
jest.mock('@/emails/sendEmailVariants', () => {
|
jest.mock('@/emails/sendEmailVariants', () => {
|
||||||
const originalModule = jest.requireActual('@/emails/sendEmailVariants')
|
const originalModule = jest.requireActual('@/emails/sendEmailVariants')
|
||||||
return {
|
return {
|
||||||
@ -76,15 +75,13 @@ jest.mock('@/emails/sendEmailVariants', () => {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
/*
|
|
||||||
|
|
||||||
jest.mock('@/apis/KlicktippController', () => {
|
jest.mock('@/apis/KlicktippController', () => {
|
||||||
return {
|
return {
|
||||||
__esModule: true,
|
__esModule: true,
|
||||||
klicktippSignIn: jest.fn(),
|
subscribe: jest.fn(),
|
||||||
|
getKlickTippUser: jest.fn(),
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
*/
|
|
||||||
|
|
||||||
let admin: User
|
let admin: User
|
||||||
let user: User
|
let user: User
|
||||||
@ -556,16 +553,14 @@ describe('UserResolver', () => {
|
|||||||
expect(newUser.password.toString()).toEqual(encryptedPass.toString())
|
expect(newUser.password.toString()).toEqual(encryptedPass.toString())
|
||||||
})
|
})
|
||||||
|
|
||||||
/*
|
|
||||||
it('calls the klicktipp API', () => {
|
it('calls the klicktipp API', () => {
|
||||||
expect(klicktippSignIn).toBeCalledWith(
|
expect(subscribe).toBeCalledWith(
|
||||||
user[0].email,
|
newUser.emailContact.email,
|
||||||
user[0].language,
|
newUser.language,
|
||||||
user[0].firstName,
|
newUser.firstName,
|
||||||
user[0].lastName,
|
newUser.lastName,
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
*/
|
|
||||||
|
|
||||||
it('returns true', () => {
|
it('returns true', () => {
|
||||||
expect(result).toBeTruthy()
|
expect(result).toBeTruthy()
|
||||||
|
|||||||
@ -35,7 +35,7 @@ import { User } from '@model/User'
|
|||||||
import { UserAdmin, SearchUsersResult } from '@model/UserAdmin'
|
import { UserAdmin, SearchUsersResult } from '@model/UserAdmin'
|
||||||
import { UserRepository } from '@repository/User'
|
import { UserRepository } from '@repository/User'
|
||||||
|
|
||||||
import { klicktippSignIn } from '@/apis/KlicktippController'
|
import { subscribe } from '@/apis/KlicktippController'
|
||||||
import { encode } from '@/auth/JWT'
|
import { encode } from '@/auth/JWT'
|
||||||
import { RIGHTS } from '@/auth/RIGHTS'
|
import { RIGHTS } from '@/auth/RIGHTS'
|
||||||
import { CONFIG } from '@/config'
|
import { CONFIG } from '@/config'
|
||||||
@ -468,9 +468,9 @@ export class UserResolver {
|
|||||||
// TODO do we always signUp the user? How to handle things with old users?
|
// TODO do we always signUp the user? How to handle things with old users?
|
||||||
if (userContact.emailOptInTypeId === OptInType.EMAIL_OPT_IN_REGISTER) {
|
if (userContact.emailOptInTypeId === OptInType.EMAIL_OPT_IN_REGISTER) {
|
||||||
try {
|
try {
|
||||||
await klicktippSignIn(userContact.email, user.language, user.firstName, user.lastName)
|
await subscribe(userContact.email, user.language, user.firstName, user.lastName)
|
||||||
logger.debug(
|
logger.debug(
|
||||||
`klicktippSignIn(${userContact.email}, ${user.language}, ${user.firstName}, ${user.lastName})`,
|
`subscribe(${userContact.email}, ${user.language}, ${user.firstName}, ${user.lastName})`,
|
||||||
)
|
)
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
logger.error('Error subscribing to klicktipp', e)
|
logger.error('Error subscribing to klicktipp', e)
|
||||||
|
|||||||
@ -10,19 +10,6 @@ import { KlickTipp } from '@model/KlickTipp'
|
|||||||
import { getKlickTippUser } from '@/apis/KlicktippController'
|
import { getKlickTippUser } from '@/apis/KlicktippController'
|
||||||
import { klickTippLogger as logger } from '@/server/logger'
|
import { klickTippLogger as logger } from '@/server/logger'
|
||||||
|
|
||||||
// export const klicktippRegistrationMiddleware: MiddlewareFn = async (
|
|
||||||
// // Only for demo
|
|
||||||
// /* eslint-disable-next-line @typescript-eslint/no-unused-vars */
|
|
||||||
// { root, args, context, info },
|
|
||||||
// next,
|
|
||||||
// ) => {
|
|
||||||
// // Do Something here before resolver is called
|
|
||||||
// const result = await next()
|
|
||||||
// // Do Something here after resolver is completed
|
|
||||||
// await klicktippSignIn(result.email, result.language, result.firstName, result.lastName)
|
|
||||||
// return result
|
|
||||||
// }
|
|
||||||
|
|
||||||
export const klicktippNewsletterStateMiddleware: MiddlewareFn = async (
|
export const klicktippNewsletterStateMiddleware: MiddlewareFn = async (
|
||||||
/* eslint-disable-next-line @typescript-eslint/no-unused-vars */
|
/* eslint-disable-next-line @typescript-eslint/no-unused-vars */
|
||||||
{ root, args, context, info },
|
{ root, args, context, info },
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user