From edc49dfc035bd7fd1e6851f946e0574def7d096c Mon Sep 17 00:00:00 2001 From: dongli Date: Tue, 1 Jul 2025 20:29:11 -0700 Subject: [PATCH 01/11] Add PR checklist --- apps/devops/.gitea/PULL_REQUEST_TEMPLATE.md | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 apps/devops/.gitea/PULL_REQUEST_TEMPLATE.md diff --git a/apps/devops/.gitea/PULL_REQUEST_TEMPLATE.md b/apps/devops/.gitea/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..96e62eb --- /dev/null +++ b/apps/devops/.gitea/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,8 @@ +### PR Checklist + +- [ ] Code builds successfully +- [ ] Unit tests pass +- [ ] Code is reviewed +- [ ] No hardcoded secrets or credentials +- [ ] Appropriate documentation is updated +- [ ] Relevant JIRA/Trello ticket linked \ No newline at end of file From 5ee0d8d8ec63d621e938ae681c04a0eac7c80640 Mon Sep 17 00:00:00 2001 From: dongli Date: Tue, 1 Jul 2025 20:32:08 -0700 Subject: [PATCH 02/11] Add PR checklist --- apps/devops/.gitea/PULL_REQUEST_TEMPLATE.md | 8 -------- 1 file changed, 8 deletions(-) delete mode 100644 apps/devops/.gitea/PULL_REQUEST_TEMPLATE.md diff --git a/apps/devops/.gitea/PULL_REQUEST_TEMPLATE.md b/apps/devops/.gitea/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 96e62eb..0000000 --- a/apps/devops/.gitea/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,8 +0,0 @@ -### PR Checklist - -- [ ] Code builds successfully -- [ ] Unit tests pass -- [ ] Code is reviewed -- [ ] No hardcoded secrets or credentials -- [ ] Appropriate documentation is updated -- [ ] Relevant JIRA/Trello ticket linked \ No newline at end of file From 4e7dadba698ffe599f74d0cd96196138c4fa14a1 Mon Sep 17 00:00:00 2001 From: dongli Date: Tue, 1 Jul 2025 20:32:44 -0700 Subject: [PATCH 03/11] Add PR checklist --- .gitea/PULL_REQUEST_TEMPLATE.md | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 .gitea/PULL_REQUEST_TEMPLATE.md diff --git a/.gitea/PULL_REQUEST_TEMPLATE.md b/.gitea/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..96e62eb --- /dev/null +++ b/.gitea/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,8 @@ +### PR Checklist + +- [ ] Code builds successfully +- [ ] Unit tests pass +- [ ] Code is reviewed +- [ ] No hardcoded secrets or credentials +- [ ] Appropriate documentation is updated +- [ ] Relevant JIRA/Trello ticket linked \ No newline at end of file From 7b2f068fd5a8852c85600665d94e1a89c0f575ab Mon Sep 17 00:00:00 2001 From: dongli Date: Tue, 1 Jul 2025 20:36:38 -0700 Subject: [PATCH 04/11] Add PR checklist --- .gitea/PULL_REQUEST_TEMPLATE.md | 8 -------- 1 file changed, 8 deletions(-) delete mode 100644 .gitea/PULL_REQUEST_TEMPLATE.md diff --git a/.gitea/PULL_REQUEST_TEMPLATE.md b/.gitea/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index 96e62eb..0000000 --- a/.gitea/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,8 +0,0 @@ -### PR Checklist - -- [ ] Code builds successfully -- [ ] Unit tests pass -- [ ] Code is reviewed -- [ ] No hardcoded secrets or credentials -- [ ] Appropriate documentation is updated -- [ ] Relevant JIRA/Trello ticket linked \ No newline at end of file From 60b5be404bd8c3b1889058a6d0715dd95fe60847 Mon Sep 17 00:00:00 2001 From: dongli Date: Tue, 1 Jul 2025 20:41:11 -0700 Subject: [PATCH 05/11] Add PR checklist --- .gitea/PULL_REQUEST_TEMPLATE.md | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 .gitea/PULL_REQUEST_TEMPLATE.md diff --git a/.gitea/PULL_REQUEST_TEMPLATE.md b/.gitea/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..96e62eb --- /dev/null +++ b/.gitea/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,8 @@ +### PR Checklist + +- [ ] Code builds successfully +- [ ] Unit tests pass +- [ ] Code is reviewed +- [ ] No hardcoded secrets or credentials +- [ ] Appropriate documentation is updated +- [ ] Relevant JIRA/Trello ticket linked \ No newline at end of file From 61d9a2ea2fa6f9bd6be6d3e8349196ee8196fe0b Mon Sep 17 00:00:00 2001 From: dongli Date: Tue, 1 Jul 2025 20:47:27 -0700 Subject: [PATCH 06/11] Add PR checklist --- .gitea/PULL_REQUEST_TEMPLATE.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitea/PULL_REQUEST_TEMPLATE.md b/.gitea/PULL_REQUEST_TEMPLATE.md index 96e62eb..46d0b82 100644 --- a/.gitea/PULL_REQUEST_TEMPLATE.md +++ b/.gitea/PULL_REQUEST_TEMPLATE.md @@ -1,8 +1,9 @@ ### PR Checklist -- [ ] Code builds successfully +- [ ] Code is tested in local environment +- [ ] New code is covered by unit tests - [ ] Unit tests pass - [ ] Code is reviewed - [ ] No hardcoded secrets or credentials - [ ] Appropriate documentation is updated -- [ ] Relevant JIRA/Trello ticket linked \ No newline at end of file +- [ ] Relevant TaskID and link is included in the PR description \ No newline at end of file From bbfc1ba1a228983a6ab3b5d2d2ca9176925cced1 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Thu, 7 Aug 2025 00:54:45 +0000 Subject: [PATCH 07/11] chore(release): bump version to 1.3.0 and upload released assets [ci skip] --- CHANGELOG.md | 18 ++++++++++++++++++ VERSION | 2 +- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0a88825..6394205 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,21 @@ +# [1.3.0](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/compare/v1.2.1...v1.3.0) (2025-08-07) + + +### Bug Fixes + +* correct deployment TTL calculation in DeploymentService ([879e45e](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/879e45eeb5a4fadce4b9fb61982f6d086106d0c5)) +* correct typo in BASE_RECONCILE_URL in site_settings.py ([e41aa3d](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/e41aa3d983024aadbb5bb05db5640d97768b2c25)) +* correct typo in BASE_RECONCILE_URL parameter in DeploymentService ([5f3368c](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/5f3368cbdcf26b2a4a1588359915e534bbc4e40e)) +* ensure consistent formatting in requirements.txt by removing redundant line ([113bc2b](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/113bc2bc7510a0097bebbabea493c97c44d35f00)) +* refractor the length functions and add comments, and address the issues ([d01468f](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/d01468f89a1ee7e489bf8f005be78d3cf1a0df51)) +* update deployment service to use correct product ID ([6c60a0b](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/6c60a0b6a59184840fdd173121803d52caef8eea)) + + +### Features + +* add RabbitMQ configuration to app settings ([d74967d](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/d74967db55609336e6e0fd9476240a242ae630db)) +* enhance message consumer startup and shutdown logging in message_queue.py ([9283e52](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/9283e52e487d0f842fb81bb5065fbfb85cf6b1fe)) + ## [1.2.1](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/compare/v1.2.0...v1.2.1) (2025-04-30) diff --git a/VERSION b/VERSION index 6085e94..f0bb29e 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.2.1 +1.3.0 From c8a6275f672e1fadb3a2e30c043c1dbd6e3008ec Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Mon, 11 Aug 2025 01:26:25 +0000 Subject: [PATCH 08/11] chore(release): bump version to 1.3.1 and upload released assets [ci skip] --- CHANGELOG.md | 10 ++++++++++ VERSION | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6394205..42e36de 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,13 @@ +## [1.3.1](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/compare/v1.3.0...v1.3.1) (2025-08-11) + + +### Bug Fixes + +* connect to existing named queue instead of creating anonymous queue ([04acd78](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/04acd78d78359d791d6a7187a2eab4bf03cbea23)) +* make startup and shutdown event handlers async in common provider ([4340949](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/4340949f5734f60eac280b0ef524e53039b5d7a3)) +* update devops service to subscribe to correct reconciler heartbeat queue ([b5ca0cf](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/b5ca0cf0f55634e191efdcc51c3c9cf4b864700f)) +* use environment variable for RabbitMQ output queue name ([e4fe939](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/e4fe9394b1a71ae0df946007c78cc29bdabf0e26)) + # [1.3.0](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/compare/v1.2.1...v1.3.0) (2025-08-07) diff --git a/VERSION b/VERSION index f0bb29e..3a3cd8c 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.3.0 +1.3.1 From 804c71f1b33762e48de14a5f4ad47d2ba902f4f5 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Tue, 12 Aug 2025 04:27:05 +0000 Subject: [PATCH 09/11] chore(release): bump version to 1.4.0 and upload released assets [ci skip] --- CHANGELOG.md | 23 +++++++++++++++++++++++ VERSION | 2 +- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 42e36de..d7a6d3a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,26 @@ +# [1.4.0](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/compare/v1.3.1...v1.4.0) (2025-08-12) + + +### Features + +* **refactor:** remove duplicate get_current_user ([30e6ca7](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/30e6ca72a76840f9f14fbf7682f1de277c5d60af)) +* **role_management:** Add a universal Depends for permission verification. ([b8be656](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/b8be65615b451b190de6c06f62a1fe1a76cd2ee4)) +* **role_management:** add api test case for permission api ([beba0f5](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/beba0f5fe55c1e387349eed9da34616428603661)) +* **role_management:** Add apitest for test_assign_roles ([6b6b52a](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/6b6b52a599fa210c9e1668cfb92aa2426225423f)) +* **role_management:** add assign permissions to role api ([795c126](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/795c1262c60255d3110d2696ebffa4e0f74f450b)) +* **role_management:** add assign roles to user api ([ca0bfb1](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/ca0bfb155f01f8a89ef500f82d232945885e87b8)) +* **role_management:** add crud for role and permission ([2382f0b](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/2382f0becef4ecdea0d4ad89f4b127ed60030777)) +* **role_management:** add delete permission api ([4f39f88](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/4f39f888c4f35208141e0200774e7e64bc7cecb5)) +* **role_management:** add delete role api ([419e58d](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/419e58da0c4d93c623b98daa8cf9c3bb2185c7d6)) +* **role_management:** Add logic for creating temporary users to apitest. ([9dcd27b](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/9dcd27bc8a558eeccd8dce663808a47434339d8c)) +* **role_management:** Add pytest for auth services, and add api test case for role management ([6412810](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/641281066cd16c83470379f00e8146a7d42afe86)) +* **role_management:** add test report for role management ([0f7d63f](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/0f7d63f4a2d813de12b0fb46efafb1bb0e2f43b6)) +* **role_management:** update apitest for role management ([55e0beb](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/55e0bebbef1bfe462a554ae0a10478d080051657)) +* **role_management:** update apitest for role management ([5be8403](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/5be8403c751e03b37c19550e823d6e1a8608138c)) +* **role_management:** Update the JWT token generation logic to include new fields user_roles and user_permissions in the payload. ([4109018](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/4109018692dfcf0165e550ac5b7e61248420615a)) +* **role:** update docs ([e2f51d0](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/e2f51d09da75da530b383941a4fb85819e7d5db4)) +* **test:** add unittest for role management, add coverage report for role management ([69d1007](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/69d1007ddf21e71f2e40e05783c6a57e15592f04)) + ## [1.3.1](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/compare/v1.3.0...v1.3.1) (2025-08-11) diff --git a/VERSION b/VERSION index 3a3cd8c..88c5fb8 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.3.1 +1.4.0 From 046f9ffdd2ecac7be8b22333784442c38464d334 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Fri, 5 Sep 2025 01:58:56 +0000 Subject: [PATCH 10/11] chore(release): bump version to 1.5.0 and upload released assets [ci skip] --- CHANGELOG.md | 36 ++++++++++++++++++++++++++++++++++++ VERSION | 2 +- 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d7a6d3a..2d30248 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,39 @@ +# [1.5.0](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/compare/v1.4.0...v1.5.0) (2025-09-05) + + +### Bug Fixes + +* **email sending:** guidance for use of exchange ([5b727cb](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/5b727cb51c86d7a954c8388c0957f35e4595e33f)) +* **email_sending:** resolve the NameError ([b9bd4f3](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/b9bd4f373e19c596efbb47530fd7b60ceba25f4c)) +* **email_sending:** use the template created and stored in mongodb ([b8aa0cf](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/b8aa0cf2b9369302b5092a8ed1c6b670e86bf685)) +* **email:** make these changes to Fixed the duplicate email sending bug ([6d7c6af](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/6d7c6af8a1f5c875c8bcc73d106fe77ac54287e0)) +* **notification:** some small changes ([b6f8b70](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/b6f8b70f694f011483ffc8a900761d2bf867ed3d)) +* re-submit due to missing some contents ([2d3adb0](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/2d3adb093607a1813fa05ae9792561d1364b6ec4)) +* **services:** correct spelling errors ([9cb29cd](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/9cb29cd4009887aaee3a096ba48cb781e86666bf)) + + +### Features + +* add new apis for Magicleaps product use ([c200e70](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/c200e709704a6f8c3bada0776995268a975ebd2b)) +* **alpha:** make the alpha environment available ([59e8c06](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/59e8c06078ce40c809ede1b50383a46f67cbd61c)) +* **api:** add CRUD interfaces for message templates and email senders ([4f45878](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/4f4587893af49233a7b4728cf4762b43c152bcb2)) +* **api:** re-code the api interfaces for template message and email senders ([58d085a](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/58d085a4c6cd33e64bbae39049acc1a238e36afa)) +* **config:** add MongoDB connection configration ([9449f0e](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/9449f0e99bee3f86f9c616799e357243c175a4a2)) +* **devops:** If ttl_hours < 0, the deployment will take effect permanently ([52f8715](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/52f87152410eb5b223e092d5da4d1d365b73c1af)) +* **email_comsumer:** introduce multi-tenant delivery system ([4187c95](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/4187c95743bee97c2680a2f27af875b6641d6225)) +* **email_sending:** introduce multi-tenant delivery system ([d164b6f](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/d164b6f5673106459aec8456acb5771922d99605)) +* **email:** implement multi-tenant delivery function ([b5c9ab6](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/b5c9ab6126cb88e9be63752eb23a21bdc010a01b)) +* **email:** remove rate limit functionality ([8a53431](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/8a5343156c733ca2b2b5bd729436c484585b54c7)) +* **models:** add indexs and models ([c1148a4](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/c1148a44d59318217daf058995c897957dcc94a9)) +* **multi-tenant:** define the send status and bounce type ([cc90c86](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/cc90c862d779ccf54636f4b1e8036efeb8ae2e73)) +* **routes:** add API setup support for route files ([830311f](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/830311fe7e485a13da477814a08a62b24a15bc57)) +* **service:** Add email status update handling for bounce cases ([0a01b1c](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/0a01b1c6c6293b9da456ba84f33bc62e4fa3021a)) +* **template:** define MongoDB schema for message templates and email senders ([f7ad36b](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/f7ad36bef8c17e0a47db29be5e58bdc4aeb072bb)) +* **templates:** add duplicate creation prevention ([58c77ce](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/58c77ce0022dfd33979b16a716fdd01233d8eb73)) +* **templates:** enforce uniqueness and improve safety ([2213fa5](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/2213fa59b5f5f19972624bcc094f0c1e391f692d)) +* **tenant:** enable customization of message templates and email senders ([fec7ac6](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/fec7ac607178cf6cf79334d7517b558653df4733)) +* **websockt:** add websocket ([d20b5ab](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/commit/d20b5abff530f99fdfd18e29f69d1cdb659b37e9)) + # [1.4.0](https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub/compare/v1.3.1...v1.4.0) (2025-08-12) diff --git a/VERSION b/VERSION index 88c5fb8..bc80560 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.4.0 +1.5.0 From 05aca9663977237c2fff03e8b3ed74e51f73bd7f Mon Sep 17 00:00:00 2001 From: YuehuCao Date: Mon, 8 Sep 2025 17:10:01 +0800 Subject: [PATCH 11/11] feat(template): add the new job notification template --- .../create_global_templates.py | 93 ++++++++++++++++++- 1 file changed, 91 insertions(+), 2 deletions(-) diff --git a/apps/notification/tests/integration_tests/create_global_templates.py b/apps/notification/tests/integration_tests/create_global_templates.py index c71e73b..3501cd7 100644 --- a/apps/notification/tests/integration_tests/create_global_templates.py +++ b/apps/notification/tests/integration_tests/create_global_templates.py @@ -995,6 +995,93 @@ class GlobalTemplateCreator: return success_cn and success_en + async def create_job_opportunity_template(self): + """create job opportunity notification template""" + print("\n📝 create job opportunity notification template...") + print("🔗 Deep link format: {{job_deep_link_url}}") + # TODO: the deep link should be modified and updated + print(" Example: https://freeleaps-alpha.com/jobs/{{job_id}}?source=email&user={{user_id}}&token={{auth_token}}") + print(" This will redirect to login if needed, then to the specific job posting") + + # Chinese version (region: 1) + template_data_cn = { + "template_id": "job_opportunity_notification", + "region": 1, + "subject": "新的工作机会 - {{candidate_name}}", + "body": """
+
+

freeleaps

+
+ +
+

新的工作机会

+ +

亲爱的 {{candidate_name}}

+ +

在 {{company_domain}} 上有一个新的职位发布,可能符合您的个人资料。点击此链接或登录 {{company_domain}} 查看详情。

+ + + +
+

祝好!
Freeleaps 团队

+
+ +
+

freeleaps

+

+ We make software development the easiest ever. +

+
+
""" + } + + # English version (region: 0) + template_data_en = { + "template_id": "job_opportunity_notification", + "region": 0, + "subject": "New Job Opportunity - {{candidate_name}}", + "body": """
+
+

freeleaps

+
+ +
+

New Job Opportunity Available

+ +

Dear {{candidate_name}},

+ +

There is a new job posting on {{company_domain}}. It could be something matching your profile. Click this link or log in to {{company_domain}} to check it out.

+ + + +
+

Best regards,
Freeleaps Team

+
+ +
+

freeleaps

+

+ We make software development the easiest ever. +

+
+
""" + } + + success_cn = await self.create_template(template_data_cn) + success_en = await self.create_template(template_data_en) + + return success_cn and success_en + async def create_all_templates(self): """create all templates""" print("🚀 start creating global templates...") @@ -1010,7 +1097,8 @@ class GlobalTemplateCreator: self.create_interview_status_update_template, self.create_welcome_email_template, self.create_password_reset_template, - self.create_account_verification_template + self.create_account_verification_template, + self.create_job_opportunity_template ] success_count = 0 @@ -1028,7 +1116,8 @@ class GlobalTemplateCreator: "interview_status_update - 面试状态更新", "welcome_email - 欢迎邮件", "password_reset_email - 密码重置邮件", - "account_verification_email - 账号验证邮件" + "account_verification_email - 账号验证邮件", + "job_opportunity_notification - 工作机会通知" ] for i, name in enumerate(template_names, 1):