diff --git a/packages/feedback-service/src/feedback-config/schema.ts b/packages/feedback-service/src/feedback-config/schema.ts
index f88c31011..7ab322ee2 100644
--- a/packages/feedback-service/src/feedback-config/schema.ts
+++ b/packages/feedback-service/src/feedback-config/schema.ts
@@ -13,6 +13,9 @@ export const FeedbackConfigSchema: Schema = new Schema({
required: true,
unique: true,
},
+ projectFrontendUrl: {
+ type: String,
+ },
isEnabled: { type: Boolean, default: true },
sourceType: { type: String, enum: ['JIRA', 'GITLAB', 'GITHUB', 'EMAIL'], default: 'JIRA' },
sourceApiUrl: { type: String },
diff --git a/packages/feedback-service/src/feedback-config/typedef.graphql b/packages/feedback-service/src/feedback-config/typedef.graphql
index 82c013aa3..294276498 100644
--- a/packages/feedback-service/src/feedback-config/typedef.graphql
+++ b/packages/feedback-service/src/feedback-config/typedef.graphql
@@ -24,6 +24,7 @@ type FeedbackConfigType {
sourceHeaders: [FeedbackHeaderType]
projectKey: String
feedbackEmail: String
+ projectFrontendUrl: String
}
input FeedbackConfigInput {
@@ -36,6 +37,7 @@ input FeedbackConfigInput {
sourceHeaders: [FeedbackHeaderInput]
projectKey: String
feedbackEmail: String
+ projectFrontendUrl: String
}
type Query {
diff --git a/packages/feedback-service/src/helpers.ts b/packages/feedback-service/src/helpers.ts
index 99503a05b..ab0cf31f0 100644
--- a/packages/feedback-service/src/helpers.ts
+++ b/packages/feedback-service/src/helpers.ts
@@ -324,14 +324,23 @@ function createEmailTemplate(
) {
const appName = projectId.split( '/' )[ 1 ] ?? projectId;
+ const getPageUrl = ( str: string ) => {
+ try {
+ const url = new URL( str );
+ return url.toString();
+ } catch ( err ) {
+ return new URL( str, config.projectFrontendUrl ?? process.env.FEEDBACK_CLIENT!.toLowerCase() );
+ }
+ }
+
+ const pageUrl = getPageUrl(feedback.stackInfo?.path ?? '/');
+
const emailBody = `
Hi ${userInfo[0].cn},
We have received the ${feedback.category.toLowerCase()} for the ${appName}
Summary: ${feedback.summary}
-URL: ${new URL(process.env.FEEDBACK_CLIENT as string).origin}${
- (feedback.stackInfo as any)?.path
- }
+URL: ${pageUrl}
${
feedback.ticketUrl
diff --git a/packages/feedback-service/src/types.d.ts b/packages/feedback-service/src/types.d.ts
index 707978f1e..7385cbbc6 100644
--- a/packages/feedback-service/src/types.d.ts
+++ b/packages/feedback-service/src/types.d.ts
@@ -92,6 +92,7 @@ type FeedbackConfigType = {
}>;
projectKey: string;
feedbackEmail: string;
+ projectFrontendUrl: string;
};
type FeedbackConfigInput = {