lib/alula/generators/archive.rb in alula-0.4.14 vs lib/alula/generators/archive.rb in alula-0.4.15

- old
+ new

@@ -16,13 +16,15 @@ archives = {} @languages.each do |lang, posts| options.templates.collect do |template| posts.collect do |post| archives[post.substitude(template, lang)] ||= {} - key = "archive.title." + template.scan(/:(\w+)*/).flatten.join('-') - archives[post.substitude(template, lang)][:title] ||= I18n.t(key, Hash[post.substitutes(lang).map{|k,v|[k.to_sym,v]}].merge(locale: lang)) - archives[post.substitude(template, lang)][:key] ||= key + title_key = "archive.title." + template.scan(/:(\w+)*/).flatten.join('-') + description_key = "archive.description." + template.scan(/:(\w+)*/).flatten.join('-') + archives[post.substitude(template, lang)][:title] ||= I18n.t(title_key, Hash[post.substitutes(lang).map{|k,v|[k.to_sym,v]}].merge(locale: lang)) + archives[post.substitude(template, lang)][:description] ||= I18n.t(description_key, Hash[post.substitutes(lang).map{|k,v|[k.to_sym,v]}].merge(locale: lang)) + archives[post.substitude(template, lang)][:key] ||= title_key archives[post.substitude(template, lang)][:content] ||= {} archives[post.substitude(template, lang)][:content][lang] ||= [] archives[post.substitude(template, lang)][:content][lang] << post end end @@ -30,34 +32,20 @@ archives.each do |name, archive| self.site.content.pages << Alula::Content::Page.new({ generator: self, posts: archive[:content], - title: archive[:title],#titles.select {|lang, title| archive.keys.include?(lang)}, + title: archive[:title], + description: archive[:description], name: name, slug: name, sidebar: false, template: "/:locale/:name/", site: self.site, view: "archive", key: archive[:key], }, - # :previous => ->(hook, locale = nil) { - # pos = self.navigation(locale).index(self) - # if pos and pos < (self.navigation(locale).count - 1) - # self.navigation(locale)[pos + 1] - # else - # nil - # end - # }, - # :next => ->(hook, locale = nil) { - # pos = self.navigation(locale).index(self) - # if pos and pos > 0 - # self.navigation(locale)[pos - 1] - # else - # nil - # end - # }, + :navigation => ->(hook, locale = nil) { locale ||= self.current_locale || self.site.config.locale @navigation[locale] ||= self.site.content.pages.select { |item| item.metadata.generator == self.generator and item.metadata.key == self.metadata.key }