@reldens/cms 0.76.0 → 0.78.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -304,6 +304,10 @@ window.addEventListener('DOMContentLoaded', () => {
|
|
|
304
304
|
}
|
|
305
305
|
let idValueInput = editForm.querySelector('.entity-id-value');
|
|
306
306
|
if(idValueInput){
|
|
307
|
+
let idDisplayInput = editForm.querySelector('[name="disabled-'+idValueInput.name+'"]');
|
|
308
|
+
if(idDisplayInput){
|
|
309
|
+
idDisplayInput.value = '';
|
|
310
|
+
}
|
|
307
311
|
idValueInput.value = '';
|
|
308
312
|
}
|
|
309
313
|
let titleElement = document.querySelector('.entity-edit h2');
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
</div>
|
|
21
21
|
{{#editFields}}
|
|
22
22
|
<div class="edit-field">
|
|
23
|
-
<span class="field-name">{{&name}}</span>
|
|
23
|
+
<span class="field-name">{{&name}}{{#isRequired}}<sup title="required">r</sup>{{/isRequired}}{{#hasBothMarkers}}<sup>,</sup>{{/hasBothMarkers}}{{#isUnique}}<sup title="unique">u</sup>{{/isUnique}}</span>
|
|
24
24
|
<span class="field-value">{{&value}}</span>
|
|
25
25
|
</div>
|
|
26
26
|
{{/editFields}}
|
|
@@ -145,12 +145,7 @@ class ContentsBuilder
|
|
|
145
145
|
value: '{{&'+property+'}}'
|
|
146
146
|
};
|
|
147
147
|
});
|
|
148
|
-
let editFields =
|
|
149
|
-
return {
|
|
150
|
-
name: this.fetchTranslation(property, entityId),
|
|
151
|
-
value: '{{&'+property+'}}'
|
|
152
|
-
};
|
|
153
|
-
});
|
|
148
|
+
let editFields = this.buildEditFields(editProperties, driverResource.options.properties, entityId);
|
|
154
149
|
let sectionsContents = this.adminFilesContents?.sections;
|
|
155
150
|
let extraContentForList = sc.get(sectionsContents?.list, driverResource.entityPath, '');
|
|
156
151
|
let extraContentForView = await this.render(
|
|
@@ -216,6 +211,23 @@ class ContentsBuilder
|
|
|
216
211
|
return entitiesContents;
|
|
217
212
|
}
|
|
218
213
|
|
|
214
|
+
buildEditFields(editProperties, properties, entityId)
|
|
215
|
+
{
|
|
216
|
+
let editFields = [];
|
|
217
|
+
for(let propertyKey of editProperties){
|
|
218
|
+
let isRequired = sc.get(properties[propertyKey], 'isRequired', false);
|
|
219
|
+
let isUnique = sc.get(properties[propertyKey], 'isUnique', false);
|
|
220
|
+
editFields.push({
|
|
221
|
+
name: this.fetchTranslation(propertyKey, entityId),
|
|
222
|
+
value: '{{&'+propertyKey+'}}',
|
|
223
|
+
isRequired,
|
|
224
|
+
isUnique,
|
|
225
|
+
hasBothMarkers: isRequired && isUnique
|
|
226
|
+
});
|
|
227
|
+
}
|
|
228
|
+
return editFields;
|
|
229
|
+
}
|
|
230
|
+
|
|
219
231
|
buildReverseRelationsMap()
|
|
220
232
|
{
|
|
221
233
|
let reverseRelations = {};
|
|
@@ -357,8 +357,10 @@ class RouterContents
|
|
|
357
357
|
let saveResult = await this.saveEntity(id, entityRepository, entityDataPatch);
|
|
358
358
|
if(!saveResult){
|
|
359
359
|
Logger.error('Save result error.', saveResult, entityDataPatch);
|
|
360
|
-
return this.
|
|
361
|
-
|
|
360
|
+
return this.appendResultParam(
|
|
361
|
+
this.generateEntityRoute('editPath', driverResource, idProperty, null, id),
|
|
362
|
+
'saveEntityStorageError'
|
|
363
|
+
);
|
|
362
364
|
}
|
|
363
365
|
await this.emitEvent('reldens.adminAfterEntitySave', {
|
|
364
366
|
req,
|
|
@@ -382,7 +384,10 @@ class RouterContents
|
|
|
382
384
|
}
|
|
383
385
|
let saveAction = sc.get(req.body, 'saveAction', 'save');
|
|
384
386
|
if('saveAndContinue' === saveAction){
|
|
385
|
-
return this.
|
|
387
|
+
return this.appendResultParam(
|
|
388
|
+
this.generateEntityRoute('editPath', driverResource, idProperty, saveResult),
|
|
389
|
+
'success'
|
|
390
|
+
);
|
|
386
391
|
}
|
|
387
392
|
if('saveAndGoBack' === saveAction){
|
|
388
393
|
return this.rootPath+'/'+entityPath+'?result=success';
|
|
@@ -836,6 +841,14 @@ class RouterContents
|
|
|
836
841
|
return this.rootPath + '/' + driverResource.entityPath + this[routeType] + idParam;
|
|
837
842
|
}
|
|
838
843
|
|
|
844
|
+
appendResultParam(route, result)
|
|
845
|
+
{
|
|
846
|
+
if(route.includes('?')){
|
|
847
|
+
return route+'&result='+result;
|
|
848
|
+
}
|
|
849
|
+
return route+'?result='+result;
|
|
850
|
+
}
|
|
851
|
+
|
|
839
852
|
}
|
|
840
853
|
|
|
841
854
|
module.exports.RouterContents = RouterContents;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reldens/cms",
|
|
3
3
|
"scope": "@reldens",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.78.0",
|
|
5
5
|
"description": "Reldens - CMS",
|
|
6
6
|
"author": "Damian A. Pastorini",
|
|
7
7
|
"license": "MIT",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
37
|
"@reldens/server-utils": "^0.53.0",
|
|
38
|
-
"@reldens/storage": "^0.
|
|
38
|
+
"@reldens/storage": "^0.106.0",
|
|
39
39
|
"@reldens/utils": "^0.57.0",
|
|
40
40
|
"dotenv": "17.4.2",
|
|
41
41
|
"mustache": "4.2.0"
|