From c5b8a7b16333ffd4397599a89ddaeab89ba77d1b Mon Sep 17 00:00:00 2001 From: psychobunny Date: Fri, 6 Jun 2014 17:30:14 -0400 Subject: [PATCH] filter:templates.get_virtual for ajaxifying to virtual templates --- src/routes/api.js | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/src/routes/api.js b/src/routes/api.js index d90951b73a..8f089a9ddf 100644 --- a/src/routes/api.js +++ b/src/routes/api.js @@ -135,14 +135,27 @@ function getModerators(req, res, next) { } function getTemplatesListing(req, res, next) { - utils.walk(nconf.get('views_dir'), function (err, data) { - data = data - .filter(function(value, index, self) { - return self.indexOf(value) === index; - }).map(function(el) { - return el.replace(nconf.get('views_dir') + '/', ''); - }); + var data = []; + async.parallel({ + views: function(next) { + utils.walk(nconf.get('views_dir'), function (err, views) { + data = data.concat( + views.filter(function(value, index, self) { + return self.indexOf(value) === index; + }).map(function(el) { + return el.replace(nconf.get('views_dir') + '/', ''); + })); + + res.json(data); + }); + }, + extended: function(next) { + plugins.fireHook('filter:templates.get_virtual', [], function(err, virtual) { + data = data.concat(virtual); + }); + } + }, function(err) { res.json(data); }); }