Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 'use strict';
- var dbSession = require('./dbSession.js');
- var Percolator = require('percolator').Percolator;
- var Server = function (port) {
- var server = Percolator({'port': port, 'autoLink': false, 'staticDir': __dirname + '/../frontend'});
- server.route(
- '/api/keywords',
- {
- GET: function (req, res) {
- console.log('Responding to a GET request for /api/keywords');
- dbSession.fetchAll(
- 'SELECT id, value, categoryID FROM keyword ORDER BY id',
- function (err, rows) {
- if (err) {
- console.log(err);
- res.status.internalServerError(err);
- } else {
- res.collection(rows).send();
- console.log('Response sent');
- }
- }
- );
- },
- POST: function (req, res) {
- console.log('Responding to a POST request for /api/keywords');
- req.onJson(
- function (err, newKeyword) {
- if (err) {
- console.log(err);
- res.status.internalServerError(err);
- }
- else {
- dbSession.query(
- 'INSERT INTO keyword (value, categoryID) VALUES (?, ?);',
- [newKeyword.value, newKeyword.categoryID],
- function (err, result) {
- if (err) {
- console.log(err);
- res.status.internalServerError(err);
- } else {
- res.object({'status': 'ok', 'id': result.insertId}).send();
- }
- }
- );
- }
- }
- );
- }
- }
- );
- server.route(
- '/api/keywords/categories',
- {
- GET: function (req, res) {
- console.log('Responding to a GET request for /api/keywords/categories');
- dbSession.fetchAll(
- 'SELECT id, name FROM category ORDER BY id',
- function (err, rows) {
- if (err) {
- console.log(err);
- res.status.internalServerError(err);
- } else {
- res.collection(rows).send();
- }
- }
- );
- }
- }
- );
- return server;
- };
- module.exports = {'Server': Server};
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement