From 52076b6ab323d4cccdb568cd4a29e7eee26974e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Taneli=20Riihim=C3=A4ki?= <m3034@student.jamk.fi> Date: Wed, 3 Jul 2019 11:17:12 +0300 Subject: [PATCH] Continue working on login functionalities, added game listing --- components/GameList.js | 44 ++++++++++++++++++++++++++++++++++++++ components/Login.js | 20 ++++++++++------- components/LoginForm.js | 7 ------ components/Register.js | 0 components/RegisterForm.js | 4 ---- 5 files changed, 56 insertions(+), 19 deletions(-) create mode 100644 components/GameList.js delete mode 100644 components/Register.js diff --git a/components/GameList.js b/components/GameList.js new file mode 100644 index 0000000..f6ecf08 --- /dev/null +++ b/components/GameList.js @@ -0,0 +1,44 @@ +import React, { Component, Fragment } from "react"; +import { FlatList, Button } from "react-native"; + +class GameList extends Component { + constructor(props) { + super(props); + this.state = { + games: [], + selectedGame: null, + editForm: false + }; + } + + componentDidMount() { + this.getGames(); + } + + getGames() { + fetch("http://172.20.2.110:5000/game/listgames") + .then(response => response.json()) + .then(games => { + this.setState({ + games + }); + }) + .catch(error => { + console.log(error); + }); + } + + render() { + return ( + <Fragment> + {this.state.games.length > 0 && ( + <FlatList + data={this.state.games} + renderItem={({ item }) => <Button title={item.name} />} + /> + )} + </Fragment> + ); + } +} +export default GameList; diff --git a/components/Login.js b/components/Login.js index d4e6e27..53740ad 100644 --- a/components/Login.js +++ b/components/Login.js @@ -1,8 +1,9 @@ -import React, { Component } from "react"; -import { StyleSheet, Text, View, Button, AsyncStorage } from "react-native"; +import React, { Component, Fragment } from "react"; +import { View, Button, AsyncStorage } from "react-native"; import LoginForm from "./LoginForm"; import RegisterForm from "./RegisterForm"; +import GameList from "./GameList"; class Login extends Component { state = { @@ -35,7 +36,7 @@ class Login extends Component { componentDidMount() { let token = this.loadToken(); if (token) { - fetch(`${process.env.REACT_APP_URL}/user/verify`, { + fetch(`http://172.20.2.110:5000/user/verify`, { headers: { Authorization: "Bearer " + token } @@ -80,11 +81,14 @@ class Login extends Component { /> )} {this.state.username && ( - <Button - id="logoutButton" - onPress={this.handleLogout.bind(this)} - title="Logout" - /> + <Fragment> + <Button + id="logoutButton" + onPress={this.handleLogout.bind(this)} + title="Logout" + /> + <GameList /> + </Fragment> )} </View> {this.state.form === "register" && ( diff --git a/components/LoginForm.js b/components/LoginForm.js index bb3fb04..6b4fe97 100644 --- a/components/LoginForm.js +++ b/components/LoginForm.js @@ -21,13 +21,6 @@ export class LoginForm extends React.Component { this.props.toggleView(this.props.view); }; - // remove login view with ESC - handleEsc = e => { - if (e.keyCode === 27) { - this.handleView(); - } - }; - handleLogin = e => { const name = this.state.username; const password = this.state.password; diff --git a/components/Register.js b/components/Register.js deleted file mode 100644 index e69de29..0000000 diff --git a/components/RegisterForm.js b/components/RegisterForm.js index fa06695..3576dbb 100644 --- a/components/RegisterForm.js +++ b/components/RegisterForm.js @@ -35,9 +35,6 @@ export class RegisterForm extends React.Component { handleRegister = e => { const name = this.state.username; const password = this.state.password; - console.log("PÄÄSTII TÄNNE"); - this.setState({ registered: true }); - console.log("Registered: " + this.state.registered); if (this.state.password !== this.state.password2) { this.handleError("Passwords do not match"); } else { @@ -77,7 +74,6 @@ export class RegisterForm extends React.Component { return ( <View className="fade-main"> <View className="sticky"> - {this.state.registered && <Text>REKISTERÖIDÄÄN</Text>} <Text className="close" onPress={this.handleView}> × </Text> -- GitLab