-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathapis.js
More file actions
117 lines (109 loc) · 3.83 KB
/
apis.js
File metadata and controls
117 lines (109 loc) · 3.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
import axios from 'axios';
import { AsyncStorage } from "react-native";
export class ApiService {
static hostName = "http://62.151.176.35"
static baseURL = ApiService.hostName+":8080/wego/";
static async _authenticateUser() {
await AsyncStorage.removeItem('user');
try {
let user = await AsyncStorage.getItem('user');
if (user) {
user = JSON.parse(user);
if (user.id)
return { isAuthenticated: true, userObj: user };
else return { isAuthenticated: false };
}
return { isAuthenticated: false };
}
catch (error) {
console.log(JSON.stringify(error))
return { isAuthenticated: false };
}
}
static async _createDemoUser(){
await AsyncStorage.removeItem('user');
}
static async _registerDriver(dataObj) {
var myHeaders = new Headers();
myHeaders.append('Content-Type', 'application/json');
myHeaders.append('Accept', "*/*");
let user = await AsyncStorage.getItem('user');
user = JSON.parse(user);
console.log(user, dataObj);
dataObj.user.id = user.id;
try {
//get local storage id
let response = fetch(ApiService.baseURL+'api/drivers', {
method: "post",
body: JSON.stringify(dataObj),
headers: myHeaders,
withCredentials: true
}).then((res => {
return res
}))
return response;
}
catch (error) {
console.log(JSON.stringify(error.response))
return error.response;
}
}
static async _registerUser(dataObj) {
var myHeaders = new Headers();
myHeaders.append('Content-Type', 'application/json');
myHeaders.append('Accept', "application/json");
let reqURL = `${ApiService.baseURL}api/register`;
let response = fetch(reqURL, {
method: "post",
body: JSON.stringify(dataObj),
headers: myHeaders,
withCredentials: true
}).then((res => {
console.log(res)
// // let id = JSON.parse(res._bodyText);
AsyncStorage.setItem('user', res._bodyText, () => {
});
// // Error retrieving data
return res
})).catch(err => err)
return response;
}
static async _updateUser(dataObj) {
var myHeaders = new Headers();
myHeaders.append('Content-Type', 'application/json');
myHeaders.append('Accept', "*/*");
let response = fetch(ApiService.baseURL+'api/users', {
method: "put",
body: JSON.stringify(dataObj),
headers: myHeaders,
withCredentials: true
}).then((res => {
console.log(res)
// // let id = JSON.parse(res._bodyText);
AsyncStorage.setItem('user', res._bodyText, () => {
});
// // Error retrieving data
return res
})).catch(err => err)
return response;
}
static async _getTerms() {
try {
let response = await axios({
method: 'get',
url: ApiService.baseURL+'api/terms',
headers: {'Content-Type': 'application/json', 'Accept': 'application/json'},
withCredentials: true
})
return response;
}
catch (error) {
console.log(JSON.stringify(error.response))
return error.response;
}
}
static validateEmail(email) {
var reg = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
return reg.test(email);
}
}