Files
api.pawol.nu/api/awtis/controllers/awtis.js
T
Cédric FAMIBELLE-PRONZOLA c55f5cde80 Update awtis if exists
2021-05-24 02:41:55 +02:00

42 lines
1.2 KiB
JavaScript

'use strict';
const {default: createStrapi} = require('strapi');
const {parseMultipartData, sanitizeEntity} = require('strapi-utils')
/**
* Read the documentation (https://strapi.io/documentation/v3.x/concepts/controllers.html#core-controllers)
* to customize this controller
*/
const searchAwtis = async alias => {
const awtis = await strapi.query('awtis').findOne({alias: alias.trim()})
return awtis
}
module.exports = {
async create(ctx) {
let entity
if (ctx.is('multipart')) {
let {data} = parseMultipartData(ctx)
const awtis = await searchAwtis(data.alias)
if (awtis) {
entity = await strapi.services.awtis.update({_id: awtis._id}, awtis)
} else {
data.published_at = null
entity = await createStrapi.services.awtis.create(data)
}
} else {
let {body} = ctx.request
const awtis = await searchAwtis(body.alias)
if (awtis) {
entity = await strapi.services.awtis.update({_id: awtis._id}, awtis)
} else {
body.published_at = null
entity = await strapi.services.awtis.create(body)
}
}
return sanitizeEntity(entity, {model: strapi.models.awtis})
}
}