@@ -6,6 +6,134 @@ const {github} = require('./../../config/config')
6
6
var clientId = github . clientId
7
7
var clientSecret = github . clientSecret
8
8
9
+ router . get ( '/getUserProfile' , ( req , res ) => {
10
+ username = req . query . username
11
+ axios
12
+ . get ( `https://api.github.com/users/${ username } ` )
13
+ . then ( resp => {
14
+ res . send ( resp . data )
15
+ } )
16
+ . catch ( err => res . json ( { "error" :err } ) )
17
+ } )
18
+
19
+ router . get ( '/getUserOrgs' , ( req , res ) => {
20
+ oauth_token = req . query . token
21
+ username = req . query . username
22
+ githubLogin = req . query . githubLogin
23
+ console . log ( githubLogin )
24
+ console . log ( "username" , req . query . username )
25
+ if ( githubLogin == "false" ) {
26
+ console . log ( "! githubLogin is " , githubLogin )
27
+ axios
28
+ . get ( `https://api.github.com/users/${ username } /orgs` )
29
+ . then ( resp => {
30
+ res . send ( resp . data )
31
+ } )
32
+ . catch ( err => res . json ( { "error" :err } ) )
33
+ }
34
+ else {
35
+ console . log ( "githubLogin" , githubLogin )
36
+ let config = {
37
+ headers : {
38
+ "Authorization" :`token ${ oauth_token } ` ,
39
+ }
40
+ }
41
+ console . log ( config )
42
+ axios
43
+ . get ( `https://api.github.com/user/orgs` , config = config )
44
+ . then ( resp => {
45
+ console . log ( resp . data . length )
46
+ return resp . data
47
+ } )
48
+ . then ( orgs => {
49
+ var list_orgs = orgs ;
50
+ let config = {
51
+ headers : {
52
+ "Authorization" :`token ${ oauth_token } `
53
+ }
54
+ }
55
+ axios
56
+ . get ( `https://api.github.com/users/${ username } /orgs` , config = config )
57
+ . then ( resp1 => {
58
+ console . log ( resp1 . data . length )
59
+ var flag , elem ;
60
+ resp1 . data . forEach ( element => {
61
+ flag = 0 ;
62
+ elem = element
63
+ list_orgs . forEach ( element1 => {
64
+ if ( element1 . login == element . login ) {
65
+ flag = 1 ;
66
+ }
67
+ } )
68
+ if ( flag == 0 ) {
69
+ list_orgs . push ( elem ) ;
70
+ }
71
+ } ) ;
72
+ res . send ( list_orgs )
73
+ } )
74
+ } )
75
+ . catch ( err => { console . log ( err ) ; res . json ( { "error" :err } ) } )
76
+ }
77
+ } )
78
+
79
+ router . get ( '/getUserRepos' , ( req , res ) => {
80
+ oauth_token = req . query . token
81
+ let config = {
82
+ headers : {
83
+ "Authorization" :`token ${ oauth_token } ` ,
84
+ }
85
+ }
86
+ console . log ( config )
87
+ username = req . query . username
88
+ if ( username !== undefined ) {
89
+ axios
90
+ . get ( `https://api.github.com/users/${ username } /repos` , config = config )
91
+ . then ( resp => {
92
+ res . send ( resp . data )
93
+ } )
94
+ . catch ( err => res . json ( { "error" :err } ) )
95
+ }
96
+ else {
97
+ axios
98
+ . get ( `https://api.github.com/user/repos` , config = config )
99
+ . then ( resp => {
100
+ res . send ( resp . data )
101
+ } )
102
+ . catch ( err => res . json ( { "error" :err } ) )
103
+ }
104
+ } )
105
+
106
+ router . get ( '/getUserData' , ( req , res ) => {
107
+ var oauth_token = req . query . token ;
108
+ var username = req . query . username ;
109
+ var githubLogin = req . query . githubLogin ;
110
+ if ( githubLogin == "true" ) {
111
+ console . log ( { "Authorization" : `token ${ oauth_token } ` } )
112
+ let config = {
113
+ headers : {
114
+ "Authorization" :`token ${ oauth_token } `
115
+ }
116
+ }
117
+ axios
118
+ . get ( `https://api.github.com/user` , config = config )
119
+ . then ( resp => {
120
+ res . cookie ( 'username' , resp . data [ "login" ] , { expires : new Date ( Date . now ( ) + + 315360000000 ) } ) //saves username for upcoming queries of logedin user
121
+ res . json ( resp . data )
122
+ } )
123
+ . catch ( err => res . sendStatus ( 400 ) . json ( { "error" :err } ) )
124
+ }
125
+ else {
126
+ console . log ( "not github login" )
127
+ axios
128
+ . get ( `https://api.github.com/users/${ username } ` )
129
+ . then ( resp => {
130
+ res . cookie ( 'username' , resp . data [ "login" ] , { expires : new Date ( Date . now ( ) + + 315360000000 ) } ) //saves username for upcoming queries of logedin user
131
+ res . json ( resp . data )
132
+ } )
133
+ . catch ( err => res . json ( { "error" :err } ) )
134
+ }
135
+ } )
136
+
9
137
router . get ( '/auth' , ( req , res ) => {
10
138
const body = {
11
139
client_id : clientId ,
@@ -57,7 +185,6 @@ router.get('/auth',(req,res)=>{
57
185
}
58
186
} )
59
187
. catch ( err => res . sendStatus ( 400 ) . json ( { "error" :err } ) )
60
-
61
188
} ) .
62
189
catch ( err => {
63
190
res . status ( 500 ) . json ( { "error" :err } ) ;
0 commit comments