gb_mapfish_appserver 1.0.4 → 1.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- NDkwNmRiMzFiNzAxNzU0MDQzYTlmYzg4MTQ0YTY3Y2U1ODgwYWJiNA==
4
+ Y2VlMzQ0NmQzYjJhMTA0ZmYwMWY4OGE4MmUzMTI4ZGFlMDJmZmVhOQ==
5
5
  data.tar.gz: !binary |-
6
- ODMzNjQyNzA1MzdlYTlhYWU4MWNhY2NkODI1M2I3NDM5NDliYjMxYQ==
6
+ NmIxZmI0NGNjMzU5ZDVlOGE3ODE1MTU1ZDNhZmVlMTU3YjU2NWQ2Zg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MmZkZjUwMDFjNWE4NWFmNGY1ZDUwNTBlMjUyYzZmMjNjNWJmNDZmYTQwOTcw
10
- OTNlM2Y0NWU0YjJjYTVhZjllODBmNjgwODYxNzJhZmE5MGVhNzhkMmRkNWY0
11
- OWEwMTI1YzQ5NzEyYzMwMTE1YWMwMTYxNjViYWEyMjUwODNhMDU=
9
+ ZDRiOGFiYzU5Y2I5NGQ4ZGY4NDdjNDllMWViZDAzMGU2MTI0YjJiNzhmOTU3
10
+ M2UzNWZlMzc5NGNmZWRiYjdmYTUwNjUzMjBlZDc3ZTAwZjJhYjZlYTkwNWQ2
11
+ NjJmMDVlZDdkNDk3ZWExZTdlMWZkM2EyYWZlY2IxNDkxMzkxYTQ=
12
12
  data.tar.gz: !binary |-
13
- ZWJiNmZlZGVmYjZkMDZlOGQ2NmZlODE4MjQ0MGQyYWRhNTU2MzJmNGU5OGFl
14
- NDE1NGI3ZTZhMWJmZDIxNzRjMGZmMjIyN2NhNDA2ZjAyODFlZDMwODZlYmUx
15
- NDA5NzVlZTA4ZGM3MDJhZGEzNGQ3ODBmY2U3NGRhYTljNDRkOWE=
13
+ YWRmNTBmNjIxMWZhYzk4ZWM2YWE3MWQ4NDc4MmIxY2U4MDYxMWFmMzAxNDg1
14
+ MTFlYjM1ZTliM2RmYzYyZmVhNzgwOTE2NGFiMDlhNDQyYzQ2NmY0ZjQyMTdh
15
+ MGIwY2Y1NGNlNzExZTE1ZTA5OGM5ZmUwOGM5MjgxNmY1ZDY4MzU=
@@ -53,14 +53,14 @@ class GeoController < ApplicationController
53
53
  end
54
54
 
55
55
  def update
56
- feature = geo_model.user_filter(current_ability).geojson_decode(request.raw_post)
56
+ feature = geo_model.geojson_decode(request.raw_post)
57
57
  if feature.nil?
58
58
  head :bad_request
59
59
  return
60
60
  end
61
61
 
62
62
  if feature.feature_id.is_a? Integer
63
- @feature = geo_model.find(feature.feature_id)
63
+ @feature = geo_model.user_filter(current_ability).find_by_id(feature.feature_id)
64
64
  end
65
65
  if @feature.nil?
66
66
  head :not_found
@@ -84,8 +84,14 @@ class GeoModel < ActiveRecord::Base
84
84
  #end
85
85
 
86
86
  def bbox
87
- envelope = GeoRuby::SimpleFeatures::Geometry.from_hex_ewkb(extent).envelope #TODO: replace with rgeo
88
- [envelope.lower_corner.x, envelope.lower_corner.y, envelope.upper_corner.x, envelope.upper_corner.y]
87
+ box_query = "Box2D(#{connection.quote_column_name(self.class.geometry_column_name)})"
88
+ extent = self.class.select("ST_XMin(#{box_query}), ST_YMin(#{box_query}), ST_XMax(#{box_query}), ST_Ymax(#{box_query})").find(id)
89
+ [
90
+ extent.st_xmin.to_f,
91
+ extent.st_ymin.to_f,
92
+ extent.st_xmax.to_f,
93
+ extent.st_ymax.to_f
94
+ ]
89
95
  end
90
96
 
91
97
  # based on mapfish_filter
data/app/models/user.rb CHANGED
@@ -25,7 +25,15 @@ class User < ActiveRecord::Base
25
25
  before_create :add_requested_group
26
26
 
27
27
  def has_role?(rolename)
28
- roles.any? { |role| role.name == rolename.to_s }
28
+ has_role = roles.any? { |role| role.name == rolename.to_s }
29
+ unless has_role
30
+ # check roles from groups
31
+ groups.each do |group|
32
+ has_role = group.roles.any? { |role| role.name == rolename.to_s }
33
+ break if has_role
34
+ end
35
+ end
36
+ has_role
29
37
  end
30
38
 
31
39
  def group_admin?(group)
@@ -1,3 +1,3 @@
1
1
  module GbMapfishAppserver
2
- VERSION = "1.0.4"
2
+ VERSION = "1.0.5"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gb_mapfish_appserver
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 1.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pirmin Kalberer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-07-22 00:00:00.000000000 Z
11
+ date: 2015-08-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails