[#1] getting the calendars from the api
This commit is contained in:
@@ -2,8 +2,9 @@ import { useEffect, useRef } from "react";
|
||||
import { Callback } from "./oidcAuth";
|
||||
import { useAppDispatch } from "../../app/hooks";
|
||||
import { push } from "redux-first-history";
|
||||
import { setUserData } from "./userSlice";
|
||||
import { setTokens, setUserData } from "./userSlice";
|
||||
import { Loading } from "../../components/Loading/Loading";
|
||||
import { getCalendarsAsync } from "../Calendars/CalendarSlice";
|
||||
|
||||
export function CallbackResume() {
|
||||
const dispatch = useAppDispatch();
|
||||
@@ -21,6 +22,8 @@ export function CallbackResume() {
|
||||
const data = await Callback(saved?.code_verifier, saved?.state);
|
||||
console.log("data:", data);
|
||||
dispatch(setUserData(data?.userinfo));
|
||||
dispatch(setTokens(data?.tokenSet));
|
||||
dispatch(getCalendarsAsync(data?.tokenSet.access_token || ""));
|
||||
sessionStorage.removeItem("redirectState");
|
||||
// Redirect to main page after successful callback
|
||||
dispatch(push("/"));
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
export default async function getOpenPaasUserId(opaque_token: string) {
|
||||
const response = await fetch(
|
||||
`${process.env.REACT_APP_CALENDAR_BASE_URL}/api/user`,
|
||||
{
|
||||
headers: {
|
||||
Authorization: `Bearer ${opaque_token}`,
|
||||
},
|
||||
}
|
||||
);
|
||||
const user = await response.json();
|
||||
return user;
|
||||
}
|
||||
@@ -6,6 +6,7 @@ export const userSlice = createSlice({
|
||||
initialState: {
|
||||
userData: null as unknown as userData,
|
||||
organiserData: null as unknown as userOrganiser,
|
||||
tokens: null as unknown as Record<string, string>,
|
||||
},
|
||||
reducers: {
|
||||
setUserData: (state, action) => {
|
||||
@@ -16,10 +17,14 @@ export const userSlice = createSlice({
|
||||
state.organiserData.cn = action.payload.sub;
|
||||
state.organiserData.cal_address = `mailto:${action.payload.email}`;
|
||||
},
|
||||
setTokens: (state, action) => {
|
||||
console.log(state.tokens);
|
||||
state.tokens = action.payload;
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
// Action creators are generated for each case reducer function
|
||||
export const { setUserData } = userSlice.actions;
|
||||
export const { setUserData, setTokens } = userSlice.actions;
|
||||
|
||||
export default userSlice.reducer;
|
||||
|
||||
Reference in New Issue
Block a user