Skip to content
Snippets Groups Projects
Commit d1ddbc57 authored by borzechof99's avatar borzechof99 :whale2:
Browse files

Implemented JWT

parent 4554f94e
Branches
No related tags found
No related merge requests found
import * as React from 'react'; import * as React from 'react';
import { Admin, Resource, EditGuesser, ListGuesser } from 'react-admin'; import { Admin, Resource } from 'react-admin';
import dataProviderMapper from './dataProviderMapper'; import dataProviderMapper from './dataProviderMapper';
import TreeMenu from '@bb-tech/ra-treemenu'; import TreeMenu from '@bb-tech/ra-treemenu';
import { jwtTokenAuthProvider, fetchJsonWithAuthJWTToken } from 'ra-data-django-rest-framework';
import { SportList, SportEdit, SportCreate } from './sportList'; import { SportList, SportEdit, SportCreate } from './sportList';
import { IncompleteList, IncompleteEdit } from './incompleteList'; import { IncompleteList, IncompleteEdit } from './incompleteList';
import { QuestionList, QuestionEdit, QuestionCreate } from './questionList'; import { QuestionList, QuestionEdit, QuestionCreate } from './questionList';
...@@ -11,7 +13,7 @@ import { ScraperList } from './scraperList'; ...@@ -11,7 +13,7 @@ import { ScraperList } from './scraperList';
import { orderList } from './questionOrderList'; import { orderList } from './questionOrderList';
import { archiveList } from './archiveList'; import { archiveList } from './archiveList';
import { criteriaList } from './criteriaList'; import { criteriaList } from './criteriaList';
import { GreetingEndList, GreetingEndEdit } from './greetingEndList'; import { GreetingEndList } from './greetingEndList';
import RestoreFromTrashIcon from '@material-ui/icons/RestoreFromTrash'; import RestoreFromTrashIcon from '@material-ui/icons/RestoreFromTrash';
import SportsKabaddiIcon from '@material-ui/icons/SportsKabaddi'; import SportsKabaddiIcon from '@material-ui/icons/SportsKabaddi';
...@@ -28,12 +30,9 @@ const App = () => ( ...@@ -28,12 +30,9 @@ const App = () => (
dataProvider={dataProviderMapper} // A custom mapper is used because different resources need different dataProviders dataProvider={dataProviderMapper} // A custom mapper is used because different resources need different dataProviders
disableTelemetry disableTelemetry
menu={TreeMenu} menu={TreeMenu}
authProvider={jwtTokenAuthProvider({ obtainAuthTokenUrl: "http://localhost:8000/api/admin/token/" })}
> >
<Resource
name='sportarten'
options={{ "label": "Sportarten", "isMenuParent": true }}
/>
<Resource <Resource
name='sport' // name of the API endpoint name='sport' // name of the API endpoint
...@@ -44,6 +43,11 @@ const App = () => ( ...@@ -44,6 +43,11 @@ const App = () => (
create={SportCreate} create={SportCreate}
/> />
<Resource
name='sportarten'
options={{ "label": "Sportarten", "isMenuParent": true }}
/>
<Resource <Resource
name='sport-scraper' name='sport-scraper'
icon={YoutubeSearchedForIcon} icon={YoutubeSearchedForIcon}
......
import drfProvider from 'ra-data-django-rest-framework'; import drfProvider, { fetchJsonWithAuthJWTToken } from 'ra-data-django-rest-framework';
import sportIncompleteProvider from './sportIncompleteProvider.js'; import sportIncompleteProvider from './sportIncompleteProvider.js';
import scraperDataProvider from './scraperDataProvider.js'; import scraperDataProvider from './scraperDataProvider.js';
import questionOrderProvider from './questionOrderProvider.js'; import questionOrderProvider from './questionOrderProvider.js';
...@@ -19,19 +19,19 @@ import { ...@@ -19,19 +19,19 @@ import {
// Depending on the need, further data providers can be defined and added // Depending on the need, further data providers can be defined and added
const dataProviders = [ const dataProviders = [
{ {
dataProvider: drfProvider('http://localhost:8000/api/admin'), dataProvider: drfProvider('http://localhost:8000/api/admin', fetchJsonWithAuthJWTToken),
resources: ['sport', 'question', 'sport-archive', 'criteria', 'greeting-end'], resources: ['sport', 'question', 'sport-archive', 'criteria', 'greeting-end'],
}, },
{ {
dataProvider: sportIncompleteProvider('http://localhost:8000/api/admin'), dataProvider: sportIncompleteProvider('http://localhost:8000/api/admin', fetchJsonWithAuthJWTToken),
resources: ['sport-incomplete'], resources: ['sport-incomplete'],
}, },
{ {
dataProvider: scraperDataProvider('http://localhost:8000/api/admin'), dataProvider: scraperDataProvider('http://localhost:8000/api/admin', fetchJsonWithAuthJWTToken),
resources: ['sport-scraper'], resources: ['sport-scraper'],
}, },
{ {
dataProvider: questionOrderProvider('http://localhost:8000/api/admin'), dataProvider: questionOrderProvider('http://localhost:8000/api/admin', fetchJsonWithAuthJWTToken),
resources: ['question-order'], resources: ['question-order'],
} }
]; ];
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment