-
Notifications
You must be signed in to change notification settings - Fork 1
/
server.default.js
115 lines (107 loc) · 2.74 KB
/
server.default.js
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
/**
* Projects configurations. Multiple projects with multiple repositories are supported.
*/
export const PROJECTS = {
sampleProject1: {
name: 'PurpleCode.Contributions 1',
description: "Project contributions stats made with love by PurpleCode",
repositories: [{
branch: 'master',
path: '.'
}]
},
sampleProject2: {
name: 'PurpleCode.Contributions 2',
description: "Just a copy of the project to show how to add multiple projects",
repositories: [{
branch: 'master',
path: '.',
/**
* You can optionally filter commits, i.e. by date
*
* @param {Commit} commit
* @returns {boolean}
*/
filter: (commit) => {
let moment = require('moment');
let yearAgo = moment().subtract(1, 'year').toDate();
return commit.date() > yearAgo;
}
}]
}
};
/**
* Contributors id's translator. In the case when:
* - the same person has multiple identities
* - for anonymisation
* - for merging team results
*
* @returns {string} user identifier
*/
export const AUTHORS = (name, email) => {
/**
* This is just an example. You can put your own logic here, or left it intact.
*/
if (email.indexOf('jaworski') > -1) {
return '[email protected]';
}
return email;
};
/**
* Authentication middleware. No credentials check.
*
* @returns {function} middleware
*/
export const AUTHENTICATION = {
/**
* @param {express app} app
*/
configure(/*app*/) {
// do nothing
},
middleware() {
/**
* No authentication
*/
return (_, __, next) => {
next();
}
}
};
/**
* Authentication middleware. HTTP basic auth.
*/
//export const AUTHENTICATION = {
//
// passport: require('passport'),
// passportHttp: require('passport-http'),
//
// configure(app) {
// app.use(this.passport.initialize());
// app.use(this.passport.session());
//
// this.passport.serializeUser((user, done) => {
// done(null, user);
// });
//
// this.passport.deserializeUser((user, done) => {
// done(null, user);
// });
//
// const check = (username, password, done) => {
// if (username === "username" && password === "password") {
// return done(null, username);
// }
// return done(null, false);
// };
//
// this.passport.use(new this.passportHttp.BasicStrategy(check));
//
// },
//
// middleware() {
// return this.passport.authenticate('basic', {session: true});
// }
//
//};
//