extends layout //- this logic should be moved to a view at some point block content - var lineHeight = 2.2; - var archives = _.chain(env.helpers.getArticles(contents)).groupBy(function(item) { - return item.date.getFullYear(); - }).value(); - for (var archive in archives) { - archives[archive] = _.groupBy(archives[archive], function(item) { return item.date.getMonth(); }); - } - var month_names = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'] section.archive h2 Archive ul - var yearsK = _.chain(archives).keys().reverse().value(); each yearK in yearsK - var months = archives[yearK]; - var yearHeight = lineHeight * _.reduce(months, function(memo,month) { return memo + month.length; }, 0); li span.year-label(style='line-height:' + yearHeight + 'em')= yearK ul(style='margin-left:4em') - var monthsK = _.chain(months).keys().reverse().value(); each monthK in monthsK - var monthHeight = lineHeight * months[monthK].length; li span.month-label(style='line-height:' + monthHeight + 'em')= month_names[monthK] ul(style='margin-left:7em') each item in months[monthK] li(style='height:'+ lineHeight + 'em;line-height:' + lineHeight + 'em') a(href=item.url)= item.title