From 4889e9732d2458d60e2a079d3e54e128f6ce1b53 Mon Sep 17 00:00:00 2001 From: BoHong Li Date: Wed, 8 Mar 2017 18:45:51 +0800 Subject: Use JavaScript Standard Style Introduce JavaScript Standard Style as project style rule, and fixed all fail on backend code. --- lib/history.js | 297 +++++++++++++++++++++++++++++---------------------------- 1 file changed, 150 insertions(+), 147 deletions(-) (limited to 'lib/history.js') diff --git a/lib/history.js b/lib/history.js index e7fb3087..69337dc5 100644 --- a/lib/history.js +++ b/lib/history.js @@ -1,172 +1,175 @@ -//history -//external modules -var async = require('async'); +// history +// external modules -//core -var config = require("./config.js"); -var logger = require("./logger.js"); -var response = require("./response.js"); -var models = require("./models"); +// core +var config = require('./config.js') +var logger = require('./logger.js') +var response = require('./response.js') +var models = require('./models') -//public +// public var History = { - historyGet: historyGet, - historyPost: historyPost, - historyDelete: historyDelete, - updateHistory: updateHistory -}; - -function getHistory(userid, callback) { - models.User.findOne({ - where: { - id: userid - } - }).then(function (user) { - if (!user) - return callback(null, null); - var history = {}; - if (user.history) - history = parseHistoryToObject(JSON.parse(user.history)); - if (config.debug) - logger.info('read history success: ' + user.id); - return callback(null, history); - }).catch(function (err) { - logger.error('read history failed: ' + err); - return callback(err, null); - }); + historyGet: historyGet, + historyPost: historyPost, + historyDelete: historyDelete, + updateHistory: updateHistory } -function setHistory(userid, history, callback) { - models.User.update({ - history: JSON.stringify(parseHistoryToArray(history)) - }, { - where: { - id: userid - } - }).then(function (count) { - return callback(null, count); - }).catch(function (err) { - logger.error('set history failed: ' + err); - return callback(err, null); - }); +function getHistory (userid, callback) { + models.User.findOne({ + where: { + id: userid + } + }).then(function (user) { + if (!user) { + return callback(null, null) + } + var history = {} + if (user.history) { + history = parseHistoryToObject(JSON.parse(user.history)) + } + if (config.debug) { + logger.info('read history success: ' + user.id) + } + return callback(null, history) + }).catch(function (err) { + logger.error('read history failed: ' + err) + return callback(err, null) + }) } -function updateHistory(userid, noteId, document, time) { - if (userid && noteId && typeof document !== 'undefined') { - getHistory(userid, function (err, history) { - if (err || !history) return; - if (!history[noteId]) { - history[noteId] = {}; - } - var noteHistory = history[noteId]; - var noteInfo = models.Note.parseNoteInfo(document); - noteHistory.id = noteId; - noteHistory.text = noteInfo.title; - noteHistory.time = time || Date.now(); - noteHistory.tags = noteInfo.tags; - setHistory(userid, history, function (err, count) { - return; - }); - }); +function setHistory (userid, history, callback) { + models.User.update({ + history: JSON.stringify(parseHistoryToArray(history)) + }, { + where: { + id: userid } + }).then(function (count) { + return callback(null, count) + }).catch(function (err) { + logger.error('set history failed: ' + err) + return callback(err, null) + }) } -function parseHistoryToArray(history) { - var _history = []; - Object.keys(history).forEach(function (key) { - var item = history[key]; - _history.push(item); - }); - return _history; +function updateHistory (userid, noteId, document, time) { + if (userid && noteId && typeof document !== 'undefined') { + getHistory(userid, function (err, history) { + if (err || !history) return + if (!history[noteId]) { + history[noteId] = {} + } + var noteHistory = history[noteId] + var noteInfo = models.Note.parseNoteInfo(document) + noteHistory.id = noteId + noteHistory.text = noteInfo.title + noteHistory.time = time || Date.now() + noteHistory.tags = noteInfo.tags + setHistory(userid, history, function (err, count) { + if (err) { + logger.log(err) + } + }) + }) + } } -function parseHistoryToObject(history) { - var _history = {}; - for (var i = 0, l = history.length; i < l; i++) { - var item = history[i]; - _history[item.id] = item; - } - return _history; +function parseHistoryToArray (history) { + var _history = [] + Object.keys(history).forEach(function (key) { + var item = history[key] + _history.push(item) + }) + return _history } -function historyGet(req, res) { - if (req.isAuthenticated()) { - getHistory(req.user.id, function (err, history) { - if (err) return response.errorInternalError(res); - if (!history) return response.errorNotFound(res); - res.send({ - history: parseHistoryToArray(history) - }); - }); - } else { - return response.errorForbidden(res); - } +function parseHistoryToObject (history) { + var _history = {} + for (var i = 0, l = history.length; i < l; i++) { + var item = history[i] + _history[item.id] = item + } + return _history +} + +function historyGet (req, res) { + if (req.isAuthenticated()) { + getHistory(req.user.id, function (err, history) { + if (err) return response.errorInternalError(res) + if (!history) return response.errorNotFound(res) + res.send({ + history: parseHistoryToArray(history) + }) + }) + } else { + return response.errorForbidden(res) + } } -function historyPost(req, res) { - if (req.isAuthenticated()) { - var noteId = req.params.noteId; - if (!noteId) { - if (typeof req.body['history'] === 'undefined') return response.errorBadRequest(res); - if (config.debug) - logger.info('SERVER received history from [' + req.user.id + ']: ' + req.body.history); - try { - var history = JSON.parse(req.body.history); - } catch (err) { - return response.errorBadRequest(res); - } - if (Array.isArray(history)) { - setHistory(req.user.id, history, function (err, count) { - if (err) return response.errorInternalError(res); - res.end(); - }); - } else { - return response.errorBadRequest(res); - } +function historyPost (req, res) { + if (req.isAuthenticated()) { + var noteId = req.params.noteId + if (!noteId) { + if (typeof req.body['history'] === 'undefined') return response.errorBadRequest(res) + if (config.debug) { logger.info('SERVER received history from [' + req.user.id + ']: ' + req.body.history) } + try { + var history = JSON.parse(req.body.history) + } catch (err) { + return response.errorBadRequest(res) + } + if (Array.isArray(history)) { + setHistory(req.user.id, history, function (err, count) { + if (err) return response.errorInternalError(res) + res.end() + }) + } else { + return response.errorBadRequest(res) + } + } else { + if (typeof req.body['pinned'] === 'undefined') return response.errorBadRequest(res) + getHistory(req.user.id, function (err, history) { + if (err) return response.errorInternalError(res) + if (!history) return response.errorNotFound(res) + if (!history[noteId]) return response.errorNotFound(res) + if (req.body.pinned === 'true' || req.body.pinned === 'false') { + history[noteId].pinned = (req.body.pinned === 'true') + setHistory(req.user.id, history, function (err, count) { + if (err) return response.errorInternalError(res) + res.end() + }) } else { - if (typeof req.body['pinned'] === 'undefined') return response.errorBadRequest(res); - getHistory(req.user.id, function (err, history) { - if (err) return response.errorInternalError(res); - if (!history) return response.errorNotFound(res); - if (!history[noteId]) return response.errorNotFound(res); - if (req.body.pinned === 'true' || req.body.pinned === 'false') { - history[noteId].pinned = (req.body.pinned === 'true'); - setHistory(req.user.id, history, function (err, count) { - if (err) return response.errorInternalError(res); - res.end(); - }); - } else { - return response.errorBadRequest(res); - } - }); + return response.errorBadRequest(res) } - } else { - return response.errorForbidden(res); + }) } + } else { + return response.errorForbidden(res) + } } -function historyDelete(req, res) { - if (req.isAuthenticated()) { - var noteId = req.params.noteId; - if (!noteId) { - setHistory(req.user.id, [], function (err, count) { - if (err) return response.errorInternalError(res); - res.end(); - }); - } else { - getHistory(req.user.id, function (err, history) { - if (err) return response.errorInternalError(res); - if (!history) return response.errorNotFound(res); - delete history[noteId]; - setHistory(req.user.id, history, function (err, count) { - if (err) return response.errorInternalError(res); - res.end(); - }); - }); - } +function historyDelete (req, res) { + if (req.isAuthenticated()) { + var noteId = req.params.noteId + if (!noteId) { + setHistory(req.user.id, [], function (err, count) { + if (err) return response.errorInternalError(res) + res.end() + }) } else { - return response.errorForbidden(res); + getHistory(req.user.id, function (err, history) { + if (err) return response.errorInternalError(res) + if (!history) return response.errorNotFound(res) + delete history[noteId] + setHistory(req.user.id, history, function (err, count) { + if (err) return response.errorInternalError(res) + res.end() + }) + }) } + } else { + return response.errorForbidden(res) + } } -module.exports = History; \ No newline at end of file +module.exports = History -- cgit v1.2.3