From 15268b3ce0fee0aab79b36e88a650f899c6552d1 Mon Sep 17 00:00:00 2001 From: Michael Mathews Date: Sat, 26 Feb 2011 12:08:55 +0000 Subject: [PATCH] Better handling of multiple variations with the same name. --- templates/default/publish.js | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/templates/default/publish.js b/templates/default/publish.js index 2e7c5b76..c0e4ce55 100644 --- a/templates/default/publish.js +++ b/templates/default/publish.js @@ -157,13 +157,21 @@ return url? ''+(linktext || longname)+'' : (linktext || longname); } - var urlToLongname = {}, + var containers= ['class', 'module', 'namespace'], + urlToLongname = {}, longnameToUrl = {}; data.forEach(function(doclet) { - var longname = doclet.longname, - urlSafe = longname.replace(/[^$a-z0-9._-]/gi, '_'), // TODO handle name collisions - url = urlSafe + '.html'; + if (~containers.indexOf(doclet.kind)) { + var longname = doclet.longname, + urlSafe = doclet.memberof.replace(/[^$a-z0-9._-]/gi, '_'), // TODO handle name collisions + url = urlSafe + '.html#'doclet.name; + } + else { + var longname = doclet.longname, + urlSafe = longname.replace(/[^$a-z0-9._-]/gi, '_'), // TODO handle name collisions + url = urlSafe + '.html'; + } // bidirectional lookups: url <=> longname urlToLongname[urlSafe] = longname;