mirror of
				https://github.com/Jermolene/TiddlyWiki5
				synced 2025-10-30 23:23:02 +00:00 
			
		
		
		
	Fixed view macro to check whether the tiddler exists
This commit is contained in:
		| @@ -18,19 +18,23 @@ exports.macro = { | ||||
| 		template: {byPos: 2, type: "text", optional: true} | ||||
| 	}, | ||||
| 	handler: function(type,tiddler,store,params) { | ||||
| 		var v = tiddler[params.field], | ||||
| 			encoder = type === "text/html" ? utils.htmlEncode : function(x) {return x;}; | ||||
| 		if(v) { | ||||
| 			switch(params.format) { | ||||
| 				case "link": | ||||
| 					return store.renderMacro("link",type,tiddler,{target: v},encoder(v)); | ||||
| 				case "wikified": | ||||
| 					return store.renderTiddler(type,tiddler.title); | ||||
| 				case "date": | ||||
| 					var template = params.template || "DD MMM YYYY"; | ||||
| 					return encoder(utils.formatDateString(v,template)); | ||||
| 				default: // "text" | ||||
| 					return encoder(v); | ||||
| 		var encoder = type === "text/html" ? utils.htmlEncode : function(x) {return x;}; | ||||
| 		if(!tiddler) { | ||||
| 			return "{{** Missing tiddler **}}"; | ||||
| 		} else { | ||||
| 			var v = tiddler[params.field]; | ||||
| 			if(v !== undefined) { | ||||
| 				switch(params.format) { | ||||
| 					case "link": | ||||
| 						return store.renderMacro("link",type,tiddler,{target: v},encoder(v)); | ||||
| 					case "wikified": | ||||
| 						return store.renderTiddler(type,tiddler.title); | ||||
| 					case "date": | ||||
| 						var template = params.template || "DD MMM YYYY"; | ||||
| 						return encoder(utils.formatDateString(v,template)); | ||||
| 					default: // "text" | ||||
| 						return encoder(v); | ||||
| 				} | ||||
| 			} | ||||
| 		} | ||||
| 		return ""; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Jeremy Ruston
					Jeremy Ruston