X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/9004c2d28d237d9c1dfe6ff707c2189731069593..2cfc030bbac65d8cb687ee17e6fbf18ffa5ea2cc:/app/controllers/site_controller.rb diff --git a/app/controllers/site_controller.rb b/app/controllers/site_controller.rb index 15ffe58a2..5110be019 100644 --- a/app/controllers/site_controller.rb +++ b/app/controllers/site_controller.rb @@ -24,7 +24,7 @@ class SiteController < ApplicationController end def index - session[:location] ||= OSM.ip_location(request.env["REMOTE_ADDR"]) unless Settings.status == "database_readonly" || Settings.status == "database_offline" + session[:location] ||= OSM.ip_location(request.env["REMOTE_ADDR"]) unless %w[database_readonly database_offline].include?(Settings.status) end def permalink @@ -107,9 +107,18 @@ class SiteController < ApplicationController rescue ActiveRecord::RecordNotFound # don't try and derive a location from a missing/deleted object end + + if api_status != "online" + flash.now[:warning] = { :partial => "layouts/offline_flash" } + elsif current_user && !current_user.data_public? + flash.now[:warning] = { :partial => "not_public_flash" } + else + @enable_editor = true + end end def copyright + @title = t ".title" @locale = params[:copyright_locale] || I18n.locale end @@ -128,16 +137,17 @@ class SiteController < ApplicationController def export; end def offline - flash.now[:warning] = if Settings.status == "database_offline" - t("layouts.osm_offline") - else - t("layouts.osm_read_only") - end + flash.now[:warning] = { :partial => "layouts/offline_flash" } render :html => nil, :layout => true end def preview - render :html => RichText.new(params[:type], params[:text]).to_html + if params[:text].blank? + flash.now[:warning] = t("layouts.nothing_to_preview") + render :partial => "layouts/flash" + else + render :html => RichText.new(params[:type], params[:text]).to_html + end end def id