diff --git a/README.md b/README.md index a3cb3ed..650b6a7 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ You can also enable additional features including Search by Address (find a poin ## PRE-REQUISITES ## -* [Oracle Application Express 5.0.2](https://apex.oracle.com) or later +* [Oracle Application Express 5.0.3](https://apex.oracle.com) or later * You need a [Google Maps API Key](https://developers.google.com/maps/documentation/javascript/get-api-key#get-an-api-key) ## INSTALLATION INSTRUCTIONS ## diff --git a/demo_app.sql b/demo_app.sql index 4d52fa6..34c7fad 100644 --- a/demo_app.sql +++ b/demo_app.sql @@ -13,10 +13,10 @@ whenever sqlerror exit sql.sqlcode rollback begin wwv_flow_api.import_begin ( p_version_yyyy_mm_dd=>'2013.01.01' -,p_release=>'5.0.4.00.12' -,p_default_workspace_id=>20749515040658038 +,p_release=>'5.0.3.00.03' +,p_default_workspace_id=>2216419243751626 ,p_default_application_id=>76577 -,p_default_owner=>'SAMPLE' +,p_default_owner=>'XXSPS' ); end; / @@ -27,12 +27,12 @@ prompt APPLICATION 76577 - Demo Simple Map Plugin -- Application Export: -- Application: 76577 -- Name: Demo Simple Map Plugin --- Date and Time: 19:40 Monday October 8, 2018 --- Exported By: JEFF +-- Date and Time: 09:43 Wednesday April 22, 2020 +-- Exported By: EZ002363 -- Flashback: 0 -- Export Type: Application Export --- Version: 5.0.4.00.12 --- Instance ID: 61916131238277 +-- Version: 5.0.3.00.03 +-- Instance ID: 61900181192554 -- -- Application Statistics: @@ -82,7 +82,7 @@ begin wwv_flow_api.create_flow( p_id=>wwv_flow.g_flow_id ,p_display_id=>nvl(wwv_flow_application_install.get_application_id,76577) -,p_owner=>nvl(wwv_flow_application_install.get_schema,'JK64') +,p_owner=>nvl(wwv_flow_application_install.get_schema,'SAMPLE') ,p_name=>nvl(wwv_flow_application_install.get_application_name,'Demo Simple Map Plugin') ,p_alias=>nvl(wwv_flow_application_install.get_application_alias,'JK64_SIMPLE_MAP') ,p_page_view_logging=>'YES' @@ -106,8 +106,8 @@ wwv_flow_api.create_flow( ,p_browser_frame=>'D' ,p_rejoin_existing_sessions=>'N' ,p_csv_encoding=>'Y' -,p_last_updated_by=>'JEFF' -,p_last_upd_yyyymmddhh24miss=>'20181008193734' +,p_last_updated_by=>'EZ002363' +,p_last_upd_yyyymmddhh24miss=>'20200422094253' ,p_file_prefix => nvl(wwv_flow_application_install.get_static_app_file_prefix,'') ,p_ui_type_name => null ); @@ -172,7 +172,7 @@ wwv_flow_api.create_plugin_setting( p_id=>wwv_flow_api.id(75504023794592469) ,p_plugin_type=>'REGION TYPE' ,p_plugin=>'PLUGIN_COM.JK64.SIMPLE_GOOGLE_MAP' -,p_attribute_01=>'AIzaSyAjv4gBMm5HHYRVvPj-DIPKQtTr0-DVge0' +,p_attribute_01=>'--- put your Google API key here ---' ); wwv_flow_api.create_plugin_setting( p_id=>wwv_flow_api.id(24993407215347461781) @@ -7563,16 +7563,48 @@ end; prompt --application/shared_components/plugins/region_type/com_jk64_simple_google_map begin wwv_flow_api.create_plugin( - p_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(550541452409009734) ,p_plugin_type=>'REGION TYPE' ,p_name=>'COM.JK64.SIMPLE_GOOGLE_MAP' ,p_display_name=>'JK64 Simple Google Map' ,p_supported_ui_types=>'DESKTOP:JQM_SMARTPHONE' ,p_image_prefix => nvl(wwv_flow_application_install.get_static_plugin_file_prefix('REGION TYPE','COM.JK64.SIMPLE_GOOGLE_MAP'),'') ,p_plsql_code=>wwv_flow_utilities.join(wwv_flow_t_varchar2( -'-- JK64 Simple Google Map v0.7', +'/**********************************************************', +'create or replace package jk64simplemap_pkg as', +'-- jk64 JK64 Simple Google Map v0.8 Apr 2020', '', -'g_tochar_format constant varchar2(100) := ''fm99999999999990.099999999999999999999999999999'';', +'function render (', +' p_region in apex_plugin.t_region,', +' p_plugin in apex_plugin.t_plugin,', +' p_is_printer_friendly in boolean )', +'return apex_plugin.t_region_render_result;', +'', +'end jk64simplemap_pkg;', +'/', +'', +'create or replace package body jk64simplemap_pkg as', +'**********************************************************/', +'-- jk64 JK64 Simple Google Map v0.8 Apr 2020', +'', +'-- format to use to convert a lat/lng number to string for passing via javascript', +'-- 0.0000001 is enough precision for the practical limit of commercial surveying, error up to +/- 11.132 mm at the equator', +'g_tochar_format constant varchar2(100) := ''fm990.0999999'';', +'', +'subtype plugin_attr is varchar2(32767);', +'', +'procedure parse_latlng (p_val in varchar2, p_label in varchar2, p_lat out number, p_lng out number) is', +' delim_pos number;', +'begin', +' -- allow space as the delimiter; this should be used in locales which use comma (,) as decimal separator', +' if instr(trim(p_val),'' '') > 0 then', +' delim_pos := instr(p_val,'' '');', +' else', +' delim_pos := instr(p_val,'','');', +' end if;', +' p_lat := apex_plugin_util.get_attribute_as_number(substr(p_val,1,delim_pos-1), p_label || '' latitude'');', +' p_lng := apex_plugin_util.get_attribute_as_number(substr(p_val,delim_pos+1), p_label || '' longitude'');', +'end parse_latlng;', '', 'function render (', ' p_region in apex_plugin.t_region,', @@ -7580,13 +7612,11 @@ wwv_flow_api.create_plugin( ' p_is_printer_friendly in boolean )', 'return apex_plugin.t_region_render_result', 'as', -' subtype plugin_attr is varchar2(32767);', '', ' -- Variables', ' l_result apex_plugin.t_region_render_result;', ' l_script varchar2(32767);', ' l_region varchar2(100);', -' l_js_params varchar2(1000);', ' l_lat number;', ' l_lng number;', ' l_readonly varchar2(1000) := ''false'';', @@ -7603,7 +7633,7 @@ wwv_flow_api.create_plugin( ' l_item_name plugin_attr := p_region.attribute_04;', ' l_marker_zoom plugin_attr := p_region.attribute_05;', ' l_icon plugin_attr := p_region.attribute_06;', -' l_sign_in plugin_attr := p_region.attribute_07;', +' --[unused] plugin_attr := p_region.attribute_07;', ' l_geocode_item plugin_attr := p_region.attribute_08;', ' l_country plugin_attr := p_region.attribute_09;', ' l_mapstyle plugin_attr := p_region.attribute_10;', @@ -7647,25 +7677,20 @@ wwv_flow_api.create_plugin( ' raise_application_error(-20000, ''Pan attribute must evaluate to true or false.'');', ' end if;', ' end if;', -'', -' if l_sign_in = ''Y'' then', -' l_js_params := ''&''||''signed_in=true'';', -' end if;', ' ', ' apex_javascript.add_library', -' (p_name => ''js?key='' || l_api_key || l_js_params', -' ,p_directory => ''https://maps.googleapis.com/maps/api/''', -' ,p_skip_extension => true);', +' (p_name => ''js?key='' || l_api_key', +' ,p_directory => ''https://maps.googleapis.com/maps/api/''', +' ,p_skip_extension => true);', '', ' apex_javascript.add_library', ' (p_name => ''simplemap''', ' ,p_directory => p_plugin.file_prefix', ' ,p_check_to_add_minified => true);', ' ', -' l_lat := to_number(substr(l_latlong,1,instr(l_latlong,'','')-1));', -' l_lng := to_number(substr(l_latlong,instr(l_latlong,'','')+1));', -' ', -' l_gesture_handling := nvl(l_gesture_handling,''auto'');', +' if l_latlong is not null then', +' parse_latlng(l_latlong, p_label=>''Initial Map Position'', p_lat=>l_lat, p_lng=>l_lng);', +' end if;', ' ', ' l_region := case', ' when p_region.static_id is not null', @@ -7698,7 +7723,7 @@ wwv_flow_api.create_plugin( ',readonly:'' || l_readonly || ''', ',zoom:'' || l_zoom_enabled || ''', ',pan:'' || l_pan_enabled || ''', -',gestureHandling:"'' || l_gesture_handling || ''"', +',gestureHandling:"'' || nvl(l_gesture_handling,''auto'') || ''"', '};', 'function r_#REGION#(f){/in/.test(document.readyState)?setTimeout("r_#REGION#("+f+")",9):f()}', 'r_#REGION#(function(){simplemap.init(opt_#REGION#);});', @@ -7709,21 +7734,31 @@ wwv_flow_api.create_plugin( ' sys.htp.p(replace(l_script,''#REGION#'',l_region));', '', ' return l_result;', +'exception', +' when others then', +' apex_debug.error(sqlerrm);', +' apex_debug.message(dbms_utility.format_error_stack);', +' apex_debug.message(dbms_utility.format_call_stack);', +' raise;', 'end render;', -'')) +'', +'/**********************************************************', +'end jk64simplemap_pkg;', +'/', +'**********************************************************/')) ,p_render_function=>'render' ,p_substitute_attributes=>true ,p_subscribe_plugin_settings=>true ,p_help_text=>'Add a region of this type to your page and you have a map which the user can click to set a single Marker. If you set Synchronize with Item it will copy the lat,lng that the user clicks into that item; also, if the item is changed the map will move t' -||'he marker to the new location. If you set an Address item and your Google API Key, it will do a reverse geocode and put the first address result into it. You can also get the address clicked on via the "address" event whereby you can get each compone' -||'nt of an address (e.g. street number, road, locality, etc.) as separate strings.' -,p_version_identifier=>'0.7' +||'he marker to the new location. If you set an Address item, it will do a reverse geocode and put the first address result into it. You can also get the address clicked on via the "address" event whereby you can get each component of an address (e.g. s' +||'treet number, road, locality, etc.) as separate strings.' +,p_version_identifier=>'0.8' ,p_about_url=>'https://github.com/jeffreykemp/jk64-plugin-simplemap' -,p_files_version=>32 +,p_files_version=>34 ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(460954154970738655) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(559706113017712471) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'APPLICATION' ,p_attribute_sequence=>1 ,p_display_sequence=>10 @@ -7734,8 +7769,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'Google Maps API key is required. Refer: https://developers.google.com/maps/documentation/javascript/get-api-key#get-an-api-key' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(451819937752798136) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(550571895799771952) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>1 ,p_display_sequence=>10 @@ -7749,8 +7784,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'Set the latitude and longitude as a pair of numbers to be used to position the map on page load, if no pin coordinates have been provided by the page item.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(451799355861303403) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(550551313908277219) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>2 ,p_display_sequence=>20 @@ -7764,8 +7799,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'Set the initial map zoom level on page load, to be used if the page item has no coordinates to show.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(451800003562328963) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(550551961609302779) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>3 ,p_display_sequence=>30 @@ -7779,8 +7814,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'Set the desired height for the map region. Note: the map width will adjust to the maximum available space.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(453458313195674073) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(552210271242647889) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>4 ,p_display_sequence=>40 @@ -7791,8 +7826,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'Position of the marker will be retrieved from and stored in this item as a Lat,Long value.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(453462327972847251) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(552214286019821067) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>5 ,p_display_sequence=>50 @@ -7805,8 +7840,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'If a marker is set or moved, zoom the map to this level. Leave blank to make the map not zoom when the marker is moved.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(455728257328932389) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(554480215375906205) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>6 ,p_display_sequence=>60 @@ -7831,21 +7866,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'URL to the icon to show for the marker. Leave blank for the default red Google pin.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(460955230348744902) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) -,p_attribute_scope=>'COMPONENT' -,p_attribute_sequence=>7 -,p_display_sequence=>70 -,p_prompt=>'Enable Google Sign-In' -,p_attribute_type=>'CHECKBOX' -,p_is_required=>false -,p_default_value=>'N' -,p_is_translatable=>false -,p_help_text=>'Set to Yes to enable Google sign-in on the map.' -); -wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(460957626548832231) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(559709584595806047) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>8 ,p_display_sequence=>80 @@ -7857,8 +7879,8 @@ wwv_flow_api.create_plugin_attribute( ||' at the application level.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(460958382838835612) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(559710340885809428) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>9 ,p_display_sequence=>90 @@ -7868,15 +7890,15 @@ wwv_flow_api.create_plugin_attribute( ,p_display_length=>10 ,p_max_length=>2 ,p_is_translatable=>false -,p_depending_on_attribute_id=>wwv_flow_api.id(460957626548832231) +,p_depending_on_attribute_id=>wwv_flow_api.id(559709584595806047) ,p_depending_on_condition_type=>'NOT_NULL' ,p_text_case=>'UPPER' ,p_examples=>'AU' ,p_help_text=>'Leave blank to allow geocoding to find any place on earth. Set to country code (see https://developers.google.com/public-data/docs/canonical/countries_csv for valid values) to restrict geocoder to that country.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(386120024950259856) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(484871982997233672) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>10 ,p_display_sequence=>100 @@ -7903,8 +7925,8 @@ wwv_flow_api.create_plugin_attribute( 'Another way is to copy one from a site like https://snazzymaps.com/')) ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(235116258240312638) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(333868216287286454) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>11 ,p_display_sequence=>110 @@ -7915,8 +7937,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'Google API Key required. When the user clicks a point on the map, a Google Maps reverse geocode will be executed and the first result (usually the address) will be copied to the item you specify here.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(166127726872043700) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(264879684919017516) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>12 ,p_display_sequence=>120 @@ -7928,8 +7950,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'If Yes, on load the map will attempt to locate the user''s position and pan&zoom to that location (it might prompt the user for permission first).' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(166129328009114965) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(264881286056088781) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>13 ,p_display_sequence=>130 @@ -7941,14 +7963,14 @@ wwv_flow_api.create_plugin_attribute( ,p_max_length=>2 ,p_unit=>'(0-23)' ,p_is_translatable=>false -,p_depending_on_attribute_id=>wwv_flow_api.id(166127726872043700) +,p_depending_on_attribute_id=>wwv_flow_api.id(264879684919017516) ,p_depending_on_condition_type=>'EQUALS' ,p_depending_on_expression=>'Y' ,p_help_text=>'If geolocation is successful, pan map and zoom to this level.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(84098310226731587) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(182850268273705403) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>14 ,p_display_sequence=>140 @@ -7964,8 +7986,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'By default, this plugin allows the user to click the map to move the marker. To make the map "readonly" (i.e. disallow the user from moving the marker), set this to a PL/SQL expression that evaluates to TRUE.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(136485801003815099) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(235237759050788915) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>15 ,p_display_sequence=>150 @@ -7981,8 +8003,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'If this evaluates to true, the Zoom controls will be enabled. If no expression is supplied, the default is true (enabled).' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(136486940693818121) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(235238898740791937) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>16 ,p_display_sequence=>160 @@ -7998,8 +8020,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'If this evaluates to true, the Pan controls will be enabled. If no expression is supplied, the default is true (enabled).' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(136492766356927488) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(235244724403901304) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>17 ,p_display_sequence=>170 @@ -8014,60 +8036,60 @@ wwv_flow_api.create_plugin_attribute( ||' to users getting stuck on the map and having to reload the page in order to get back to the rest of the page. This option allows you to make scrolling more intuitive and less frustrating map interaction experience on mobile browsers.' ); wwv_flow_api.create_plugin_attr_value( - p_id=>wwv_flow_api.id(136493840498930472) -,p_plugin_attribute_id=>wwv_flow_api.id(136492766356927488) + p_id=>wwv_flow_api.id(235245798545904288) +,p_plugin_attribute_id=>wwv_flow_api.id(235244724403901304) ,p_display_sequence=>10 ,p_display_value=>'cooperative' ,p_return_value=>'cooperative' ,p_help_text=>wwv_flow_utilities.join(wwv_flow_t_varchar2( -'Scroll events and one-finger touch gestures scroll the page, and do not zoom or pan the map. Two-finger touch gestures pan and zoom the map. Scroll events with a ctrl key or ⌘ key pressed zoom the map.', +'Scroll events and one-finger touch gestures scroll the page, and do not zoom or pan the map. Two-finger touch gestures pan and zoom the map. Scroll events with a ctrl key or ? key pressed zoom the map.', 'In this mode the map cooperates with the page.')) ); wwv_flow_api.create_plugin_attr_value( - p_id=>wwv_flow_api.id(136494202493932213) -,p_plugin_attribute_id=>wwv_flow_api.id(136492766356927488) + p_id=>wwv_flow_api.id(235246160540906029) +,p_plugin_attribute_id=>wwv_flow_api.id(235244724403901304) ,p_display_sequence=>20 ,p_display_value=>'greedy' ,p_return_value=>'greedy' ,p_help_text=>'All touch gestures and scroll events pan or zoom the map.' ); wwv_flow_api.create_plugin_attr_value( - p_id=>wwv_flow_api.id(136494642700933503) -,p_plugin_attribute_id=>wwv_flow_api.id(136492766356927488) + p_id=>wwv_flow_api.id(235246600747907319) +,p_plugin_attribute_id=>wwv_flow_api.id(235244724403901304) ,p_display_sequence=>30 ,p_display_value=>'none' ,p_return_value=>'none' ,p_help_text=>'The map cannot be panned or zoomed by user gestures.' ); wwv_flow_api.create_plugin_attr_value( - p_id=>wwv_flow_api.id(136495023725935043) -,p_plugin_attribute_id=>wwv_flow_api.id(136492766356927488) + p_id=>wwv_flow_api.id(235246981772908859) +,p_plugin_attribute_id=>wwv_flow_api.id(235244724403901304) ,p_display_sequence=>40 ,p_display_value=>'auto' ,p_return_value=>'auto' ,p_help_text=>'(default) Gesture handling is either cooperative or greedy, depending on whether the page is scrollable.' ); wwv_flow_api.create_plugin_event( - p_id=>wwv_flow_api.id(136498374702129253) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(235250332749103069) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_name=>'address' ,p_display_name=>'address' ); wwv_flow_api.create_plugin_event( - p_id=>wwv_flow_api.id(166130896831132002) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(264882854878105818) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_name=>'geolocate' ,p_display_name=>'geolocate' ); wwv_flow_api.create_plugin_event( - p_id=>wwv_flow_api.id(451803157131465009) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(550555115178438825) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_name=>'mapclick' ,p_display_name=>'mapClick' ); wwv_flow_api.create_plugin_event( - p_id=>wwv_flow_api.id(460956166897747772) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(559708124944721588) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_name=>'maploaded' ,p_display_name=>'mapLoaded' ); @@ -8075,69 +8097,67 @@ end; / begin wwv_flow_api.g_varchar2_table := wwv_flow_api.empty_varchar2_table; -wwv_flow_api.g_varchar2_table(1) := '7661722073696D706C656D6170203D207B0D0A2F2F204A4B36342053696D706C6520476F6F676C65204D61702076302E360D0A0D0A67656F636F6465203A2066756E6374696F6E20286F70742C67656F636F64657229207B0D0A2020617065782E646562'; -wwv_flow_api.g_varchar2_table(2) := '7567282273696D706C656D61702E67656F636F646522293B0D0A202067656F636F6465722E67656F636F6465280D0A202020207B616464726573733A202476286F70742E67656F636F64654974656D290D0A202020202C636F6D706F6E656E7452657374'; -wwv_flow_api.g_varchar2_table(3) := '72696374696F6E733A206F70742E636F756E747279213D3D22223F7B636F756E7472793A6F70742E636F756E7472797D3A7B7D0D0A20207D2C2066756E6374696F6E28726573756C74732C2073746174757329207B0D0A20202020696620287374617475'; -wwv_flow_api.g_varchar2_table(4) := '73203D3D20676F6F676C652E6D6170732E47656F636F6465725374617475732E4F4B29207B0D0A202020202020617065782E6465627567286F70742E726567696F6E49642B222067656F636F6465206F6B22293B0D0A20202020202076617220706F7320'; -wwv_flow_api.g_varchar2_table(5) := '3D20726573756C74735B305D2E67656F6D657472792E6C6F636174696F6E3B0D0A20202020202073696D706C656D61702E7365744D61726B6572286F70742C706F732E6C617428292C706F732E6C6E672829290D0A202020202020696620286F70742E73'; -wwv_flow_api.g_varchar2_table(6) := '796E634974656D213D3D222229207B0D0A20202020202020202473286F70742E73796E634974656D2C706F732E6C617428292B222C222B706F732E6C6E672829293B0D0A2020202020207D0D0A202020207D20656C7365207B0D0A202020202020617065'; -wwv_flow_api.g_varchar2_table(7) := '782E6465627567286F70742E726567696F6E49642B222067656F636F64652077617320756E7375636365737366756C20666F722074686520666F6C6C6F77696E6720726561736F6E3A20222B737461747573293B0D0A202020207D0D0A20207D293B0D0A'; -wwv_flow_api.g_varchar2_table(8) := '7D2C0D0A0D0A7365744D61726B6572203A2066756E6374696F6E20286F70742C6C61742C6C6E6729207B0D0A2020617065782E6465627567282273696D706C656D61702E7365744D61726B657222293B0D0A2020696620286C6174213D3D6E756C6C2026'; -wwv_flow_api.g_varchar2_table(9) := '26206C6E67213D3D6E756C6C29207B0D0A20202020766172206F6C64706F73203D206F70742E6D61726B65723F6F70742E6D61726B65722E676574506F736974696F6E28293A6E657720676F6F676C652E6D6170732E4C61744C6E6728302C30293B0D0A'; -wwv_flow_api.g_varchar2_table(10) := '20202020696620286C61743D3D6F6C64706F732E6C61742829202626206C6E673D3D6F6C64706F732E6C6E67282929207B0D0A202020202020617065782E6465627567286F70742E726567696F6E49642B22206D61726B6572206E6F74206368616E6765'; -wwv_flow_api.g_varchar2_table(11) := '6422293B0D0A202020207D20656C7365207B0D0A202020202020617065782E6465627567286F70742E726567696F6E49642B22206D6F7665206D61726B657222293B0D0A20202020202076617220706F73203D206E657720676F6F676C652E6D6170732E'; -wwv_flow_api.g_varchar2_table(12) := '4C61744C6E67286C61742C6C6E67293B0D0A2020202020206F70742E6D61702E70616E546F28706F73293B0D0A202020202020696620286F70742E6D61726B65725A6F6F6D29207B0D0A20202020202020206F70742E6D61702E7365745A6F6F6D286F70'; -wwv_flow_api.g_varchar2_table(13) := '742E6D61726B65725A6F6F6D293B0D0A2020202020207D0D0A202020202020696620286F70742E6D61726B657229207B0D0A20202020202020206F70742E6D61726B65722E7365744D6170286F70742E6D6170293B0D0A20202020202020206F70742E6D'; -wwv_flow_api.g_varchar2_table(14) := '61726B65722E736574506F736974696F6E28706F73293B0D0A2020202020207D20656C7365207B0D0A20202020202020206F70742E6D61726B6572203D206E657720676F6F676C652E6D6170732E4D61726B6572287B6D61703A206F70742E6D61702C20'; -wwv_flow_api.g_varchar2_table(15) := '706F736974696F6E3A20706F732C2069636F6E3A206F70742E69636F6E7D293B0D0A2020202020207D0D0A202020207D0D0A20207D20656C736520696620286F70742E6D61726B657229207B0D0A20202020617065782E6465627567286F70742E726567'; -wwv_flow_api.g_varchar2_table(16) := '696F6E49642B222072656D6F7665206D61726B657222293B0D0A202020206F70742E6D61726B65722E7365744D6170286E756C6C293B0D0A20207D0D0A7D2C0D0A0D0A67657441646472657373203A2066756E6374696F6E20286F70742C6C61742C6C6E'; -wwv_flow_api.g_varchar2_table(17) := '6729207B0D0A2020617065782E6465627567282273696D706C656D61702E6765744164647265737322293B0D0A09766172206C61746C6E67203D207B6C61743A206C61742C206C6E673A206C6E677D3B0D0A096F70742E67656F636F6465722E67656F63'; -wwv_flow_api.g_varchar2_table(18) := '6F6465287B276C6F636174696F6E273A206C61746C6E677D2C2066756E6374696F6E28726573756C74732C2073746174757329207B0D0A090969662028737461747573203D3D3D20676F6F676C652E6D6170732E47656F636F6465725374617475732E4F'; -wwv_flow_api.g_varchar2_table(19) := '4B29207B0D0A090909666F722028693D303B20693C726573756C74732E6C656E6774683B20692B2B29207B0D0A09090909617065782E6465627567286F70742E726567696F6E49642B2220726573756C745B222B692B225D3D222B726573756C74735B69'; -wwv_flow_api.g_varchar2_table(20) := '5D2E666F726D61747465645F616464726573732B222028222B726573756C74735B695D2E74797065732E6A6F696E28292B222922293B0D0A0909097D0D0A09090969662028726573756C74735B305D29207B0D0A090909092473286F70742E6164647265'; -wwv_flow_api.g_varchar2_table(21) := '73734974656D2C726573756C74735B305D2E666F726D61747465645F61646472657373293B0D0A202020202020202076617220636F6D706F6E656E7473203D20726573756C74735B305D2E616464726573735F636F6D706F6E656E74733B0D0A20202020'; -wwv_flow_api.g_varchar2_table(22) := '20202020666F722028693D303B20693C636F6D706F6E656E74732E6C656E6774683B20692B2B29207B0D0A20202020202020202020617065782E6465627567286F70742E726567696F6E49642B2220726573756C745B305D20222B636F6D706F6E656E74'; -wwv_flow_api.g_varchar2_table(23) := '735B695D2E74797065732B223D222B636F6D706F6E656E74735B695D2E73686F72745F6E616D652B222028222B636F6D706F6E656E74735B695D2E6C6F6E675F6E616D652B222922293B0D0A20202020202020207D0D0A2020202020202020617065782E'; -wwv_flow_api.g_varchar2_table(24) := '6A5175657279282223222B6F70742E726567696F6E4964292E74726967676572282261646472657373222C207B6D61703A6F70742E6D61702C20726573756C743A726573756C74735B305D7D293B0D0A0909097D20656C7365207B0D0A0909090977696E'; -wwv_flow_api.g_varchar2_table(25) := '646F772E616C6572742827496E73756666696369656E7420726573756C747320666F756E6427293B0D0A0909097D0D0A09097D20656C73652069662028737461747573203D3D3D20676F6F676C652E6D6170732E47656F636F6465725374617475732E5A'; -wwv_flow_api.g_varchar2_table(26) := '45524F5F524553554C545329207B0D0A09090977696E646F772E616C65727428224E6F20726573756C747320666F756E6422293B0D0A09097D20656C7365207B0D0A09090977696E646F772E616C657274282747656F636F646572206661696C65642064'; -wwv_flow_api.g_varchar2_table(27) := '756520746F3A2027202B20737461747573293B0D0A09097D0D0A097D293B0D0A7D2C0D0A0D0A696E6974203A2066756E6374696F6E20286F707429207B0D0A2020617065782E6465627567282273696D706C656D61702E696E697422293B0D0A09766172'; -wwv_flow_api.g_varchar2_table(28) := '206D794F7074696F6E73203D207B0D0A09097A6F6F6D3A206F70742E696E69745A6F6F6D2C0D0A090963656E7465723A206E657720676F6F676C652E6D6170732E4C61744C6E67286F70742E696E69744C61742C6F70742E696E69744C6E67292C0D0A09'; -wwv_flow_api.g_varchar2_table(29) := '096D61705479706549643A20676F6F676C652E6D6170732E4D61705479706549642E524F41444D41500D0A097D3B0D0A096F70742E6D6170203D206E657720676F6F676C652E6D6170732E4D617028646F63756D656E742E676574456C656D656E744279'; -wwv_flow_api.g_varchar2_table(30) := '4964286F70742E636F6E7461696E6572292C6D794F7074696F6E73293B0D0A09696620286F70742E6D61707374796C6529207B0D0A09096F70742E6D61702E7365744F7074696F6E73287B7374796C65733A206F70742E6D61707374796C657D293B0D0A'; -wwv_flow_api.g_varchar2_table(31) := '097D0D0A2020696620286F70742E726561646F6E6C7929207B0D0A202020202F2F64697361626C65207A6F6F6D2F70616E20696620726561646F6E6C790D0A202020206F70742E6D61702E7365744F7074696F6E73287B0D0A2020202020202064697361'; -wwv_flow_api.g_varchar2_table(32) := '626C6544656661756C7455493A20747275650D0A2020202020202C647261676761626C653A206F70742E70616E0D0A2020202020202C7A6F6F6D436F6E74726F6C3A206F70742E7A6F6F6D0D0A2020202020202C7363726F6C6C776865656C3A206F7074'; -wwv_flow_api.g_varchar2_table(33) := '2E7A6F6F6D0D0A2020202020202C64697361626C65446F75626C65436C69636B5A6F6F6D3A2021286F70742E7A6F6F6D290D0A2020202020202C6765737475726548616E646C696E673A206F70742E6765737475726548616E646C696E670D0A20202020'; -wwv_flow_api.g_varchar2_table(34) := '7D293B0D0A20207D20656C7365207B0D0A202020206F70742E6D61702E7365744F7074696F6E73287B0D0A20202020202020647261676761626C653A206F70742E70616E0D0A2020202020202C7A6F6F6D436F6E74726F6C3A206F70742E7A6F6F6D0D0A'; -wwv_flow_api.g_varchar2_table(35) := '2020202020202C7363726F6C6C776865656C3A206F70742E7A6F6F6D0D0A2020202020202C64697361626C65446F75626C65436C69636B5A6F6F6D3A2021286F70742E7A6F6F6D290D0A2020202020202C6765737475726548616E646C696E673A206F70'; -wwv_flow_api.g_varchar2_table(36) := '742E6765737475726548616E646C696E670D0A202020207D293B0D0A20207D0D0A09696620286F70742E73796E634974656D213D3D222229207B0D0A09097661722076616C203D202476286F70742E73796E634974656D293B0D0A09096966202876616C'; -wwv_flow_api.g_varchar2_table(37) := '213D3D6E756C6C2026262076616C2E696E6465784F6628222C2229203E202D3129207B0D0A09090976617220617272203D2076616C2E73706C697428222C22293B0D0A09090973696D706C656D61702E7365744D61726B6572286F70742C6172725B305D'; -wwv_flow_api.g_varchar2_table(38) := '2C6172725B315D293B0D0A09097D0D0A090924282223222B6F70742E73796E634974656D292E6368616E67652866756E6374696F6E28297B200D0A090909766172206C61746C6E67203D20746869732E76616C75653B0D0A090909696620286C61746C6E'; -wwv_flow_api.g_varchar2_table(39) := '67213D3D6E756C6C202626206C61746C6E67213D3D756E646566696E6564202626206C61746C6E672E696E6465784F6628222C2229203E202D3129207B0D0A0909090976617220617272203D206C61746C6E672E73706C697428222C22293B0D0A090909'; -wwv_flow_api.g_varchar2_table(40) := '0973696D706C656D61702E7365744D61726B6572286F70742C6172725B305D2C6172725B315D293B0D0A0909097D202020200D0A09097D293B0D0A097D0D0A09696620286F70742E616464726573734974656D213D3D222229207B0D0A09096F70742E67'; -wwv_flow_api.g_varchar2_table(41) := '656F636F646572203D206E657720676F6F676C652E6D6170732E47656F636F6465723B0D0A097D0D0A202069662028216F70742E726561646F6E6C7929207B0D0A20202020676F6F676C652E6D6170732E6576656E742E6164644C697374656E6572286F'; -wwv_flow_api.g_varchar2_table(42) := '70742E6D61702C2022636C69636B222C2066756E6374696F6E20286576656E7429207B0D0A202020202020766172206C6174203D206576656E742E6C61744C6E672E6C617428290D0A2020202020202020202C6C6E67203D206576656E742E6C61744C6E'; -wwv_flow_api.g_varchar2_table(43) := '672E6C6E6728293B0D0A20202020202073696D706C656D61702E7365744D61726B6572286F70742C6C61742C6C6E67293B0D0A202020202020696620286F70742E73796E634974656D213D3D222229207B0D0A20202020202020202473286F70742E7379'; -wwv_flow_api.g_varchar2_table(44) := '6E634974656D2C6C61742B222C222B6C6E67293B0D0A2020202020207D0D0A202020202020696620286F70742E616464726573734974656D213D3D222229207B0D0A202020202020202073696D706C656D61702E67657441646472657373286F70742C6C'; -wwv_flow_api.g_varchar2_table(45) := '61742C6C6E67293B0D0A2020202020207D0D0A202020202020617065782E6A5175657279282223222B6F70742E726567696F6E4964292E7472696767657228226D6170636C69636B222C207B6D61703A6F70742E6D61702C206C61743A6C61742C206C6E'; -wwv_flow_api.g_varchar2_table(46) := '673A6C6E677D293B0D0A202020207D293B0D0A20207D0D0A09696620286F70742E67656F636F64654974656D213D222229207B0D0A09097661722067656F636F646572203D206E657720676F6F676C652E6D6170732E47656F636F64657228293B0D0A09'; -wwv_flow_api.g_varchar2_table(47) := '0924282223222B6F70742E67656F636F64654974656D292E6368616E67652866756E6374696F6E28297B0D0A09090973696D706C656D61702E67656F636F6465286F70742C67656F636F646572293B0D0A09097D293B0D0A097D0D0A09696620286F7074'; -wwv_flow_api.g_varchar2_table(48) := '2E67656F6C6F6361746529207B0D0A0909696620286E6176696761746F722E67656F6C6F636174696F6E29207B0D0A090909617065782E6465627567286F70742E726567696F6E49642B222067656F6C6F6361746522293B0D0A0909096E617669676174'; -wwv_flow_api.g_varchar2_table(49) := '6F722E67656F6C6F636174696F6E2E67657443757272656E74506F736974696F6E2866756E6374696F6E28706F736974696F6E29207B0D0A0909090976617220706F73203D207B0D0A09090909096C61743A20706F736974696F6E2E636F6F7264732E6C'; -wwv_flow_api.g_varchar2_table(50) := '617469747564652C0D0A09090909096C6E673A20706F736974696F6E2E636F6F7264732E6C6F6E6769747564650D0A090909097D3B0D0A090909096F70742E6D61702E70616E546F28706F73293B0D0A09090909696620286F70742E67656F6C6F636174'; -wwv_flow_api.g_varchar2_table(51) := '655A6F6F6D29207B0D0A0909090920206F70742E6D61702E7365745A6F6F6D286F70742E67656F6C6F636174655A6F6F6D293B0D0A090909097D0D0A2020202020202020696620286F70742E73796E634974656D213D3D222229207B0D0A202020202020'; -wwv_flow_api.g_varchar2_table(52) := '202020202473286F70742E73796E634974656D2C706F732E6C61742B222C222B706F732E6C6E67293B0D0A20202020202020207D0D0A2020202020202020696620286F70742E616464726573734974656D213D3D222229207B0D0A202020202020202020'; -wwv_flow_api.g_varchar2_table(53) := '2073696D706C656D61702E67657441646472657373286F70742C706F732E6C61742C706F732E6C6E67293B0D0A20202020202020207D0D0A09090909617065782E6A5175657279282223222B6F70742E726567696F6E4964292E74726967676572282267'; -wwv_flow_api.g_varchar2_table(54) := '656F6C6F63617465222C207B6D61703A6F70742E6D61702C206C61743A706F732E6C61742C206C6E673A706F732E6C6E677D293B0D0A0909097D293B0D0A09097D20656C7365207B0D0A090909617065782E6465627567286F70742E726567696F6E4964'; -wwv_flow_api.g_varchar2_table(55) := '2B222062726F7773657220646F6573206E6F7420737570706F72742067656F6C6F636174696F6E22293B0D0A09097D0D0A097D0D0A09617065782E6A5175657279282223222B6F70742E726567696F6E4964292E7472696767657228226D61706C6F6164'; -wwv_flow_api.g_varchar2_table(56) := '6564222C207B6D61703A6F70742E6D61707D293B0D0A7D0D0A0D0A7D'; +wwv_flow_api.g_varchar2_table(1) := '7661722073696D706C656D6170203D207B0A2F2F204A4B36342053696D706C6520476F6F676C65204D61702076302E360A0A67656F636F6465203A2066756E6374696F6E20286F70742C67656F636F64657229207B0A2020617065782E64656275672822'; +wwv_flow_api.g_varchar2_table(2) := '73696D706C656D61702E67656F636F646522293B0A202067656F636F6465722E67656F636F6465280A202020207B616464726573733A202476286F70742E67656F636F64654974656D290A202020202C636F6D706F6E656E745265737472696374696F6E'; +wwv_flow_api.g_varchar2_table(3) := '733A206F70742E636F756E747279213D3D22223F7B636F756E7472793A6F70742E636F756E7472797D3A7B7D0A20207D2C2066756E6374696F6E28726573756C74732C2073746174757329207B0A2020202069662028737461747573203D3D20676F6F67'; +wwv_flow_api.g_varchar2_table(4) := '6C652E6D6170732E47656F636F6465725374617475732E4F4B29207B0A202020202020617065782E6465627567286F70742E726567696F6E49642B222067656F636F6465206F6B22293B0A20202020202076617220706F73203D20726573756C74735B30'; +wwv_flow_api.g_varchar2_table(5) := '5D2E67656F6D657472792E6C6F636174696F6E3B0A20202020202073696D706C656D61702E7365744D61726B6572286F70742C706F732E6C617428292C706F732E6C6E672829290A202020202020696620286F70742E73796E634974656D213D3D222229'; +wwv_flow_api.g_varchar2_table(6) := '207B0A20202020202020202473286F70742E73796E634974656D2C706F732E6C617428292B222C222B706F732E6C6E672829293B0A2020202020207D0A202020207D20656C7365207B0A202020202020617065782E6465627567286F70742E726567696F'; +wwv_flow_api.g_varchar2_table(7) := '6E49642B222067656F636F64652077617320756E7375636365737366756C20666F722074686520666F6C6C6F77696E6720726561736F6E3A20222B737461747573293B0A202020207D0A20207D293B0A7D2C0A0A7365744D61726B6572203A2066756E63'; +wwv_flow_api.g_varchar2_table(8) := '74696F6E20286F70742C6C61742C6C6E6729207B0A2020617065782E6465627567282273696D706C656D61702E7365744D61726B657222293B0A2020696620286C6174213D3D6E756C6C202626206C6E67213D3D6E756C6C29207B0A2020202076617220'; +wwv_flow_api.g_varchar2_table(9) := '6F6C64706F73203D206F70742E6D61726B65723F6F70742E6D61726B65722E676574506F736974696F6E28293A6E657720676F6F676C652E6D6170732E4C61744C6E6728302C30293B0A20202020696620286C61743D3D6F6C64706F732E6C6174282920'; +wwv_flow_api.g_varchar2_table(10) := '2626206C6E673D3D6F6C64706F732E6C6E67282929207B0A202020202020617065782E6465627567286F70742E726567696F6E49642B22206D61726B6572206E6F74206368616E67656422293B0A202020207D20656C7365207B0A202020202020617065'; +wwv_flow_api.g_varchar2_table(11) := '782E6465627567286F70742E726567696F6E49642B22206D6F7665206D61726B657222293B0A20202020202076617220706F73203D206E657720676F6F676C652E6D6170732E4C61744C6E67286C61742C6C6E67293B0A2020202020206F70742E6D6170'; +wwv_flow_api.g_varchar2_table(12) := '2E70616E546F28706F73293B0A202020202020696620286F70742E6D61726B65725A6F6F6D29207B0A20202020202020206F70742E6D61702E7365745A6F6F6D286F70742E6D61726B65725A6F6F6D293B0A2020202020207D0A20202020202069662028'; +wwv_flow_api.g_varchar2_table(13) := '6F70742E6D61726B657229207B0A20202020202020206F70742E6D61726B65722E7365744D6170286F70742E6D6170293B0A20202020202020206F70742E6D61726B65722E736574506F736974696F6E28706F73293B0A2020202020207D20656C736520'; +wwv_flow_api.g_varchar2_table(14) := '7B0A20202020202020206F70742E6D61726B6572203D206E657720676F6F676C652E6D6170732E4D61726B6572287B6D61703A206F70742E6D61702C20706F736974696F6E3A20706F732C2069636F6E3A206F70742E69636F6E7D293B0A202020202020'; +wwv_flow_api.g_varchar2_table(15) := '7D0A202020207D0A20207D20656C736520696620286F70742E6D61726B657229207B0A20202020617065782E6465627567286F70742E726567696F6E49642B222072656D6F7665206D61726B657222293B0A202020206F70742E6D61726B65722E736574'; +wwv_flow_api.g_varchar2_table(16) := '4D6170286E756C6C293B0A20207D0A7D2C0A0A67657441646472657373203A2066756E6374696F6E20286F70742C6C61742C6C6E6729207B0A2020617065782E6465627567282273696D706C656D61702E6765744164647265737322293B0A0976617220'; +wwv_flow_api.g_varchar2_table(17) := '6C61746C6E67203D207B6C61743A206C61742C206C6E673A206C6E677D3B0A096F70742E67656F636F6465722E67656F636F6465287B276C6F636174696F6E273A206C61746C6E677D2C2066756E6374696F6E28726573756C74732C2073746174757329'; +wwv_flow_api.g_varchar2_table(18) := '207B0A090969662028737461747573203D3D3D20676F6F676C652E6D6170732E47656F636F6465725374617475732E4F4B29207B0A090909666F722028693D303B20693C726573756C74732E6C656E6774683B20692B2B29207B0A09090909617065782E'; +wwv_flow_api.g_varchar2_table(19) := '6465627567286F70742E726567696F6E49642B2220726573756C745B222B692B225D3D222B726573756C74735B695D2E666F726D61747465645F616464726573732B222028222B726573756C74735B695D2E74797065732E6A6F696E28292B222922293B'; +wwv_flow_api.g_varchar2_table(20) := '0A0909097D0A09090969662028726573756C74735B305D29207B0A090909092473286F70742E616464726573734974656D2C726573756C74735B305D2E666F726D61747465645F61646472657373293B0A202020202020202076617220636F6D706F6E65'; +wwv_flow_api.g_varchar2_table(21) := '6E7473203D20726573756C74735B305D2E616464726573735F636F6D706F6E656E74733B0A2020202020202020666F722028693D303B20693C636F6D706F6E656E74732E6C656E6774683B20692B2B29207B0A20202020202020202020617065782E6465'; +wwv_flow_api.g_varchar2_table(22) := '627567286F70742E726567696F6E49642B2220726573756C745B305D20222B636F6D706F6E656E74735B695D2E74797065732B223D222B636F6D706F6E656E74735B695D2E73686F72745F6E616D652B222028222B636F6D706F6E656E74735B695D2E6C'; +wwv_flow_api.g_varchar2_table(23) := '6F6E675F6E616D652B222922293B0A20202020202020207D0A2020202020202020617065782E6A5175657279282223222B6F70742E726567696F6E4964292E74726967676572282261646472657373222C207B6D61703A6F70742E6D61702C2072657375'; +wwv_flow_api.g_varchar2_table(24) := '6C743A726573756C74735B305D7D293B0A0909097D20656C7365207B0A0909090977696E646F772E616C6572742827496E73756666696369656E7420726573756C747320666F756E6427293B0A0909097D0A09097D20656C736520696620287374617475'; +wwv_flow_api.g_varchar2_table(25) := '73203D3D3D20676F6F676C652E6D6170732E47656F636F6465725374617475732E5A45524F5F524553554C545329207B0A09090977696E646F772E616C65727428224E6F20726573756C747320666F756E6422293B0A09097D20656C7365207B0A090909'; +wwv_flow_api.g_varchar2_table(26) := '77696E646F772E616C657274282747656F636F646572206661696C65642064756520746F3A2027202B20737461747573293B0A09097D0A097D293B0A7D2C0A0A696E6974203A2066756E6374696F6E20286F707429207B0A2020617065782E6465627567'; +wwv_flow_api.g_varchar2_table(27) := '282273696D706C656D61702E696E697422293B0A09766172206D794F7074696F6E73203D207B0A09097A6F6F6D3A206F70742E696E69745A6F6F6D2C0A090963656E7465723A206E657720676F6F676C652E6D6170732E4C61744C6E67286F70742E696E'; +wwv_flow_api.g_varchar2_table(28) := '69744C61742C6F70742E696E69744C6E67292C0A09096D61705479706549643A20676F6F676C652E6D6170732E4D61705479706549642E524F41444D41500A097D3B0A096F70742E6D6170203D206E657720676F6F676C652E6D6170732E4D617028646F'; +wwv_flow_api.g_varchar2_table(29) := '63756D656E742E676574456C656D656E7442794964286F70742E636F6E7461696E6572292C6D794F7074696F6E73293B0A09696620286F70742E6D61707374796C6529207B0A09096F70742E6D61702E7365744F7074696F6E73287B7374796C65733A20'; +wwv_flow_api.g_varchar2_table(30) := '6F70742E6D61707374796C657D293B0A097D0A2020696620286F70742E726561646F6E6C7929207B0A202020202F2F64697361626C65207A6F6F6D2F70616E20696620726561646F6E6C790A202020206F70742E6D61702E7365744F7074696F6E73287B'; +wwv_flow_api.g_varchar2_table(31) := '0A2020202020202064697361626C6544656661756C7455493A20747275650A2020202020202C647261676761626C653A206F70742E70616E0A2020202020202C7A6F6F6D436F6E74726F6C3A206F70742E7A6F6F6D0A2020202020202C7363726F6C6C77'; +wwv_flow_api.g_varchar2_table(32) := '6865656C3A206F70742E7A6F6F6D0A2020202020202C64697361626C65446F75626C65436C69636B5A6F6F6D3A2021286F70742E7A6F6F6D290A2020202020202C6765737475726548616E646C696E673A206F70742E6765737475726548616E646C696E'; +wwv_flow_api.g_varchar2_table(33) := '670A202020207D293B0A20207D20656C7365207B0A202020206F70742E6D61702E7365744F7074696F6E73287B0A20202020202020647261676761626C653A206F70742E70616E0A2020202020202C7A6F6F6D436F6E74726F6C3A206F70742E7A6F6F6D'; +wwv_flow_api.g_varchar2_table(34) := '0A2020202020202C7363726F6C6C776865656C3A206F70742E7A6F6F6D0A2020202020202C64697361626C65446F75626C65436C69636B5A6F6F6D3A2021286F70742E7A6F6F6D290A2020202020202C6765737475726548616E646C696E673A206F7074'; +wwv_flow_api.g_varchar2_table(35) := '2E6765737475726548616E646C696E670A202020207D293B0A20207D0A09696620286F70742E73796E634974656D213D3D222229207B0A09097661722076616C203D202476286F70742E73796E634974656D293B0A09096966202876616C213D3D6E756C'; +wwv_flow_api.g_varchar2_table(36) := '6C2026262076616C2E696E6465784F6628222C2229203E202D3129207B0A09090976617220617272203D2076616C2E73706C697428222C22293B0A09090973696D706C656D61702E7365744D61726B6572286F70742C6172725B305D2C6172725B315D29'; +wwv_flow_api.g_varchar2_table(37) := '3B0A09097D0A090924282223222B6F70742E73796E634974656D292E6368616E67652866756E6374696F6E28297B200A090909766172206C61746C6E67203D20746869732E76616C75653B0A090909696620286C61746C6E67213D3D6E756C6C20262620'; +wwv_flow_api.g_varchar2_table(38) := '6C61746C6E67213D3D756E646566696E6564202626206C61746C6E672E696E6465784F6628222C2229203E202D3129207B0A0909090976617220617272203D206C61746C6E672E73706C697428222C22293B0A0909090973696D706C656D61702E736574'; +wwv_flow_api.g_varchar2_table(39) := '4D61726B6572286F70742C6172725B305D2C6172725B315D293B0A0909097D202020200A09097D293B0A097D0A09696620286F70742E616464726573734974656D213D3D222229207B0A09096F70742E67656F636F646572203D206E657720676F6F676C'; +wwv_flow_api.g_varchar2_table(40) := '652E6D6170732E47656F636F6465723B0A097D0A202069662028216F70742E726561646F6E6C7929207B0A20202020676F6F676C652E6D6170732E6576656E742E6164644C697374656E6572286F70742E6D61702C2022636C69636B222C2066756E6374'; +wwv_flow_api.g_varchar2_table(41) := '696F6E20286576656E7429207B0A202020202020766172206C6174203D206576656E742E6C61744C6E672E6C617428290A2020202020202020202C6C6E67203D206576656E742E6C61744C6E672E6C6E6728293B0A20202020202073696D706C656D6170'; +wwv_flow_api.g_varchar2_table(42) := '2E7365744D61726B6572286F70742C6C61742C6C6E67293B0A202020202020696620286F70742E73796E634974656D213D3D222229207B0A20202020202020202473286F70742E73796E634974656D2C6C61742B222C222B6C6E67293B0A202020202020'; +wwv_flow_api.g_varchar2_table(43) := '7D0A202020202020696620286F70742E616464726573734974656D213D3D222229207B0A202020202020202073696D706C656D61702E67657441646472657373286F70742C6C61742C6C6E67293B0A2020202020207D0A202020202020617065782E6A51'; +wwv_flow_api.g_varchar2_table(44) := '75657279282223222B6F70742E726567696F6E4964292E7472696767657228226D6170636C69636B222C207B6D61703A6F70742E6D61702C206C61743A6C61742C206C6E673A6C6E677D293B0A202020207D293B0A20207D0A09696620286F70742E6765'; +wwv_flow_api.g_varchar2_table(45) := '6F636F64654974656D213D222229207B0A09097661722067656F636F646572203D206E657720676F6F676C652E6D6170732E47656F636F64657228293B0A090924282223222B6F70742E67656F636F64654974656D292E6368616E67652866756E637469'; +wwv_flow_api.g_varchar2_table(46) := '6F6E28297B0A09090973696D706C656D61702E67656F636F6465286F70742C67656F636F646572293B0A09097D293B0A097D0A09696620286F70742E67656F6C6F6361746529207B0A0909696620286E6176696761746F722E67656F6C6F636174696F6E'; +wwv_flow_api.g_varchar2_table(47) := '29207B0A090909617065782E6465627567286F70742E726567696F6E49642B222067656F6C6F6361746522293B0A0909096E6176696761746F722E67656F6C6F636174696F6E2E67657443757272656E74506F736974696F6E2866756E6374696F6E2870'; +wwv_flow_api.g_varchar2_table(48) := '6F736974696F6E29207B0A0909090976617220706F73203D207B0A09090909096C61743A20706F736974696F6E2E636F6F7264732E6C617469747564652C0A09090909096C6E673A20706F736974696F6E2E636F6F7264732E6C6F6E6769747564650A09'; +wwv_flow_api.g_varchar2_table(49) := '0909097D3B0A090909096F70742E6D61702E70616E546F28706F73293B0A09090909696620286F70742E67656F6C6F636174655A6F6F6D29207B0A0909090920206F70742E6D61702E7365745A6F6F6D286F70742E67656F6C6F636174655A6F6F6D293B'; +wwv_flow_api.g_varchar2_table(50) := '0A090909097D0A2020202020202020696620286F70742E73796E634974656D213D3D222229207B0A202020202020202020202473286F70742E73796E634974656D2C706F732E6C61742B222C222B706F732E6C6E67293B0A20202020202020207D0A2020'; +wwv_flow_api.g_varchar2_table(51) := '202020202020696620286F70742E616464726573734974656D213D3D222229207B0A2020202020202020202073696D706C656D61702E67657441646472657373286F70742C706F732E6C61742C706F732E6C6E67293B0A20202020202020207D0A090909'; +wwv_flow_api.g_varchar2_table(52) := '09617065782E6A5175657279282223222B6F70742E726567696F6E4964292E74726967676572282267656F6C6F63617465222C207B6D61703A6F70742E6D61702C206C61743A706F732E6C61742C206C6E673A706F732E6C6E677D293B0A0909097D293B'; +wwv_flow_api.g_varchar2_table(53) := '0A09097D20656C7365207B0A090909617065782E6465627567286F70742E726567696F6E49642B222062726F7773657220646F6573206E6F7420737570706F72742067656F6C6F636174696F6E22293B0A09097D0A097D0A09617065782E6A5175657279'; +wwv_flow_api.g_varchar2_table(54) := '282223222B6F70742E726567696F6E4964292E7472696767657228226D61706C6F61646564222C207B6D61703A6F70742E6D61707D293B0A7D0A0A7D'; null; end; / begin wwv_flow_api.create_plugin_file( - p_id=>wwv_flow_api.id(84100026180778296) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(182851984227752112) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_file_name=>'simplemap.js' ,p_mime_type=>'text/javascript' ,p_file_charset=>'utf-8' @@ -8189,8 +8209,8 @@ end; / begin wwv_flow_api.create_plugin_file( - p_id=>wwv_flow_api.id(84104929671016582) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(182856887717990398) +,p_plugin_id=>wwv_flow_api.id(550541452409009734) ,p_file_name=>'simplemap.min.js' ,p_mime_type=>'text/javascript' ,p_file_charset=>'utf-8' @@ -8238,6 +8258,7 @@ wwv_flow_api.create_page( ,p_step_sub_title_type=>'TEXT_WITH_SUBSTITUTIONS' ,p_first_item=>'NO_FIRST_ITEM' ,p_page_template_options=>'#DEFAULT#' +,p_dialog_chained=>'Y' ,p_overwrite_navigation_list=>'N' ,p_page_is_public_y_n=>'N' ,p_cache_mode=>'NOCACHE' @@ -8251,8 +8272,8 @@ wwv_flow_api.create_page( 'A geocode result will be retrieved and the various address components copied into the display items on the page.', '

', 'The Map Style is "Light Dream".')) -,p_last_updated_by=>'JEFF' -,p_last_upd_yyyymmddhh24miss=>'20181008190037' +,p_last_updated_by=>'EZ002363' +,p_last_upd_yyyymmddhh24miss=>'20200422094131' ); wwv_flow_api.create_page_plug( p_id=>wwv_flow_api.id(24993451701044461852) @@ -8286,7 +8307,6 @@ wwv_flow_api.create_page_plug( ,p_attribute_03=>'350' ,p_attribute_04=>'P1_LAT_LONG' ,p_attribute_05=>'16' -,p_attribute_07=>'N' ,p_attribute_10=>'[{"featureType":"landscape","stylers":[{"hue":"#FFBB00"},{"saturation":43.400000000000006},{"lightness":37.599999999999994},{"gamma":1}]},{"featureType":"road.highway","stylers":[{"hue":"#FFC200"},{"saturation":-61.8},{"lightness":45.599999999999994}' ||',{"gamma":1}]},{"featureType":"road.arterial","stylers":[{"hue":"#FF0300"},{"saturation":-100},{"lightness":51.19999999999999},{"gamma":1}]},{"featureType":"road.local","stylers":[{"hue":"#FF0300"},{"saturation":-100},{"lightness":52},{"gamma":1}]},{' ||'"featureType":"water","stylers":[{"hue":"#0078FF"},{"saturation":-13.200000000000003},{"lightness":2.4000000000000057},{"gamma":1}]},{"featureType":"poi","stylers":[{"hue":"#00FF6A"},{"saturation":-1.0989010989011234},{"lightness":11.200000000000017}' @@ -8446,6 +8466,7 @@ wwv_flow_api.create_page_da_action( ,p_execute_on_page_init=>'N' ,p_action=>'NATIVE_JAVASCRIPT_CODE' ,p_attribute_01=>'$s("P1_INFO", "You clicked at: " + this.data.lat + "," + this.data.lng);' +,p_stop_execution_on_error=>'Y' ); wwv_flow_api.create_page_da_event( p_id=>wwv_flow_api.id(134723656491859933) @@ -8485,6 +8506,7 @@ wwv_flow_api.create_page_da_action( ' case "postal_code" : $s("P1_POSTAL_CODE", components[i].short_name); break;', ' }', '}')) +,p_stop_execution_on_error=>'Y' ); end; / @@ -8500,6 +8522,7 @@ wwv_flow_api.create_page( ,p_step_sub_title_type=>'TEXT_WITH_SUBSTITUTIONS' ,p_first_item=>'NO_FIRST_ITEM' ,p_page_template_options=>'#DEFAULT#' +,p_dialog_chained=>'Y' ,p_overwrite_navigation_list=>'N' ,p_page_is_public_y_n=>'N' ,p_cache_mode=>'NOCACHE' @@ -8533,8 +8556,8 @@ wwv_flow_api.create_page( ' }', ']', '')) -,p_last_updated_by=>'JEFF' -,p_last_upd_yyyymmddhh24miss=>'20181008183416' +,p_last_updated_by=>'EZ002363' +,p_last_upd_yyyymmddhh24miss=>'20200422094131' ); wwv_flow_api.create_page_plug( p_id=>wwv_flow_api.id(30097686398806071537) @@ -8555,7 +8578,6 @@ wwv_flow_api.create_page_plug( ,p_attribute_03=>'350' ,p_attribute_04=>'P2_LAT_LONG' ,p_attribute_05=>'16' -,p_attribute_07=>'N' ,p_attribute_10=>wwv_flow_utilities.join(wwv_flow_t_varchar2( '[', ' {', @@ -8642,6 +8664,7 @@ wwv_flow_api.create_page_da_action( '});', 'apex.debug("show info window on map at marker");', 'opt_map.iw.open(this.data.map, opt_map.marker);')) +,p_stop_execution_on_error=>'Y' ); end; / @@ -8657,6 +8680,7 @@ wwv_flow_api.create_page( ,p_step_sub_title_type=>'TEXT_WITH_SUBSTITUTIONS' ,p_first_item=>'NO_FIRST_ITEM' ,p_page_template_options=>'#DEFAULT#' +,p_dialog_chained=>'Y' ,p_overwrite_navigation_list=>'N' ,p_page_is_public_y_n=>'N' ,p_cache_mode=>'NOCACHE' @@ -8664,8 +8688,8 @@ wwv_flow_api.create_page( 'This map will ask your browser for your location. If this is successful, the map will zoom and pan to that location, plot it on the map, and then attempt a reverse geocode to get the address.', '

', 'Note: the demo app will not store or transmit this information anywhere.')) -,p_last_updated_by=>'JEFF' -,p_last_upd_yyyymmddhh24miss=>'20181008192545' +,p_last_updated_by=>'EZ002363' +,p_last_upd_yyyymmddhh24miss=>'20200422094131' ); wwv_flow_api.create_page_plug( p_id=>wwv_flow_api.id(149994816758213832) @@ -8686,7 +8710,6 @@ wwv_flow_api.create_page_plug( ,p_attribute_03=>'350' ,p_attribute_04=>'P3_LAT_LONG' ,p_attribute_05=>'16' -,p_attribute_07=>'N' ,p_attribute_11=>'P3_ADDRESS' ,p_attribute_12=>'Y' ,p_attribute_13=>'13' @@ -8883,6 +8906,7 @@ wwv_flow_api.create_page_da_action( ' case "postal_code" : $s("P3_POSTAL_CODE", components[i].short_name); break;', ' }', '}')) +,p_stop_execution_on_error=>'Y' ); wwv_flow_api.create_page_da_event( p_id=>wwv_flow_api.id(147430864761327129) @@ -8901,6 +8925,7 @@ wwv_flow_api.create_page_da_action( ,p_execute_on_page_init=>'N' ,p_action=>'NATIVE_JAVASCRIPT_CODE' ,p_attribute_01=>'$s("P3_INFO", "Geolocate says you are here: " + this.data.lat + "," + this.data.lng);' +,p_stop_execution_on_error=>'Y' ); end; / diff --git a/region_type_plugin_com_jk64_simple_google_map.sql b/region_type_plugin_com_jk64_simple_google_map.sql index d7a0f29..e22fca3 100644 --- a/region_type_plugin_com_jk64_simple_google_map.sql +++ b/region_type_plugin_com_jk64_simple_google_map.sql @@ -13,10 +13,10 @@ whenever sqlerror exit sql.sqlcode rollback begin wwv_flow_api.import_begin ( p_version_yyyy_mm_dd=>'2013.01.01' -,p_release=>'5.0.4.00.12' -,p_default_workspace_id=>20749515040658038 -,p_default_application_id=>76577 -,p_default_owner=>'SAMPLE' +,p_release=>'5.0.3.00.03' +,p_default_workspace_id=>2216419243751626 +,p_default_application_id=>101 +,p_default_owner=>'XXSPS' ); end; / @@ -28,15 +28,47 @@ end; prompt --application/shared_components/plugins/region_type/com_jk64_simple_google_map begin wwv_flow_api.create_plugin( - p_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(501163678790508848) ,p_plugin_type=>'REGION TYPE' ,p_name=>'COM.JK64.SIMPLE_GOOGLE_MAP' ,p_display_name=>'JK64 Simple Google Map' ,p_supported_ui_types=>'DESKTOP:JQM_SMARTPHONE' ,p_plsql_code=>wwv_flow_utilities.join(wwv_flow_t_varchar2( -'-- JK64 Simple Google Map v0.7', +'/**********************************************************', +'create or replace package jk64simplemap_pkg as', +'-- jk64 JK64 Simple Google Map v0.8 Apr 2020', '', -'g_tochar_format constant varchar2(100) := ''fm99999999999990.099999999999999999999999999999'';', +'function render (', +' p_region in apex_plugin.t_region,', +' p_plugin in apex_plugin.t_plugin,', +' p_is_printer_friendly in boolean )', +'return apex_plugin.t_region_render_result;', +'', +'end jk64simplemap_pkg;', +'/', +'', +'create or replace package body jk64simplemap_pkg as', +'**********************************************************/', +'-- jk64 JK64 Simple Google Map v0.8 Apr 2020', +'', +'-- format to use to convert a lat/lng number to string for passing via javascript', +'-- 0.0000001 is enough precision for the practical limit of commercial surveying, error up to +/- 11.132 mm at the equator', +'g_tochar_format constant varchar2(100) := ''fm990.0999999'';', +'', +'subtype plugin_attr is varchar2(32767);', +'', +'procedure parse_latlng (p_val in varchar2, p_label in varchar2, p_lat out number, p_lng out number) is', +' delim_pos number;', +'begin', +' -- allow space as the delimiter; this should be used in locales which use comma (,) as decimal separator', +' if instr(trim(p_val),'' '') > 0 then', +' delim_pos := instr(p_val,'' '');', +' else', +' delim_pos := instr(p_val,'','');', +' end if;', +' p_lat := apex_plugin_util.get_attribute_as_number(substr(p_val,1,delim_pos-1), p_label || '' latitude'');', +' p_lng := apex_plugin_util.get_attribute_as_number(substr(p_val,delim_pos+1), p_label || '' longitude'');', +'end parse_latlng;', '', 'function render (', ' p_region in apex_plugin.t_region,', @@ -44,13 +76,11 @@ wwv_flow_api.create_plugin( ' p_is_printer_friendly in boolean )', 'return apex_plugin.t_region_render_result', 'as', -' subtype plugin_attr is varchar2(32767);', '', ' -- Variables', ' l_result apex_plugin.t_region_render_result;', ' l_script varchar2(32767);', ' l_region varchar2(100);', -' l_js_params varchar2(1000);', ' l_lat number;', ' l_lng number;', ' l_readonly varchar2(1000) := ''false'';', @@ -67,7 +97,7 @@ wwv_flow_api.create_plugin( ' l_item_name plugin_attr := p_region.attribute_04;', ' l_marker_zoom plugin_attr := p_region.attribute_05;', ' l_icon plugin_attr := p_region.attribute_06;', -' l_sign_in plugin_attr := p_region.attribute_07;', +' --[unused] plugin_attr := p_region.attribute_07;', ' l_geocode_item plugin_attr := p_region.attribute_08;', ' l_country plugin_attr := p_region.attribute_09;', ' l_mapstyle plugin_attr := p_region.attribute_10;', @@ -111,25 +141,20 @@ wwv_flow_api.create_plugin( ' raise_application_error(-20000, ''Pan attribute must evaluate to true or false.'');', ' end if;', ' end if;', -'', -' if l_sign_in = ''Y'' then', -' l_js_params := ''&''||''signed_in=true'';', -' end if;', ' ', ' apex_javascript.add_library', -' (p_name => ''js?key='' || l_api_key || l_js_params', -' ,p_directory => ''https://maps.googleapis.com/maps/api/''', -' ,p_skip_extension => true);', +' (p_name => ''js?key='' || l_api_key', +' ,p_directory => ''https://maps.googleapis.com/maps/api/''', +' ,p_skip_extension => true);', '', ' apex_javascript.add_library', ' (p_name => ''simplemap''', ' ,p_directory => p_plugin.file_prefix', ' ,p_check_to_add_minified => true);', ' ', -' l_lat := to_number(substr(l_latlong,1,instr(l_latlong,'','')-1));', -' l_lng := to_number(substr(l_latlong,instr(l_latlong,'','')+1));', -' ', -' l_gesture_handling := nvl(l_gesture_handling,''auto'');', +' if l_latlong is not null then', +' parse_latlng(l_latlong, p_label=>''Initial Map Position'', p_lat=>l_lat, p_lng=>l_lng);', +' end if;', ' ', ' l_region := case', ' when p_region.static_id is not null', @@ -162,7 +187,7 @@ wwv_flow_api.create_plugin( ',readonly:'' || l_readonly || ''', ',zoom:'' || l_zoom_enabled || ''', ',pan:'' || l_pan_enabled || ''', -',gestureHandling:"'' || l_gesture_handling || ''"', +',gestureHandling:"'' || nvl(l_gesture_handling,''auto'') || ''"', '};', 'function r_#REGION#(f){/in/.test(document.readyState)?setTimeout("r_#REGION#("+f+")",9):f()}', 'r_#REGION#(function(){simplemap.init(opt_#REGION#);});', @@ -173,21 +198,31 @@ wwv_flow_api.create_plugin( ' sys.htp.p(replace(l_script,''#REGION#'',l_region));', '', ' return l_result;', +'exception', +' when others then', +' apex_debug.error(sqlerrm);', +' apex_debug.message(dbms_utility.format_error_stack);', +' apex_debug.message(dbms_utility.format_call_stack);', +' raise;', 'end render;', -'')) +'', +'/**********************************************************', +'end jk64simplemap_pkg;', +'/', +'**********************************************************/')) ,p_render_function=>'render' ,p_substitute_attributes=>true ,p_subscribe_plugin_settings=>true ,p_help_text=>'Add a region of this type to your page and you have a map which the user can click to set a single Marker. If you set Synchronize with Item it will copy the lat,lng that the user clicks into that item; also, if the item is changed the map will move t' -||'he marker to the new location. If you set an Address item and your Google API Key, it will do a reverse geocode and put the first address result into it. You can also get the address clicked on via the "address" event whereby you can get each compone' -||'nt of an address (e.g. street number, road, locality, etc.) as separate strings.' -,p_version_identifier=>'0.7' +||'he marker to the new location. If you set an Address item, it will do a reverse geocode and put the first address result into it. You can also get the address clicked on via the "address" event whereby you can get each component of an address (e.g. s' +||'treet number, road, locality, etc.) as separate strings.' +,p_version_identifier=>'0.8' ,p_about_url=>'https://github.com/jeffreykemp/jk64-plugin-simplemap' -,p_files_version=>32 +,p_files_version=>34 ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(460954154970738655) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(510328339399211585) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'APPLICATION' ,p_attribute_sequence=>1 ,p_display_sequence=>10 @@ -198,8 +233,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'Google Maps API key is required. Refer: https://developers.google.com/maps/documentation/javascript/get-api-key#get-an-api-key' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(451819937752798136) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(501194122181271066) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>1 ,p_display_sequence=>10 @@ -213,8 +248,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'Set the latitude and longitude as a pair of numbers to be used to position the map on page load, if no pin coordinates have been provided by the page item.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(451799355861303403) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(501173540289776333) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>2 ,p_display_sequence=>20 @@ -228,8 +263,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'Set the initial map zoom level on page load, to be used if the page item has no coordinates to show.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(451800003562328963) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(501174187990801893) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>3 ,p_display_sequence=>30 @@ -243,8 +278,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'Set the desired height for the map region. Note: the map width will adjust to the maximum available space.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(453458313195674073) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(502832497624147003) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>4 ,p_display_sequence=>40 @@ -255,8 +290,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'Position of the marker will be retrieved from and stored in this item as a Lat,Long value.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(453462327972847251) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(502836512401320181) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>5 ,p_display_sequence=>50 @@ -269,8 +304,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'If a marker is set or moved, zoom the map to this level. Leave blank to make the map not zoom when the marker is moved.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(455728257328932389) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(505102441757405319) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>6 ,p_display_sequence=>60 @@ -295,21 +330,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'URL to the icon to show for the marker. Leave blank for the default red Google pin.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(460955230348744902) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) -,p_attribute_scope=>'COMPONENT' -,p_attribute_sequence=>7 -,p_display_sequence=>70 -,p_prompt=>'Enable Google Sign-In' -,p_attribute_type=>'CHECKBOX' -,p_is_required=>false -,p_default_value=>'N' -,p_is_translatable=>false -,p_help_text=>'Set to Yes to enable Google sign-in on the map.' -); -wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(460957626548832231) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(510331810977305161) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>8 ,p_display_sequence=>80 @@ -321,8 +343,8 @@ wwv_flow_api.create_plugin_attribute( ||' at the application level.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(460958382838835612) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(510332567267308542) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>9 ,p_display_sequence=>90 @@ -332,15 +354,15 @@ wwv_flow_api.create_plugin_attribute( ,p_display_length=>10 ,p_max_length=>2 ,p_is_translatable=>false -,p_depending_on_attribute_id=>wwv_flow_api.id(460957626548832231) +,p_depending_on_attribute_id=>wwv_flow_api.id(510331810977305161) ,p_depending_on_condition_type=>'NOT_NULL' ,p_text_case=>'UPPER' ,p_examples=>'AU' ,p_help_text=>'Leave blank to allow geocoding to find any place on earth. Set to country code (see https://developers.google.com/public-data/docs/canonical/countries_csv for valid values) to restrict geocoder to that country.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(386120024950259856) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(435494209378732786) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>10 ,p_display_sequence=>100 @@ -367,8 +389,8 @@ wwv_flow_api.create_plugin_attribute( 'Another way is to copy one from a site like https://snazzymaps.com/')) ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(235116258240312638) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(284490442668785568) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>11 ,p_display_sequence=>110 @@ -379,8 +401,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'Google API Key required. When the user clicks a point on the map, a Google Maps reverse geocode will be executed and the first result (usually the address) will be copied to the item you specify here.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(166127726872043700) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(215501911300516630) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>12 ,p_display_sequence=>120 @@ -392,8 +414,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'If Yes, on load the map will attempt to locate the user''s position and pan&zoom to that location (it might prompt the user for permission first).' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(166129328009114965) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(215503512437587895) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>13 ,p_display_sequence=>130 @@ -405,14 +427,14 @@ wwv_flow_api.create_plugin_attribute( ,p_max_length=>2 ,p_unit=>'(0-23)' ,p_is_translatable=>false -,p_depending_on_attribute_id=>wwv_flow_api.id(166127726872043700) +,p_depending_on_attribute_id=>wwv_flow_api.id(215501911300516630) ,p_depending_on_condition_type=>'EQUALS' ,p_depending_on_expression=>'Y' ,p_help_text=>'If geolocation is successful, pan map and zoom to this level.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(84098310226731587) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(133472494655204517) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>14 ,p_display_sequence=>140 @@ -428,8 +450,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'By default, this plugin allows the user to click the map to move the marker. To make the map "readonly" (i.e. disallow the user from moving the marker), set this to a PL/SQL expression that evaluates to TRUE.' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(136485801003815099) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(185859985432288029) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>15 ,p_display_sequence=>150 @@ -445,8 +467,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'If this evaluates to true, the Zoom controls will be enabled. If no expression is supplied, the default is true (enabled).' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(136486940693818121) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(185861125122291051) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>16 ,p_display_sequence=>160 @@ -462,8 +484,8 @@ wwv_flow_api.create_plugin_attribute( ,p_help_text=>'If this evaluates to true, the Pan controls will be enabled. If no expression is supplied, the default is true (enabled).' ); wwv_flow_api.create_plugin_attribute( - p_id=>wwv_flow_api.id(136492766356927488) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(185866950785400418) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_attribute_scope=>'COMPONENT' ,p_attribute_sequence=>17 ,p_display_sequence=>170 @@ -478,60 +500,60 @@ wwv_flow_api.create_plugin_attribute( ||' to users getting stuck on the map and having to reload the page in order to get back to the rest of the page. This option allows you to make scrolling more intuitive and less frustrating map interaction experience on mobile browsers.' ); wwv_flow_api.create_plugin_attr_value( - p_id=>wwv_flow_api.id(136493840498930472) -,p_plugin_attribute_id=>wwv_flow_api.id(136492766356927488) + p_id=>wwv_flow_api.id(185868024927403402) +,p_plugin_attribute_id=>wwv_flow_api.id(185866950785400418) ,p_display_sequence=>10 ,p_display_value=>'cooperative' ,p_return_value=>'cooperative' ,p_help_text=>wwv_flow_utilities.join(wwv_flow_t_varchar2( -'Scroll events and one-finger touch gestures scroll the page, and do not zoom or pan the map. Two-finger touch gestures pan and zoom the map. Scroll events with a ctrl key or ⌘ key pressed zoom the map.', +'Scroll events and one-finger touch gestures scroll the page, and do not zoom or pan the map. Two-finger touch gestures pan and zoom the map. Scroll events with a ctrl key or ? key pressed zoom the map.', 'In this mode the map cooperates with the page.')) ); wwv_flow_api.create_plugin_attr_value( - p_id=>wwv_flow_api.id(136494202493932213) -,p_plugin_attribute_id=>wwv_flow_api.id(136492766356927488) + p_id=>wwv_flow_api.id(185868386922405143) +,p_plugin_attribute_id=>wwv_flow_api.id(185866950785400418) ,p_display_sequence=>20 ,p_display_value=>'greedy' ,p_return_value=>'greedy' ,p_help_text=>'All touch gestures and scroll events pan or zoom the map.' ); wwv_flow_api.create_plugin_attr_value( - p_id=>wwv_flow_api.id(136494642700933503) -,p_plugin_attribute_id=>wwv_flow_api.id(136492766356927488) + p_id=>wwv_flow_api.id(185868827129406433) +,p_plugin_attribute_id=>wwv_flow_api.id(185866950785400418) ,p_display_sequence=>30 ,p_display_value=>'none' ,p_return_value=>'none' ,p_help_text=>'The map cannot be panned or zoomed by user gestures.' ); wwv_flow_api.create_plugin_attr_value( - p_id=>wwv_flow_api.id(136495023725935043) -,p_plugin_attribute_id=>wwv_flow_api.id(136492766356927488) + p_id=>wwv_flow_api.id(185869208154407973) +,p_plugin_attribute_id=>wwv_flow_api.id(185866950785400418) ,p_display_sequence=>40 ,p_display_value=>'auto' ,p_return_value=>'auto' ,p_help_text=>'(default) Gesture handling is either cooperative or greedy, depending on whether the page is scrollable.' ); wwv_flow_api.create_plugin_event( - p_id=>wwv_flow_api.id(136498374702129253) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(185872559130602183) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_name=>'address' ,p_display_name=>'address' ); wwv_flow_api.create_plugin_event( - p_id=>wwv_flow_api.id(166130896831132002) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(215505081259604932) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_name=>'geolocate' ,p_display_name=>'geolocate' ); wwv_flow_api.create_plugin_event( - p_id=>wwv_flow_api.id(451803157131465009) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(501177341559937939) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_name=>'mapclick' ,p_display_name=>'mapClick' ); wwv_flow_api.create_plugin_event( - p_id=>wwv_flow_api.id(460956166897747772) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(510330351326220702) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_name=>'maploaded' ,p_display_name=>'mapLoaded' ); @@ -539,69 +561,67 @@ end; / begin wwv_flow_api.g_varchar2_table := wwv_flow_api.empty_varchar2_table; -wwv_flow_api.g_varchar2_table(1) := '7661722073696D706C656D6170203D207B0D0A2F2F204A4B36342053696D706C6520476F6F676C65204D61702076302E360D0A0D0A67656F636F6465203A2066756E6374696F6E20286F70742C67656F636F64657229207B0D0A2020617065782E646562'; -wwv_flow_api.g_varchar2_table(2) := '7567282273696D706C656D61702E67656F636F646522293B0D0A202067656F636F6465722E67656F636F6465280D0A202020207B616464726573733A202476286F70742E67656F636F64654974656D290D0A202020202C636F6D706F6E656E7452657374'; -wwv_flow_api.g_varchar2_table(3) := '72696374696F6E733A206F70742E636F756E747279213D3D22223F7B636F756E7472793A6F70742E636F756E7472797D3A7B7D0D0A20207D2C2066756E6374696F6E28726573756C74732C2073746174757329207B0D0A20202020696620287374617475'; -wwv_flow_api.g_varchar2_table(4) := '73203D3D20676F6F676C652E6D6170732E47656F636F6465725374617475732E4F4B29207B0D0A202020202020617065782E6465627567286F70742E726567696F6E49642B222067656F636F6465206F6B22293B0D0A20202020202076617220706F7320'; -wwv_flow_api.g_varchar2_table(5) := '3D20726573756C74735B305D2E67656F6D657472792E6C6F636174696F6E3B0D0A20202020202073696D706C656D61702E7365744D61726B6572286F70742C706F732E6C617428292C706F732E6C6E672829290D0A202020202020696620286F70742E73'; -wwv_flow_api.g_varchar2_table(6) := '796E634974656D213D3D222229207B0D0A20202020202020202473286F70742E73796E634974656D2C706F732E6C617428292B222C222B706F732E6C6E672829293B0D0A2020202020207D0D0A202020207D20656C7365207B0D0A202020202020617065'; -wwv_flow_api.g_varchar2_table(7) := '782E6465627567286F70742E726567696F6E49642B222067656F636F64652077617320756E7375636365737366756C20666F722074686520666F6C6C6F77696E6720726561736F6E3A20222B737461747573293B0D0A202020207D0D0A20207D293B0D0A'; -wwv_flow_api.g_varchar2_table(8) := '7D2C0D0A0D0A7365744D61726B6572203A2066756E6374696F6E20286F70742C6C61742C6C6E6729207B0D0A2020617065782E6465627567282273696D706C656D61702E7365744D61726B657222293B0D0A2020696620286C6174213D3D6E756C6C2026'; -wwv_flow_api.g_varchar2_table(9) := '26206C6E67213D3D6E756C6C29207B0D0A20202020766172206F6C64706F73203D206F70742E6D61726B65723F6F70742E6D61726B65722E676574506F736974696F6E28293A6E657720676F6F676C652E6D6170732E4C61744C6E6728302C30293B0D0A'; -wwv_flow_api.g_varchar2_table(10) := '20202020696620286C61743D3D6F6C64706F732E6C61742829202626206C6E673D3D6F6C64706F732E6C6E67282929207B0D0A202020202020617065782E6465627567286F70742E726567696F6E49642B22206D61726B6572206E6F74206368616E6765'; -wwv_flow_api.g_varchar2_table(11) := '6422293B0D0A202020207D20656C7365207B0D0A202020202020617065782E6465627567286F70742E726567696F6E49642B22206D6F7665206D61726B657222293B0D0A20202020202076617220706F73203D206E657720676F6F676C652E6D6170732E'; -wwv_flow_api.g_varchar2_table(12) := '4C61744C6E67286C61742C6C6E67293B0D0A2020202020206F70742E6D61702E70616E546F28706F73293B0D0A202020202020696620286F70742E6D61726B65725A6F6F6D29207B0D0A20202020202020206F70742E6D61702E7365745A6F6F6D286F70'; -wwv_flow_api.g_varchar2_table(13) := '742E6D61726B65725A6F6F6D293B0D0A2020202020207D0D0A202020202020696620286F70742E6D61726B657229207B0D0A20202020202020206F70742E6D61726B65722E7365744D6170286F70742E6D6170293B0D0A20202020202020206F70742E6D'; -wwv_flow_api.g_varchar2_table(14) := '61726B65722E736574506F736974696F6E28706F73293B0D0A2020202020207D20656C7365207B0D0A20202020202020206F70742E6D61726B6572203D206E657720676F6F676C652E6D6170732E4D61726B6572287B6D61703A206F70742E6D61702C20'; -wwv_flow_api.g_varchar2_table(15) := '706F736974696F6E3A20706F732C2069636F6E3A206F70742E69636F6E7D293B0D0A2020202020207D0D0A202020207D0D0A20207D20656C736520696620286F70742E6D61726B657229207B0D0A20202020617065782E6465627567286F70742E726567'; -wwv_flow_api.g_varchar2_table(16) := '696F6E49642B222072656D6F7665206D61726B657222293B0D0A202020206F70742E6D61726B65722E7365744D6170286E756C6C293B0D0A20207D0D0A7D2C0D0A0D0A67657441646472657373203A2066756E6374696F6E20286F70742C6C61742C6C6E'; -wwv_flow_api.g_varchar2_table(17) := '6729207B0D0A2020617065782E6465627567282273696D706C656D61702E6765744164647265737322293B0D0A09766172206C61746C6E67203D207B6C61743A206C61742C206C6E673A206C6E677D3B0D0A096F70742E67656F636F6465722E67656F63'; -wwv_flow_api.g_varchar2_table(18) := '6F6465287B276C6F636174696F6E273A206C61746C6E677D2C2066756E6374696F6E28726573756C74732C2073746174757329207B0D0A090969662028737461747573203D3D3D20676F6F676C652E6D6170732E47656F636F6465725374617475732E4F'; -wwv_flow_api.g_varchar2_table(19) := '4B29207B0D0A090909666F722028693D303B20693C726573756C74732E6C656E6774683B20692B2B29207B0D0A09090909617065782E6465627567286F70742E726567696F6E49642B2220726573756C745B222B692B225D3D222B726573756C74735B69'; -wwv_flow_api.g_varchar2_table(20) := '5D2E666F726D61747465645F616464726573732B222028222B726573756C74735B695D2E74797065732E6A6F696E28292B222922293B0D0A0909097D0D0A09090969662028726573756C74735B305D29207B0D0A090909092473286F70742E6164647265'; -wwv_flow_api.g_varchar2_table(21) := '73734974656D2C726573756C74735B305D2E666F726D61747465645F61646472657373293B0D0A202020202020202076617220636F6D706F6E656E7473203D20726573756C74735B305D2E616464726573735F636F6D706F6E656E74733B0D0A20202020'; -wwv_flow_api.g_varchar2_table(22) := '20202020666F722028693D303B20693C636F6D706F6E656E74732E6C656E6774683B20692B2B29207B0D0A20202020202020202020617065782E6465627567286F70742E726567696F6E49642B2220726573756C745B305D20222B636F6D706F6E656E74'; -wwv_flow_api.g_varchar2_table(23) := '735B695D2E74797065732B223D222B636F6D706F6E656E74735B695D2E73686F72745F6E616D652B222028222B636F6D706F6E656E74735B695D2E6C6F6E675F6E616D652B222922293B0D0A20202020202020207D0D0A2020202020202020617065782E'; -wwv_flow_api.g_varchar2_table(24) := '6A5175657279282223222B6F70742E726567696F6E4964292E74726967676572282261646472657373222C207B6D61703A6F70742E6D61702C20726573756C743A726573756C74735B305D7D293B0D0A0909097D20656C7365207B0D0A0909090977696E'; -wwv_flow_api.g_varchar2_table(25) := '646F772E616C6572742827496E73756666696369656E7420726573756C747320666F756E6427293B0D0A0909097D0D0A09097D20656C73652069662028737461747573203D3D3D20676F6F676C652E6D6170732E47656F636F6465725374617475732E5A'; -wwv_flow_api.g_varchar2_table(26) := '45524F5F524553554C545329207B0D0A09090977696E646F772E616C65727428224E6F20726573756C747320666F756E6422293B0D0A09097D20656C7365207B0D0A09090977696E646F772E616C657274282747656F636F646572206661696C65642064'; -wwv_flow_api.g_varchar2_table(27) := '756520746F3A2027202B20737461747573293B0D0A09097D0D0A097D293B0D0A7D2C0D0A0D0A696E6974203A2066756E6374696F6E20286F707429207B0D0A2020617065782E6465627567282273696D706C656D61702E696E697422293B0D0A09766172'; -wwv_flow_api.g_varchar2_table(28) := '206D794F7074696F6E73203D207B0D0A09097A6F6F6D3A206F70742E696E69745A6F6F6D2C0D0A090963656E7465723A206E657720676F6F676C652E6D6170732E4C61744C6E67286F70742E696E69744C61742C6F70742E696E69744C6E67292C0D0A09'; -wwv_flow_api.g_varchar2_table(29) := '096D61705479706549643A20676F6F676C652E6D6170732E4D61705479706549642E524F41444D41500D0A097D3B0D0A096F70742E6D6170203D206E657720676F6F676C652E6D6170732E4D617028646F63756D656E742E676574456C656D656E744279'; -wwv_flow_api.g_varchar2_table(30) := '4964286F70742E636F6E7461696E6572292C6D794F7074696F6E73293B0D0A09696620286F70742E6D61707374796C6529207B0D0A09096F70742E6D61702E7365744F7074696F6E73287B7374796C65733A206F70742E6D61707374796C657D293B0D0A'; -wwv_flow_api.g_varchar2_table(31) := '097D0D0A2020696620286F70742E726561646F6E6C7929207B0D0A202020202F2F64697361626C65207A6F6F6D2F70616E20696620726561646F6E6C790D0A202020206F70742E6D61702E7365744F7074696F6E73287B0D0A2020202020202064697361'; -wwv_flow_api.g_varchar2_table(32) := '626C6544656661756C7455493A20747275650D0A2020202020202C647261676761626C653A206F70742E70616E0D0A2020202020202C7A6F6F6D436F6E74726F6C3A206F70742E7A6F6F6D0D0A2020202020202C7363726F6C6C776865656C3A206F7074'; -wwv_flow_api.g_varchar2_table(33) := '2E7A6F6F6D0D0A2020202020202C64697361626C65446F75626C65436C69636B5A6F6F6D3A2021286F70742E7A6F6F6D290D0A2020202020202C6765737475726548616E646C696E673A206F70742E6765737475726548616E646C696E670D0A20202020'; -wwv_flow_api.g_varchar2_table(34) := '7D293B0D0A20207D20656C7365207B0D0A202020206F70742E6D61702E7365744F7074696F6E73287B0D0A20202020202020647261676761626C653A206F70742E70616E0D0A2020202020202C7A6F6F6D436F6E74726F6C3A206F70742E7A6F6F6D0D0A'; -wwv_flow_api.g_varchar2_table(35) := '2020202020202C7363726F6C6C776865656C3A206F70742E7A6F6F6D0D0A2020202020202C64697361626C65446F75626C65436C69636B5A6F6F6D3A2021286F70742E7A6F6F6D290D0A2020202020202C6765737475726548616E646C696E673A206F70'; -wwv_flow_api.g_varchar2_table(36) := '742E6765737475726548616E646C696E670D0A202020207D293B0D0A20207D0D0A09696620286F70742E73796E634974656D213D3D222229207B0D0A09097661722076616C203D202476286F70742E73796E634974656D293B0D0A09096966202876616C'; -wwv_flow_api.g_varchar2_table(37) := '213D3D6E756C6C2026262076616C2E696E6465784F6628222C2229203E202D3129207B0D0A09090976617220617272203D2076616C2E73706C697428222C22293B0D0A09090973696D706C656D61702E7365744D61726B6572286F70742C6172725B305D'; -wwv_flow_api.g_varchar2_table(38) := '2C6172725B315D293B0D0A09097D0D0A090924282223222B6F70742E73796E634974656D292E6368616E67652866756E6374696F6E28297B200D0A090909766172206C61746C6E67203D20746869732E76616C75653B0D0A090909696620286C61746C6E'; -wwv_flow_api.g_varchar2_table(39) := '67213D3D6E756C6C202626206C61746C6E67213D3D756E646566696E6564202626206C61746C6E672E696E6465784F6628222C2229203E202D3129207B0D0A0909090976617220617272203D206C61746C6E672E73706C697428222C22293B0D0A090909'; -wwv_flow_api.g_varchar2_table(40) := '0973696D706C656D61702E7365744D61726B6572286F70742C6172725B305D2C6172725B315D293B0D0A0909097D202020200D0A09097D293B0D0A097D0D0A09696620286F70742E616464726573734974656D213D3D222229207B0D0A09096F70742E67'; -wwv_flow_api.g_varchar2_table(41) := '656F636F646572203D206E657720676F6F676C652E6D6170732E47656F636F6465723B0D0A097D0D0A202069662028216F70742E726561646F6E6C7929207B0D0A20202020676F6F676C652E6D6170732E6576656E742E6164644C697374656E6572286F'; -wwv_flow_api.g_varchar2_table(42) := '70742E6D61702C2022636C69636B222C2066756E6374696F6E20286576656E7429207B0D0A202020202020766172206C6174203D206576656E742E6C61744C6E672E6C617428290D0A2020202020202020202C6C6E67203D206576656E742E6C61744C6E'; -wwv_flow_api.g_varchar2_table(43) := '672E6C6E6728293B0D0A20202020202073696D706C656D61702E7365744D61726B6572286F70742C6C61742C6C6E67293B0D0A202020202020696620286F70742E73796E634974656D213D3D222229207B0D0A20202020202020202473286F70742E7379'; -wwv_flow_api.g_varchar2_table(44) := '6E634974656D2C6C61742B222C222B6C6E67293B0D0A2020202020207D0D0A202020202020696620286F70742E616464726573734974656D213D3D222229207B0D0A202020202020202073696D706C656D61702E67657441646472657373286F70742C6C'; -wwv_flow_api.g_varchar2_table(45) := '61742C6C6E67293B0D0A2020202020207D0D0A202020202020617065782E6A5175657279282223222B6F70742E726567696F6E4964292E7472696767657228226D6170636C69636B222C207B6D61703A6F70742E6D61702C206C61743A6C61742C206C6E'; -wwv_flow_api.g_varchar2_table(46) := '673A6C6E677D293B0D0A202020207D293B0D0A20207D0D0A09696620286F70742E67656F636F64654974656D213D222229207B0D0A09097661722067656F636F646572203D206E657720676F6F676C652E6D6170732E47656F636F64657228293B0D0A09'; -wwv_flow_api.g_varchar2_table(47) := '0924282223222B6F70742E67656F636F64654974656D292E6368616E67652866756E6374696F6E28297B0D0A09090973696D706C656D61702E67656F636F6465286F70742C67656F636F646572293B0D0A09097D293B0D0A097D0D0A09696620286F7074'; -wwv_flow_api.g_varchar2_table(48) := '2E67656F6C6F6361746529207B0D0A0909696620286E6176696761746F722E67656F6C6F636174696F6E29207B0D0A090909617065782E6465627567286F70742E726567696F6E49642B222067656F6C6F6361746522293B0D0A0909096E617669676174'; -wwv_flow_api.g_varchar2_table(49) := '6F722E67656F6C6F636174696F6E2E67657443757272656E74506F736974696F6E2866756E6374696F6E28706F736974696F6E29207B0D0A0909090976617220706F73203D207B0D0A09090909096C61743A20706F736974696F6E2E636F6F7264732E6C'; -wwv_flow_api.g_varchar2_table(50) := '617469747564652C0D0A09090909096C6E673A20706F736974696F6E2E636F6F7264732E6C6F6E6769747564650D0A090909097D3B0D0A090909096F70742E6D61702E70616E546F28706F73293B0D0A09090909696620286F70742E67656F6C6F636174'; -wwv_flow_api.g_varchar2_table(51) := '655A6F6F6D29207B0D0A0909090920206F70742E6D61702E7365745A6F6F6D286F70742E67656F6C6F636174655A6F6F6D293B0D0A090909097D0D0A2020202020202020696620286F70742E73796E634974656D213D3D222229207B0D0A202020202020'; -wwv_flow_api.g_varchar2_table(52) := '202020202473286F70742E73796E634974656D2C706F732E6C61742B222C222B706F732E6C6E67293B0D0A20202020202020207D0D0A2020202020202020696620286F70742E616464726573734974656D213D3D222229207B0D0A202020202020202020'; -wwv_flow_api.g_varchar2_table(53) := '2073696D706C656D61702E67657441646472657373286F70742C706F732E6C61742C706F732E6C6E67293B0D0A20202020202020207D0D0A09090909617065782E6A5175657279282223222B6F70742E726567696F6E4964292E74726967676572282267'; -wwv_flow_api.g_varchar2_table(54) := '656F6C6F63617465222C207B6D61703A6F70742E6D61702C206C61743A706F732E6C61742C206C6E673A706F732E6C6E677D293B0D0A0909097D293B0D0A09097D20656C7365207B0D0A090909617065782E6465627567286F70742E726567696F6E4964'; -wwv_flow_api.g_varchar2_table(55) := '2B222062726F7773657220646F6573206E6F7420737570706F72742067656F6C6F636174696F6E22293B0D0A09097D0D0A097D0D0A09617065782E6A5175657279282223222B6F70742E726567696F6E4964292E7472696767657228226D61706C6F6164'; -wwv_flow_api.g_varchar2_table(56) := '6564222C207B6D61703A6F70742E6D61707D293B0D0A7D0D0A0D0A7D'; +wwv_flow_api.g_varchar2_table(1) := '7661722073696D706C656D6170203D207B0A2F2F204A4B36342053696D706C6520476F6F676C65204D61702076302E360A0A67656F636F6465203A2066756E6374696F6E20286F70742C67656F636F64657229207B0A2020617065782E64656275672822'; +wwv_flow_api.g_varchar2_table(2) := '73696D706C656D61702E67656F636F646522293B0A202067656F636F6465722E67656F636F6465280A202020207B616464726573733A202476286F70742E67656F636F64654974656D290A202020202C636F6D706F6E656E745265737472696374696F6E'; +wwv_flow_api.g_varchar2_table(3) := '733A206F70742E636F756E747279213D3D22223F7B636F756E7472793A6F70742E636F756E7472797D3A7B7D0A20207D2C2066756E6374696F6E28726573756C74732C2073746174757329207B0A2020202069662028737461747573203D3D20676F6F67'; +wwv_flow_api.g_varchar2_table(4) := '6C652E6D6170732E47656F636F6465725374617475732E4F4B29207B0A202020202020617065782E6465627567286F70742E726567696F6E49642B222067656F636F6465206F6B22293B0A20202020202076617220706F73203D20726573756C74735B30'; +wwv_flow_api.g_varchar2_table(5) := '5D2E67656F6D657472792E6C6F636174696F6E3B0A20202020202073696D706C656D61702E7365744D61726B6572286F70742C706F732E6C617428292C706F732E6C6E672829290A202020202020696620286F70742E73796E634974656D213D3D222229'; +wwv_flow_api.g_varchar2_table(6) := '207B0A20202020202020202473286F70742E73796E634974656D2C706F732E6C617428292B222C222B706F732E6C6E672829293B0A2020202020207D0A202020207D20656C7365207B0A202020202020617065782E6465627567286F70742E726567696F'; +wwv_flow_api.g_varchar2_table(7) := '6E49642B222067656F636F64652077617320756E7375636365737366756C20666F722074686520666F6C6C6F77696E6720726561736F6E3A20222B737461747573293B0A202020207D0A20207D293B0A7D2C0A0A7365744D61726B6572203A2066756E63'; +wwv_flow_api.g_varchar2_table(8) := '74696F6E20286F70742C6C61742C6C6E6729207B0A2020617065782E6465627567282273696D706C656D61702E7365744D61726B657222293B0A2020696620286C6174213D3D6E756C6C202626206C6E67213D3D6E756C6C29207B0A2020202076617220'; +wwv_flow_api.g_varchar2_table(9) := '6F6C64706F73203D206F70742E6D61726B65723F6F70742E6D61726B65722E676574506F736974696F6E28293A6E657720676F6F676C652E6D6170732E4C61744C6E6728302C30293B0A20202020696620286C61743D3D6F6C64706F732E6C6174282920'; +wwv_flow_api.g_varchar2_table(10) := '2626206C6E673D3D6F6C64706F732E6C6E67282929207B0A202020202020617065782E6465627567286F70742E726567696F6E49642B22206D61726B6572206E6F74206368616E67656422293B0A202020207D20656C7365207B0A202020202020617065'; +wwv_flow_api.g_varchar2_table(11) := '782E6465627567286F70742E726567696F6E49642B22206D6F7665206D61726B657222293B0A20202020202076617220706F73203D206E657720676F6F676C652E6D6170732E4C61744C6E67286C61742C6C6E67293B0A2020202020206F70742E6D6170'; +wwv_flow_api.g_varchar2_table(12) := '2E70616E546F28706F73293B0A202020202020696620286F70742E6D61726B65725A6F6F6D29207B0A20202020202020206F70742E6D61702E7365745A6F6F6D286F70742E6D61726B65725A6F6F6D293B0A2020202020207D0A20202020202069662028'; +wwv_flow_api.g_varchar2_table(13) := '6F70742E6D61726B657229207B0A20202020202020206F70742E6D61726B65722E7365744D6170286F70742E6D6170293B0A20202020202020206F70742E6D61726B65722E736574506F736974696F6E28706F73293B0A2020202020207D20656C736520'; +wwv_flow_api.g_varchar2_table(14) := '7B0A20202020202020206F70742E6D61726B6572203D206E657720676F6F676C652E6D6170732E4D61726B6572287B6D61703A206F70742E6D61702C20706F736974696F6E3A20706F732C2069636F6E3A206F70742E69636F6E7D293B0A202020202020'; +wwv_flow_api.g_varchar2_table(15) := '7D0A202020207D0A20207D20656C736520696620286F70742E6D61726B657229207B0A20202020617065782E6465627567286F70742E726567696F6E49642B222072656D6F7665206D61726B657222293B0A202020206F70742E6D61726B65722E736574'; +wwv_flow_api.g_varchar2_table(16) := '4D6170286E756C6C293B0A20207D0A7D2C0A0A67657441646472657373203A2066756E6374696F6E20286F70742C6C61742C6C6E6729207B0A2020617065782E6465627567282273696D706C656D61702E6765744164647265737322293B0A0976617220'; +wwv_flow_api.g_varchar2_table(17) := '6C61746C6E67203D207B6C61743A206C61742C206C6E673A206C6E677D3B0A096F70742E67656F636F6465722E67656F636F6465287B276C6F636174696F6E273A206C61746C6E677D2C2066756E6374696F6E28726573756C74732C2073746174757329'; +wwv_flow_api.g_varchar2_table(18) := '207B0A090969662028737461747573203D3D3D20676F6F676C652E6D6170732E47656F636F6465725374617475732E4F4B29207B0A090909666F722028693D303B20693C726573756C74732E6C656E6774683B20692B2B29207B0A09090909617065782E'; +wwv_flow_api.g_varchar2_table(19) := '6465627567286F70742E726567696F6E49642B2220726573756C745B222B692B225D3D222B726573756C74735B695D2E666F726D61747465645F616464726573732B222028222B726573756C74735B695D2E74797065732E6A6F696E28292B222922293B'; +wwv_flow_api.g_varchar2_table(20) := '0A0909097D0A09090969662028726573756C74735B305D29207B0A090909092473286F70742E616464726573734974656D2C726573756C74735B305D2E666F726D61747465645F61646472657373293B0A202020202020202076617220636F6D706F6E65'; +wwv_flow_api.g_varchar2_table(21) := '6E7473203D20726573756C74735B305D2E616464726573735F636F6D706F6E656E74733B0A2020202020202020666F722028693D303B20693C636F6D706F6E656E74732E6C656E6774683B20692B2B29207B0A20202020202020202020617065782E6465'; +wwv_flow_api.g_varchar2_table(22) := '627567286F70742E726567696F6E49642B2220726573756C745B305D20222B636F6D706F6E656E74735B695D2E74797065732B223D222B636F6D706F6E656E74735B695D2E73686F72745F6E616D652B222028222B636F6D706F6E656E74735B695D2E6C'; +wwv_flow_api.g_varchar2_table(23) := '6F6E675F6E616D652B222922293B0A20202020202020207D0A2020202020202020617065782E6A5175657279282223222B6F70742E726567696F6E4964292E74726967676572282261646472657373222C207B6D61703A6F70742E6D61702C2072657375'; +wwv_flow_api.g_varchar2_table(24) := '6C743A726573756C74735B305D7D293B0A0909097D20656C7365207B0A0909090977696E646F772E616C6572742827496E73756666696369656E7420726573756C747320666F756E6427293B0A0909097D0A09097D20656C736520696620287374617475'; +wwv_flow_api.g_varchar2_table(25) := '73203D3D3D20676F6F676C652E6D6170732E47656F636F6465725374617475732E5A45524F5F524553554C545329207B0A09090977696E646F772E616C65727428224E6F20726573756C747320666F756E6422293B0A09097D20656C7365207B0A090909'; +wwv_flow_api.g_varchar2_table(26) := '77696E646F772E616C657274282747656F636F646572206661696C65642064756520746F3A2027202B20737461747573293B0A09097D0A097D293B0A7D2C0A0A696E6974203A2066756E6374696F6E20286F707429207B0A2020617065782E6465627567'; +wwv_flow_api.g_varchar2_table(27) := '282273696D706C656D61702E696E697422293B0A09766172206D794F7074696F6E73203D207B0A09097A6F6F6D3A206F70742E696E69745A6F6F6D2C0A090963656E7465723A206E657720676F6F676C652E6D6170732E4C61744C6E67286F70742E696E'; +wwv_flow_api.g_varchar2_table(28) := '69744C61742C6F70742E696E69744C6E67292C0A09096D61705479706549643A20676F6F676C652E6D6170732E4D61705479706549642E524F41444D41500A097D3B0A096F70742E6D6170203D206E657720676F6F676C652E6D6170732E4D617028646F'; +wwv_flow_api.g_varchar2_table(29) := '63756D656E742E676574456C656D656E7442794964286F70742E636F6E7461696E6572292C6D794F7074696F6E73293B0A09696620286F70742E6D61707374796C6529207B0A09096F70742E6D61702E7365744F7074696F6E73287B7374796C65733A20'; +wwv_flow_api.g_varchar2_table(30) := '6F70742E6D61707374796C657D293B0A097D0A2020696620286F70742E726561646F6E6C7929207B0A202020202F2F64697361626C65207A6F6F6D2F70616E20696620726561646F6E6C790A202020206F70742E6D61702E7365744F7074696F6E73287B'; +wwv_flow_api.g_varchar2_table(31) := '0A2020202020202064697361626C6544656661756C7455493A20747275650A2020202020202C647261676761626C653A206F70742E70616E0A2020202020202C7A6F6F6D436F6E74726F6C3A206F70742E7A6F6F6D0A2020202020202C7363726F6C6C77'; +wwv_flow_api.g_varchar2_table(32) := '6865656C3A206F70742E7A6F6F6D0A2020202020202C64697361626C65446F75626C65436C69636B5A6F6F6D3A2021286F70742E7A6F6F6D290A2020202020202C6765737475726548616E646C696E673A206F70742E6765737475726548616E646C696E'; +wwv_flow_api.g_varchar2_table(33) := '670A202020207D293B0A20207D20656C7365207B0A202020206F70742E6D61702E7365744F7074696F6E73287B0A20202020202020647261676761626C653A206F70742E70616E0A2020202020202C7A6F6F6D436F6E74726F6C3A206F70742E7A6F6F6D'; +wwv_flow_api.g_varchar2_table(34) := '0A2020202020202C7363726F6C6C776865656C3A206F70742E7A6F6F6D0A2020202020202C64697361626C65446F75626C65436C69636B5A6F6F6D3A2021286F70742E7A6F6F6D290A2020202020202C6765737475726548616E646C696E673A206F7074'; +wwv_flow_api.g_varchar2_table(35) := '2E6765737475726548616E646C696E670A202020207D293B0A20207D0A09696620286F70742E73796E634974656D213D3D222229207B0A09097661722076616C203D202476286F70742E73796E634974656D293B0A09096966202876616C213D3D6E756C'; +wwv_flow_api.g_varchar2_table(36) := '6C2026262076616C2E696E6465784F6628222C2229203E202D3129207B0A09090976617220617272203D2076616C2E73706C697428222C22293B0A09090973696D706C656D61702E7365744D61726B6572286F70742C6172725B305D2C6172725B315D29'; +wwv_flow_api.g_varchar2_table(37) := '3B0A09097D0A090924282223222B6F70742E73796E634974656D292E6368616E67652866756E6374696F6E28297B200A090909766172206C61746C6E67203D20746869732E76616C75653B0A090909696620286C61746C6E67213D3D6E756C6C20262620'; +wwv_flow_api.g_varchar2_table(38) := '6C61746C6E67213D3D756E646566696E6564202626206C61746C6E672E696E6465784F6628222C2229203E202D3129207B0A0909090976617220617272203D206C61746C6E672E73706C697428222C22293B0A0909090973696D706C656D61702E736574'; +wwv_flow_api.g_varchar2_table(39) := '4D61726B6572286F70742C6172725B305D2C6172725B315D293B0A0909097D202020200A09097D293B0A097D0A09696620286F70742E616464726573734974656D213D3D222229207B0A09096F70742E67656F636F646572203D206E657720676F6F676C'; +wwv_flow_api.g_varchar2_table(40) := '652E6D6170732E47656F636F6465723B0A097D0A202069662028216F70742E726561646F6E6C7929207B0A20202020676F6F676C652E6D6170732E6576656E742E6164644C697374656E6572286F70742E6D61702C2022636C69636B222C2066756E6374'; +wwv_flow_api.g_varchar2_table(41) := '696F6E20286576656E7429207B0A202020202020766172206C6174203D206576656E742E6C61744C6E672E6C617428290A2020202020202020202C6C6E67203D206576656E742E6C61744C6E672E6C6E6728293B0A20202020202073696D706C656D6170'; +wwv_flow_api.g_varchar2_table(42) := '2E7365744D61726B6572286F70742C6C61742C6C6E67293B0A202020202020696620286F70742E73796E634974656D213D3D222229207B0A20202020202020202473286F70742E73796E634974656D2C6C61742B222C222B6C6E67293B0A202020202020'; +wwv_flow_api.g_varchar2_table(43) := '7D0A202020202020696620286F70742E616464726573734974656D213D3D222229207B0A202020202020202073696D706C656D61702E67657441646472657373286F70742C6C61742C6C6E67293B0A2020202020207D0A202020202020617065782E6A51'; +wwv_flow_api.g_varchar2_table(44) := '75657279282223222B6F70742E726567696F6E4964292E7472696767657228226D6170636C69636B222C207B6D61703A6F70742E6D61702C206C61743A6C61742C206C6E673A6C6E677D293B0A202020207D293B0A20207D0A09696620286F70742E6765'; +wwv_flow_api.g_varchar2_table(45) := '6F636F64654974656D213D222229207B0A09097661722067656F636F646572203D206E657720676F6F676C652E6D6170732E47656F636F64657228293B0A090924282223222B6F70742E67656F636F64654974656D292E6368616E67652866756E637469'; +wwv_flow_api.g_varchar2_table(46) := '6F6E28297B0A09090973696D706C656D61702E67656F636F6465286F70742C67656F636F646572293B0A09097D293B0A097D0A09696620286F70742E67656F6C6F6361746529207B0A0909696620286E6176696761746F722E67656F6C6F636174696F6E'; +wwv_flow_api.g_varchar2_table(47) := '29207B0A090909617065782E6465627567286F70742E726567696F6E49642B222067656F6C6F6361746522293B0A0909096E6176696761746F722E67656F6C6F636174696F6E2E67657443757272656E74506F736974696F6E2866756E6374696F6E2870'; +wwv_flow_api.g_varchar2_table(48) := '6F736974696F6E29207B0A0909090976617220706F73203D207B0A09090909096C61743A20706F736974696F6E2E636F6F7264732E6C617469747564652C0A09090909096C6E673A20706F736974696F6E2E636F6F7264732E6C6F6E6769747564650A09'; +wwv_flow_api.g_varchar2_table(49) := '0909097D3B0A090909096F70742E6D61702E70616E546F28706F73293B0A09090909696620286F70742E67656F6C6F636174655A6F6F6D29207B0A0909090920206F70742E6D61702E7365745A6F6F6D286F70742E67656F6C6F636174655A6F6F6D293B'; +wwv_flow_api.g_varchar2_table(50) := '0A090909097D0A2020202020202020696620286F70742E73796E634974656D213D3D222229207B0A202020202020202020202473286F70742E73796E634974656D2C706F732E6C61742B222C222B706F732E6C6E67293B0A20202020202020207D0A2020'; +wwv_flow_api.g_varchar2_table(51) := '202020202020696620286F70742E616464726573734974656D213D3D222229207B0A2020202020202020202073696D706C656D61702E67657441646472657373286F70742C706F732E6C61742C706F732E6C6E67293B0A20202020202020207D0A090909'; +wwv_flow_api.g_varchar2_table(52) := '09617065782E6A5175657279282223222B6F70742E726567696F6E4964292E74726967676572282267656F6C6F63617465222C207B6D61703A6F70742E6D61702C206C61743A706F732E6C61742C206C6E673A706F732E6C6E677D293B0A0909097D293B'; +wwv_flow_api.g_varchar2_table(53) := '0A09097D20656C7365207B0A090909617065782E6465627567286F70742E726567696F6E49642B222062726F7773657220646F6573206E6F7420737570706F72742067656F6C6F636174696F6E22293B0A09097D0A097D0A09617065782E6A5175657279'; +wwv_flow_api.g_varchar2_table(54) := '282223222B6F70742E726567696F6E4964292E7472696767657228226D61706C6F61646564222C207B6D61703A6F70742E6D61707D293B0A7D0A0A7D'; null; end; / begin wwv_flow_api.create_plugin_file( - p_id=>wwv_flow_api.id(84100026180778296) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(133474210609251226) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_file_name=>'simplemap.js' ,p_mime_type=>'text/javascript' ,p_file_charset=>'utf-8' @@ -653,8 +673,8 @@ end; / begin wwv_flow_api.create_plugin_file( - p_id=>wwv_flow_api.id(84104929671016582) -,p_plugin_id=>wwv_flow_api.id(451789494362035918) + p_id=>wwv_flow_api.id(133479114099489512) +,p_plugin_id=>wwv_flow_api.id(501163678790508848) ,p_file_name=>'simplemap.min.js' ,p_mime_type=>'text/javascript' ,p_file_charset=>'utf-8' diff --git a/src/jk64simplemap_pkg.sql b/src/jk64simplemap_pkg.sql index 6a6c725..fb7f62f 100644 --- a/src/jk64simplemap_pkg.sql +++ b/src/jk64simplemap_pkg.sql @@ -1,4 +1,6 @@ +/********************************************************** create or replace package jk64simplemap_pkg as +-- jk64 JK64 Simple Google Map v0.8 Apr 2020 function render ( p_region in apex_plugin.t_region, @@ -8,12 +10,29 @@ return apex_plugin.t_region_render_result; end jk64simplemap_pkg; / -show err create or replace package body jk64simplemap_pkg as --- JK64 Simple Google Map v0.7 +**********************************************************/ +-- jk64 JK64 Simple Google Map v0.8 Apr 2020 -g_tochar_format constant varchar2(100) := 'fm99999999999990.099999999999999999999999999999'; +-- format to use to convert a lat/lng number to string for passing via javascript +-- 0.0000001 is enough precision for the practical limit of commercial surveying, error up to +/- 11.132 mm at the equator +g_tochar_format constant varchar2(100) := 'fm990.0999999'; + +subtype plugin_attr is varchar2(32767); + +procedure parse_latlng (p_val in varchar2, p_label in varchar2, p_lat out number, p_lng out number) is + delim_pos number; +begin + -- allow space as the delimiter; this should be used in locales which use comma (,) as decimal separator + if instr(trim(p_val),' ') > 0 then + delim_pos := instr(p_val,' '); + else + delim_pos := instr(p_val,','); + end if; + p_lat := apex_plugin_util.get_attribute_as_number(substr(p_val,1,delim_pos-1), p_label || ' latitude'); + p_lng := apex_plugin_util.get_attribute_as_number(substr(p_val,delim_pos+1), p_label || ' longitude'); +end parse_latlng; function render ( p_region in apex_plugin.t_region, @@ -21,13 +40,11 @@ function render ( p_is_printer_friendly in boolean ) return apex_plugin.t_region_render_result as - subtype plugin_attr is varchar2(32767); -- Variables l_result apex_plugin.t_region_render_result; l_script varchar2(32767); l_region varchar2(100); - l_js_params varchar2(1000); l_lat number; l_lng number; l_readonly varchar2(1000) := 'false'; @@ -44,7 +61,7 @@ as l_item_name plugin_attr := p_region.attribute_04; l_marker_zoom plugin_attr := p_region.attribute_05; l_icon plugin_attr := p_region.attribute_06; - l_sign_in plugin_attr := p_region.attribute_07; + --[unused] plugin_attr := p_region.attribute_07; l_geocode_item plugin_attr := p_region.attribute_08; l_country plugin_attr := p_region.attribute_09; l_mapstyle plugin_attr := p_region.attribute_10; @@ -88,25 +105,20 @@ begin raise_application_error(-20000, 'Pan attribute must evaluate to true or false.'); end if; end if; - - if l_sign_in = 'Y' then - l_js_params := '&'||'signed_in=true'; - end if; apex_javascript.add_library - (p_name => 'js?key=' || l_api_key || l_js_params - ,p_directory => 'https://maps.googleapis.com/maps/api/' - ,p_skip_extension => true); + (p_name => 'js?key=' || l_api_key + ,p_directory => 'https://maps.googleapis.com/maps/api/' + ,p_skip_extension => true); apex_javascript.add_library (p_name => 'simplemap' ,p_directory => p_plugin.file_prefix ,p_check_to_add_minified => true); - l_lat := to_number(substr(l_latlong,1,instr(l_latlong,',')-1)); - l_lng := to_number(substr(l_latlong,instr(l_latlong,',')+1)); - - l_gesture_handling := nvl(l_gesture_handling,'auto'); + if l_latlong is not null then + parse_latlng(l_latlong, p_label=>'Initial Map Position', p_lat=>l_lat, p_lng=>l_lng); + end if; l_region := case when p_region.static_id is not null @@ -139,7 +151,7 @@ container:"map_#REGION#_container" ,readonly:' || l_readonly || ' ,zoom:' || l_zoom_enabled || ' ,pan:' || l_pan_enabled || ' -,gestureHandling:"' || l_gesture_handling || '" +,gestureHandling:"' || nvl(l_gesture_handling,'auto') || '" }; function r_#REGION#(f){/in/.test(document.readyState)?setTimeout("r_#REGION#("+f+")",9):f()} r_#REGION#(function(){simplemap.init(opt_#REGION#);}); @@ -150,8 +162,15 @@ function click_#REGION#(lat,lng) {simplemap.setMarker(opt_#REGION#,lat,lng);} sys.htp.p(replace(l_script,'#REGION#',l_region)); return l_result; +exception + when others then + apex_debug.error(sqlerrm); + apex_debug.message(dbms_utility.format_error_stack); + apex_debug.message(dbms_utility.format_call_stack); + raise; end render; +/********************************************************** end jk64simplemap_pkg; / -show err \ No newline at end of file +**********************************************************/ \ No newline at end of file