30 lines
684 B
JavaScript
30 lines
684 B
JavaScript
|
|
||
|
module.exports = (function () {
|
||
|
|
||
|
var makeTKey = function(ctx) {
|
||
|
var keySlug = '';
|
||
|
for (var i = 0; i < ctx.tentity.tmeta.tmodel.tkeys.length; i++) {
|
||
|
var key = ctx.tentity.tmeta.tmodel.tkeys[i];
|
||
|
keySlug += ':'+key;
|
||
|
if (i < (ctx.tentity.tmeta.tmodel.tkeys.length - 1)) {
|
||
|
keySlug += '/';
|
||
|
}
|
||
|
}
|
||
|
return keySlug;
|
||
|
};
|
||
|
|
||
|
return function AutoTEntityTKeyPlugin() {
|
||
|
|
||
|
this.configPlugin = function (ctx) {
|
||
|
ctx.key='autoTEntityTKey';
|
||
|
ctx.description='Auto creates the tmode.tkey parameter slug.';
|
||
|
};
|
||
|
|
||
|
this.fillTEntity = function(ctx) {
|
||
|
if (ctx.tentity.tmeta.tmodel.tkey === null) {
|
||
|
ctx.tentity.tmeta.tmodel.tkey = makeTKey(ctx);
|
||
|
}
|
||
|
};
|
||
|
};
|
||
|
})();
|