function get_map_object() { try { if (parent.map==null) { if (window.opener.map!=null) return window.opener.myMap.map; } else { return parent.map.myMap.map; } } catch(e) { return null; } } function hasspeciallegend(bird_id) { specials = Array("TETURO","PERPER","PERAPI","MILMIG","MILMIL","GYPBAR","NEOPER","ACCGEN","ACCNIS","AQUCHR","HIEFAS","RALAQU","BUBBUB","ALCATT","OENLEU","SYLCON","SYLBOR","SYLCOM","EMBHOR"); for (var i = 0; i < specials.length; i++) { if(specials[i] == bird_id) return true; } return false; } function writeLegend() { var html = "
"; html += "
"; html += "Probabilitat d'aparició

"; return html; } function writeLegendHeader(value,title){ var html = ""; html += ""; return html; } function showBirdMap(bird_id,title){ var map = get_map_object(); // we had to urlencode title first title = unescape(title); // we remove + character (global find/replace) title = title.replace(/\+/g," "); if (map!=null) { map.loadingcount = 0; var index = map._getserverindex("ocell"); if(index != -1) { if(bird_id != false) { map.connections[index].setparameter("bird_id",bird_id); map.connections[index].setvisible("ocell",true); // we will have to set the internal legend manually // not so elegant, but it works map.connections[index].autolegend = false; var layerindex = map.connections[index]._getlayerindex("ocell"); if(hasspeciallegend(bird_id)) { map.connections[index].sld = "http://oslo.geodata.es/ftp/ocells/php/sld_bird.php?id="+bird_id; setTimeout("showLegend(true,\"" + title + "\",\"" + bird_id + "\")",1500); // set legend for printing map.connections[index].layers[layerindex].legend = "http://oslo.geodata.es/ftp/ocells/stuff/legends/" + bird_id + ".jpg"; } else { map.connections[index].sld = ""; setTimeout("showLegend(true,\"" + title + "\",\"default\")",1500); // set legend for printing map.connections[index].layers[layerindex].legend = "http://oslo.geodata.es/ftp/ocells/stuff/legends/default.jpg"; } } else { map.connections[index].setvisible("ocell",false); map.connections[index].sld = false; document.getElementById("map_legend").style.display = "none"; document.getElementById("map_legend_header").style.display = "none"; } map.refresh("ocell"); } } } function highlightElement(id) { //which layer is it? var layer_code = id.substr(0,3); var layer = "error"; switch(layer_code) { case "QD_": layer = "malla10"; break; case "EIN": layer = "espais_prot"; break; case "FTP": layer = "espais_ftip"; break; case "COM": layer = "comarca"; break; case "MUN": layer = "municipis"; break; default: layer = "malla10"; break; } var map = get_map_object(); var sld_url = "http://oslo.geodata.es/ftp/ocells/php/sld.php?layer=selected_polygon%26value="+id; // get connection var index = map._getserverindex('selected'); if (index != -1) { // set sld var conn = map.connections[index]; conn.sld = sld_url; conn.setparameter("shape",layer); conn.setvisible("selected_polygon", true); //refresh map map.refresh(index); } } function showLegend(value,title,speciallegend){ var map_legend = document.getElementById("map_legend"); var legend_title = document.getElementById("legend_title"); var legend_header = document.getElementById("map_legend_header"); if (value == "toggle") value = (map_legend.style.display ? true : false); if(value) { map_legend.style.display = ""; legend_header.style.display = ""; legend_title.innerHTML = title; legend_header.innerHTML = writeLegendHeader(true,title); document.getElementById("legend_img").src = "img/maximize_up.gif"; //alert("stuff/legends/" + speciallegend + ".png"); if(speciallegend) document.getElementById("legend").src = "stuff/legends/" + speciallegend + ".jpg"; else document.getElementById("legend").src = "stuff/legends/default.jpg"; getstartingalpha(); } else { map_legend.style.display = "none"; legend_header.innerHTML = writeLegendHeader(true,title); document.getElementById("legend_img").src = "img/maximize_down.gif"; } }