Skip to content

Commit 48b1a4c

Browse files
committed
standalone ui
1 parent bd325e2 commit 48b1a4c

File tree

4 files changed

+59
-2
lines changed

4 files changed

+59
-2
lines changed

grunt/Gruntfile.coffee

+1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ module.exports = (grunt) ->
99
livereload: false
1010
keepalive: true
1111
watch: false
12+
middleware: require './middleware'
1213

1314
grunt.loadNpmTasks 'grunt-contrib-connect'
1415
grunt.registerTask 'default', ['connect']

grunt/middleware.coffee

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
module.exports = (connect, options) ->
2+
express = require 'express'
3+
# livereloadUtilities = require 'grunt-contrib-livereload/lib/utils'
4+
app = express()
5+
6+
app.configure ->
7+
#app.use livereloadUtilities.livereloadSnippet
8+
app.use express.logger 'dev'
9+
app.use express.bodyParser()
10+
app.use express.methodOverride()
11+
app.use express.errorHandler()
12+
app.use express.static options.base
13+
app.use app.router
14+
15+
routes = require './server'
16+
routes app, options
17+
18+
#timeout = null
19+
20+
###
21+
(require 'fs').watch './server/server.coffee', { persistent: false }, (event, filename) ->
22+
clearTimeout timeout if timeout
23+
timeout = setTimeout ->
24+
console.log "server.coffee file updated... reloading server"
25+
for method of app.routes
26+
app.routes[method] = [] # clean the routes
27+
delete require.cache[require.resolve './server'] # remove the server module from cache
28+
routes = require './server' # reload the module
29+
routes app, options # rerun the module
30+
clearTimeout timeout if timeout
31+
,10
32+
###
33+
34+
connect(app).stack

grunt/package.json

+3-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,9 @@
22
"name": "angular-android",
33
"version": "0.0.1",
44
"dependencies": {
5-
"grunt": "0.4.1",
6-
"grunt-contrib-connect": "0.3.0"
5+
"grunt": "0.4.x",
6+
"grunt-contrib-connect": "0.3.x",
7+
"express": "~3.2.5"
78
},
89
"engines": {
910
"node": "0.8.x",

grunt/server.coffee

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
module.exports = (app, options) ->
2+
3+
todos=[]
4+
5+
app.get '/', (req, res) ->
6+
res.render "#{options.base}/index.html"
7+
8+
app.get '/api/list', (req, res) ->
9+
res.json todos
10+
11+
app.post '/api/update/:id', (req, res) ->
12+
todos[req.params.id] = req.body
13+
res.send 200
14+
15+
app.post '/api/add/:id', (req, res) ->
16+
todos.splice parseInt(req.params.id)+1, 0, req.body
17+
res.send 200
18+
19+
app.post '/api/delete/:id', (req, res, id) ->
20+
todos.splice req.params.id, 1
21+
res.send 200

0 commit comments

Comments
 (0)