github.com/ncodes/nomad@v0.5.7-0.20170403112158-97adf4a74fb3/website/config.rb (about) 1 set :base_url, "https://www.nomadproject.io/" 2 3 activate :hashicorp do |h| 4 h.name = "nomad" 5 h.version = "0.5.6" 6 h.github_slug = "hashicorp/nomad" 7 end 8 9 helpers do 10 # Get the title for the page. 11 # 12 # @param [Middleman::Page] page 13 # 14 # @return [String] 15 def title_for(page) 16 if page && page.data.page_title 17 return "#{page.data.page_title} - Nomad by HashiCorp" 18 end 19 20 "Nomad by HashiCorp" 21 end 22 23 # Get the description for the page 24 # 25 # @param [Middleman::Page] page 26 # 27 # @return [String] 28 def description_for(page) 29 description = (page.data.description || "") 30 .gsub('"', '') 31 .gsub(/\n+/, ' ') 32 .squeeze(' ') 33 34 return escape_html(description) 35 end 36 37 # This helps by setting the "active" class for sidebar nav elements 38 # if the YAML frontmatter matches the expected value. 39 def sidebar_current(expected) 40 current = current_page.data.sidebar_current || "" 41 if current.start_with?(expected) 42 return " class=\"active\"" 43 else 44 return "" 45 end 46 end 47 48 # Returns the id for this page. 49 # @return [String] 50 def body_id_for(page) 51 if !(name = page.data.sidebar_current).blank? 52 return "page-#{name.strip}" 53 end 54 if page.url == "/" || page.url == "/index.html" 55 return "page-home" 56 end 57 if !(title = page.data.page_title).blank? 58 return title 59 .downcase 60 .gsub('"', '') 61 .gsub(/[^\w]+/, '-') 62 .gsub(/_+/, '-') 63 .squeeze('-') 64 .squeeze(' ') 65 end 66 return "" 67 end 68 69 # Returns the list of classes for this page. 70 # @return [String] 71 def body_classes_for(page) 72 classes = [] 73 74 if !(layout = page.data.layout).blank? 75 classes << "layout-#{page.data.layout}" 76 end 77 78 if !(title = page.data.page_title).blank? 79 title = title 80 .downcase 81 .gsub('"', '') 82 .gsub(/[^\w]+/, '-') 83 .gsub(/_+/, '-') 84 .squeeze('-') 85 .squeeze(' ') 86 classes << "page-#{title}" 87 end 88 89 return classes.join(" ") 90 end 91 end