(function($) {
var tiddlyspace = config.extensions.tiddlyspace;
var tweb = config.extensions.tiddlyweb;
var macro = config.macros.serializerLinks = {
available: ["atom", "html", "json", "txt", "wiki"],
separator: " / ",
handler: function(place, macroName, params, wikifier, paramString, tiddler) {
if(!tiddler) {
return;
}
var container = $("<span />").appendTo(place);
var bag = tiddler.fields["server.bag"]
var space = tiddlyspace.resolveSpaceName(bag);
tweb.getStatus(function(status) {
var host = status.server_host;
var base = tiddlyspace.getHost(host, space);
for(var i = 0; i < macro.available.length; i++) {
var serializer = macro.available[i];
$("<a />").addClass("sLink").text(serializer).attr("href", "%0/bags/%1/tiddlers/%2.%3".format([
base, bag, encodeURIComponent(tiddler.title), serializer
])).appendTo(container);
if(i < macro.available.length - 1) {
$("<span />").text(macro.separator).appendTo(container);
}
}
});
}
};
})(jQuery);