UNPKG

1.21 kBJavaScriptView Raw
1var path = require('path')
2var express = require('express')
3var _ = require('lodash')
4
5var navTree = require('./nav.json')
6var config = require('./config')
7
8var Doxx = require('..')
9var doxxConfig = require('./config/doxx')
10
11var app = express()
12var doxx = Doxx(doxxConfig)
13doxx.configureExpress(app)
14
15var staticDir = path.join(__dirname, 'static')
16var contentsDir = path.join(__dirname, config.destDir)
17
18app.use(express.static(staticDir))
19
20var getLocals = function (extra) {
21 return doxx.getLocals({ nav: navTree }, extra)
22}
23
24doxx.loadLunrIndex()
25
26app.get('/search-results', function (req, res) {
27 var searchTerm = req.query.searchTerm
28 res.render('search', getLocals({
29 title: "Search results for " + searchTerm,
30 breadcrumbs: [
31 'Search Results',
32 searchTerm
33 ],
34 searchTerm: searchTerm,
35 searchResults: doxx.lunrSearch(searchTerm)
36 }))
37})
38
39app.use(express.static(contentsDir))
40
41app.get('*', function (req, res) {
42 res.render('not-found', getLocals({
43 title: "We don't seem to have such page",
44 breadcrumbs: [ 'Page not found' ]
45 }))
46})
47
48var port = process.env.PORT || 3000
49
50app.listen(port, function () {
51 console.log("Server started, open http://localhost:" + port)
52})