@@ -5,29 +5,32 @@ var session = require('express-session')
5
5
const { github} = require ( './../../config/config' )
6
6
var clientId = github . clientId
7
7
var clientSecret = github . clientSecret
8
-
9
- router . get ( '/getUserProfile' , ( req , res ) => {
8
+ let { ErrorHandler , errorHandler } = require ( '../../_helper/error-handler' )
9
+ router . get ( '/getUserProfile' , ( req , res , next ) => {
10
10
username = req . query . username
11
11
get ( `https://api.github.com/users/${ username } ` )
12
12
. then ( resp => {
13
13
res . send ( resp . data )
14
14
} )
15
- . catch ( err => res . json ( { "error" :err } ) )
15
+ . catch ( err => {
16
+ throw new ErrorHandler ( 404 , `${ username } is not a valid username` )
17
+ } )
18
+ . catch ( error => next ( error ) )
16
19
} )
17
20
18
- router . get ( '/getUserOrgs' , ( req , res ) => {
21
+ router . get ( '/getUserOrgs' , ( req , res , next ) => {
19
22
oauth_token = req . query . token
20
23
username = req . query . username
21
24
githubLogin = req . query . githubLogin
22
- console . log ( githubLogin )
23
- console . log ( "username" , req . query . username )
24
25
if ( githubLogin == "false" ) {
25
- console . log ( "! githubLogin is " , githubLogin )
26
26
get ( `https://api.github.com/users/${ username } /orgs` )
27
27
. then ( resp => {
28
28
res . send ( resp . data )
29
29
} )
30
- . catch ( err => res . json ( { "error" :err } ) )
30
+ . catch ( err => {
31
+ throw new ErrorHandler ( 404 , `${ username } is not a valid username` )
32
+ } )
33
+ . catch ( error => next ( error ) )
31
34
}
32
35
else {
33
36
console . log ( "githubLogin" , githubLogin )
@@ -36,7 +39,6 @@ router.get('/getUserProfile',(req,res)=>{
36
39
"Authorization" :`token ${ oauth_token } ` ,
37
40
}
38
41
}
39
- console . log ( config )
40
42
get ( `https://api.github.com/user/orgs` , config = config )
41
43
. then ( resp => {
42
44
console . log ( resp . data . length )
@@ -68,11 +70,14 @@ router.get('/getUserProfile',(req,res)=>{
68
70
res . send ( list_orgs )
69
71
} )
70
72
} )
71
- . catch ( err => { console . log ( err ) ; res . json ( { "error" :err } ) } )
73
+ . catch ( err => {
74
+ throw new ErrorHandler ( err . response . status , err . response . statusText )
75
+ } )
76
+ . catch ( error => next ( error ) )
72
77
}
73
78
} )
74
79
75
- router . get ( '/getUserRepos' , ( req , res ) => {
80
+ router . get ( '/getUserRepos' , ( req , res , next ) => {
76
81
oauth_token = req . query . token
77
82
let config = {
78
83
headers : {
@@ -86,18 +91,24 @@ router.get('/getUserProfile',(req,res)=>{
86
91
. then ( resp => {
87
92
res . send ( resp . data )
88
93
} )
89
- . catch ( err => res . json ( { "error" :err } ) )
94
+ . catch ( err => {
95
+ throw new ErrorHandler ( err . response . status , err . response . statusText )
96
+ } )
97
+ . catch ( error => next ( error ) )
90
98
}
91
99
else {
92
100
get ( `https://api.github.com/user/repos` , config = config )
93
101
. then ( resp => {
94
102
res . send ( resp . data )
95
103
} )
96
- . catch ( err => res . json ( { "error" :err } ) )
104
+ . catch ( err => {
105
+ throw new ErrorHandler ( err . response . status , err . response . statusText )
106
+ } )
107
+ . catch ( error => next ( error ) )
97
108
}
98
109
} )
99
110
100
- router . get ( '/getUserData' , ( req , res ) => {
111
+ router . get ( '/getUserData' , ( req , res , next ) => {
101
112
var oauth_token = req . query . token ;
102
113
var username = req . query . username ;
103
114
var githubLogin = req . query . githubLogin ;
@@ -113,7 +124,10 @@ router.get('/getUserProfile',(req,res)=>{
113
124
res . cookie ( 'username' , resp . data [ "login" ] , { expires : new Date ( Date . now ( ) + + 315360000000 ) } ) //saves username for upcoming queries of logedin user
114
125
res . json ( resp . data )
115
126
} )
116
- . catch ( err => res . sendStatus ( 400 ) . json ( { "error" :err } ) )
127
+ . catch ( err => {
128
+ throw new ErrorHandler ( err . response . status , err . response . statusText )
129
+ } )
130
+ . catch ( error => next ( error ) )
117
131
}
118
132
else {
119
133
console . log ( "not github login" )
@@ -122,11 +136,14 @@ router.get('/getUserProfile',(req,res)=>{
122
136
res . cookie ( 'username' , resp . data [ "login" ] , { expires : new Date ( Date . now ( ) + + 315360000000 ) } ) //saves username for upcoming queries of logedin user
123
137
res . json ( resp . data )
124
138
} )
125
- . catch ( err => res . json ( { "error" :err } ) )
139
+ . catch ( err => {
140
+ throw new ErrorHandler ( err . response . status , err . response . statusText )
141
+ } )
142
+ . catch ( error => next ( error ) )
126
143
}
127
144
} )
128
145
129
- router . get ( '/auth' , ( req , res ) => {
146
+ router . get ( '/auth' , ( req , res , next ) => {
130
147
const body = {
131
148
client_id : clientId ,
132
149
client_secret : clientSecret ,
@@ -175,16 +192,22 @@ router.get('/auth',(req,res)=>{
175
192
res . redirect ( `http://localhost:3000/org?username=${ resp . data [ "login" ] } ` )
176
193
}
177
194
} )
178
- . catch ( err => res . sendStatus ( 400 ) . json ( { "error" :err } ) )
179
- } ) .
180
- catch ( err => {
181
- res . status ( 500 ) . json ( { "error" :err } ) ;
182
- } ) ;
195
+ . catch ( err => {
196
+ throw new ErrorHandler ( err . response . status , err . response . statusText )
197
+ } )
198
+ . catch ( error => next ( error ) )
199
+ } )
200
+ . catch ( err => {
201
+ throw new ErrorHandler ( err . response . status , err . response . statusText )
202
+ } )
203
+ . catch ( error => next ( error ) )
183
204
} )
184
205
185
- router . get ( '/' , ( req , res ) => {
206
+ router . get ( '/' , ( req , res , next ) => {
186
207
res . redirect ( `https://github.com/login/oauth/authorize?client_id=${ clientId } &scope=user` ) ;
187
208
} )
188
-
209
+ router . use ( ( err , req , res , next ) => {
210
+ errorHandler ( err , res ) ;
211
+ } ) ;
189
212
190
213
module . exports = router
0 commit comments