use cron middleware

This commit is contained in:
Matteo Pagliazzi
2015-12-15 12:11:32 +01:00
parent e547eb2dde
commit 13cbf03759
9 changed files with 27 additions and 20 deletions

View File

@@ -1,6 +1,7 @@
import validator from 'validator';
import passport from 'passport';
import { authWithHeaders } from '../../middlewares/api-v3/auth';
import cron from '../../middlewares/api-v3/cron';
import {
NotAuthorized,
} from '../../libs/api-v3/errors';
@@ -138,6 +139,7 @@ function _loginRes (user, req, res, next) {
api.loginLocal = {
method: 'POST',
url: '/user/auth/local/login',
middlewares: [cron],
handler (req, res, next) {
req.checkBody({
username: {
@@ -182,6 +184,7 @@ api.loginLocal = {
api.loginSocial = {
method: 'POST',
url: '/user/auth/social', // this isn't the most appropriate url but must be the same as v2
middlewares: [cron],
handler (req, res, next) {
let accessToken = req.body.authResponse.access_token;
let network = req.body.network;
@@ -247,7 +250,7 @@ api.loginSocial = {
api.deleteSocial = {
method: 'DELETE',
url: '/user/auth/social/:network',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
let user = res.locals.user;
let network = req.params.network;

View File

@@ -1,4 +1,5 @@
import { authWithHeaders } from '../../middlewares/api-v3/auth';
import cron from '../../middlewares/api-v3/cron';
import { model as Tag } from '../../models/tag';
import {
NotFound,
@@ -18,7 +19,7 @@ let api = {};
api.createTag = {
method: 'POST',
url: '/tags',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
let user = res.locals.user;
@@ -45,7 +46,7 @@ api.createTag = {
api.getTags = {
method: 'GET',
url: '/tags',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res) {
let user = res.locals.user;
res.respond(200, user.tags);
@@ -65,7 +66,7 @@ api.getTags = {
api.getTag = {
method: 'GET',
url: '/tags/:tagId',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
let user = res.locals.user;
@@ -93,7 +94,7 @@ api.getTag = {
api.updateTag = {
method: 'PUT',
url: '/tags/:tagId',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
let user = res.locals.user;
@@ -129,7 +130,7 @@ api.updateTag = {
api.deleteTag = {
method: 'DELETE',
url: '/tags/:tagId',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
let user = res.locals.user;

View File

@@ -1,4 +1,5 @@
import { authWithHeaders } from '../../middlewares/api-v3/auth';
import cron from '../../middlewares/api-v3/cron';
import { sendTaskWebhook } from '../../libs/api-v3/webhook';
import * as Tasks from '../../models/task';
import {
@@ -26,7 +27,7 @@ let api = {};
api.createTask = {
method: 'POST',
url: '/tasks',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
req.checkBody('type', res.t('invalidTaskType')).notEmpty().isIn(Tasks.tasksTypes);
@@ -64,7 +65,7 @@ api.createTask = {
api.getTasks = {
method: 'GET',
url: '/tasks',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
req.checkQuery('type', res.t('invalidTaskType')).optional().isIn(Tasks.tasksTypes);
@@ -120,7 +121,7 @@ api.getTasks = {
api.getTask = {
method: 'GET',
url: '/tasks/:taskId',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
let user = res.locals.user;
@@ -154,7 +155,7 @@ api.getTask = {
api.updateTask = {
method: 'PUT',
url: '/tasks/:taskId',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
let user = res.locals.user;
@@ -236,7 +237,7 @@ function _generateWebhookTaskData (task, direction, delta, stats, user) {
api.scoreTask = {
method: 'POST',
url: '/tasks/:taskId/score/:direction',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
req.checkParams('taskId', res.t('taskIdRequired')).notEmpty().isUUID();
req.checkParams('direction', res.t('directionUpDown')).notEmpty().isIn(['up', 'down']); // TODO what about rewards? maybe separate route?
@@ -297,7 +298,7 @@ api.scoreTask = {
api.moveTask = {
method: 'POST',
url: '/tasks/move/:taskId/to/:position',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
req.checkParams('taskId', res.t('taskIdRequired')).notEmpty().isUUID();
req.checkParams('position', res.t('positionRequired')).notEmpty().isNumeric();
@@ -349,7 +350,7 @@ api.moveTask = {
api.addChecklistItem = {
method: 'POST',
url: '/tasks/:taskId/checklist',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
let user = res.locals.user;
@@ -389,7 +390,7 @@ api.addChecklistItem = {
api.scoreCheckListItem = {
method: 'POST',
url: '/tasks/:taskId/checklist/:itemId/score',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
let user = res.locals.user;
@@ -432,7 +433,7 @@ api.scoreCheckListItem = {
api.updateChecklistItem = {
method: 'PUT',
url: '/tasks/:taskId/checklist/:itemId',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
let user = res.locals.user;
@@ -476,7 +477,7 @@ api.updateChecklistItem = {
api.removeChecklistItem = {
method: 'DELETE',
url: '/tasks/:taskId/checklist/:itemId',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
let user = res.locals.user;
@@ -519,7 +520,7 @@ api.removeChecklistItem = {
api.addTagToTask = {
method: 'POST',
url: '/tasks/:taskId/tags/:tagId',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
let user = res.locals.user;
@@ -563,7 +564,7 @@ api.addTagToTask = {
api.removeTagFromTask = {
method: 'DELETE',
url: '/tasks/:taskId/tags/:tagId',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
let user = res.locals.user;
@@ -620,7 +621,7 @@ function _removeTaskTasksOrder (user, taskId) {
api.deleteTask = {
method: 'DELETE',
url: '/tasks/:taskId',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
handler (req, res, next) {
let user = res.locals.user;

View File

@@ -1,4 +1,5 @@
import { authWithHeaders } from '../../middlewares/api-v3/auth';
import cron from '../../middlewares/api-v3/cron';
import common from '../../../../common';
let api = {};
@@ -13,7 +14,7 @@ let api = {};
*/
api.getUser = {
method: 'GET',
middlewares: [authWithHeaders()],
middlewares: [authWithHeaders(), cron],
url: '/user',
handler (req, res) {
let user = res.locals.user.toJSON();

View File

@@ -7,6 +7,7 @@ import common from '../../../../common';
import Task from '../../models/task';
// import Group from '../../models/group';
// TODO check that it's usef everywhere
export default function cronMiddleware (req, res, next) {
let user = res.locals.user;
let analytics = res.analytics;