26 lines
691 B
JavaScript
26 lines
691 B
JavaScript
'use strict';
|
|
|
|
const slugify = require('slugify')
|
|
|
|
const jwennAwtisEpiId = async data => {
|
|
const awtis = await strapi.query('awtis').find({_id: data})
|
|
return awtis.map(a => a.alias).join('-')
|
|
}
|
|
|
|
module.exports = {
|
|
lifecycles: {
|
|
beforeCreate: async data => {
|
|
if (data.tit) {
|
|
const awtis = await jwennAwtisEpiId(data.awtis)
|
|
data.slug = slugify(`${awtis}-${data.tit}`, {lower: true, remove: /[*#+~.()'"!:@]/g})
|
|
}
|
|
},
|
|
beforeUpdate: async (params, data) => {
|
|
if (data.tit) {
|
|
const awtis = await jwennAwtisEpiId(data.awtis)
|
|
data.slug = slugify(`${awtis}-${data.tit}`, {lower: true, remove: /[*#+~.()'"!:@]/g})
|
|
}
|
|
}
|
|
}
|
|
}
|