in xooki.js [739:776]
xookiLinks: function (input) {
// handle xooki links like this:
// [[page/id]]
// [[page/id My Title]]
return input.replace(new RegExp("\\[\\[([^\\]]+)\\]\\]", "g"), function (str, code, offset, s) {
var index = code.indexOf(' ');
var id = (index>0?code.substring(0,index):code);
var title;
var url;
var invalid = false;
if (typeof xooki.toc.pages[xooki.toc.importRoot + id] != "undefined") {
title = xooki.toc.pages[xooki.toc.importRoot + id].title;
url = pu(xooki.toc.importRoot + id);
} else if (xooki.toc.importRoot.length > 0 && typeof xooki.toc.pages[id] != "undefined") {
title = xooki.toc.pages[id].title;
url = pu(id);
} else {
invalid = true;
title = code;
url = u(id);
}
if (index>0) {
title = code.substring(index+1);
}
if (invalid) {
if (batchMode) {
// do not output invalid links as links in batch mode
return title;
} else {
return title+'<a href="'+url+'">?</a>';
}
} else {
return '<a href="'+url+'">'+title+'</a>';
}
});
},