From 521d3b2e63e97f0e4cbb9e242b574826a1390b1d Mon Sep 17 00:00:00 2001 From: williameriksson126 Date: Mon, 30 Nov 2020 10:18:18 +0100 Subject: [PATCH 1/2] Add: AccessToken now updated to seperate class --- package-lock.json | 5 +++ package.json | 1 + src/App.js | 2 +- src/classes/AccessToken.js | 21 +++++++++++ src/components/AccessToken.js | 65 --------------------------------- src/components/NearbyStation.js | 13 ++----- 6 files changed, 31 insertions(+), 76 deletions(-) create mode 100644 src/classes/AccessToken.js delete mode 100644 src/components/AccessToken.js diff --git a/package-lock.json b/package-lock.json index 2e07101..fcec47e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12386,6 +12386,11 @@ "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, + "react-native-push-notification": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/react-native-push-notification/-/react-native-push-notification-6.1.3.tgz", + "integrity": "sha512-qNbFCkObCXwSFQbK6hJyx1Bym1D7V4XM8iN2L6eL3GAdNLmeBTdLdx3mPbKJtuaDJ1+deniFTQ2rz6hU4ELOXA==" + }, "react-push-notification": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/react-push-notification/-/react-push-notification-1.3.0.tgz", diff --git a/package.json b/package.json index 58623ff..a5f2a3b 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,7 @@ "react": "^17.0.1", "react-axios": "^2.0.3", "react-dom": "^17.0.1", + "react-native-push-notification": "^6.1.3", "react-push-notification": "^1.3.0", "react-router-dom": "^5.2.0", "react-scripts": "4.0.0", diff --git a/src/App.js b/src/App.js index d58efca..257d6cd 100644 --- a/src/App.js +++ b/src/App.js @@ -6,7 +6,7 @@ import { BrowserRouter as Router, Route } from "react-router-dom"; import NavigationDrawer from "./components/NavigationDrawer.js"; import BottomMenu from "./components/BottomMenu.js"; -import AccessToken from "./components/AccessToken.js"; +//import AccessToken from "./components/AccessToken.js"; import NearbyStation from "./components/NearbyStation"; import Tickets from "./components/pages/Tickets.js"; diff --git a/src/classes/AccessToken.js b/src/classes/AccessToken.js new file mode 100644 index 0000000..0537ec3 --- /dev/null +++ b/src/classes/AccessToken.js @@ -0,0 +1,21 @@ +import axios from 'axios'; + +class AccessToken { + credentials = 'NXR5N2d4bUFmUWxVSERIZG03a2dhcVh3SzVJYTp3cElPVVJuSkpjVHRPNnJPUlltWVlQcTR3WGth' + device = '123' + + constructor() { + const headers = { + 'Content-Type': 'application/x-www-form-urlencoded', + 'Authorization': 'Basic ' + this.credentials + }; + + axios.post('https://api.vasttrafik.se/token','grant_type=client_credentials&scope=device_'+this.device, {headers} ) + .then(response => { + console.log(response); + this.token = response.data.access_token + }); + } +} + +export default AccessToken diff --git a/src/components/AccessToken.js b/src/components/AccessToken.js deleted file mode 100644 index 7201228..0000000 --- a/src/components/AccessToken.js +++ /dev/null @@ -1,65 +0,0 @@ -import React from 'react'; -import axios from 'axios'; - -var globToken = '' - -const GetToken = () => { - const vars = { - credentials: 'NXR5N2d4bUFmUWxVSERIZG03a2dhcVh3SzVJYTp3cElPVVJuSkpjVHRPNnJPUlltWVlQcTR3WGth', - token: undefined, - device: '123', - } - - const headers = { - 'Content-Type': 'application/x-www-form-urlencoded', - 'Authorization': 'Basic ' + vars.credentials - }; - - axios.post('https://api.vasttrafik.se/token','grant_type=client_credentials&scope=device_'+vars.device, { headers }) - .then(response => { - console.log(response); - globToken = response.data.access_token - }); -} - -class AccessToken extends React.Component { - state = { - token: 'No Token', - } - - handleChange = event => { - this.setState({ token: event.target.value}); - } - - handleSubmit = event => { - event.preventDefault(); - - this.setState({ - credentials: 'Attempting to send token' - }); - GetToken(); - } - - handleFetch = event => { - event.preventDefault(); - this.setState({token: globToken}) - } - - render() { - return ( -
-
- -
-

- {this.state.token} -

-
- -
-
- ) - } -} - -export default AccessToken diff --git a/src/components/NearbyStation.js b/src/components/NearbyStation.js index bd48b26..7455c93 100644 --- a/src/components/NearbyStation.js +++ b/src/components/NearbyStation.js @@ -1,5 +1,6 @@ import React from 'react'; import axios from 'axios'; +import AccessToken from '../classes/AccessToken' class NearbyStation extends React.Component { state = { @@ -7,7 +8,7 @@ class NearbyStation extends React.Component { long: '12.0', stops: [], token: undefined, - device: '123', + tokenClass: new AccessToken() } handleChangeLat = event => { @@ -18,15 +19,11 @@ class NearbyStation extends React.Component { this.setState({ long: event.target.value}); } - handleChangeToken = event => { - this.setState({ token: event.target.value}) - } - handleSubmit = event => { event.preventDefault(); const headers = { - 'Authorization': 'Bearer ' + this.state.token + 'Authorization': 'Bearer ' + this.state.tokenClass.token }; console.log('Attempted connection') @@ -52,10 +49,6 @@ class NearbyStation extends React.Component { Longitude coord: -

From 093199d0e0d25e679dad1826ec61a8e944f07139 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Wahlberg?= Date: Fri, 4 Dec 2020 11:48:56 +0100 Subject: [PATCH 2/2] Add global data variable --- src/GlobalData.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 src/GlobalData.js diff --git a/src/GlobalData.js b/src/GlobalData.js new file mode 100644 index 0000000..3f4e9b9 --- /dev/null +++ b/src/GlobalData.js @@ -0,0 +1,12 @@ +import User from './classes/User.js'; +import Coordinates from "./classes/Coordinates.js"; + +let globalData = { + user: new User( + "test", + "123", + new Coordinates() + ) +}; + +export default globalData; \ No newline at end of file