Skip to content

Commit 88175a1

Browse files
init
1 parent 41e92de commit 88175a1

File tree

4 files changed

+25
-7
lines changed

4 files changed

+25
-7
lines changed

backend/src/main/java/io/easystartup/suggestfeature/AuthService.java

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
import io.jsonwebtoken.JwtBuilder;
1818
import io.jsonwebtoken.Jwts;
1919
import io.jsonwebtoken.security.Keys;
20+
import org.apache.commons.collections4.CollectionUtils;
2021
import org.apache.commons.lang3.time.StopWatch;
2122
import org.springframework.beans.factory.annotation.Autowired;
2223
import org.springframework.data.mongodb.core.FindAndModifyOptions;
@@ -98,8 +99,13 @@ public LoginResponse getLoginSignUpResponseJson(User user) {
9899
user.setPassword(null);
99100

100101
List<Member> orgsForUser = getOrgsForUser(user.getId());
102+
if (CollectionUtils.isNotEmpty(orgsForUser)) {
103+
Member member = orgsForUser.get(0);
104+
Organization org = getOrganizationForId(member.getOrganizationId());
105+
return new LoginResponse("Bearer " + jwtToken, safeUser, org.getSlug(), member.getRole());
106+
}
101107

102-
return new LoginResponse("Bearer " + jwtToken, safeUser);
108+
return new LoginResponse("Bearer " + jwtToken, safeUser, null, null);
103109
}
104110

105111
/**
@@ -145,6 +151,7 @@ public void sendMagicLink(String to, String linkCode) {
145151
+ "<h1 style=\"color: #333333;\">Your Verification Code</h1>"
146152
+ "<p style=\"font-size: 16px; color: #666666;\">Use the following verification code to complete your sign-in process:</p>"
147153
+ "<p style=\"font-size: 32px; font-weight: bold; color: #007BFF; background-color: #e9ecef; padding: 10px; border-radius: 5px; display: inline-block; text-align: center; margin: 20px 0;\">" + linkCode + "</p>"
154+
+ "<p style=\"font-size: 16px; color: #666666;\">This code is only valid for 10 minutes.</p>"
148155
+ "<p style=\"font-size: 16px; color: #666666;\">If you didn't request this code, please ignore this email.</p>"
149156
+ "</div>"
150157
+ "</body>"
@@ -223,4 +230,10 @@ public Member getMemberForSlug(String userId, String orgSlug) {
223230

224231
return mongoTemplateFactory.getDefaultMongoTemplate().findOne(new Query(Criteria.where(Member.FIELD_USER_ID).is(userId).and(Member.FIELD_ORGANIZATION_ID).is(organization.getId())), Member.class);
225232
}
233+
234+
// Todo: add cache
235+
private Organization getOrganizationForId(String organizationId) {
236+
return mongoTemplateFactory.getDefaultMongoTemplate().findOne(new Query(Criteria.where(Organization.FIELD_ID).is(organizationId)), Organization.class);
237+
}
238+
226239
}

backend/src/main/java/io/easystartup/suggestfeature/dto/LoginResponse.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,6 @@ public class LoginResponse {
1212
private String organizationSlug;
1313
private Member.Role role;
1414

15-
public LoginResponse(String token, User user) {
16-
this.token = token;
17-
this.user = user;
18-
}
19-
2015
public LoginResponse(String token, User user, String organizationSlug, Member.Role role) {
2116
this.token = token;
2217
this.user = user;

frontend/src/app/not-found.tsx

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
"use client"
2+
import { useRouter } from 'next/navigation';
3+
4+
export default function NotFound() {
5+
const router = useRouter();
6+
router.push('/login');
7+
return (<div> </div>
8+
);
9+
}
10+

frontend/src/context/AuthContext.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ export const AuthProvider = ({ children }: { children: ReactNode }) => {
8282
const { token, user, organizationSlug } = await response.json();
8383
Cookies.set('token', token);
8484
setUser(user);
85-
if (organizationSlug && organization.length > 0) {
85+
if (organizationSlug && organizationSlug.length > 0) {
8686
router.push(`/${organizationSlug}/dashboard`);
8787
} else {
8888
router.push(`/create-org`);

0 commit comments

Comments
 (0)