Merge branch 'dev'

This commit is contained in:
Alexis
2020-08-04 21:23:31 +02:00
3 changed files with 35 additions and 15 deletions

View File

@@ -1,5 +1,5 @@
DROP DATABASE IF EXISTS auracle;
CREATE DATABASE auracle CHARACTER SET utf8 COLLATE utf8_bin;
CREATE DATABASE auracle CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
USE auracle;
/* =========== PRIMARY TABLES =========== */

View File

@@ -21,10 +21,21 @@ class SpellRepository {
constructor() {
}
getAll() {
getAll(name, description, level, charge, cost, ritual) {
return new Promise((resolve, reject) => {
model.forge()
.fetchAll({ withRelated: ['schools.meta_schools', 'variables', 'ingredients'] })
let query = model.forge()
console.log("science")
if (name) { query.where('name', 'like', `%${name}%`) }
if (description) { query.where('description', 'like', `%${description}%`) }
if (level) { query.where({ 'level' : level }) }
if (charge) { query.where({ 'charge' : charge }) }
if (cost) { query.where({ 'cost' : cost }) }
if (ritual) { query.where({ 'is_ritual' : ritual }) }
query.fetchAll({ withRelated: ['schools.meta_schools', 'variables', 'ingredients'] })
.then(v => {
resolve(v.toJSON({ omitPivot: true }))
})
@@ -35,11 +46,20 @@ class SpellRepository {
})
}
getAllPublic() {
getAllPublic(name, description, level, charge, cost, ritual) {
return new Promise((resolve, reject) => {
model.forge()
let query = model.forge()
.where({ 'public' : 1 })
.fetchAll({ withRelated: ['schools.meta_schools', 'variables', 'ingredients'] })
if (name) { query.where('name', 'like', `%${name}%`) }
if (description) { query.where('description', 'like', `%${description}%`) }
if (level) { query.where({ 'level' : level }) }
if (charge) { query.where({ 'charge' : charge }) }
if (cost) { query.where({ 'cost' : cost }) }
if (ritual) { query.where({ 'is_ritual' : ritual }) }
query.fetchAll({ withRelated: ['schools.meta_schools', 'variables', 'ingredients'] })
.then(v => {
resolve(v.toJSON({ omitPivot: true }))
})

View File

@@ -14,15 +14,15 @@ const Spells = new SpellReposity();
// ROUTES
// GET ALL PUBLIC ------------------
const getPublicSpells = () => {
return Spells.getAllPublic()
const getPublicSpells = (name, description, level, charge, cost, ritual) => {
return Spells.getAllPublic(name, description, level, charge, cost, ritual)
.catch(err => {
console.log(err)
throw err
})
}
router.get('/', async (req, res) => {
getPublicSpells()
router.get('//:name?/:description?/:level?/:charge?/:cost?/:ritual?/', async (req, res) => {
getPublicSpells(req.query.name, req.query.description, req.query.level, req.query.charge, req.query.cost, req.query.ritual)
.then(v => {
res.setHeader('Content-Type', 'application/json;charset=utf-8')
res.end(JSON.stringify(v))
@@ -38,15 +38,15 @@ router.get('/', async (req, res) => {
})
// GET ALL ------------------
const getSpells = () => {
return Spells.getAll()
const getSpells = (name, description, level, charge, cost, ritual) => {
return Spells.getAll(name, description, level, charge, cost, ritual)
.catch(err => {
console.log(err)
throw err
})
}
router.get('/private', async (req, res) => {
getSpells()
router.get('/private/:name?/:description?/:level?/:charge?/:cost?/:ritual?/', async (req, res) => {
getSpells(req.query.name, req.query.description, req.query.level, req.query.charge, req.query.cost, req.query.ritual)
.then(v => {
res.setHeader('Content-Type', 'application/json;charset=utf-8')
res.end(JSON.stringify(v))