def update(self): 'Add new or edit existing features' # Authenticate via personID or key personID = h.getPersonIDViaKey() if not personID: abort(401, 'Please log in or provide a valid key') # Load srid srid = request.params.get('srid', '') try: proj4 = model.validateSRID(srid) except model.GeoRegistryError, error: abort(400, str(error))
def view(self, responseFormat='json'): 'Assemble a map' # Get responseFormat responseFormat = responseFormat.lower() if responseFormat not in ['json']: abort(400, 'Must specify a valid responseFormat: json') # Authenticate via personID or key personID = h.getPersonIDViaKey() # Load srid srid = request.params.get('srid', '') try: proj4 = model.validateSRID(srid) except model.GeoRegistryError, error: abort(400, str(error))
def delete(self): 'Delete features' # Authenticate via personID or key personID = h.getPersonIDViaKey() if not personID: abort(401, 'Please log in or provide a valid key') # Load featureIDs featureIDs = request.params.get('featureIDs', '').splitlines() if not featureIDs: abort(400, 'Must specify at least one featureID in featureIDs') # Make sure that the user has write access to the given featureIDs try: model.getWritableFeatures(featureIDs, personID) except model.GeoRegistryError, error: abort(400, str(error))
def index(self, responseFormat='html'): 'Get tags with visible features' # Get responseFormat responseFormat = responseFormat.lower() if responseFormat not in ['json', 'html']: abort(400, 'Must specify a valid responseFormat: json, html') # Authenticate via personID or key personID = h.getPersonIDViaKey() # Get tags with visible features c.tags = Session.query(model.Tag).join(model.Tag.features).filter(model.getFeatureFilter(personID)).all() # If the user wants json, if responseFormat == 'json': return '\n'.join(sorted(x.text for x in c.tags)) # If the user wants html, elif responseFormat == 'html': return render('/tags/index.mako')
def index(self, responseFormat='html'): 'Get tags with visible features' # Get responseFormat responseFormat = responseFormat.lower() if responseFormat not in ['json', 'html']: abort(400, 'Must specify a valid responseFormat: json, html') # Authenticate via personID or key personID = h.getPersonIDViaKey() # Get tags with visible features c.tags = Session.query(model.Tag).join(model.Tag.features).filter( model.getFeatureFilter(personID)).all() # If the user wants json, if responseFormat == 'json': return '\n'.join(sorted(x.text for x in c.tags)) # If the user wants html, elif responseFormat == 'html': return render('/tags/index.mako')