diff --git a/lib/cloudfunc.js b/lib/cloudfunc.js index 346a8db8..86286849 100644 --- a/lib/cloudfunc.js +++ b/lib/cloudfunc.js @@ -327,38 +327,30 @@ var Util; * @param url - адрес каталога */ function getPathElement(url) { - var i, shortName, slashIndex, - folders = [], - href = '', - hrefEnd ='', - - /* корневой каталог */ - htmlPath = href + FS + title + - '/' + _l + '/' + - hrefEnd; + var pathHTML = '', + path = '/', + template = '{{ name }}{{ slash }}', + names = url.split('/') + .slice(0, -1); - do { - folders.push(url); - url = url.substr(url, url.lastIndexOf('/')); - } while (url !== ''); - - /* Формируем ссылки на каждый каталог в пути */ - for (i = folders.length - 1; i > 0; i--) { - url = folders[i]; - slashIndex = url.lastIndexOf('/') + 1; - shortName = Util.rmStr(url, url.substr(url, slashIndex)); + names[0] = '/'; + + names.forEach(function(name, index) { + var slash = '/'; - if (i !== 1) - htmlPath += href + FS + url + - title + url + _l + - shortName + hrefEnd + '/'; + if (!index) + slash = ''; else - htmlPath += shortName + '/'; - } + path += name + '/'; + + pathHTML += Util.render(template, { + path: path, + name: name, + slash: slash + }); + }); - return htmlPath; + return pathHTML; } /**