introduce a running login chain

This commit is contained in:
Sven Czarnian
2022-11-03 02:01:18 +01:00
parent d0d31c723e
commit 914048fadf
5 changed files with 96 additions and 21 deletions

42
src/components/login.tsx Normal file
View File

@@ -0,0 +1,42 @@
import React, { useEffect } from 'react';
import { Button } from 'primereact/button';
import { Card } from 'primereact/card';
import { Configuration } from './configuration';
export const Login: React.FC = () => {
// reset every old token
useEffect(() => sessionStorage.removeItem('token'), []);
const redirectToVatsim = () => {
const url = [
Configuration.vatsim.authorizeUrl,
`?client_id=${Configuration.vatsim.clientId}`,
`&redirect_uri=http://localhost:3000/auth/vatsim`,
`&response_type=code`,
`&scope=full_name+vatsim_details`,
`&approval_prompt=auto`,
].join('');
window.location.replace(url);
}
const footer = (
<span>
<Button
label='Login with VATSIM SSO'
className='p-button p-button-success'
onClick={redirectToVatsim}
/>
</span>
);
return (
<>
<Card
title='Arrival MANager'
className='login-card text-center surface-200'
style={{ width: '25rem' }}
footer={footer}>
</Card>
</>
);
};