Skip to content

Commit

Permalink
Don't exclude properties everywhere
Browse files Browse the repository at this point in the history
Fix regression introduced by
496e2bb
  • Loading branch information
sbrunner committed Nov 21, 2018
1 parent 0146210 commit c9b37b3
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 12 deletions.
2 changes: 1 addition & 1 deletion c2cgeoportal/lib/lingua_extractor.py
Original file line number Diff line number Diff line change
Expand Up @@ -377,7 +377,7 @@ def _import_layer_wms(self, layer, messages):
if layer.geo_table is not None and layer.geo_table != "":
try:
from c2cgeoportal.views.layers import get_layer_class
cls = get_layer_class(layer)
cls = get_layer_class(layer, with_exclude=True)
for column_property in class_mapper(cls).iterate_properties:
if isinstance(column_property, ColumnProperty) and len(column_property.columns) == 1:
column = column_property.columns[0]
Expand Down
25 changes: 14 additions & 11 deletions c2cgeoportal/views/layers.py
Original file line number Diff line number Diff line change
Expand Up @@ -414,7 +414,7 @@ def metadata(self):
layer = self._get_layer_for_request()
if not layer.public and self.request.user is None:
raise HTTPForbidden()
return get_layer_class(layer)
return get_layer_class(layer, with_exclude=True)

@view_config(route_name="layers_enumerate_attribute_values", renderer="json")
def enumerate_attribute_values(self):
Expand Down Expand Up @@ -468,15 +468,18 @@ def query_enumerate_attribute_values(dbsession, layerinfos, fieldname):
return dbsession.query(distinct(attribute)).order_by(attribute).all()


def get_layer_class(layer):
# exclude the columns used to record the last features update
exclude = [] if layer.exclude_properties is None else layer.exclude_properties.split(",")
last_update_date = Layers.get_metadata(layer, "lastUpdateDateColumn")
if last_update_date is not None:
exclude.append(last_update_date)
last_update_user = Layers.get_metadata(layer, "lastUpdateUserColumn")
if last_update_user is not None:
exclude.append(last_update_user)
def get_layer_class(layer, with_exclude=False):
if with_exclude:
# Exclude the columns used to record the last features update
exclude = [] if layer.exclude_properties is None else layer.exclude_properties.split(",")
last_update_date = Layers.get_metadata(layer, "lastUpdateDateColumn")
if last_update_date is not None:
exclude.append(last_update_date)
last_update_user = Layers.get_metadata(layer, "lastUpdateUserColumn")
if last_update_user is not None:
exclude.append(last_update_user)
else:
exclude = []

primary_key = Layers.get_metadata(layer, "geotablePrimaryKey")
return get_class(
Expand All @@ -487,7 +490,7 @@ def get_layer_class(layer):


def get_layer_metadatas(layer):
cls = get_layer_class(layer)
cls = get_layer_class(layer, with_exclude=True)
edit_columns = []

for column_property in class_mapper(cls).iterate_properties:
Expand Down

0 comments on commit c9b37b3

Please sign in to comment.