Class: WfsController

Inherits:
ApplicationController show all
Defined in:
app/controllers/wfs_controller.rb

Instance Method Summary collapse

Instance Method Details

#showObject



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'app/controllers/wfs_controller.rb', line 6

def show
  logger.info "----> WFS call with user '#{current_user.try(:login)}'"

  #Send redirect for public services
  #if public?(params[:service], host_zone(request.host))
  #  url, path = mapserv_request_url(request)
  #  expires_in 2.minutes, :public => true
  #  redirect_to "#{url.scheme}://#{url.host}#{path}"
  #  return
  #end

  topic_name = params[:service]
  wfs_accessible = can?(:show, Wfs.new(topic_name))
  unless wfs_accessible
    logger.info "----> WFS '#{topic_name}' not accessible with roles #{current_roles.roles.collect(&:name).join('+')}!"
    log_user_permissions(:show, Wfs.new(topic_name))
    request_http_basic_authentication('Secure WFS Login')
    return
  end

  add_filter(topic_name)

  call_wfs(request)
end