Mise à jour et ajout de controllers, routes, services et utilities
This commit is contained in:
@@ -11,10 +11,10 @@ routes.use('/qcm', require('./v1/qcm'));
|
||||
|
||||
routes.use('/user', require('./v2/user.routes'));
|
||||
routes.use('/articles', require('./v2/articles.routes'));
|
||||
routes.use('/comment', require('./v2/comment.routes'));
|
||||
routes.use('/comments', require('./v2/comments.routes'));
|
||||
routes.use('/product', require('./v2/product.routes'));
|
||||
routes.use('/products', require('./v2/products.routes'));
|
||||
routes.use('/tag', require('./v2/tag.routes'));
|
||||
routes.use('/tags', require('./v2/tags.routes'));
|
||||
|
||||
|
||||
routes.use('/clans', require('./v3/clans.routes'));
|
||||
|
||||
+11
-10
@@ -6,8 +6,9 @@ var router = require('express').Router(),
|
||||
X2DataLog = mongoose.model('X2DataLog');
|
||||
const auth = require('../../../middlewares/auth'),
|
||||
chalk = require('chalk'),
|
||||
queries = require('../../queries'),
|
||||
utils = require('../../utils');
|
||||
queries = require('../../queries');
|
||||
const DateUtilities = require('../../../utils/dateUtilities');
|
||||
const utils = require('../../../utils');
|
||||
|
||||
// Preload jump objects on routes with ':jump'
|
||||
router.param('jump', function (req, res, next, slug) {
|
||||
@@ -280,9 +281,9 @@ router.get('/allFromSkydiverIdApi', auth.required, function (req, res, next) {
|
||||
}
|
||||
utils.fetchSkydiverIdApi('jumps', req.query).then(result => {
|
||||
if (result.errors === undefined) {
|
||||
console.log(`${utils.getDateTimeISOString()}`, chalk.green(`Réception des sauts SkydiverId`));
|
||||
console.log(`${DateUtilities.getDateTimeISOString()}`, chalk.green(`Réception des sauts SkydiverId`));
|
||||
} else {
|
||||
console.log(`${utils.getDateTimeISOString()}`, chalk.red(`Une erreur ${result.errors.code} '${result.errors.type}' est survenue lors de la réception des sauts SkydiverId : ${result.errors.name} ${result.errors.message}`));
|
||||
console.log(`${DateUtilities.getDateTimeISOString()}`, chalk.red(`Une erreur ${result.errors.code} '${result.errors.type}' est survenue lors de la réception des sauts SkydiverId : ${result.errors.name} ${result.errors.message}`));
|
||||
}
|
||||
return res.json({
|
||||
jumps: result,
|
||||
@@ -491,11 +492,11 @@ router.post('/kml/:jump', auth.required, function (req, res, next) {
|
||||
//console.log(chalk.yellow(`jump/${req.jump.x2data.id}/kml`));
|
||||
return res.json({ file: file.toJSONForJump() });
|
||||
/*
|
||||
utils.fetchSkydiverIdApi(`jump/${req.jump.x2data.id}/kml`, {}).then(result => {
|
||||
DateUtilities.fetchSkydiverIdApi(`jump/${req.jump.x2data.id}/kml`, {}).then(result => {
|
||||
if (result.errors === undefined) {
|
||||
console.log(`${utils.getDateTimeISOString()}`, chalk.green(`Réception de l'url du fichier kml SkydiverId`));
|
||||
console.log(`${DateUtilities.getDateTimeISOString()}`, chalk.green(`Réception de l'url du fichier kml SkydiverId`));
|
||||
} else {
|
||||
console.log(`${utils.getDateTimeISOString()}`, chalk.red(`Une erreur ${result.errors.code} '${result.errors.type}' est survenue lors de la réception de l'url du fichier kml SkydiverId : ${result.errors.name} ${result.errors.message}`));
|
||||
console.log(`${DateUtilities.getDateTimeISOString()}`, chalk.red(`Une erreur ${result.errors.code} '${result.errors.type}' est survenue lors de la réception de l'url du fichier kml SkydiverId : ${result.errors.name} ${result.errors.message}`));
|
||||
}
|
||||
if (result.url !== undefined) {
|
||||
console.log(chalk.green(result.url));
|
||||
@@ -509,11 +510,11 @@ router.post('/kml/:jump', auth.required, function (req, res, next) {
|
||||
|
||||
return file.save().then(function () {
|
||||
Jump.updateOne({_id: req.jump._id}, {files: files}).then(function () {
|
||||
utils.fetchSkydiverIdApi(`jump/${req.jump.x2data.id}/kml`, {}).then(result => {
|
||||
DateUtilities.fetchSkydiverIdApi(`jump/${req.jump.x2data.id}/kml`, {}).then(result => {
|
||||
if (result.errors === undefined) {
|
||||
console.log(`${utils.getDateTimeISOString()}`, chalk.green(`Réception de l'url du fichier kml SkydiverId`));
|
||||
console.log(`${DateUtilities.getDateTimeISOString()}`, chalk.green(`Réception de l'url du fichier kml SkydiverId`));
|
||||
} else {
|
||||
console.log(`${utils.getDateTimeISOString()}`, chalk.red(`Une erreur ${result.errors.code} '${result.errors.type}' est survenue lors de la réception de l'url du fichier kml SkydiverId : ${result.errors.name} ${result.errors.message}`));
|
||||
console.log(`${DateUtilities.getDateTimeISOString()}`, chalk.red(`Une erreur ${result.errors.code} '${result.errors.type}' est survenue lors de la réception de l'url du fichier kml SkydiverId : ${result.errors.name} ${result.errors.message}`));
|
||||
}
|
||||
if (result.url !== undefined) {
|
||||
console.log(result.url);
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
const express = require('express');
|
||||
const {
|
||||
articlesFeed,
|
||||
createArticle,
|
||||
deleteArticle,
|
||||
getArticle,
|
||||
getArticles,
|
||||
createArticle,
|
||||
articlesFeed,
|
||||
deleteArticle,
|
||||
updateArticle,
|
||||
addFavoriteArticle,
|
||||
deleteFavoriteArticle
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
const express = require('express');
|
||||
const { createTag, getAllTags } = require('../../../controllers/tag.controller');
|
||||
const { createTag, deleteTag, getAllTags } = require('../../../controllers/tag.controller');
|
||||
const auth = require('../../../middlewares/auth');
|
||||
|
||||
const tagRouter = express.Router();
|
||||
|
||||
tagRouter.post('/', auth.required, createTag);
|
||||
tagRouter.get('/', auth.optional, getAllTags);
|
||||
tagRouter.delete('/:name', auth.required, deleteTag);
|
||||
|
||||
module.exports = tagRouter;
|
||||
@@ -1,5 +1,5 @@
|
||||
const express = require('express');
|
||||
const { authenticate, createUser, getUser, loginAsUser, updateUser } = require('../../../controllers/user.controller');
|
||||
const { authenticate, createUser, getUser, loginAsUser, updateUser, addFollowUser, deleteFollowUser } = require('../../../controllers/user.controller');
|
||||
const auth = require('../../../middlewares/auth');
|
||||
|
||||
const userRouter = express.Router();
|
||||
@@ -8,8 +8,11 @@ userRouter.get('/', auth.required, getUser);
|
||||
userRouter.put('/', auth.required, updateUser);
|
||||
userRouter.post('/', auth.optional, createUser);
|
||||
userRouter.get('/authenticate', auth.optional, authenticate);
|
||||
//userRouter.get('/users', auth.required, getAllUsers);
|
||||
userRouter.post('/login', auth.optional, loginAsUser);
|
||||
//userRouter.post('/register', auth.optional, createUser);
|
||||
//userRouter.get('/users', auth.required, getAllUsers);
|
||||
|
||||
userRouter.post('/:username/follow', auth.required, addFollowUser);
|
||||
userRouter.delete('/:username/follow', auth.required, deleteFollowUser);
|
||||
|
||||
module.exports = userRouter;
|
||||
|
||||
@@ -1,83 +0,0 @@
|
||||
const chalk = require('chalk');
|
||||
const utils = {
|
||||
getDateString: () => {
|
||||
let today = new Date();
|
||||
let dateNow = today.toLocaleDateString();
|
||||
return `${dateNow}`;
|
||||
},
|
||||
getTimeString: () => {
|
||||
let today = new Date();
|
||||
let timeNow = today.toLocaleTimeString();
|
||||
return `${timeNow}`;
|
||||
},
|
||||
getDateTimeString: (delimiter = true) => {
|
||||
let today = new Date();
|
||||
let dateString = `${today.toLocaleDateString()} ${today.toLocaleTimeString()}`;
|
||||
if (delimiter) {
|
||||
dateString = `[${dateString}]`;
|
||||
}
|
||||
return dateString;
|
||||
},
|
||||
getDateTimeISOString: (delimiter = true) => {
|
||||
let today = new Date();
|
||||
let dateString = today.toISOString();
|
||||
if (delimiter) {
|
||||
dateString = `[${dateString}]`;
|
||||
}
|
||||
return dateString;
|
||||
},
|
||||
async fetchSkydiverIdApi(path, query) {
|
||||
let limit = 50;
|
||||
let offset = 0;
|
||||
let args = '';
|
||||
if (typeof query.limit !== 'undefined') {
|
||||
limit = query.limit;
|
||||
}
|
||||
if (typeof query.offset !== 'undefined') {
|
||||
offset = ((query.offset/limit)+1);
|
||||
}
|
||||
if (offset > 1) {
|
||||
args += `&page=${offset}`;
|
||||
}
|
||||
if (typeof query.dateRangeStart !== 'undefined' && typeof query.dateRangeEnd !== 'undefined') {
|
||||
args += `&filter[and][0][date][gte]=${query.dateRangeStart}`;
|
||||
args += `&filter[and][0][date][lte]=${query.dateRangeEnd}`;
|
||||
}
|
||||
try {
|
||||
let url = `${process.env.SKYDIVERID_API_URL}/${path}`;
|
||||
if (typeof query.limit !== 'undefined') {
|
||||
url += `?per-page=${limit}${args}`;
|
||||
}
|
||||
/* url pour provoquer une erreur en dev : url = `https://www.goldapi.ioppppp/api/${price.metal}/${price.currency}`; */
|
||||
let options = {
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'Authorization': `Bearer ${process.env.SKYDIVERID_API_TOKEN}`,
|
||||
'Content-Type': 'application/json'
|
||||
},
|
||||
redirect: 'follow'
|
||||
};
|
||||
/* Pour tester le retour d'erreur : return { errors: { name: 'error name', message: 'error message', type: 'TYPE', code: 'CODE' } }; */
|
||||
//const response = await fetch(url, options);
|
||||
return fetch(url, options).then(function (response) {
|
||||
if (response.status >= 200 && response.status < 400) {
|
||||
console.log(`${utils.getDateTimeISOString()}`, chalk.green(`Réception des sauts via SkydiverId API`), `${response.status} ${response.statusText}`);
|
||||
const data = response.json();
|
||||
return data;
|
||||
} else {
|
||||
console.log(`${utils.getDateTimeISOString()}`, chalk.red(`Erreur ${response.status} ${response.statusText}`));
|
||||
return { errors: { name: response.statusText, message: `Une erreur ${response.status} '${response.statusText}' est survenue lors de la récupération des sauts via SkydiverId API`, type: 'API Error', code: response.status } };
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
console.log(`${utils.getDateTimeISOString()}`, chalk.red(`A fetchSkydiverIdApi error occured ${error.code} ${error.type}`));
|
||||
return { errors: { name: error.name, message: `A fetchSkydiverIdApi error occured : ${error.message}`, type: error.type, code: error.code } };
|
||||
});
|
||||
} catch (error) {
|
||||
console.log(`${utils.getDateTimeISOString()}`, chalk.red(`fetchSkydiverIdApi error`));
|
||||
return { errors: { name: error.name, message: error.message, type: error.type, code: error.code } };
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = utils;
|
||||
Reference in New Issue
Block a user