From 3a10bfe0de94def6f8ba270268c8734af9539b3a Mon Sep 17 00:00:00 2001 From: Jermolene Date: Mon, 1 Feb 2016 20:16:45 +0000 Subject: [PATCH] Text-slicer: copy document fields from source tiddler User-defined fields of the source tiddler are copied across to the document tiddler when it is sliced. --- .../tiddlywiki/text-slicer/modules/slicer.js | 26 +++++++++++++------ 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/plugins/tiddlywiki/text-slicer/modules/slicer.js b/plugins/tiddlywiki/text-slicer/modules/slicer.js index cc86089b0..31c6d2548 100644 --- a/plugins/tiddlywiki/text-slicer/modules/slicer.js +++ b/plugins/tiddlywiki/text-slicer/modules/slicer.js @@ -193,16 +193,26 @@ Slicer.prototype.processNode = function(domNode) { // Slice a tiddler into individual tiddlers Slicer.prototype.sliceTiddler = function(title) { - this.sliceTitle = "Sliced up " + title; + var sourceTiddler = $tw.wiki.getTiddler(this.sourceTitle), + sliceTitle,sliceTiddler = {}; + if(sourceTiddler) { + sliceTiddler = $tw.utils.extend({},sourceTiddler.fields); + } + if(sliceTiddler["doc-santovia-id"]) { + sliceTiddler.title = sliceTiddler["doc-santovia-id"]; + delete sliceTiddler["doc-santovia-id"]; + } else { + sliceTiddler.title = "Sliced up " + title; + } + sliceTiddler.text = "Document sliced at " + (new Date()); + sliceTiddler.type = "text/vnd.tiddlywiki"; + sliceTiddler.tags = []; + sliceTiddler.list = []; + sliceTiddler["toc-type"] = "document"; var domNode = this.getSourceDocument(); - this.parentStack.push({type: "h0", title: this.addTiddler({ - title: this.sliceTitle, - text: "Document sliced at " + (new Date()), - list: [], - "toc-type": "document" - })}); + this.parentStack.push({type: "h0", title: this.addTiddler(sliceTiddler)}); this.currentTiddler = title; - this.containerStack.push(this.sliceTitle); + this.containerStack.push(sliceTiddler.title); this.processNodeList(domNode.childNodes); this.containerStack.pop(); };