@@ -30,7 +30,10 @@ const Login: React.FunctionComponent<{}> = () => {
3030 const location = useLocation ( ) ;
3131 const { isLoggedIn, courseId } = useSession ( ) ;
3232 const navigate = useNavigate ( ) ;
33- const { code, provider : providerId } = parseQuery ( location . search ) ;
33+ const { code, ticket, provider : providerId } = parseQuery ( location . search ) ;
34+
35+ // `code` parameter from OAuth2 redirect, `ticket` from CAS redirect
36+ const authCode = code || ticket ;
3437
3538 const handleLogin = React . useCallback (
3639 ( providerId : string ) => dispatch ( login ( providerId ) ) ,
@@ -49,12 +52,12 @@ const Login: React.FunctionComponent<{}> = () => {
4952 }
5053
5154 // Else fetch JWT tokens and user info from backend when auth provider code is present
52- if ( code && ! isLoggedIn ) {
53- dispatch ( fetchAuth ( code , providerId ) ) ;
55+ if ( authCode && ! isLoggedIn ) {
56+ dispatch ( fetchAuth ( authCode , providerId ) ) ;
5457 }
55- } , [ code , providerId , dispatch , courseId , navigate , isLoggedIn ] ) ;
58+ } , [ authCode , providerId , dispatch , courseId , navigate , isLoggedIn ] ) ;
5659
57- if ( code ) {
60+ if ( authCode ) {
5861 return (
5962 < div className = { classNames ( 'Login' , Classes . DARK ) } >
6063 < Card className = { classNames ( 'login-card' , Classes . ELEVATION_4 ) } >
0 commit comments