diff --git a/lib/gollum/frontend/app.rb b/lib/gollum/frontend/app.rb index 90d5e398..12707337 100644 --- a/lib/gollum/frontend/app.rb +++ b/lib/gollum/frontend/app.rb @@ -73,6 +73,19 @@ module Precious redirect "/#{page}" end + get %r{/(.+?)/([0-9a-f]{40})} do + name = params[:captures][0] + wiki = Gollum::Wiki.new($path) + if page = wiki.page(name, params[:captures][1]) + @page = page + @name = name + @content = page.formatted_data + mustache :page + else + halt 404 + end + end + get '/*' do show_page_or_file(params[:splat].first) end diff --git a/lib/gollum/frontend/templates/page.mustache b/lib/gollum/frontend/templates/page.mustache index 360aba81..96420561 100644 --- a/lib/gollum/frontend/templates/page.mustache +++ b/lib/gollum/frontend/templates/page.mustache @@ -20,7 +20,7 @@ Versions: diff --git a/lib/gollum/frontend/views/page.rb b/lib/gollum/frontend/views/page.rb index ed5012a9..95ef8f13 100644 --- a/lib/gollum/frontend/views/page.rb +++ b/lib/gollum/frontend/views/page.rb @@ -26,6 +26,7 @@ module Precious { :id => v.id, :id7 => v.id[0..6], :num => i, + :selected => @page.version.id == v.id, :author => v.author.name } end end