Skip to content

Commit 8659aca

Browse files
authored
Trim and Lowercase all Emails (#85)
1 parent 43971d9 commit 8659aca

File tree

3 files changed

+15
-5
lines changed

3 files changed

+15
-5
lines changed

backend/src/main/java/com/fmc/starterApp/controllers/CarverMatrixController.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,6 @@
1717
import org.springframework.web.bind.annotation.RequestMapping;
1818
import org.springframework.web.bind.annotation.RequestParam;
1919
import org.springframework.web.bind.annotation.RestController;
20-
import org.springframework.security.core.annotation.AuthenticationPrincipal;
21-
import org.springframework.security.oauth2.jwt.Jwt;
2220

2321
import com.fmc.starterApp.models.entity.CarverItem;
2422
import com.fmc.starterApp.models.entity.CarverMatrix;
@@ -179,7 +177,7 @@ public ResponseEntity<?> updateCarverMatrix(@PathVariable Long matrixId, @Reques
179177
public ResponseEntity<?> searchCarverMatrices(@RequestParam Map<String, String> searchParams, @AuthenticationPrincipal Jwt jwt) {
180178
try {
181179
// Get user's email from JWT token
182-
String userEmail = jwt.getClaim("email");
180+
String userEmail = jwt.getClaim("email").toString().trim().toLowerCase();
183181
if (userEmail == null || userEmail.isEmpty()) {
184182
return ResponseEntity.badRequest().body("User email not found in token");
185183
}

backend/src/main/java/com/fmc/starterApp/services/CarverMatrixService.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,18 @@ public CarverMatrix createCarverMatrix(CarverMatrix matrix, Long userId) {
179179
matrix.setRoleBased(matrix.getRoleBased());
180180
matrix.setFivePointScoring(matrix.getFivePointScoring());
181181

182+
List<String> participantList = new ArrayList<>(Arrays.asList(matrix.getParticipants()));
183+
for(int i = 0; i<participantList.size(); i++){
184+
participantList.set(i, participantList.get(i).toLowerCase().trim());
185+
}
186+
matrix.setParticipants(participantList.toArray(new String[0]));
187+
188+
List<String> hostList = new ArrayList<>(Arrays.asList(matrix.getHosts()));
189+
for(int i = 0; i<hostList.size(); i++){
190+
hostList.set(i, hostList.get(i).toLowerCase().trim());
191+
}
192+
matrix.setHosts(hostList.toArray(new String[0]));
193+
182194
if (matrix.getItems() != null) {
183195
for (CarverItem item : matrix.getItems()) {
184196
item.setCarverMatrix(matrix);

backend/src/main/java/com/fmc/starterApp/services/User2Service.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ public User2 upsertUser(Jwt jwt) {
8787
// Extract user details from JWT claims.
8888
String keycloakId = jwt.getClaim("sub");
8989
String username = jwt.getClaim("preferred_username");
90-
String email = jwt.getClaim("email");
90+
String email = jwt.getClaim("email").toString().trim().toLowerCase();
9191
String firstName = jwt.getClaim("given_name");
9292
String lastName = jwt.getClaim("family_name");
9393
String fullName = jwt.getClaim("name");
@@ -212,7 +212,7 @@ public JWTInfoDTO extractJwtInfo(Jwt jwt) {
212212
String firstName = jwt.getClaim("given_name");
213213
String lastName = jwt.getClaim("family_name");
214214
String fullName = jwt.getClaim("name");
215-
String email = jwt.getClaim("email");
215+
String email = jwt.getClaim("email").toString().trim().toLowerCase();
216216

217217
// Extract roles from the "resource_access" claim.
218218
List<String> starterAppRole = new ArrayList<>();

0 commit comments

Comments
 (0)