diff --git a/gollum.gemspec b/gollum.gemspec index 6f88f590..748e78bb 100644 --- a/gollum.gemspec +++ b/gollum.gemspec @@ -1212,6 +1212,7 @@ Gem::Specification.new do |s| lib/gollum/templates/pagination.mustache lib/gollum/templates/search.mustache lib/gollum/templates/searchbar.mustache + lib/gollum/templates/user.mustache lib/gollum/templates/wiki_content.mustache lib/gollum/uri_encode_component.rb lib/gollum/views/commit.rb diff --git a/lib/gollum/app.rb b/lib/gollum/app.rb index 2546c4eb..0c81385d 100644 --- a/lib/gollum/app.rb +++ b/lib/gollum/app.rb @@ -211,7 +211,7 @@ module Precious end get '/edit/*' do - forbid unless @allow_editing + forbid unless @allow_editing && @user_authed wikip = wiki_page(params[:splat].first) @name = wikip.fullname @path = wikip.path @@ -234,6 +234,7 @@ module Precious wiki = wiki_new halt 405 unless wiki.allow_uploads + forbid unless @user_authed if params[:file] fullname = params[:file][:filename] @@ -290,6 +291,7 @@ module Precious post '/rename/*' do wikip = wiki_page(params[:splat].first) halt 500 if wikip.nil? + forbid unless @user_authed wiki = wikip.wiki page = wikip.page rename = params[:rename] @@ -333,6 +335,7 @@ module Precious path = "/#{clean_url(sanitize_empty_params(params[:path]))}" wiki = wiki_new page = wiki.page(::File.join(path, params[:page])) + forbid unless @user_authed return if page.nil? if etag != page.sha @@ -353,6 +356,7 @@ module Precious post '/delete/*' do forbid unless @allow_editing + forbid unless @user_authed wiki = wiki_new filepath = params[:splat].first unless filepath.nil? @@ -364,6 +368,7 @@ module Precious get '/create/*' do forbid unless @allow_editing + forbid unless @user_authed wikip = wiki_page(params[:splat].first) @name = wikip.name @ext = wikip.ext @@ -389,6 +394,7 @@ module Precious path = sanitize_empty_params(params[:path]) || '' format = params[:format].intern wiki = wiki_new + forbid unless @user_authed path.gsub!(/^\//, '') @@ -639,7 +645,7 @@ module Precious elsif @redirects_enabled && redirect_path = wiki.redirects[fullpath] redirect to("#{encodeURIComponent(redirect_path)}?redirected_from=#{encodeURIComponent(fullpath)}") else - if @allow_editing + if @allow_editing && @user_authed path = fullpath[-1] == '/' ? "#{fullpath}#{wiki.index_page}" : fullpath # Append default index page if no page name is supplied redirect to("/gollum/create/#{clean_url(encodeURIComponent(path))}") else diff --git a/lib/gollum/public/gollum/stylesheets/template.scss.erb b/lib/gollum/public/gollum/stylesheets/template.scss.erb index 0b5d0110..b3048b25 100644 --- a/lib/gollum/public/gollum/stylesheets/template.scss.erb +++ b/lib/gollum/public/gollum/stylesheets/template.scss.erb @@ -734,3 +734,12 @@ nav.actions { display: none; } } + +/* @section user */ +#user p { + text-align: right; + padding-right:0.5em; + font-size: .8em; + line-height: 2.0em; + color: #999; +} diff --git a/lib/gollum/templates/layout.mustache b/lib/gollum/templates/layout.mustache index 8864be69..0d9b8d18 100644 --- a/lib/gollum/templates/layout.mustache +++ b/lib/gollum/templates/layout.mustache @@ -60,6 +60,7 @@