Skip to content

Commit 762f0b2

Browse files
authored
Set slug property only if defined in create and release (#235)
Updated the create and release controllers to assign the __rerum.slug property only when a slug value is present. This prevents undefined slugs from being set in the object metadata.
1 parent ba70798 commit 762f0b2

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

controllers/crud.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import { _contextid, idNegotiation, generateSlugId, ObjectID, createExpressError
1515
* */
1616
const create = async function (req, res, next) {
1717
res.set("Content-Type", "application/json; charset=utf-8")
18-
let slug = null
18+
let slug
1919
if(req.get("Slug")){
2020
let slug_json = await generateSlugId(req.get("Slug"), next)
2121
if(slug_json.code){
@@ -31,7 +31,9 @@ const create = async function (req, res, next) {
3131
let context = req.body["@context"] ? { "@context": req.body["@context"] } : {}
3232
let provided = JSON.parse(JSON.stringify(req.body))
3333
let rerumProp = { "__rerum": utils.configureRerumOptions(generatorAgent, provided, false, false)["__rerum"] }
34-
rerumProp.__rerum.slug = slug
34+
if(slug){
35+
rerumProp.__rerum.slug = slug
36+
}
3537
const providedID = provided._id
3638
const id = isValidID(providedID) ? providedID : ObjectID()
3739
delete provided["__rerum"]

controllers/release.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ import { _contextid, ObjectID, createExpressError, getAgentClaim, parseDocumentI
2323
const release = async function (req, res, next) {
2424
let agentRequestingRelease = getAgentClaim(req, next)
2525
let id = req.params["_id"]
26-
let slug = null
26+
let slug
2727
let err = {"message":""}
2828
let treeHealed = false
2929
if(req.get("Slug")){
@@ -75,7 +75,9 @@ const release = async function (req, res, next) {
7575
if (null !== originalObject){
7676
safe_original["__rerum"].isReleased = new Date(Date.now()).toISOString().replace("Z", "")
7777
safe_original["__rerum"].releases.replaces = previousReleasedID
78-
safe_original["__rerum"].slug = slug
78+
if(slug){
79+
safe_original["__rerum"].slug = slug
80+
}
7981
if (previousReleasedID !== "") {
8082
// A releases tree exists and an ancestral object is being released.
8183
treeHealed = await healReleasesTree(safe_original)

0 commit comments

Comments
 (0)