Added foursquare API
This commit is contained in:
8
app.js
8
app.js
@ -6,10 +6,12 @@ var express = require('express'),
|
|||||||
mongoose = require('mongoose'),
|
mongoose = require('mongoose'),
|
||||||
passport = require('passport');
|
passport = require('passport');
|
||||||
|
|
||||||
// Configuration (API Keys, Database URI)
|
|
||||||
|
// App Configuration (API Keys, Database URI)
|
||||||
var config = require('./config/config.json');
|
var config = require('./config/config.json');
|
||||||
var passportConf = require('./config/passport');
|
var passportConf = require('./config/passport');
|
||||||
|
|
||||||
|
|
||||||
// Load controllers
|
// Load controllers
|
||||||
var home = require('./controllers/home'),
|
var home = require('./controllers/home'),
|
||||||
user = require('./controllers/user'),
|
user = require('./controllers/user'),
|
||||||
@ -19,6 +21,8 @@ var home = require('./controllers/home'),
|
|||||||
// Connect to database
|
// Connect to database
|
||||||
var db = mongoose.connect(config.db);
|
var db = mongoose.connect(config.db);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Initialize express application
|
// Initialize express application
|
||||||
var app = express();
|
var app = express();
|
||||||
|
|
||||||
@ -55,6 +59,8 @@ app.get('/admin', passportConf.ensureAuthenticated, passportConf.ensureAdmin(),
|
|||||||
app.get('/partials/:name', home.partials);
|
app.get('/partials/:name', home.partials);
|
||||||
|
|
||||||
app.get('/api', api.apiBrowser);
|
app.get('/api', api.apiBrowser);
|
||||||
|
app.get('/api/foursquare', api.foursquare);
|
||||||
|
app.get('/api/foursquare/callback', api.foursquareCallback);
|
||||||
|
|
||||||
app.get('/contact', contact.getContact);
|
app.get('/contact', contact.getContact);
|
||||||
app.post('/contact', contact.postContact);
|
app.post('/contact', contact.postContact);
|
||||||
|
@ -1,3 +1,34 @@
|
|||||||
|
var config = require('../config/config.json');
|
||||||
|
|
||||||
|
// API PROVIDERS SETUP
|
||||||
|
var foursquare = require('node-foursquare')({
|
||||||
|
secrets: {
|
||||||
|
clientId: config.foursquare.clientId,
|
||||||
|
clientSecret: config.foursquare.clientSecret,
|
||||||
|
redirectUrl: config.foursquare.callbackUrl
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
exports.apiBrowser = function(req, res) {
|
exports.apiBrowser = function(req, res) {
|
||||||
res.render('api');
|
res.render('api');
|
||||||
};
|
};
|
||||||
|
|
||||||
|
exports.foursquare = function(req, res) {
|
||||||
|
res.render('api/foursquare', {
|
||||||
|
title: 'Foursquare API'
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
|
exports.foursquareCallback = function(req, res) {
|
||||||
|
foursquare.getAccessToken({
|
||||||
|
code: req.query.code
|
||||||
|
},
|
||||||
|
function(err, accessToken) {
|
||||||
|
if (err) {
|
||||||
|
res.send('An error was thrown: ' + err.message);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// Save the accessToken and redirect.
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
@ -11,6 +11,7 @@
|
|||||||
"passport-facebook": "latest",
|
"passport-facebook": "latest",
|
||||||
"passport-google": "latest",
|
"passport-google": "latest",
|
||||||
"underscore": "latest",
|
"underscore": "latest",
|
||||||
"forever": "latest"
|
"forever": "latest",
|
||||||
|
"node-foursquare": "latest"
|
||||||
}
|
}
|
||||||
}
|
}
|
4
views/api/foursquare.jade
Normal file
4
views/api/foursquare.jade
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
extends ../layout
|
||||||
|
|
||||||
|
block content
|
||||||
|
h1 Foursquare API
|
Reference in New Issue
Block a user