From 966b51a258117b9d36d835c3ddda4b6495866474 Mon Sep 17 00:00:00 2001 From: Jeremy Ruston Date: Wed, 20 Jun 2012 17:40:55 +0100 Subject: [PATCH] New linkcatcher macro --- core/modules/macros/linkcatcher.js | 45 ++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 core/modules/macros/linkcatcher.js diff --git a/core/modules/macros/linkcatcher.js b/core/modules/macros/linkcatcher.js new file mode 100644 index 000000000..16f6d5da5 --- /dev/null +++ b/core/modules/macros/linkcatcher.js @@ -0,0 +1,45 @@ +/*\ +title: $:/core/modules/macros/linkcatcher.js +type: application/javascript +module-type: macro + +Catches attempts to navigate to links and puts the name of the link into a specified TextReference + +\*/ +(function(){ + +/*jslint node: true, browser: true */ +/*global $tw: false */ +"use strict"; + +exports.info = { + name: "linkcatcher", + params: { + store: {byName: "default", type: "tiddler"} + } +}; + +exports.handleEvent = function(event) { + if(event.type === "tw-navigate") { + this.wiki.setTextReference(this.params.store,event.navigateTo); + event.stopPropagation(); + return false; + } + return true; +}; + +exports.executeMacro = function() { + var attributes = {}; + if(this.classes) { + attributes["class"] = this.classes.slice(0); + } + for(var t=0; t