var _EXT_ROUTES_PANEL=null;var _EXT_LOG_SEGMENTS_PANEL=null;var _EXT_INTERACTIVE_ELEMENT_PANEL=null;var _SHOW_LOG_SEGMENTS=false;function init_ti_sentieri(){try{if(window!=top){top.location.href=this.location.href;return}init_ext_layout(false);var b=new Ext.Toolbar({id:"menubar",items:[{xtype:"boxcomponent",tag:"img",src:"images/ticino.png",height:24},{xtype:"tbtext",html:"<font style='font-size:14px;margin-left:5px;margin-right:5px;'><b>TI-SENTIERI</b></font>"},"-",{id:"menu_home",xtype:"button",text:"<font style='font-size:12px;'><b>"+_MSG_MENU_HOME+"</b></font>",handler:ti_sentieri_menu_handler},"-",{id:"menu_forum",xtype:"button",text:"<font style='font-size:12px;'><b>"+_MSG_MENU_FORUM+"</b></font>",handler:ti_sentieri_menu_handler},"-",{id:"menu_log_segments",xtype:"button",text:"<font style='font-size:12px;'><b>"+_MSG_MENU_LOG_SEGMENTS+"</b></font>",enableToggle:true,handler:ti_sentieri_menu_handler},"-",{id:"menu_contacts",xtype:"button",text:"<font style='font-size:12px;'><b>"+_MSG_MENU_CONTACTS+"</b></font>",handler:ti_sentieri_menu_handler}]});Ext.QuickTips.init();Ext.apply(Ext.QuickTips.getQuickTip(),{showDelay:0,dismissDelay:0,hideDelay:0});var a=new Ext.Toolbar({id:"toolbar",items:[{id:"toolbar_pan",iconCls:"pan",scale:"medium",tooltip:_MSG_TOOLTIP_MOVE,enableToggle:true,toggleGroup:"action",pressed:true,allowDepress:false,handler:map_visio_toolbar_handler},{id:"toolbar_zoomin",iconCls:"zoomin",scale:"medium",tooltip:_MSG_TOOLTIP_ZOOMIN,enableToggle:true,toggleGroup:"action",allowDepress:false,handler:map_visio_toolbar_handler},{id:"toolbar_zoomout",iconCls:"zoomout",scale:"medium",tooltip:_MSG_TOOLTIP_ZOOMOUT,enableToggle:true,toggleGroup:"action",allowDepress:false,handler:map_visio_toolbar_handler},{id:"toolbar_zoomback",iconCls:"zoomback",scale:"medium",tooltip:"Zoom precedente",handler:map_visio_toolbar_handler},{id:"toolbar_fullextent",iconCls:"fullextent",scale:"medium",tooltip:_MSG_TOOLTIP_FULLEXTENT,handler:map_visio_toolbar_handler},"-",{id:"toolbar_select_segment",iconCls:"select_segment",scale:"medium",tooltip:_MSG_TOOLTIP_SELECT_SEGMENT,enableToggle:true,toggleGroup:"action",pressed:false,allowDepress:false,handler:ti_sentieri_toolbar_handler},{id:"toolbar_start_finish_point",iconCls:"start_finish_point",scale:"medium",tooltip:_MSG_TOOLTIP_START_FINISH_POINT,enableToggle:true,toggleGroup:"action",pressed:false,allowDepress:false,handler:ti_sentieri_toolbar_handler},{id:"toolbar_clear",iconCls:"clear",scale:"medium",tooltip:_MSG_TOOLTIP_CLEAN,handler:ti_sentieri_toolbar_handler},'-',{id: 'toolbar_print',iconCls: 'print',scale: 'medium',tooltip: _MSG_TOOLTIP_PRINT,handler: ti_sentieri_toolbar_handler},"-",{id:"toolbar_profile",iconCls:"profile",scale:"medium",tooltip:_MSG_TOOLTIP_PROFILE,handler:ti_sentieri_toolbar_handler},{id:"toolbar_export_google_earth",iconCls:"google_earth",scale:"medium",tooltip:_MSG_TOOLTIP_EXPORT_GOOGLE_EARTH,handler:ti_sentieri_toolbar_handler},{id:"toolbar_export_gpx",iconCls:"gpx",scale:"medium",tooltip:_MSG_TOOLTIP_EXPORT_GPX,handler:ti_sentieri_toolbar_handler},{xtype:"tbfill"},{id:"toolbar_it_lang",iconCls:"it_lang",scale:"small",tooltip:"Italiano",handler:ti_sentieri_language_handler},{id:"toolbar_de_lang",iconCls:"de_lang",scale:"small",tooltip:"Deutsch",handler:ti_sentieri_language_handler},{id:"toolbar_fr_lang",iconCls:"fr_lang",scale:"small",tooltip:"Français",handler:ti_sentieri_language_handler},{id:"toolbar_en_lang",iconCls:"en_lang",scale:"small",tooltip:"English",handler:ti_sentieri_language_handler}]});_EXT_LAYOUT.get("north_container").add(b);_EXT_LAYOUT.get("north_container").add(a);_EXT_ROUTES_PANEL=new Ext.Window({title:_MSG_ROUTES,width:280,x:Ext.get(_MAP_ID).getLeft()+5,y:Ext.get(_MAP_ID).getTop()+70,cls:"white",closable:false,draggable:false,resizable:false,collapsible:true,autoScroll:true,contentEl:"routes_panel"});_EXT_ROUTES_PANEL.show();_EXT_LOG_SEGMENTS_PANEL=new Ext.Window({title:_MSG_MENU_LOG_SEGMENTS,width:280,autoHeight:true,x:Ext.get(_MAP_ID).getLeft()+5,y:Ext.get(_MAP_ID).getTop()+70,cls:"white",closable:false,draggable:false,resizable:false,collapsible:true,autoScroll:true,contentEl:"log_segments_panel"});_EXT_LOG_SEGMENTS_PANEL.hide();_EXT_INTERACTIVE_ELEMENT_PANEL=new Ext.Window({cls:"white",resizable:false,closable:true,constrain:true,closeAction:"hide",contentEl:"interactive_element_panel"});_EXT_INTERACTIVE_ELEMENT_PANEL.hide();_EXT_LAYOUT.on("resize",function(){_EXT_LAYOUT.get("north_container").doLayout();_EXT_LAYOUT.get("center_container").doLayout();_EXT_LAYOUT.get("south_container").doLayout();_EXT_LAYOUT.doLayout();_EXT_ROUTES_PANEL.setHeight(Ext.get(_MAP_ID).getHeight()-60)});register_interactive_element_event_handler(interactive_elements_handler);register_map_loaded_event_handler(route_positioning_handler);register_map_loaded_event_handler(coordinate_positioning_handler);init_soft_gis()}catch(c){alert("TI_Sentieri_Events_Manager.init_ti_sentieri(): "+c)}}function ti_sentieri_menu_handler(a){try{switch(a.id){case"menu_home":top.window.location.href=_HOST;break;case"menu_forum":window.open(_URL_FORUM,"_new");break;case"menu_log_segments":var c="type=segment&action=clear";loading_message(true);process_ajax_call(c,_CNTR_COMPOSITION,function(d){try{if(!d){reset_extra_graphics(_ALL_DRAWING_ENGINES);if(!_SHOW_LOG_SEGMENTS){_SHOW_LOG_SEGMENTS=true;a.setText("<font style='font-size:12px;'><b>"+_MSG_MENU_DISABLE_LOG_SEGMENTS+"</b></font>");Ext.getCmp("toolbar_select_segment").setDisabled(true);Ext.getCmp("toolbar_start_finish_point").setDisabled(true);Ext.getCmp("toolbar_clear").setDisabled(true);Ext.getCmp("toolbar_profile").setDisabled(true);Ext.getCmp("toolbar_export_google_earth").setDisabled(true);Ext.getCmp("toolbar_export_gpx").setDisabled(true);generic_gis_toolbar_select_button("toolbar_pan");document.getElementById(_MAP_ID).style.cursor="move";register_mouse_down_handler(evt_event_move);register_interactive_element_event_handler(function(){});_MAP_WRAPPER.deactivate_layers();_MAP_WRAPPER.change_layer_status("CN-25_2011");_MAP_WRAPPER.change_layer_status("CN-50_2011");_MAP_WRAPPER.change_layer_status("segmenti_log");_MAP_WRAPPER.change_layer_status("static_text");_EXT_ROUTES_PANEL.hide();_EXT_LOG_SEGMENTS_PANEL.show()}else{_SHOW_LOG_SEGMENTS=false;a.setText("<font style='font-size:12px;'><b>"+_MSG_MENU_LOG_SEGMENTS+"</b></font>");Ext.getCmp("toolbar_select_segment").setDisabled(false);Ext.getCmp("toolbar_start_finish_point").setDisabled(false);Ext.getCmp("toolbar_clear").setDisabled(false);Ext.getCmp("toolbar_profile").setDisabled(false);Ext.getCmp("toolbar_export_google_earth").setDisabled(false);Ext.getCmp("toolbar_export_gpx").setDisabled(false);register_interactive_element_event_handler(interactive_elements_handler);_MAP_WRAPPER.activate_layers();_MAP_WRAPPER.change_layer_status("segmenti_log");_EXT_ROUTES_PANEL.show();_EXT_LOG_SEGMENTS_PANEL.hide()}_MAP_WRAPPER.load_layers(false)}else{loading_message(false)}}catch(f){alert("process_ajax_call: "+f);loading_message(false)}});break;case"menu_contacts":if(_WIN){_WIN.close()}_WIN=new DHTML_Window(_UI_CONTACTS,get_width(0.6),get_height(0.6));break}}catch(b){alert("TI_Sentieri_Events_Manager.ti_sentieri_menu_handler(button): "+b)}}function ti_sentieri_toolbar_handler(b){try{switch(b.id){case"toolbar_select_segment":document.getElementById(_MAP_ID).style.cursor="pointer";register_mouse_down_handler(evt_select_segment);break;case"toolbar_start_finish_point":document.getElementById(_MAP_ID).style.cursor="pointer";register_mouse_down_handler(evt_set_point);break;case"toolbar_clear":var d="type=segment&action=clear";loading_message(true);process_ajax_call(d,_CNTR_COMPOSITION,function(f){try{if(!f){reset_extra_graphics(_ALL_DRAWING_ENGINES);reload_map("type=map&action=load")}else{loading_message(false)}}catch(g){alert("process_ajax_call: "+g);loading_message(false)}});break;case 'toolbar_print':
                if(_LINE_PATH == null || _LINE_PATH._list_of_graphics.length == 0){
                    var params="type=segment&action=clear";
                    loading_message(true);
                    process_ajax_call( params,_CNTR_COMPOSITION,
                        function(error){
                            try{
                                if(!error){
                                    evt_but_print();
                                }else{
                                    loading_message(false);
                                }
                            }catch(e){
                                alert("process_ajax_call: "+e)
                                loading_message(false);
                            }
                        } );
                }else{
                    if(_LIST_OF_POINTS.length != 2){
                        clear_points();
                        calculate_auto_start_finish_points();
                        draw_extra_graphics(false,_SELECTION_DRAWING_ENGINE);
                    }
                    var params="type=report&action=prepare_map_report"+
                    "&x1="+_LIST_OF_POINTS[0]._x+
                    "&x2="+_LIST_OF_POINTS[1]._x+
                    "&y1="+_LIST_OF_POINTS[0]._y+
                    "&y2="+_LIST_OF_POINTS[1]._y;

                    modal_loading_message(true);
                    process_ajax_call(params,_CNTR_REPORT,
                        function(error){
                            try{
                                if(!error){
                                    evt_but_print();
                                }else{
                                    modal_loading_message(false);
                                }
                            }catch(e){
                                alert("process_ajax_call: "+e)
                                loading_message(false);
                            }
                        } );
                }
                break;case"toolbar_profile":if(_LINE_PATH==null){alert(_MSG_SELECT_SEGMENT);return}if(_LIST_OF_POINTS.length!=2){clear_points();calculate_auto_start_finish_points();draw_extra_graphics(false,_SELECTION_DRAWING_ENGINE)}if(_LIST_OF_POINTS.length==2){var a=_UI_PROFILE+"?type=profile&action=create&x1="+_LIST_OF_POINTS[0]._x+"&y1="+_LIST_OF_POINTS[0]._y+"&x2="+_LIST_OF_POINTS[1]._x+"&y2="+_LIST_OF_POINTS[1]._y;if(_WIN){_WIN.close()}_WIN=new DHTML_Window(a,get_width(0.9),get_height(0.9))}break;case"toolbar_export_google_earth":evt_but_export("google_earth");break;case"toolbar_export_gpx":evt_but_export("gpx");break}}catch(c){alert("TI_Sentieri_Events_Manager.ti_sentieri_toolbar_handler(button): "+c)}}function ti_sentieri_language_handler(a){try{var c="";switch(a.id){case"toolbar_it_lang":c="it_CH.UTF-8";break;case"toolbar_de_lang":c="de_CH.UTF-8";break;case"toolbar_fr_lang":c="fr_CH.UTF-8";break;case"toolbar_en_lang":c="en_US.UTF-8";break}window.location.href=window.location.href.replace(/(\?.*)/,"")+"?lang="+c}catch(b){alert("TI_Sentieri_Events_Manager.ti_sentieri_language_handler(button): "+b)}}function route_positioning_handler(){try{var a=document.getElementById("route").value;if(a!=""){evt_select_route_segments(a)}remove_map_loaded_event_handler(route_positioning_handler)}catch(b){alert("TI_Sentieri_Events_Manager.route_positioning_handler(): "+b)}}function coordinate_positioning_handler(){try{var b=document.getElementById("coordinate_x").value;var a=document.getElementById("coordinate_y").value;if(b!=""&&!isNaN(b)&&a!=""&&!isNaN(a)){var d="type=generic&action=position_to_point&x="+b+"&y="+a+"&scale=15000";loading_message(true);process_ajax_call(d,_CNTR_POSITIONER_URL,function(f){try{if(!f){reset_extra_graphics(_ALL_DRAWING_ENGINES);reload_map("type=map&action=load")}else{loading_message(false)}}catch(g){alert("process_ajax_call: "+g);loading_message(false)}})}remove_map_loaded_event_handler(coordinate_positioning_handler)}catch(c){alert("TI_Sentieri_Events_Manager.coordinate_positioning_handler(): "+c);loading_message(false)}}function interactive_elements_handler(g){try{var b=5;if(_MAP_WRAPPER._scale>0&&_MAP_WRAPPER._scale<10000){b=10000/_MAP_WRAPPER._scale*b}var c=_MAP_WRAPPER.convert_to_geo(g[0]-b,g[1]-b);var a=_MAP_WRAPPER.convert_to_geo(g[0]+b,g[1]+b);if(c&&a&&!isNaN(c[0])&&!isNaN(c[1])&&!isNaN(a[0])&&!isNaN(a[1])){var f="type=interactive_element&action=spatialy_query&minx="+c[0]+"&miny="+c[1]+"&maxx="+a[0]+"&maxy="+a[1];process_ajax_call(f,_CNTR_INTERACTIVE_ELEMENT,function(k){try{if(!k){var i=this.responseXML.getElementsByTagName("hut");var n=this.responseXML.getElementsByTagName("signaling");if(n.length||i.length){var m=document.createElement("iframe");m.style.border="0px";m.style.width="100%";m.style.height="100%";m.frameBorder="0";if(i.length){var h=i[0].getElementsByTagName("id_hut")[0].hasChildNodes()?i[0].getElementsByTagName("id_hut")[0].firstChild.nodeValue:null;m.src=_UI_HUT+"?type=hut&action=view&id_hut="+h;_EXT_INTERACTIVE_ELEMENT_PANEL.setSize(300,400);_EXT_INTERACTIVE_ELEMENT_PANEL.setTitle(_MSG_HUT)}else{if(n.length){var l=n[0].getElementsByTagName("id_signaling")[0].hasChildNodes()?n[0].getElementsByTagName("id_signaling")[0].firstChild.nodeValue:null;m.src=_UI_SIGNALING+"?type=signaling&action=view&id_signaling="+l;_EXT_INTERACTIVE_ELEMENT_PANEL.setSize(300,200);_EXT_INTERACTIVE_ELEMENT_PANEL.setTitle(_MSG_SIGNALING)}}var j=document.getElementById("interactive_element_panel");clear_node(j);j.appendChild(m);_EXT_INTERACTIVE_ELEMENT_PANEL.show();if(g[0]+_EXT_INTERACTIVE_ELEMENT_PANEL.getWidth()>Ext.get(_WINDOW_ID).getWidth()){g[0]=Ext.get(_WINDOW_ID).getWidth()-_EXT_INTERACTIVE_ELEMENT_PANEL.getWidth()}if(g[1]+_EXT_INTERACTIVE_ELEMENT_PANEL.getHeight()>Ext.get(_WINDOW_ID).getHeight()){g[1]=Ext.get(_WINDOW_ID).getHeight()-_EXT_INTERACTIVE_ELEMENT_PANEL.getHeight()}_EXT_INTERACTIVE_ELEMENT_PANEL.alignTo(_WINDOW_ID,"tl",[g[0]-10,g[1]-10])}}}catch(o){alert("process_ajax_call: "+o)}})}}catch(d){alert("TI_Sentieri_Events_Manager.interactive_elements_handler(): "+d)}}function evt_select_segment(a){process_mouse_down(a,new Evt_Select_Segment())}function evt_but_export(c,a){try{if(_LINE_PATH==null){alert(_MSG_SELECT_SEGMENT);return}if(_LIST_OF_POINTS.length!=2){clear_points();calculate_auto_start_finish_points();draw_extra_graphics(false,_SELECTION_DRAWING_ENGINE)}if(_LIST_OF_POINTS.length==2){var d="type=report&action=export&format="+c+"&x1="+_LIST_OF_POINTS[0]._x+"&x2="+_LIST_OF_POINTS[1]._x+"&y1="+_LIST_OF_POINTS[0]._y+"&y2="+_LIST_OF_POINTS[1]._y+"&route_name="+(a!=""&&typeof(a)!="undefined"?a:"TI-Sentieri");modal_loading_message(true);process_ajax_call(d,_CNTR_REPORT,function(f){try{if(!f){var h=new DHTML_Window(_TMP+this.responseXML.getElementsByTagName("export_file")[0].firstChild.nodeValue,get_width(0.1),get_height(0.1));modal_loading_message(false)}else{modal_loading_message(false)}}catch(g){alert("process_ajax_call: "+g);loading_message(false)}})}}catch(b){alert("TI_Sentieri_Events_Manager.evt_but_export(format,route_name): "+b);loading_message(false)}}function evt_select_route_segments(b){try{var c="type=route&action=select_segments&id_route="+b;loading_message(true);process_ajax_call(c,_CNTR_COMPOSITION,function(d){try{if(!d){reset_extra_graphics(_ALL_DRAWING_ENGINES);if(this.responseXML.normalize){this.responseXML.normalize()}_LINE_PATH=_MAP_WRAPPER.decode_linestring_from_xml(this.responseXML);_LINE_PATH._color="#ffd202";_LINE_PATH._stroke=3;_LINE_PATH._optimized_drawing=false;for(var f=0;f<_LINE_PATH._list_of_graphics.length;f++){_LINE_PATH._list_of_graphics[f]._color=_LINE_PATH._color;_LINE_PATH._list_of_graphics[f]._stroke=_LINE_PATH._stroke;_LINE_PATH._list_of_graphics[f]._optimized_drawing=_LINE_PATH._optimized_drawing}_LIST_OF_EXTRA_GRAPHICS.push(_LINE_PATH);calculate_auto_start_finish_points();draw_extra_graphics(false,_SELECTION_DRAWING_ENGINE);_EXT_ROUTES_PANEL.collapse();reload_map("type=map&action=load")}else{loading_message(false)}}catch(g){alert("process_ajax_call: "+g);loading_message(false)}})}catch(a){alert("TI-Sentieri_Events_Manager.evt_select_route_segments(): "+a);loading_message(false)}}function evt_set_point(a){_LIST_OF_SELECTED_LAYERS=new Array("Segmenti");process_mouse_down(a,new Evt_Set_Point(true))}function evt_but_search(){try{var a=document.getElementById("locality").value;if(a==""){alert(_MSG_SPECIFY_LOCALITY);return}var d="type=route&action=search_by_locality&locality="+encodeURIComponent(a);var b=0;loading_message(true);process_ajax_call(d,_CNTR_SEARCH,function(h){try{if(!h){var f=document.getElementById("result");clear_node(f);f.style.maxHeight=_EXT_ROUTES_PANEL.getHeight()/3+"px";f.style.overflow="auto";var m=document.createElement("p");f.appendChild(m);m.className="titolo_paragrafo";if(this.responseXML.normalize){this.responseXML.normalize()}var n=this.responseXML.getElementsByTagName("route");var k=new Custom_Select(f);for(var j=0;j<n.length;j++){var g=n[j];k.add_option(g.getElementsByTagName("name")[0].firstChild.nodeValue,g.getElementsByTagName("id")[0].firstChild.nodeValue);b++}k.draw();m.appendChild(document.createTextNode(b+" "+_MSG_ROUTES));m.style.borderBottom="1px solid black";m.style.marginTop="2px";m.style.marginBottom="2px";loading_message(false)}else{loading_message(false)}}catch(l){alert("process_ajax_call: "+l);loading_message(false)}})}catch(c){alert("TI_Sentieri_Events_Manager.evt_but_search(): "+c);loading_message(false)}}function evt_key_but_search(a){try{if(!a){a=window.event}if(a.keyCode==13){evt_but_search()}}catch(b){alert("TI_Sentieri_Events_Manager.evt_key_but_search(): "+b);return}}function calculate_auto_start_finish_points(){try{if(_LINE_PATH==null){alert(_MSG_SELECT_SEGMENT);return}var b="type=point&action=calculate_start_finish_points";loading_message(true);process_ajax_sync_call(b,_CNTR_COMPOSITION,function(c){try{if(!c){clear_extra_graphics(_EVENTS_DRAWING_ENGINE);var h=this.responseXML.getElementsByTagName("start_point")[0];var f=this.responseXML.getElementsByTagName("finish_point")[0];var g=new Flag_Symbol(h.getElementsByTagName("x")[0].firstChild.nodeValue,h.getElementsByTagName("y")[0].firstChild.nodeValue);var i=new Flag_Symbol(f.getElementsByTagName("x")[0].firstChild.nodeValue,f.getElementsByTagName("y")[0].firstChild.nodeValue);g._color="#00ff00";i._color="#ff0000";_LIST_OF_POINTS.push(g);_LIST_OF_POINTS.push(i);_LIST_OF_EXTRA_GRAPHICS.push(g);_LIST_OF_EXTRA_GRAPHICS.push(i);loading_message(false)}else{loading_message(false)}}catch(d){alert("process_ajax_call: "+d);loading_message(false)}})}catch(a){alert("TI_Sentieri_Events_Manager.calculate_auto_start_finish_points(): "+a);loading_message(false)}}function reverse_start_finish_points(){if(_LINE_PATH==null){alert(_MSG_SELECT_SEGMENT);return}clear_extra_graphics(_ALL_DRAWING_ENGINES);for(var a=0;a<_LIST_OF_EXTRA_GRAPHICS.length;a++){if(_LIST_OF_EXTRA_GRAPHICS[a] instanceof Flag_Symbol){if(_LIST_OF_EXTRA_GRAPHICS[a]._color=="#00ff00"){_LIST_OF_EXTRA_GRAPHICS[a]._color="#ff0000"}else{if(_LIST_OF_EXTRA_GRAPHICS[a]._color=="#ff0000"){_LIST_OF_EXTRA_GRAPHICS[a]._color="#00ff00"}}}}_GENERIC_GIS_UTILS.reverse_points();draw_extra_graphics(false,_EVENTS_DRAWING_ENGINE)}function restore_layers(){try{var b="type=report&action=restore_map_layers";process_ajax_call(b,_CNTR_REPORT,function(c){try{if(!c){}else{}}catch(d){alert("process_ajax_call: "+d)}})}catch(a){alert("TI_Sentieri_Events_Manager.restore_layers(): "+a)}};

