From 014ff8054891f5884d946fc41f1746cddc34b881 Mon Sep 17 00:00:00 2001 From: Shinn Lok Date: Tue, 20 Oct 2020 23:10:32 -0700 Subject: [PATCH] Parameter missing for email template replace (#1323) Co-authored-by: Trisha Anand --- .../server/controllers/OrganizationController.java | 7 +++++-- .../appsmith/server/services/UserOrganizationService.java | 2 +- .../server/services/UserOrganizationServiceImpl.java | 5 +++-- .../appsmith/server/services/OrganizationServiceTest.java | 4 ++-- 4 files changed, 11 insertions(+), 7 deletions(-) diff --git a/app/server/appsmith-server/src/main/java/com/appsmith/server/controllers/OrganizationController.java b/app/server/appsmith-server/src/main/java/com/appsmith/server/controllers/OrganizationController.java index 2c2893f121..89b05b10d7 100644 --- a/app/server/appsmith-server/src/main/java/com/appsmith/server/controllers/OrganizationController.java +++ b/app/server/appsmith-server/src/main/java/com/appsmith/server/controllers/OrganizationController.java @@ -14,6 +14,7 @@ import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestHeader; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestPart; @@ -51,8 +52,10 @@ public class OrganizationController extends BaseController> updateRoleForMember(@RequestBody UserRole updatedUserRole, @PathVariable String orgId) { - return userOrganizationService.updateRoleForMember(orgId, updatedUserRole) + public Mono> updateRoleForMember(@RequestBody UserRole updatedUserRole, + @PathVariable String orgId, + @RequestHeader(name = "Origin", required = false) String originHeader) { + return userOrganizationService.updateRoleForMember(orgId, updatedUserRole, originHeader) .map(user -> new ResponseDTO<>(HttpStatus.OK.value(), user, null)); } diff --git a/app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserOrganizationService.java b/app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserOrganizationService.java index a5fdfee05e..4e9c8a5f1b 100644 --- a/app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserOrganizationService.java +++ b/app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserOrganizationService.java @@ -20,7 +20,7 @@ public interface UserOrganizationService { Mono removeUserRoleFromOrganizationGivenUserObject(Organization organization, User user); - Mono updateRoleForMember(String orgId, UserRole userRole); + Mono updateRoleForMember(String orgId, UserRole userRole, String originHeader); Mono bulkAddUsersToOrganization(Organization organization, List users, String roleName); } diff --git a/app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserOrganizationServiceImpl.java b/app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserOrganizationServiceImpl.java index 97957eaf02..58003ed1b1 100644 --- a/app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserOrganizationServiceImpl.java +++ b/app/server/appsmith-server/src/main/java/com/appsmith/server/services/UserOrganizationServiceImpl.java @@ -248,7 +248,7 @@ public class UserOrganizationServiceImpl implements UserOrganizationService { } @Override - public Mono updateRoleForMember(String orgId, UserRole userRole) { + public Mono updateRoleForMember(String orgId, UserRole userRole, String originHeader) { if (userRole.getUsername() == null) { return Mono.error(new AppsmithException(AppsmithError.INVALID_PARAMETER, "username")); } @@ -293,8 +293,9 @@ public class UserOrganizationServiceImpl implements UserOrganizationService { Map params = new HashMap<>(); params.put("Inviter_First_Name", currentUser.getName()); params.put("inviter_org_name", organization.getName()); + params.put("inviteUrl", originHeader); params.put("user_role_name", userRole.getRoleName()); - + Mono emailMono = emailSender.sendMail(user.getEmail(), "Appsmith: Your Role has been changed", UPDATE_ROLE_EXISTING_USER_TEMPLATE, params); diff --git a/app/server/appsmith-server/src/test/java/com/appsmith/server/services/OrganizationServiceTest.java b/app/server/appsmith-server/src/test/java/com/appsmith/server/services/OrganizationServiceTest.java index 24891b514b..2d664ccffe 100644 --- a/app/server/appsmith-server/src/test/java/com/appsmith/server/services/OrganizationServiceTest.java +++ b/app/server/appsmith-server/src/test/java/com/appsmith/server/services/OrganizationServiceTest.java @@ -726,7 +726,7 @@ public class OrganizationServiceTest { UserRole userRole = new UserRole(); userRole.setUsername("usertest@usertest.com"); userRole.setRoleName("App Viewer"); - return userOrganizationService.updateRoleForMember(org.getId(), userRole); + return userOrganizationService.updateRoleForMember(org.getId(), userRole, "http://localhost:8080"); }); Mono applicationAfterRoleChange = organizationMono @@ -798,7 +798,7 @@ public class OrganizationServiceTest { userRole.setUsername("usertest@usertest.com"); // Setting the role name to null ensures that user is deleted from the organization userRole.setRoleName(null); - return userOrganizationService.updateRoleForMember(org.getId(), userRole); + return userOrganizationService.updateRoleForMember(org.getId(), userRole, "http://localhost:8080"); }); Mono> tupleMono = organizationMono