Sha256: bf55ab3c4e330b25a76c8fcb7daa0aa34e77bff03b24af0066fad9a1cec14b19
Contents?: true
Size: 1.59 KB
Versions: 3
Compression:
Stored size: 1.59 KB
Contents
require "pathname" module Precious module Views class Pages < Layout attr_reader :results, :ref def title "All pages in #{@ref}" end def breadcrumb if @path path = Pathname.new(@path) breadcrumb = [%{<a href="#{@base_url}pages/">Home</a>}] path.descend do |crumb| title = crumb.basename if title == path.basename breadcrumb << title else breadcrumb << %{<a href="#{@base_url}pages/#{crumb}/">#{title}</a>} end end breadcrumb.join(" / ") else "Home" end end def files_folders if has_results folder_links = [] @results.map { |page| page_path = page.path.sub(/^#{@path}\//,'') if page_path.include?('/') folder = page_path.split('/').first folder_path = @path ? "#{@path}/#{folder}" : folder folder_link = %{<li><a href="#{@base_url}pages/#{folder_path}/" class="folder">#{folder}</a></li>} unless folder_links.include?(folder_link) folder_links << folder_link folder_link end elsif page_path != ".gitkeep" %{<li><a href="#{@base_url}#{page.escaped_url_path}" class="file">#{page.name}</a></li>} end }.compact.join("\n") else "" end end def has_results !@results.empty? end def no_results @results.empty? end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
gollum-2.1.3 | lib/gollum/frontend/views/pages.rb |
gollum-2.1.2 | lib/gollum/frontend/views/pages.rb |
gollum-2.1.0 | lib/gollum/frontend/views/pages.rb |