]>
Commit | Line | Data |
---|---|---|
ca2d3b4d JZ |
1 | #!/usr/bin/env node |
2 | ||
3 | 'use strict'; | |
4 | ||
5 | var express = require('express'), | |
6 | morgan = require('morgan'), | |
591ad40c | 7 | passport = require('passport'), |
8c3ae071 | 8 | path = require('path'), |
ca2d3b4d | 9 | compression = require('compression'), |
591ad40c | 10 | session = require('express-session'), |
ca2d3b4d | 11 | bodyParser = require('body-parser'), |
591ad40c | 12 | cookieParser = require('cookie-parser'), |
ca2d3b4d JZ |
13 | lastMile = require('connect-lastmile'), |
14 | multipart = require('./src/multipart'), | |
591ad40c | 15 | auth = require('./src/auth.js'), |
8c3ae071 | 16 | files = require('./src/files.js')(path.resolve(__dirname, 'files')); |
ca2d3b4d JZ |
17 | |
18 | var app = express(); | |
19 | var router = new express.Router(); | |
20 | ||
21 | var multipart = multipart({ maxFieldsSize: 2 * 1024, limit: '512mb', timeout: 3 * 60 * 1000 }); | |
22 | ||
591ad40c JZ |
23 | router.get('/api/files/*', auth.ldap, files.get); |
24 | router.put('/api/files/*', auth.ldap, multipart, files.put); | |
25 | router.delete('/api/files/*', auth.ldap, files.del); | |
ca2d3b4d | 26 | |
c10e69bf JZ |
27 | // healthcheck in case / does not serve up any file yet |
28 | router.get('/', function (req, res) { res.sendfile(path.join(__dirname, '/app/welcome.html')); }); | |
29 | ||
ca2d3b4d JZ |
30 | app.use(morgan('dev')); |
31 | app.use(compression()); | |
c10e69bf | 32 | app.use('/settings', express.static(__dirname + '/app')); |
eaa62184 | 33 | app.use(express.static(__dirname + '/files')); |
591ad40c JZ |
34 | app.use(bodyParser.json()); |
35 | app.use(bodyParser.urlencoded()); | |
36 | app.use(cookieParser()); | |
37 | app.use(session({ secret: 'surfin surfin' })); | |
38 | app.use(passport.initialize()); | |
39 | app.use(passport.session()); | |
ca2d3b4d JZ |
40 | app.use(router); |
41 | app.use(lastMile()); | |
42 | ||
43 | var server = app.listen(3000, function () { | |
44 | var host = server.address().address; | |
45 | var port = server.address().port; | |
46 | ||
47 | console.log('Surfer listening at http://%s:%s', host, port); | |
48 | }); |