# HG changeset patch # User Sascha Wilde # Date 1561368136 -7200 # Node ID b1fe61b580487358ecb3e64641954952d186e265 # Parent 0d45a3c34900a873f845c4656e2a657609f204bd Allow to search gauges per ISRS code. diff -r 0d45a3c34900 -r b1fe61b58048 schema/search_functions.sql --- a/schema/search_functions.sql Mon Jun 24 11:21:41 2019 +0200 +++ b/schema/search_functions.sql Mon Jun 24 11:22:16 2019 +0200 @@ -57,14 +57,27 @@ DECLARE _result jsonb; BEGIN - SELECT COALESCE(json_agg(r),'[]') - INTO _result - FROM (SELECT objname AS name, - ST_AsGeoJSON(geom)::json AS geom, - 'gauge' AS type - FROM waterway.gauges - WHERE objname ILIKE '%' || search_string || '%' - ORDER BY name) r; + IF is_ISRSstring(search_string) THEN + SELECT COALESCE(json_agg(r),'[]') + INTO _result + FROM ( + SELECT objname AS name, + ST_AsGeoJSON(geom)::json AS geom, + 'gauge' AS type + FROM waterway.gauges + WHERE location = isrs_fromText(search_string) + ORDER BY name) r; + ELSE + SELECT COALESCE(json_agg(r),'[]') + INTO _result + FROM ( + SELECT objname AS name, + ST_AsGeoJSON(geom)::json AS geom, + 'gauge' AS type + FROM waterway.gauges + WHERE objname ILIKE '%' || search_string || '%' + ORDER BY name) r; + END IF; RETURN _result; END; $$;