[ create a new paste ] login | about

Link: http://codepad.org/0eAignTG    [ raw code | fork ]

Plain Text, pasted on Sep 2:
var express = require('express');
var fs = require('fs');
var app = express();

app.use(express.static('public'));

function getPhotoList(callback) {
    // TODO Make configurable.
    var dir = "photos";
    var fileNames;
    fs.readdir(dir, function(err, fileNames) {
        if (err) {
            console.log("Error cannot read dir: " + dir);
        } else {
            this.fileNames = fileNames;
            callback(fileNames);
        }
    });
}

// TODO Access photos by /photos/year/month/day
app.get('/photos/:index', function (req, res) {
    getPhotoList(function sendResponse(fileNames) {
        if (fileNames && req.params[0] in fileNames) {
            res.send(JSON.stringify());
        } else {
            res.sendStatus(404);
        }
    });
});

app.get('/photos/', function (req, res) {
    var fileNames = getPhotoList();
    console.log(fileNames);
    if (fileNames) {
        res.send(JSON.stringify(fileNames));
    } else {
        console.log("asdf");
        res.sendStatus(500);
    }
});

var server = app.listen(3000, function () {
  var host = server.address().address;
  var port = server.address().port;
  console.log('App listening at http://%s:%s', host, port);
});


Create a new paste based on this one


Comments: