Skip to content

Instantly share code, notes, and snippets.

@serby
Created April 4, 2013 10:34
Show Gist options
  • Select an option

  • Save serby/5309394 to your computer and use it in GitHub Desktop.

Select an option

Save serby/5309394 to your computer and use it in GitHub Desktop.
module.exports = render
var renderJade = require('../lib/render-jade')
, template = renderJade(__dirname + '/templates/section.jade')
, rowView = require('./row')
, async = require('async')
, _ = require('lodash')
, navigationView = require('./navigation')
, createDeduper = require('fleet-street/lib/deduper')
dedupe.has = function (id) {
}
var ids = {}
dedupe = function (id) {
if (ids[id]) {
return false
} else {
ids[id] = id
return true
}
}
function render(servicelocator, req, section, cb) {
req.dedupe = createDeduper()
navigationView(servicelocator, req, section, function (err, navigationHtml) {
if (err) return cb(err)
async.mapSeries(_.values(section.layout)
, async.apply(rowView, servicelocator, req, section, null)
, function (error, results) {
if (err) return cb(err)
cb(null, template(
{ pageTitle: section.pageTitle
, pageDescription: section.pageDescription
, seoKeywords: section.seoKeywords
, content: results.join('')
, navigation: navigationHtml
}))
})
})
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment