[Mapbender-commits] r9443 - trunk/mapbender/resources/db/pgsql/UTF-8/update

svn_mapbender at osgeo.org svn_mapbender at osgeo.org
Fri May 6 03:44:38 PDT 2016


Author: armin11
Date: 2016-05-06 03:44:38 -0700 (Fri, 06 May 2016)
New Revision: 9443

Modified:
   trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7.4_to_2.8_pgsql_UTF-8.sql
Log:
New things for dataset search and resolving coupled resources

Modified: trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7.4_to_2.8_pgsql_UTF-8.sql
===================================================================
--- trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7.4_to_2.8_pgsql_UTF-8.sql	2016-05-02 07:22:57 UTC (rev 9442)
+++ trunk/mapbender/resources/db/pgsql/UTF-8/update/update_2.7.4_to_2.8_pgsql_UTF-8.sql	2016-05-06 10:44:38 UTC (rev 9443)
@@ -915,3 +915,54 @@
 INSERT INTO gui_element(fkey_gui_id, e_id, e_pos, e_public, e_comment, e_title, e_element, e_src, e_attributes, e_left, e_top, e_width, e_height, e_z_index, e_more_styles, e_content, e_closetag, e_js_file, e_mb_mod, e_target, e_requires, e_url) VALUES('PortalAdmin_DE','orphanWMS_icon',2,1,'icon','','img','../img/gnome/edit-clear.png','',0,0,NULL ,NULL ,2,'','','','','','','','');
 UPDATE gui_element SET e_target='menu_maintenance,menu_group,menu_user,menu_role,menu_category' WHERE fkey_gui_id='PortalAdmin_DE' AND e_id='mb_horizontal_accordion';
 
+
+-- Function: f_getmd_tou(integer)
+
+-- DROP FUNCTION f_getmd_tou(integer);
+
+CREATE OR REPLACE FUNCTION f_getmd_tou(integer)
+  RETURNS integer AS
+$BODY$
+DECLARE
+   md_tou int4;
+BEGIN
+md_tou := fkey_termsofuse_id from md_termsofuse where md_termsofuse.fkey_metadata_id=$1; 
+RETURN md_tou;
+
+END;
+$BODY$
+  LANGUAGE plpgsql VOLATILE
+  COST 100;
+ALTER FUNCTION f_getmd_tou(integer)
+  OWNER TO postgres;
+
+--new view which integrates the termsofuse for datasets if given 
+
+DROP VIEW search_dataset_view;
+
+CREATE OR REPLACE VIEW search_dataset_view AS 
+ SELECT dataset_dep.fkey_mb_user_id AS user_id, dataset_dep.dataset_id, dataset_dep.dataset_id AS metadata_id, dataset_dep.srs AS dataset_srs, dataset_dep.title, dataset_dep.abstract AS dataset_abstract, dataset_dep.accessconstraints, dataset_dep.isopen, dataset_dep.termsofuse, f_collect_searchtext_dataset(dataset_dep.dataset_id) AS searchtext, dataset_dep.dataset_timestamp, dataset_dep.department, dataset_dep.mb_group_name, dataset_dep.mb_group_title, dataset_dep.mb_group_country, 0 AS load_count, dataset_dep.mb_group_stateorprovince, f_collect_inspire_cat_dataset(dataset_dep.dataset_id) AS md_inspire_cats, f_collect_custom_cat_dataset(dataset_dep.dataset_id) AS md_custom_cats, f_collect_topic_cat_dataset(dataset_dep.dataset_id) AS md_topic_cats, dataset_dep.bbox AS the_geom, (((((st_xmin(dataset_dep.bbox::box3d)::text || ','::text) || st_ymin(dataset_dep.bbox::box3d)::text) || ','::text) || st_xmax(dataset_dep.bbox::box3d)::text) || ','::text) || st_ymax(dataset_dep.bbox::box3d)::
 text AS bbox, dataset_dep.preview_url, dataset_dep.fileidentifier, f_get_coupled_resources(dataset_dep.dataset_id) AS coupled_resources, dataset_dep.mb_group_logo_path, dataset_dep.timeBegin, dataset_dep.timeEnd 
+   FROM ( SELECT mb_metadata.the_geom AS bbox, mb_metadata.ref_system AS srs, mb_metadata.metadata_id AS dataset_id, mb_metadata.title, mb_metadata.abstract, mb_metadata.lastchanged AS dataset_timestamp, mb_metadata.tmp_reference_1 as timeBegin, mb_metadata.tmp_reference_2 as timeEnd, mb_metadata.uuid AS fileidentifier, mb_metadata.preview_image AS preview_url, mb_metadata.fkey_mb_user_id, mb_metadata.constraints as accessconstraints, f_getmd_tou(mb_metadata.metadata_id) AS termsofuse, f_tou_isopen(f_getmd_tou(mb_metadata.metadata_id)) AS isopen, user_dep.mb_group_id AS department, user_dep.mb_group_name, user_dep.mb_group_title, user_dep.mb_group_country, user_dep.mb_group_stateorprovince, user_dep.mb_group_logo_path
+           FROM ( SELECT registrating_groups.fkey_mb_user_id AS mb_user_id, mb_group.mb_group_id, mb_group.mb_group_name, mb_group.mb_group_title, mb_group.mb_group_country, mb_group.mb_group_stateorprovince, mb_group.mb_group_logo_path
+                   FROM registrating_groups, mb_group
+                  WHERE registrating_groups.fkey_mb_group_id = mb_group.mb_group_id) user_dep, mb_metadata
+          WHERE user_dep.mb_user_id = mb_metadata.fkey_mb_user_id AND mb_metadata.the_geom IS NOT NULL) dataset_dep
+  ORDER BY dataset_dep.dataset_id;
+
+ALTER TABLE search_dataset_view
+  OWNER TO postgres;
+
+DROP VIEW search_wfs_view;
+CREATE OR REPLACE VIEW search_wfs_view AS 
+SELECT *, geometryfromtext(((((((((((((((((((('POLYGON(('::text || wfs_without_geom.featuretype_latlon_array[1]::text) || ' '::text) || wfs_without_geom.featuretype_latlon_array[2]::text) || ','::text) || wfs_without_geom.featuretype_latlon_array[1]::text) || ' '::text) || wfs_without_geom.featuretype_latlon_array[4]::text) || ','::text) || wfs_without_geom.featuretype_latlon_array[3]::text) || ' '::text) || wfs_without_geom.featuretype_latlon_array[4]::text) || ','::text) || wfs_without_geom.featuretype_latlon_array[3]::text) || ' '::text) || wfs_without_geom.featuretype_latlon_array[2]::text) || ','::text) || wfs_without_geom.featuretype_latlon_array[1]::text) || ' '::text) || wfs_without_geom.featuretype_latlon_array[2]::text) || '))'::text, 4326) AS the_geom, (((((wfs_without_geom.featuretype_latlon_array[1]::text || ','::text) || wfs_without_geom.featuretype_latlon_array[2]::text) || ','::text) || wfs_without_geom.featuretype_latlon_array[3]::text) || ','::text) || wfs_without_
 geom.featuretype_latlon_array[4]::text AS bbox FROM (SELECT wfs_dep.wfs_id, wfs_dep.wfs_title, wfs_dep.wfs_abstract, wfs_dep.administrativearea, wfs_dep.country, wfs_dep.accessconstraints, wfs_dep.termsofuse, wfs_dep.isopen, wfs_dep.wfs_owner, wfs_featuretype.featuretype_id, wfs_featuretype.featuretype_srs, wfs_featuretype.featuretype_title, wfs_featuretype.featuretype_abstract, f_collect_searchtext_wfs(wfs_dep.wfs_id, wfs_featuretype.featuretype_id) AS searchtext, wfs_element.element_type, wfs_conf.wfs_conf_id, wfs_conf.wfs_conf_abstract, wfs_conf.wfs_conf_description, f_getwfsmodultype(wfs_conf.wfs_conf_id) AS modultype, wfs_dep.wfs_timestamp, wfs_dep.department, wfs_dep.mb_group_name, wfs_dep.mb_group_logo_path, wfs_dep.wfs_network_access, wfs_dep.wfs_pricevolume, wfs_dep.wfs_proxylog, wfs_featuretype.featuretype_latlon_bbox, CASE WHEN wfs_featuretype.featuretype_latlon_bbox='' THEN string_to_array('-180,-90,180,90',',') WHEN wfs_featuretype.featuretype_latlon_bbox IS NULL THEN s
 tring_to_array('-180,-90,180,90',',') ELSE string_to_array(wfs_featuretype.featuretype_latlon_bbox,',') END AS featuretype_latlon_array 
+   FROM ( SELECT wfs.wfs_id, wfs.wfs_title, wfs.wfs_abstract, wfs.administrativearea, wfs.country, wfs.accessconstraints, f_getwfs_tou(wfs.wfs_id) AS termsofuse, f_tou_isopen(f_getwfs_tou(wfs.wfs_id)) AS isopen, wfs.wfs_timestamp, wfs.wfs_owner, wfs.wfs_proxylog, wfs.wfs_network_access, wfs.wfs_pricevolume,  user_dep.mb_group_id AS department, user_dep.mb_group_name, user_dep.mb_group_logo_path
+           FROM ( SELECT registrating_groups.fkey_mb_user_id AS mb_user_id, mb_group.mb_group_id, mb_group.mb_group_name, mb_group.mb_group_logo_path
+                   FROM registrating_groups, mb_group
+                  WHERE registrating_groups.fkey_mb_group_id = mb_group.mb_group_id) user_dep, wfs
+          WHERE user_dep.mb_user_id = wfs.wfs_owner) wfs_dep, wfs_featuretype, wfs_element, wfs_conf
+  WHERE wfs_featuretype.fkey_wfs_id = wfs_dep.wfs_id AND wfs_featuretype.featuretype_searchable = 1 AND wfs_element.element_type::text ~~ '%Type'::text AND wfs_featuretype.featuretype_id = wfs_element.fkey_featuretype_id AND wfs_featuretype.featuretype_id = wfs_conf.fkey_featuretype_id
+  ORDER BY wfs_featuretype.featuretype_id) AS wfs_without_geom;
+
+ALTER TABLE search_wfs_view
+  OWNER TO postgres;
+



More information about the Mapbender_commits mailing list